[all-commits] [llvm/llvm-project] 53c237: [lld][COFF] Use `.contains` rather than `.count` f...

Peter Collingbourne via All-commits all-commits at lists.llvm.org
Thu Jan 29 14:40:10 PST 2026


  Branch: refs/heads/users/pcc/spr/main.codegen-introduce-machinefunctiongetpreferredalignment
  Home:   https://github.com/llvm/llvm-project
  Commit: 53c237c00667502a69f9e3df4d60d3bd80ae3ba8
      https://github.com/llvm/llvm-project/commit/53c237c00667502a69f9e3df4d60d3bd80ae3ba8
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/MinGW.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/Writer.cpp

  Log Message:
  -----------
  [lld][COFF] Use `.contains` rather than `.count` for set membership. NFC (#177067)

Also converted a couple of `std::set` to
`llvm::StringSet`/`llvm::SmallSet`.

This matches the usage in the other linker backends.

See #176610


  Commit: b857faeda6eec88e056fb0f95b1d4beed634f29e
      https://github.com/llvm/llvm-project/commit/b857faeda6eec88e056fb0f95b1d4beed634f29e
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h

  Log Message:
  -----------
  [NFC][AMDGPU] Remove stale/dangling comments


  Commit: 11b9e5f5ab6e5088286d856b595d80117e337f6c
      https://github.com/llvm/llvm-project/commit/11b9e5f5ab6e5088286d856b595d80117e337f6c
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  Remove nomenclature clash in statistic pass with one of the stats (#177267)

Attribute TotalInstructionCount is used, but previously the name of the
stat printed out was "Total"+property, which made it look like
TotalTotalInstruction. Num does not provide such clashes in the
nomenclature.


  Commit: 688b01ad529b85a38509d6c27dc0376816e027f2
      https://github.com/llvm/llvm-project/commit/688b01ad529b85a38509d6c27dc0376816e027f2
  Author: Michael Park <mcypark at gmail.com>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/Modules/pr171769.cpp
    M clang/unittests/Serialization/CMakeLists.txt
    A clang/unittests/Serialization/NamespaceLookupTest.cpp

  Log Message:
  -----------
  [C++20][Modules] Improve namespace look-up performance for modules. (Attempt #2) (#177255)


  Commit: 2688b124b104979bcdf4bfc3e1b1bb6386985bc1
      https://github.com/llvm/llvm-project/commit/2688b124b104979bcdf4bfc3e1b1bb6386985bc1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/Serialization/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 688b01ad529b


  Commit: 503db9859e43b775dfbb4d8765e0ce9ad84fae58
      https://github.com/llvm/llvm-project/commit/503db9859e43b775dfbb4d8765e0ce9ad84fae58
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libcxx/include/__iterator/wrap_iter.h

  Log Message:
  -----------
  [libc++][NFC] Reformat `wrap_iter.h` (#177127)

As a pre-requisite to https://github.com/llvm/llvm-project/pull/172200


  Commit: 8c8661e170d49afb8cae3914fa28346e5089ecad
      https://github.com/llvm/llvm-project/commit/8c8661e170d49afb8cae3914fa28346e5089ecad
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libcxx/include/__ranges/subrange.h

  Log Message:
  -----------
  [libc++][NFC] Reformat `subrange.h` (#177118)

As a pre-requisite to https://github.com/llvm/llvm-project/pull/176936


  Commit: b57dcfff1d74c2d843e7ad7c28adb39799ca4bc8
      https://github.com/llvm/llvm-project/commit/b57dcfff1d74c2d843e7ad7c28adb39799ca4bc8
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp

  Log Message:
  -----------
  [flang][cuda][NFC] Fix typo in header (#177299)


  Commit: 1869b15a0569e4e0fa0b97ee462db4e826519d4f
      https://github.com/llvm/llvm-project/commit/1869b15a0569e4e0fa0b97ee462db4e826519d4f
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lld/ELF/MarkLive.cpp
    M lld/test/ELF/why-live.test

  Log Message:
  -----------
  [ELF] --why-live: Skip symbol at index 0 and section symbols, handle .eh_frame symbols (#177099)

Symbols of empty names can be matched by `--why-live='*'`, which are
generally not useful.

* The first entry in a symbol table (STB_LOCAL and undefined)
* `STT_SECTION` symbols (emitted by LLVM integrated assembler when
  needed by relocations). These input section symbols will be demoted by
  `demoteAndCopyLocalSymbols`, so technically not really live.
  In addition, such symbols of non-allocable sections currently lead to
  crashes: `whyLive` does not record the section, causing the second
  iteration of the `while (true)` loop in printWhyLive to call
  `std::get<Symbol *>(cur)` when `cur` is an `InputSectionBase *`.

In addition, handle GCC crtendS.o `__FRAME_END__`, which is defined
relative to a `.eh_frame` section created with
`__attribute__((used, section(".eh_frame")))`.

Fix #176890


  Commit: 614989535419d5d3bc16703cf38c010659baaa82
      https://github.com/llvm/llvm-project/commit/614989535419d5d3bc16703cf38c010659baaa82
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M orc-rt/unittests/bit-test.cpp

  Log Message:
  -----------
  [orc-rt] Actually test orc-rt/bit.h functions. (#177300)

The unit test was copied from a similar test in llvm, and was still
qualifying calls with 'llvm::'. This was unintended, but happened to
work because LLVM's bit.h is transitively included through LLVM's gtest
headers. Qualifying with 'orc_rt::' tests the intended functions.

Thanks to @jaredwy for spotting this!


  Commit: d7d47864820b3610fdff04ca5380cd5762b609f0
      https://github.com/llvm/llvm-project/commit/d7d47864820b3610fdff04ca5380cd5762b609f0
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/www/cxx_status.html

  Log Message:
  -----------
  [NFC][clang] Mark P3034R1 as implemented (#177150)

Mark [P1857R3 Modules Dependency Discovery](https://wg21.link/p1857r3)
as implemented.
This paper was implemented in
https://github.com/llvm/llvm-project/pull/173789.

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: e838f27e0f3f417e3963992c9591d412b621cd4c
      https://github.com/llvm/llvm-project/commit/e838f27e0f3f417e3963992c9591d412b621cd4c
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M orc-rt/unittests/EndianTest.cpp

  Log Message:
  -----------
  [orc-rt] Update another unittest to use orc-rt/bit.h functions. (#177303)

Unit test was mistakenly using an `llvm::` function.

Thanks to @jaredwy for spotting this!


  Commit: 2036bc524bc404ed3bb97375ef050a6cb9b4b8c8
      https://github.com/llvm/llvm-project/commit/2036bc524bc404ed3bb97375ef050a6cb9b4b8c8
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp

  Log Message:
  -----------
  [IR] Update IRBuilder::createVectorSplice to allow variable offsets (#177178)

Following on from #174693, this updates IRBuilder to allow variable
offsets, and splits the createVectorSplice function into two functions
for left and right splices.

We could preserve the existing createVectorSplice API but given there's
only one LLVM-internal user of it in the loop vectorizer, and the notion
of a negative offset doesn't exist in the intrinsics anymore, I've
removed it. Happy to add it back if reviewers prefer though.

I've also added unit tests since createVectorSpliceLeft has no coverage
otherwise.


  Commit: 2b22d76ba773dee4a8d07fc284e1dab2524b6b47
      https://github.com/llvm/llvm-project/commit/2b22d76ba773dee4a8d07fc284e1dab2524b6b47
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M orc-rt/include/orc-rt/bit.h
    M orc-rt/unittests/EndianTest.cpp
    M orc-rt/unittests/bit-test.cpp

  Log Message:
  -----------
  [orc-rt] Implement rotl / rotr, fix missing include in unit test. (#177305)

In e838f27e0f3 the EndianTest.cpp unittest was updated to avoid using
`llvm::rotl` function, but the corresponding `orc_rt::rotl` function had
not been implemented yet.

This commit implements orc_rt::rotl, orc_rt::rotr, and
orc_rt::has_single_bit by copying their definitions from the
corresponding LLVM header (llvm-project/llvm/include/llvm/ADT/bit.h).
Unit tests for these functions are also copied from their LLVM
counterparts.

Thanks to @jaredwy for spotting this!


  Commit: 73a309e20e92ff8e9af295c81ee74a58b07a93ba
      https://github.com/llvm/llvm-project/commit/73a309e20e92ff8e9af295c81ee74a58b07a93ba
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/select.mir
    M llvm/test/CodeGen/RISCV/rvv/pass-fast-math-flags-sdnode.ll
    A llvm/test/CodeGen/RISCV/rvv/pr171231.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-to-vmv.mir
    M llvm/test/CodeGen/RISCV/rvv/strided-vpload-vpstore-output.ll
    M llvm/test/CodeGen/RISCV/rvv/subregister-undef-early-clobber.mir
    M llvm/test/CodeGen/RISCV/rvv/vleff-vlseg2ff-output.ll
    M llvm/test/CodeGen/RISCV/rvv/vmerge-peephole.mir
    M llvm/test/CodeGen/RISCV/rvv/vmv.v.v-peephole.mir
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.mir

  Log Message:
  -----------
  [RISCV] Add ZZZ_ to some inline assembly vector register classes to sort them after VR/VRNoV0 in regclass enum. (#177087)

This prevents getCommonSubClass from finding them before VR/VRNoV0.

Fixes a crash reported post-commit in #171231. getCommonSubClass
returned one of these classes, but it doesn't have the same VTs as
VR/VRNoV0 leading to an assertion failure.

The subregister-undef-early-clobber.mir still ends up finding these
register classes in the InitUndef pass.


  Commit: f2a3079a1b48033a92d0a7d9f03251ebeb4a0c30
      https://github.com/llvm/llvm-project/commit/f2a3079a1b48033a92d0a7d9f03251ebeb4a0c30
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ModuleManager.cpp
    A clang/test/ClangScanDeps/build-session-validation-outdated-module.c

  Log Message:
  -----------
  [Modules] Fix spurious errors about module input file changing after .pcm file was built. (#176537)

For incremental multi-process/multi-thread compilation utilizing a build
session fix errors like

> fatal error: file '/path/to/Frmwrk.framework/Headers/Header.h' has been modified since the module file '/path/to/ModuleCache.noindex/XXX/Frmwrk-YYY.pcm' was built: mtime changed (was aaa, now bbb)
    
Another symptom of the bug is when you check Frmwrk.pcm the header's
mtime is correct, so it is confusing where "was aaa" is even coming from.
    
The main problem is that in case of a signature mismatch
`ModuleManager::addModule` returns `OutOfDate` but keeps .pcm buffer in
`InMemoryModuleCache`. So if later on it tries to use such a module, it
would have an outdated buffer in `InMemoryModuleCache`. If another
process/thread happens to rebuild such module and write a new validation
timestamp, the original process would skip the input file validation and
would keep using the outdated .pcm buffer hitting errors about
unexpected input modifications.

I want to note that in the current implementation the validation
timestamp can be still incorrect. When we are writing AST we don't
account for the case when an input file is modified after its mtime and
size are captured. We are relying on the input files not being modified
while building a module using these files.
    
rdar://165237499


  Commit: c91d5c76db36c0fe7df72c93945a131f08f43030
      https://github.com/llvm/llvm-project/commit/c91d5c76db36c0fe7df72c93945a131f08f43030
  Author: Rux124 <jhlee755 at andestech.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/InjectTLIMappings.cpp
    M llvm/test/Transforms/Util/add-TLI-mappings.ll

  Log Message:
  -----------
  InjectTLIMappings: remove incompatible attributes from vector declarations. (#173206)

Some attributes (e.g., the signext attribute) are not supported on
vector types; adding them would cause the verifier pass to fail.


  Commit: 962a9a3be967b4967fe5b73a330f5be73dcf261a
      https://github.com/llvm/llvm-project/commit/962a9a3be967b4967fe5b73a330f5be73dcf261a
  Author: James Newling <james.newling at gmail.com>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Linalg/transform-op-peel-and-vectorize-conv.mlir
    M mlir/test/Dialect/Vector/canonicalize.mlir
    M mlir/test/Dialect/Vector/canonicalize/vector-from-elements.mlir
    A mlir/test/Dialect/Vector/canonicalize/vector-to-shape-cast.mlir
    M mlir/test/Dialect/Vector/vector-transfer-to-vector-load-store.mlir
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir

  Log Message:
  -----------
  [mlir][vector] Canonicalize vector.extract and vector.broadcast to vector.shape_cast (#174452)

Based on the original PR
https://github.com/llvm/llvm-project/pull/140583, but without
vector.transpose -> vector.shape_cast.

This PR canonicalizes 

%0 = vector.broadcast %arg0 : vector<4xi8> to vector<1x1x4xi8>
%2 = vector.extract %arg2[0] : vector<4xi8> from vector<1x4xi8>

to shape_cast. It was decided (see
https://github.com/llvm/llvm-project/pull/140583) that the
vector.transpose -> vector.shape_cast needs further consideration before
being added.

---------

Signed-off-by: James Newling <james.newling at gmail.com>


  Commit: 1b37911f1a90edd0bef0090010d0267cd1605255
      https://github.com/llvm/llvm-project/commit/1b37911f1a90edd0bef0090010d0267cd1605255
  Author: Yaxing Cai <caiyaxing666 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M compiler-rt/lib/orc/elfnix_platform.cpp
    A compiler-rt/test/orc/TestCases/Linux/Generic/ctor-dtor.cpp
    M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/ObjectFormats.h
    M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/ObjectFormats.cpp

  Log Message:
  -----------
  [ORC] Fix missing support of deinitialize on ELF platform and execution order by priority (#175981)

This PR fixes
1. issue #175509 about missing support of deinitialize on ELF platform. 
2. missing support of execution order by proirity at both initialize and
deinitialize stage.

cc: @tqchen @joker-eph


  Commit: a581ceb3e3953e690af53fa8f64e84edbcde29dd
      https://github.com/llvm/llvm-project/commit/a581ceb3e3953e690af53fa8f64e84edbcde29dd
  Author: Haowei <haowei at google.com>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

  Changed paths:
    M clang/CMakeLists.txt

  Log Message:
  -----------
  [clang][cmake] Use llvm-libtool-darwin in clang multi-stage build (#177277)

We are seeing the build system uses the XCode's libtool when building
the 2nd stage of the clang on mac. We should use the llvm-libtool-darwin
from the previous stage clang build instead. This patch makes multi-stage
clang build to use llvm-libtool-darwin from the previous stage when targeting
mac.


  Commit: cfc876998e06a0916338c3d286c5b169c9d78274
      https://github.com/llvm/llvm-project/commit/cfc876998e06a0916338c3d286c5b169c9d78274
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-21 (Wed, 21 Jan 2026)

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

  Log Message:
  -----------
  [TableGen] Make sure ResNo is the same in CheckTypeMatcher::isContradictoryImpl. (#177312)

CheckType can only be contradictory if the same result is being checked.

Noticed while looking at the code. This doesn't affect the output on any
in tree targets.


  Commit: 4fe4f23e2f4334b63172b16ae837c34bf4a537d7
      https://github.com/llvm/llvm-project/commit/4fe4f23e2f4334b63172b16ae837c34bf4a537d7
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/TargetParser/Host.cpp

  Log Message:
  -----------
  [TargetParser] Fix fp16 feature name for ARM64 Windows feature detection (#176925)

The feature is called fullfp16, not fp16, see:
https://github.com/llvm/llvm-project/blob/979db00b9a2401b65725f44de8172aba79cacd38/llvm/lib/Target/AArch64/AArch64Features.td#L142


  Commit: 15e421dc643ce4d9d79174fec585cf787e56b1a0
      https://github.com/llvm/llvm-project/commit/15e421dc643ce4d9d79174fec585cf787e56b1a0
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/MC/MCObjectStreamer.cpp

  Log Message:
  -----------
  [MC] Explicitly use memcpy in emitBytes() (NFC) (#177187)

We've observed a compile-time regression in LLVM 22 when including large
blobs. The root cause was that emitBytes() was copying bytes one-by-one,
which is much slower than using memcpy for large objects.

Optimization of std::copy to memmove is apparently much less reliable
than one might think. In particular, when using a non-bleeding-edge
libstdc++ (anything older than version 15), this does not happen if the
types of the input and output iterators do not match (like here, where
there is a signed/unsigned mismatch).

As this code is performance sensitive, I think it makes sense to
directly use memcpy.

Previously this code used SmallVector::append, which explicitly uses
memcpy.


  Commit: fa0071baabe9f8ca4069dbe6222e04740f0a5382
      https://github.com/llvm/llvm-project/commit/fa0071baabe9f8ca4069dbe6222e04740f0a5382
  Author: nataliakokoromyti <nataliakokoromyti at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    A llvm/test/Transforms/CodeGenPrepare/X86/codegenprepare-hang-bitcast-phi.ll

  Log Message:
  -----------
  [CodeGenPrepare] Fix infinite loop with same-type bitcasts (#176694)

OptimizeNoopCopyExpression was sinking same-type bitcasts (e.g. bitcast
i32 to i32) which would then be reintroduced by optimizePhiType, causing
an infinite loop.

Fix by adding a check (PhiTy == ConvertTy) in optimizePhiType to skip
the conversion when types are already identical.

Fixes #176688.


  Commit: efe9b436e07555d0cd54b2e3bfd3f5c6df1f4af4
      https://github.com/llvm/llvm-project/commit/efe9b436e07555d0cd54b2e3bfd3f5c6df1f4af4
  Author: nataliakokoromyti <nataliakokoromyti at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    A llvm/test/CodeGen/AMDGPU/issue176966-extend-vector-inreg.ll

  Log Message:
  -----------
  Fix EXTEND_VECTOR_INREG widening when input > result size (#177095)

This patch fixes an LLVM crash on AMDGPU that occurred when compiling
valid code involving non-power-of-two vector sizes. During type
legalization, LLVM widened an EXTEND_VECTOR_INREG operation by first
widening the input vector, which could make the input larger than the
result and trigger an assertion failure.

The fix changes the logic to widen the result first and then extract the
needed portion so there's no invalid size mismatch. I've added a test
that previously crashed but now doesn't.

fixes #176966.

---------

Co-authored-by: Natalia Kokoromyti <knatalia at yost-cm-01-imme.stanford.edu>


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

  Changed paths:
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    A llvm/test/CodeGen/fptoi-256.ll

  Log Message:
  -----------
  [LLVM] Update the default value for MaxLargeFPConvertBitWidthSupported to 128 (#176851)

Previously, we can't compile the program which convert 256 bits to
floating points and vice versa(we'll crash). After this, we're able to
compile them.


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

  Changed paths:
    M llvm/test/CodeGen/fptoi-256.ll

  Log Message:
  -----------
  [NFC] Add the require clause to a test

See https://github.com/llvm/llvm-project/pull/176851


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-partial-reduce-dot-product.ll

  Log Message:
  -----------
  [AArch64] Fix partial_reduce v16i8 -> v2i32 (#177119)

The lowering doesn't need to check for `ConvertToScalable`, because it
lowers to another `PARTIAL_REDUCE_*MLA` node, which is subsequently
lowered using either fixed-length or scalable types.

This fixes https://github.com/llvm/llvm-project/issues/176954


  Commit: 01ccb4055adba8cec038a72aaad7c9bfba5aca27
      https://github.com/llvm/llvm-project/commit/01ccb4055adba8cec038a72aaad7c9bfba5aca27
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [AArch64] Use +0.0 for accumulator for FMUL -> BFMLAL lowering in more cases (#174423)

Depending on the users of the FMUL we may not need to preserve the sign
of the multiplication result (when it is zero).

See: 29611f4cbea0e867a3e55516f8dfdeca595be436


  Commit: 59db71c7bd6af903865869674d424429d9da4967
      https://github.com/llvm/llvm-project/commit/59db71c7bd6af903865869674d424429d9da4967
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/test/API/functionalities/ubsan/basic/Makefile
    M lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
    M lldb/test/API/functionalities/ubsan/basic/main.c

  Log Message:
  -----------
  [lldb][test] Re-enable and fix TestUbsanBasic.py

UBSAN stopped reporting the misaligned load since https://github.com/llvm/llvm-project/commit/5569bf26f0097c2d8b088f0a7cf46451da752dea so this test started failing. We skipped it to unblock CI.

There's been discussion on making UBSAN stricter and still trigger on
the one-line version of this. But for now, to get the test running
again, change it to a form which *does* trigger UBSAN.

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


  Commit: 68804704550d663d6bcab7c96c7eae531020b60a
      https://github.com/llvm/llvm-project/commit/68804704550d663d6bcab7c96c7eae531020b60a
  Author: Thibault Monnier <thibaultmonni at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  Revert "[Clang][Lexer] Reland "Detect SSE4.2 availability at runtime in fastParseASCIIIdentifier"" (#177322)

Reverts llvm/llvm-project#175452 because of buildbot failures reported.


  Commit: a43b55edf42b4e70e3b26e493e5997a2f5682fea
      https://github.com/llvm/llvm-project/commit/a43b55edf42b4e70e3b26e493e5997a2f5682fea
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/riscv-arch.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/GlobalISel/atomic-load-store-fp.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/atomic-load-store.ll
    M llvm/test/CodeGen/RISCV/atomic-load-store.ll
    M llvm/test/CodeGen/RISCV/atomic-load-zext.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/zalasr-offset-folding.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/test/MC/RISCV/rv32zalasr-invalid.s
    M llvm/test/MC/RISCV/rv64zalasr-invalid.s
    M llvm/test/MC/RISCV/rv64zalasr-valid.s
    M llvm/test/MC/RISCV/rvzalasr-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV]Remove experimental from Zalasr (#177120)

Zalasr 1.0 was ratified in October 2025.

Documentation:https://docs.riscv.org/reference/isa/extensions/zalasr/_attachments/riscv-zalasr.pdf


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

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fsub.ll

  Log Message:
  -----------
  InstCombine: Add SimplifyDemandedFPClass fsub baseline tests (#175851)


  Commit: 4386ba5805be3050c05b20bf0e5691cd7a7fe28c
      https://github.com/llvm/llvm-project/commit/4386ba5805be3050c05b20bf0e5691cd7a7fe28c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maxnum.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minnum.ll

  Log Message:
  -----------
  InstCombine: Add minnum/maxnum SimplifyDemandedFPClass baseline tests (#177325)

This is just the existing minimumnum/maximumnum tests copied with
find and replace.


  Commit: f5ef142c60176817d4da5653dcfa7e3e7c6748a0
      https://github.com/llvm/llvm-project/commit/f5ef142c60176817d4da5653dcfa7e3e7c6748a0
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    M flang/test/Lower/OpenACC/acc-reduction.f90

  Log Message:
  -----------
  [flang][acc] fix allocatable logical reduction (#177177)

The value types were not properly unwrapped from the variable type in
`getReductionInitValue`, which caused issues with logical reductions on
allocatables or pointers.


  Commit: 01f5ae2486427e65a14932a5e590bb9c0fa9ddb1
      https://github.com/llvm/llvm-project/commit/01f5ae2486427e65a14932a5e590bb9c0fa9ddb1
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp

  Log Message:
  -----------
  [lldb][ClangExpressionDeclMap][NFC] Reword/add FIXMEs


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

  Changed paths:
    M mlir/include/mlir/Conversion/TosaToLinalg/TosaToLinalg.h

  Log Message:
  -----------
  [mlir][tosa][nfc] Fix comments (#177335)


  Commit: 9bc0e62617ab2a36029b67e8e5fa8b0f0a2fbeb1
      https://github.com/llvm/llvm-project/commit/9bc0e62617ab2a36029b67e8e5fa8b0f0a2fbeb1
  Author: Tony Linthicum <tony.linthicum at outlook.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    A llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_copies.mir
    A llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_cost.mir

  Log Message:
  -----------
  [AMDGPU] Add scheduling stage to rewrite MFMA from VGPR to AGPR (#170335)

This pull request is an update of [Jeff Byrne's
PR](https://github.com/llvm/llvm-project/pull/149367). Additionally, all
unresolved comments from the original PR have been addressed.

Changes to make the MachineScheduler dependent upon
MachineBlockFrequencyInfo have been pulled out into a new PR,
[176172](https://github.com/llvm/llvm-project/pull/176172), upon which
this PR now depends.

---------

Co-authored-by: Jeffrey Byrnes <Jeffrey.Byrnes at amd.com>


  Commit: 2b522e0b094acbc1e911b1cfb14a47a0ff91931a
      https://github.com/llvm/llvm-project/commit/2b522e0b094acbc1e911b1cfb14a47a0ff91931a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  Reapply "[AMDGPU] Fix excessive stack usage in SIInsertWaitcnts::run (#134835)" (#174215) (#177338)

This reverts commit 0dd03598dca91c93c74b94a714c38a4ffad0ed1c.

Apparently the stack usage on Windows was still large enough to cause
problems for some DirectX games.


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

  Changed paths:
    A llvm/test/CodeGen/X86/combine-bzhi.ll

  Log Message:
  -----------
  [X86] Add BZHI zero mask / constant fold test coverage (#177136)

We need known bits support before we can start adding simplify demanded bits handling to address #176974

Pulled from the instcombine equivalent tests


  Commit: 9ec0eccf48e931224ab96454be93ba8e3a006cc5
      https://github.com/llvm/llvm-project/commit/9ec0eccf48e931224ab96454be93ba8e3a006cc5
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/test/AST/ByteCode/cxx26.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a crash with explicit this parameters (#177154)

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


  Commit: 1e468b2813bd0518369a7025cee143cf0a4e810c
      https://github.com/llvm/llvm-project/commit/1e468b2813bd0518369a7025cee143cf0a4e810c
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/lib/Dialect/GPU/Transforms/NVVMAttachTarget.cpp
    M mlir/test/Dialect/GPU/nvvm-attach-target.mlir

  Log Message:
  -----------
  [MLIR][GPU][NVVM] Add verify-target-arch option to nvvm-attach-target pass (#176774)

This change adds the `verify-target-arch` option to the
`nvvm-attach-target` to control the `verifyTarget` parameter in the
attached `NVVMTargetAttr` which is used to enable/disable the
verification of the target architecture with respect to the NVVM Ops.


  Commit: ee95ebe396e567fcf9c12e5843c2761fc26893d3
      https://github.com/llvm/llvm-project/commit/ee95ebe396e567fcf9c12e5843c2761fc26893d3
  Author: Yingying Wang <3171290993 at qq.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    A llvm/test/Transforms/LoopInterchange/reduction2mem-limitation.ll
    A llvm/test/Transforms/LoopInterchange/reduction2mem.ll

  Log Message:
  -----------
  [LoopInterchange] Support the inner-loop reduction via Reduction2Mem (#172970)

Following our
[discussion](https://discourse.llvm.org/t/rfc-plan-to-improve-loopinterchange-by-undoing-simple-reductions/89071),
I ported GCC’s undo_simple_reduction into LLVM.

**Key changes**

- Implement an Reduction2Memory step in LoopInterchange to support the
reduction in the inner loop.
- The feature is behind an option `-loop-interchange-reduction-to-mem`
and is OFF by default. With the feature off, the pass behaves as before
(minimal impact).
- Add a regression test.

**Validation & performance**

- No compile or semantic errors observed on SPEC2006 and SPEC2017 with
the new feature enabled for validation.
- With options: `-da-disable-delinearization-checks` and
`-loop-interchange-reduction-to-mem`
  - SPEC2006 410.bwaves on x86 (Intel i9-11900K, Rocket Lake): **+6%**
  - SPEC2017 603.bwaves_s on x86 (Intel i9-11900K, Rocket Lake): **+6%**
  - SPEC2006 410.bwaves on SpacemiT Key Stone K1: **+29%**
  - SPEC2006 410.bwaves on KMH RTL: **+56%**
  - SPEC2017 603.bwaves_s on KMH RTL: **+24%**

**Note**

- Reduction2Memory only runs when legality and profitability checks
indicate the interchange will actually be performed. If interchange is
illegal or not profitable, no reduction2mem is applied.

---------

Co-authored-by: ict-ql <168183727+ict-ql at users.noreply.github.com>
Co-authored-by: Lin Wang <wanglulin at ict.ac.cn>
Co-authored-by: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>


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

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/IR/invalid-memcpy.cir
    A clang/test/CIR/IR/libc-memcpy.cir
    A clang/test/CIR/Lowering/libc.cir

  Log Message:
  -----------
  [CIR] Add cir.libc.memcpy Op (#176781)

The operation is a 1:1 mapping to libc's memcpy.

NOTE: This patch upstreams code from
  * https://github.com/llvm/clangir.

This Op was originally implemented by Vinicius Couto Espindola
in https://github.com/llvm/clangir/pull/237. Further
modifications were made by other ClangIR contributors.

Co-authored-by: Vinicius Couto Espindola <vini.couto.e at gmail.com>


  Commit: 088f88d6fd4047c52266b92eba5ca60782a69ba1
      https://github.com/llvm/llvm-project/commit/088f88d6fd4047c52266b92eba5ca60782a69ba1
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/source/ValueObject/DILEval.cpp

  Log Message:
  -----------
  [lldb] Fix crash when there is no compile unit. (#177278)

The crash occurred in lldb-dap when we are in a shared library with no
debug information and we are trying to get the expression path for an
address.


  Commit: 69fbba1948c97ff349cbd4abf5107f2e8373f883
      https://github.com/llvm/llvm-project/commit/69fbba1948c97ff349cbd4abf5107f2e8373f883
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py

  Log Message:
  -----------
  [lldb][test] TestTemplateAlias.py: skip on older Clang versions

The `-g[no-]template-alias` flag is not available on older versions.


  Commit: 2be02dcb49d4d7b8bf717d81bb46efb51690c6d7
      https://github.com/llvm/llvm-project/commit/2be02dcb49d4d7b8bf717d81bb46efb51690c6d7
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.py

  Log Message:
  -----------
  [lldb][test] TestTemplateAlias.py: skip on older Clang version

The `-g[no-]template-alias` flag is not available on older versions.


  Commit: ec28be3ccac432ea6a45eca67249b209be216c0a
      https://github.com/llvm/llvm-project/commit/ec28be3ccac432ea6a45eca67249b209be216c0a
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py

  Log Message:
  -----------
  [lldb][test] TestDataFormatterLibcxxOptionalSimulator.py: skip on older Clang versions


  Commit: de51bced24842d095a50f5c15d67440e55b8371e
      https://github.com/llvm/llvm-project/commit/de51bced24842d095a50f5c15d67440e55b8371e
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    R clang/lib/CIR/Dialect/Transforms/LoweringPrepareCXXABI.h
    R clang/lib/CIR/Dialect/Transforms/LoweringPrepareItaniumCXXABI.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/test/CIR/CodeGen/dynamic-cast.cpp

  Log Message:
  -----------
  [CIR][NFC] Move ABI lowering of dynamic_cast to CXXABILowering (#176931)

This patch moves the ABI lowering for `dynamic_cast` from
LoweringPrepare to the new CXXABILowering pass. This effectively removes
ABI lowering code away from LoweringPrepare, thus the patch also removes
the LoweringPrepareCXXABI classes and files.

Related to #175968 .


  Commit: 9357c5906cd8b3d5f15fec853f458b1478f03e4a
      https://github.com/llvm/llvm-project/commit/9357c5906cd8b3d5f15fec853f458b1478f03e4a
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Target/SPIRV/SPIRVLegalizeZeroSizeArrays.cpp
    M llvm/lib/Target/SPIRV/SPIRVPrepareGlobals.cpp
    M llvm/test/CodeGen/SPIRV/fembed-bitcode-marker.ll
    M llvm/test/CodeGen/SPIRV/hip_dyn_lds.ll

  Log Message:
  -----------
  [SPIRV] Unify unsized array handling for AMGCN flavoured SPIR-V (#175848)

Currently we handle 0-sized arrays in multiple places, non-uniformly,
either via `SPIRVLegalizeZeroSizeArrays` or via `SPIRVPrepareGlobals`.
For AMDGCN flavoured SPIR-V we have a singular, simpler solution: set
all 0-sized arrays to be `UINT64_MAX` sized. This is an unambiguous
token that we can use during reverse translation to restore the intended
0 size.


  Commit: 95687721874d2e32296cc377e819eee15dfb8ae7
      https://github.com/llvm/llvm-project/commit/95687721874d2e32296cc377e819eee15dfb8ae7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.mfma.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx90a.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx942.mir
    M llvm/test/CodeGen/AMDGPU/acc-ldst.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/gfx90a-enc.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.exp.simple.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx942.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.i8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx942.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.iterative.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sched.group.barrier.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
    M llvm/test/CodeGen/AMDGPU/partial-regcopy-and-spill-missed-at-regalloc.ll
    M llvm/test/CodeGen/AMDGPU/spill-agpr.ll
    M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll

  Log Message:
  -----------
  AMDGPU: Select VGPR MFMAs by default (#159493)

AGPRs are undesirable since they are only usable by a
handful instructions like loads, stores and mfmas and everything
else requires copies to/from VGPRs. Using the AGPR form should be
a measure of last resort if we must use more than 256 VGPRs.


  Commit: 925b033fce5481cc57df4b767318b318af4ebc13
      https://github.com/llvm/llvm-project/commit/925b033fce5481cc57df4b767318b318af4ebc13
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp

  Log Message:
  -----------
  [CoroFrame][NFC] Create more helper functions for insertSpills (#177149)

This allows us to delete some variables and simplify the core loop of of
insertSpills.


  Commit: d5899ccb6f338e254995760bf11c6acddade5391
      https://github.com/llvm/llvm-project/commit/d5899ccb6f338e254995760bf11c6acddade5391
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/AST/Expr.cpp
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/test/CodeGen/atomic-ops.c
    M clang/test/CodeGen/scoped-atomic-ops.c
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/scoped-atomic-ops.c
    M libclc/clc/lib/generic/atomic/clc_atomic_dec.cl
    M libclc/clc/lib/generic/atomic/clc_atomic_inc.cl
    M openmp/device/include/Synchronization.h

  Log Message:
  -----------
  [Clang] Rename `uinc_wrap` and add normal atomic builtin (#177253)

Summary:
The `__scoped_atomic` builtins are supposed to match the standard
GNU-flavored `__atomic` builtins. We added a scoped builtin without a
corresponding standard one before the fork so this should be added in
the release candidate. These were originally added in
https://github.com/llvm/llvm-project/pull/168666

Also, the name `uinc_wrap` does not follow the naming convention. The
GNU atomics use `fetch_xyz` to indicate that the builtin returns the
previous location's value as part of the RMW operation, which these do.
This PR renames it and its uses.


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/test/Transforms/InstCombine/load-addrspacecast-select.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine] Propagate profiles when folding addrscast through loads (#177214)

#176352 introduced a new fold and a new test for this functionality.
Given the select condition is the same before and after, we can
propagate any profile information that may be attached to the select
instruction. We should not need to explicitly drop any metadata off the
select.


  Commit: 02d34a76f70db89fc8cab379208cabacfecefab8
      https://github.com/llvm/llvm-project/commit/02d34a76f70db89fc8cab379208cabacfecefab8
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp

  Log Message:
  -----------
  [NFCI][AMDGPU] Remove more redundant code from `GCNSubtarget.h` (#177297)

We are getting pretty close to use `GET_SUBTARGETINFO_MACRO` in the
header with this cleanup.


  Commit: 9f536c771d29a11cc1767e36ae0d56452d1e56fa
      https://github.com/llvm/llvm-project/commit/9f536c771d29a11cc1767e36ae0d56452d1e56fa
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h

  Log Message:
  -----------
  [NFC][AMDGPU] Remove unused `FeatureDisable` (#177288)


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

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

  Log Message:
  -----------
  [X86] computeKnownBitsForTargetNode - add basic X86ISD::BZHI handling (#177347)

Currently limited to constant masks, if the mask (truncated to i8) if
less than the bitwidth then it will zero the upper bits.

So far it mainly just handles BZHI(X,0) -> 0 and BZHI(C1,C2) constant
folding.

All the BMI node combines seem to just call SimplifyDemandedBits - so
I've merged them into a single combineBMI.


  Commit: af4f5ee93bf5ac4d8f0056b1a9dbdaa6732a7809
      https://github.com/llvm/llvm-project/commit/af4f5ee93bf5ac4d8f0056b1a9dbdaa6732a7809
  Author: Aryan Kadole <aryankadole95 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [DAG] SDPatternMatch - add m_Negative/m_StrictlyPositive/m_NonNegative/m_NonPositive/m_NonZero matchers (#175191)

Resolves #174327


  Commit: c63a744f3fbc91f0f544d79a50ae91e860d092b7
      https://github.com/llvm/llvm-project/commit/c63a744f3fbc91f0f544d79a50ae91e860d092b7
  Author: Dan Blackwell <dan_blackwell at apple.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/test/CodeGen/lifetime-sanitizer.c
    M clang/test/CodeGenCXX/lifetime-sanitizer.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/lifetime-sanitizer.ll

  Log Message:
  -----------
  [CodeGen][InstCombine][Sanitizers] Emit lifetimes when compiling with memtag-stack (#177130)

Currently we do not emit lifetimes by default when compiling with
memtag-stack - which means we don't catch use-after-scope (when
compiling without optimization).

This patch fixes that by mirroring ASan, HWASan and MSan, and always
emitting lifetime markers. The patch is based on the changes made in
aeca569.

rdar://163713381


  Commit: 7a37eacbf56c8022ad716f2e1b17497bd6ae3602
      https://github.com/llvm/llvm-project/commit/7a37eacbf56c8022ad716f2e1b17497bd6ae3602
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    A flang/test/Fir/FirToSCF/any.fir
    A flang/test/Fir/FirToSCF/do-extra.fir
    A flang/test/Fir/FirToSCF/if-extra.fir
    A flang/test/Fir/FirToSCF/iterate-while-extra.fir
    A flang/test/Fir/FirToSCF/nested-unregistered.fir
    A flang/test/Fir/FirToSCF/normalize.fir
    A flang/test/Fir/FirToSCF/sum.fir

  Log Message:
  -----------
  [flang] [test] add tests for FIRToSCF (#176026)

Increase the coverage of FIRToSCF testing.


  Commit: 580176741d990d14f65db81574aaa8954b76b793
      https://github.com/llvm/llvm-project/commit/580176741d990d14f65db81574aaa8954b76b793
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  [mlir] Add myself as CODEOWNER for `ControlFlowInterfaces` (#177366)

Set up notifications and automatically add myself as reviewer.


  Commit: b4b9ed6ad16f7ecdf947b92b8ee250d6d0cf7636
      https://github.com/llvm/llvm-project/commit/b4b9ed6ad16f7ecdf947b92b8ee250d6d0cf7636
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/include/clang/Driver/CommonArgs.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    A flang/test/Driver/global-isel.f90
    A flang/test/Driver/lto-global-isel.f90

  Log Message:
  -----------
  [Flang][Driver] Enable the global-isel option (#177188)


  Commit: 986be54564add8e8fd0dade557d663a87661deb9
      https://github.com/llvm/llvm-project/commit/986be54564add8e8fd0dade557d663a87661deb9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td

  Log Message:
  -----------
  [RISCV] Use DecoderMethod and a template function to reduce the amount of boilerplate for decodings a register class. NFC (#177296)

The decode functions for GPR/FPR and their compressed register classes
are very similar. We just need the number of registers, the constant for
the first register in the class, and whether or not the register class
is shrunk by RVE.

I've added a template function that takes this information and used the
DecoderMethod in tablegen to provide the values for the the template
parameters.

I kept an alias for DecodeGPRRegisterClass because it has multiple
callers.

---------

Co-authored-by: Sam Elliott <sam at lenary.co.uk>


  Commit: d23b3a58dd159612dd7ebb0692771545c277f248
      https://github.com/llvm/llvm-project/commit/d23b3a58dd159612dd7ebb0692771545c277f248
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add sub_128 SubRegIndex. Use if for FPR256. (#176986)

Instead of branching FPR256 from FPR32, branch it from FPR128. The
hardware that supports FPR256 doesn't have D or Q, but I assume if it
did, the FPR64/FPR128 registers would be subregs of FPR256.


  Commit: ada79f4c2691ab6546d379a144377162fd4f5191
      https://github.com/llvm/llvm-project/commit/ada79f4c2691ab6546d379a144377162fd4f5191
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ModuleManager.cpp

  Log Message:
  -----------
  [clang][modules] Read PCM validation timestamp earlier (#177062)

When building a module, the PCM file is always written first and then
the validation timestamp gets created. Clang needs to first read the
validation timestamp and only then read the PCM file. Otherwise, it
could read an out-of-date PCM file and then read the validation
timestamp for its new up-to-date version. This would erroneously skip
validation with `-fmodules-validate-once-per-build-session`. I'm not
concerned about multiple Clang instances seeing different filesystem
contents from each other within a single build session, since that would
break the assumption `-fmodules-validate-once-per-build-session` relies
on.


  Commit: fe5f6f5be884619318df02523f970dc7d9a7dc9d
      https://github.com/llvm/llvm-project/commit/fe5f6f5be884619318df02523f970dc7d9a7dc9d
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/cuf03.cuf

  Log Message:
  -----------
  [flang][cuda] Allow pointer object with the managed attribute (#177304)


  Commit: 7f7d78d05c3558b6dd201cb735ec0f16e3636ba8
      https://github.com/llvm/llvm-project/commit/7f7d78d05c3558b6dd201cb735ec0f16e3636ba8
  Author: Hussam A. <60274772+hussam-alhassan at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
    A llvm/test/CodeGen/AArch64/aarch64-condopt-cross-block-different-regs.mir
    M llvm/test/CodeGen/AArch64/combine-comparisons-by-cse.ll

  Log Message:
  -----------
  [AArch64] Add register check to ConditionOptimizer cross-block logic (#176528)

This patch adds a missing guard to the AArch64 ConditionOptimizer pass

Previously, the cross-block optimization would not check for register
equivalence before modifying the two comparison instructions.

This means that two cmp instructions with suitable cond codes and
immediates would be modified, even if their registers were different,
which would not trigger CSE afterwards. This doesn't affect correctness
but is unhelpful.

A negative ll test and mir tests has also been added to confirm this
fix.


  Commit: d6e1f70e671032bcbce69f38d57deeed6db801b5
      https://github.com/llvm/llvm-project/commit/d6e1f70e671032bcbce69f38d57deeed6db801b5
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/docs/Extensions.md
    M flang/include/flang/Evaluate/initial-image.h
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Evaluate/fold.cpp
    M flang/lib/Evaluate/initial-image.cpp
    M flang/lib/Semantics/data-to-inits.cpp
    M flang/lib/Semantics/data-to-inits.h
    M flang/lib/Semantics/semantics.cpp
    A flang/test/Semantics/bug2098.f90
    M flang/test/Semantics/data07.f90
    M flang/test/Semantics/data12.f90
    M flang/test/Semantics/data23.f90
    M flang/test/Semantics/equivalence02.f90

  Log Message:
  -----------
  [flang] Allow multiple identical DATA initializations (#177063)

ISO Fortran disallows DATA statements from affecting the same bit of
memory more than once; however, all (but one) other compilers allow this
usage. They differ, however, in the case of multiple distinct
initializations -- some compilers take the "last" value in source order,
some don't.

This patch accepts multiple identical DATA initializations, which is
portable usage that appears in code, and emits an optional warning. It
continues to detect and report multiple distinct DATA initializations,
since they are not portable.


  Commit: c66546bfc8a28322664384f95794f910fc008630
      https://github.com/llvm/llvm-project/commit/c66546bfc8a28322664384f95794f910fc008630
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/declarations06.f90

  Log Message:
  -----------
  [flang] Improve error message for polymorphic implicit interface (#177225)

PROCEDURE(CLASS(...)) specifies a procedure with an implicit interface
whose result is polymorphic. That turns out to never be a valid
declaration, since a CLASS(...) function result is required to also be
POINTER or ALLOCATABLE, both of which require the presence of an
explicit interface. We caught this error already, but the message should
be improved for procedures.

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


  Commit: 1493ae5da2b8d445fa195142babb000ba99937d8
      https://github.com/llvm/llvm-project/commit/1493ae5da2b8d445fa195142babb000ba99937d8
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Parser/message.cpp
    M flang/lib/Parser/program-parsers.cpp
    M flang/lib/Semantics/check-coarray.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Parser/keyword-optional-spaces.f90

  Log Message:
  -----------
  [flang] Allow missing space in some free-form keywords (#177254)

When asked to emit warnings about missing spaces in free form source
code, flang-new is emitting some warnings in cases when the space is an
optional one between keywords. Use the existing token matching
capability that allows these ("END " with a trailing blank), add a test
for all cases in Table 6.2, and fix a couple other bogus warning exposed
by compiling that test with -pedantic.

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


  Commit: 711e8e56943c0188b037f3a9a42905d071949c90
      https://github.com/llvm/llvm-project/commit/711e8e56943c0188b037f3a9a42905d071949c90
  Author: Cheng Lingfei <53817093+clingfei at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/aarch64-mops.ll

  Log Message:
  -----------
  [AArch64] Optimize memcpy for non-power of two sizes (#168890)

The previous getMemcpyLoadsAndStores implementation would chain
load/store instructions from "NumLdStInMemcpy - GlueIter -
GluedLdStLimit" to "NumLdStInMemcpy - GlueIter". This approach caused
issues when copying non-power-of-two sizes, as it would chain leading
load/stores with subsequent instructions at non-power-of-two aligned
offsets.

This chaining pattern prevented optimal optimizations in
aarch64-ldst-opt pass for these load/store instructions.

This commit modifies the chaining range to be from GlueIter to GlueIter
+ GluedLdStLimit, enabling proper optimization of load/store
instructions in aarch64-ldst-opt.


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


  Commit: 3954cd2db69dcaa87676752dfc6fec9408cd9540
      https://github.com/llvm/llvm-project/commit/3954cd2db69dcaa87676752dfc6fec9408cd9540
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVCallLowering.h
    A llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp_no_return.ll

  Log Message:
  -----------
  [SPIRV] Process indirect function calls immediately (#177222)

The SPIR-V backend processes indirect function calls in
`SPIRVCallLowering`, which is a subclass of the generic `CallLowering`.

It intends to process them function by function, by first collecting all
indirect calls in a function, and then processing all of a function's
indirect calls at once when the call lowering for the function is about
to end.

Today, it relies on the `lowerReturn` virtual function to be called by
the generic call lowering infra to know the function processing is about
to end, and at that time it processes all of the collected indirect
calls and clears the vector of indirect calls.

The problem is that not all functions have return instructions. Every
basic block must have a terminator instruction, but it does
[not](https://llvm.org/docs/LangRef.html#terminator-instructions) have
to be a return.

In the failing case here, function `a` has an infinite loop, with every
iteration having an indirect call and a check to see if it should break
out of the infinite loop. There is a return instruction initially, but
it is optimized out in the middle end. There is also an unrelated
function `b` with no indirect calls.

During call lowering, information about the indirect call in `a` is
captured in the vector in SPIRVCallLowering, but since there is no
return instruction, it is never processed.

Then, function `b` is processed. `b` happens to have a return
instruction, so the indirect call from `a` is processed, but the
processing assumes that the indirect call is inside the function being
processed, and it writes to a `{function, register}->SPIRVType` map, but
the function is `b` not `a`.

This ends up causing the map to have an invalid SPIRVType for the
register in function `b`, and `b` happens to have a register of the same
type, causing an invalid result from the map lookup and thus invalid IR
(`G_ADDRSPACE_CAST` from `ptr addrspace(4)` to `i32`).

We can't move the indirect call processing into a seperate pass because
we lose required information after call lowering ends.

Here, we change the indirect call processing to be done immediately when
it is seen.

Comments say the reason the collect all then process style was done was
to get better type information for the caller of the indirect function
if an opaque pointer is an arg to the caller and the indirect function,
but [an existing test
case](https://github.com/llvm/llvm-project/blob/main/llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/fp-simple-hierarchy.ll)
seems to exercise this, and the test still passes after this change and
actually has the exact same assembly.

The test case added is a minimal example from `llvm-reduce`, so it's
just an infinite loop with no exit condition.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 6de6f7b46bda0fef45b997d05fe57e046f60e4df
      https://github.com/llvm/llvm-project/commit/6de6f7b46bda0fef45b997d05fe57e046f60e4df
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/OffloadArch.h
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    M libclc/CMakeLists.txt
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/TargetParser/TargetParser.h
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/Target/AMDGPU/GCNProcessors.td
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/TargetParser/TargetParser.cpp
    M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
    M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
    M llvm/test/CodeGen/AMDGPU/occupancy-levels.ll
    M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
    M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [AMDGPU] Define gfx1310 target with ELF number 0x50 (#177355)

For now this is identical to gfx1250.

---------

Co-authored-by: Jay Foad <jay.foad at amd.com>


  Commit: 65134634f994d3aa44e45338e3fbd65ab9b7f3f4
      https://github.com/llvm/llvm-project/commit/65134634f994d3aa44e45338e3fbd65ab9b7f3f4
  Author: Endre Fülöp <endre.fulop at sigmatechnology.com>
  Date:   2026-01-22 (Thu, 22 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:
  -----------
  Reland "[clang][analyzer] Add ReportInC99AndEarlier option to Depreca… (#177379)

…tedOrUnsafeBuf…" (#176603)

The bolt-aarch64-ubuntu-clang failure seems unrelated.

This reverts commit 17ff9b3c67ab62f77b2dd5cba98fa0011f14d9a2.


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

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp

  Log Message:
  -----------
  GlobalISel: Fix mishandling vector-as-scalar in return values (#175780)

This fixes 2 cases when the AMDGPU ABI is fixed to pass <2 x i16>
values as packed on gfx6/gfx7. The ABI does not pack values
currently; this is a pre-fix for that change.

Insert a bitcast if there is a single part with a different size.
Previously this would miscompile by going through the scalarization
and extend path, dropping the high element.

Also fix assertions in odd cases, like <3 x i16> -> i32. This needs
to unmerge with excess elements from the widened source vector.

All of this code is in need of a cleanup; this should look more
like the DAG version using getVectorTypeBreakdown.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/add.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/add.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/andn2.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ashr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_flat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_global.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local_2.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/bswap.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/dummy-target.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fpow.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fshr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.abs.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/load-constant.96.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/lshr.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/orn2.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sext_inreg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/shl-ext-reduce.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/shl.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/sub.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/uaddsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/usubsat.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/xnor.ll
    M llvm/test/CodeGen/AMDGPU/abs_i16.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/bswap.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
    M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll
    M llvm/test/CodeGen/AMDGPU/ctlz_zero_undef.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/fmax3-maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/fmax3.ll
    M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3-minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/fmin3.ll
    M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fneg.ll
    M llvm/test/CodeGen/AMDGPU/fpow.ll
    M llvm/test/CodeGen/AMDGPU/fract-match.ll
    M llvm/test/CodeGen/AMDGPU/fshr.ll
    M llvm/test/CodeGen/AMDGPU/function-args.ll
    M llvm/test/CodeGen/AMDGPU/function-returns.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/reassoc-mul-add-1-to-mad.ll
    M llvm/test/CodeGen/AMDGPU/repeated-divisor.ll
    M llvm/test/CodeGen/AMDGPU/roundeven.ll
    M llvm/test/CodeGen/AMDGPU/saddsat.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/select-flags-to-fmin-fmax.ll
    M llvm/test/CodeGen/AMDGPU/select.f16.ll
    M llvm/test/CodeGen/AMDGPU/sgpr-count-graphics.ll
    M llvm/test/CodeGen/AMDGPU/sibling-call.ll
    M llvm/test/CodeGen/AMDGPU/ssubsat.ll
    M llvm/test/CodeGen/AMDGPU/strict_fpext.ll
    M llvm/test/CodeGen/AMDGPU/strict_fptrunc.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/trunc-combine.ll
    M llvm/test/CodeGen/AMDGPU/uaddsat.ll
    M llvm/test/CodeGen/AMDGPU/usubsat.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-add.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-and.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fadd.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmul.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-or.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-smin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-xor.ll

  Log Message:
  -----------
  AMDGPU: Change ABI of 16-bit element vectors on gfx6/7 (#175781)

Fix ABI on old subtargets so match new subtargets, packing
16-bit element subvectors into 32-bit registers. Previously
this would be scalarized and promoted to i32/float.

Note this only changes the vector cases. Scalar i16/half are
still promoted to i32/float for now. I've unsuccessfully tried
to make that switch in the past, so leave that for later.

This will help with removal of softPromoteHalfType.


  Commit: 4016592bf7560f17c9fbab127d50d6ed7713603d
      https://github.com/llvm/llvm-project/commit/4016592bf7560f17c9fbab127d50d6ed7713603d
  Author: DaKnig <37626476+DaKnig at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/neon-abd.ll

  Log Message:
  -----------
  [SDAG] (abd? (?ext x), c) -> (zext (abd? x, c)) (#176366)

just the existing pattern, with constants


  Commit: 71a2e8fa1811ecd949a3d3fc649077e3c1c73487
      https://github.com/llvm/llvm-project/commit/71a2e8fa1811ecd949a3d3fc649077e3c1c73487
  Author: eleviant <56861949+eleviant at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/tail-call-stack-args.ll

  Log Message:
  -----------
  [AArch64] Don't skip storing stack arguments in case of size mismatch (#177360)

Wnen argument on stack needs to be zero extended, we can't omit ld/st
pair, because we may get an undefined value in certain conditions. (e.g
the code below will print 0xFFFFFFFF00000042 instead of 0x42)

```
[[gnu::noinline]]
void baz(int, int, int, int, int, int, int, int, long v)
{
    printf("Value of v: %#lx\n", v);
}

[[gnu::noinline]]
void bar(int i1, int i2, int i3, int i4, int i5, int i6, int i7, int i8, unsigned v)
{
    baz(i1, i2, i3, i4, i5, i6, i7, i8, v);
}

[[gnu::noinline]]
void foo(int=1, int=2, int=3, int=4, int=5, int=6, int=7, int=8, uint64_t dummy=-1ULL)
{
  bar(1, 2, 3, 4, 5, 6, 7, 8, 0x42)
}
```


  Commit: 5692ae96a8c7637181e461ae27b93a2bd9d72475
      https://github.com/llvm/llvm-project/commit/5692ae96a8c7637181e461ae27b93a2bd9d72475
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/combine-pclmul.ll

  Log Message:
  -----------
  Revert "[X86] combinePCLMULQDQ - attempt to fold PCLMULQDQ(SHUFFLE(X),SHUFFLE(Y),C) -> PCLMULQDQ(X,Y,C') (#176932)"

This reverts commit c13a730c89da0a28b011a157bdfacd8625201625.

Makes clang assert, standalone repro here:
https://github.com/llvm/llvm-project/pull/176932#issuecomment-3785362760


  Commit: 1036d782ae83b37578d6a810544a30f7453b79e9
      https://github.com/llvm/llvm-project/commit/1036d782ae83b37578d6a810544a30f7453b79e9
  Author: Andre Kuhlenschmidt <andre.kuhlenschmidt at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/test/Lower/assigned-goto.f90

  Log Message:
  -----------
  [flang][lowering] lowering assigned goto of allocatable variable (#175874)

towards [#173594](https://github.com/llvm/llvm-project/issues/173594)

This PR adds a lowering for `AssignedGoto`s that reference an
allocatable variable.


  Commit: 39642a4b22a2494a25ee31b06ad5f8e55d11d6d0
      https://github.com/llvm/llvm-project/commit/39642a4b22a2494a25ee31b06ad5f8e55d11d6d0
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-22 (Thu, 22 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
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mul.mir
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_MUL (#177314)

Add missing S16, S64, and V2S16 support for G_MUL.


  Commit: 8b59338e9b7bbea9357ae40427f796a6e44d44fc
      https://github.com/llvm/llvm-project/commit/8b59338e9b7bbea9357ae40427f796a6e44d44fc
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.sbfe.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.ubfe.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add ubfe and sbfe intrinsic RegBankLegalize rules (#177276)


  Commit: 26eb7382502ef46f3553f9016f6d4677427e1d38
      https://github.com/llvm/llvm-project/commit/26eb7382502ef46f3553f9016f6d4677427e1d38
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-22 (Thu, 22 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
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mul.mir
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll

  Log Message:
  -----------
  Revert "[AMDGPU][GlobalISel] Add RegBankLegalize support for G_MUL" (#177405)

Reverts llvm/llvm-project#177314

mul.ll test is failing expensive checks.


  Commit: f18b4ec54935c1ed0cbb8b4403086be830d9bb48
      https://github.com/llvm/llvm-project/commit/f18b4ec54935c1ed0cbb8b4403086be830d9bb48
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [TableGen] Avoid emitting a switch that only contains a default. (#177391)

Addresses post commit feedback from #174471


  Commit: 4b1cfc5d7c606ece125d1e0ef6d13e0289553200
      https://github.com/llvm/llvm-project/commit/4b1cfc5d7c606ece125d1e0ef6d13e0289553200
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIFrameLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp

  Log Message:
  -----------
  [NFCI][AMDGPU] Final touch before moving to `GET_SUBTARGETINFO_MACRO` (#177401)


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

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  OMPIRBuilder.cpp - fix gcc Wparentheses warning. NFC. (#177403)


  Commit: 2b30325fb34452f04cecc3c466a11b21bc009e3d
      https://github.com/llvm/llvm-project/commit/2b30325fb34452f04cecc3c466a11b21bc009e3d
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/.clang-format

  Log Message:
  -----------
  [LLVM] Disable clang-format for TableGen files (#177002)

Clang-format is not very maintained for TableGen, and seems to make odd
choices that differ significantly from how humans write and read the
backend's tablegen.

For the moment, disable clang-format for TableGen files. This should
also apply when using `git clang-format`, which should help with newer
contributors who sometimes end up formatting td files by accident.


  Commit: 5c35af8f1e6ebc7c32721723e8afc5015e67f867
      https://github.com/llvm/llvm-project/commit/5c35af8f1e6ebc7c32721723e8afc5015e67f867
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/test/CodeGen/RISCV/rv32zbc-intrinsic.ll
    M llvm/test/CodeGen/RISCV/rv32zbc-zbkc-intrinsic.ll
    M llvm/test/CodeGen/RISCV/rv64zbc-intrinsic.ll
    M llvm/test/CodeGen/RISCV/rv64zbc-zbkc-intrinsic.ll

  Log Message:
  -----------
  [RISCV] Replace RISCVISD::CLMUL* with ISD::CLMUL*. (#177386)

This patch does the minimum to remove RISCVISD::CLMUL*. It does not
remove existing intrinsics.

There's some missed optimizations for i32 CLMULH/CLMULR on RV64, but
those may be generic issues.

I've put the test cases in the existing files so it's more obvious what
the missed optimizations are by comparing within the file.


  Commit: 3e341320b36cc25379089c8108afd452da3e112c
      https://github.com/llvm/llvm-project/commit/3e341320b36cc25379089c8108afd452da3e112c
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Improve building on/for Windows (#171761)

Few things going on here:
- I think we should be able to use the blake3 x86-64 asm on windows with
some slight adjustments (sorry it's still named *_unix.S, renaming
seemed like a bit bigger project)
- `genrule` is really evil because it bakes the path to the host bash
into the command, which fails spectacularly when running on a
non-windows remote executor. Swap to `write_file`/`run_binary` rules to
mitigate it
- The existing windows linkopts do not work correctly for clang in mingw
mode

With this set of changes (as well as another one that rewrites
`bundle_resources.py` into C) I am able to hermetically cross-build
clang/lld/etc from a windows host to a (mingw) windows target on a linux
executor, and use the resulting compilers to compile C binaries/tests
(see
https://github.com/dzbarsky/toolchains_llvm_bootstrapped/actions/runs/20121686105/job/57743214313?pr=1
and https://github.com/dzbarsky/toolchains_llvm_bootstrapped/pull/1)


  Commit: 829ebfd5062302d6b1472ca2a4ba6367fff82501
      https://github.com/llvm/llvm-project/commit/829ebfd5062302d6b1472ca2a4ba6367fff82501
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [bazel] dsymutil should link against CF framework on darwin (#177394)

Matches cmake
https://github.com/llvm/llvm-project/blob/6de6f7b46bda0fef45b997d05fe57e046f60e4df/llvm/tools/dsymutil/CMakeLists.txt#L48


  Commit: e1bd0ee125d07b1a745f51e04fb0ed38fe0ff4ac
      https://github.com/llvm/llvm-project/commit/e1bd0ee125d07b1a745f51e04fb0ed38fe0ff4ac
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [AArch64][NFC] Extract a `LowerNTStore()` method (#176872)

Extracts nontermporal store lowering from `LowerSTORE` into its own
private method `LowerNTStore`. The refactoring improves overall code
structure (and prepares for later scaling of custom STNP lowering
logic).


  Commit: c31e506dab719461efbd3dd18dd3cd6841d8d2f8
      https://github.com/llvm/llvm-project/commit/c31e506dab719461efbd3dd18dd3cd6841d8d2f8
  Author: Egor Zhdan <e_zhdan at apple.com>
  Date:   2026-01-22 (Thu, 22 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] Support overloaded operators

This adds support for annotating C++ operators via API Notes. For instance:
```
Tags:
- Name: MyTag
  Methods:
  - Name: operator+
    Availability: none
```

At the moment only operators that are declared as methods of C++ records can be annotated.

rdar://148534260


  Commit: 4c5ffe74e849e841ae5bc7ea357d506fae41384d
      https://github.com/llvm/llvm-project/commit/4c5ffe74e849e841ae5bc7ea357d506fae41384d
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/LTO.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Writer.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/ObjC.cpp
    M lld/MachO/SymbolTable.cpp
    M lld/include/lld/Common/BPSectionOrdererBase.inc

  Log Message:
  -----------
  [lld][ELF/MachO] Use `.contains` rather than `.count` for set membership. NFC (#177404)

This matches the usage in the other linker backends.

See #176610, #177067


  Commit: a1062d98bbce2af9f6ef8f85837f40b523ee1f3f
      https://github.com/llvm/llvm-project/commit/a1062d98bbce2af9f6ef8f85837f40b523ee1f3f
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/ProfileVerify.cpp
    M llvm/test/Transforms/PGOProfile/prof-verify-no-entrycount.ll
    M llvm/test/Transforms/PGOProfile/prof-verify.ll
    M llvm/test/Transforms/PGOProfile/profcheck-llvm.global_ctors.ll
    M llvm/test/Transforms/PGOProfile/profcheck-select.ll

  Log Message:
  -----------
  [profcheck] Print the function name in the error (#177264)

This is helpful for tests with a lot of test cases and grepping for
instructions with missing profile data isn't feasible because it doesn't
account for things like vectors which are exempt.

Tracking issue: #147390


  Commit: 84db4da288b1b2b69ee7e42e9fbab8edb55fa299
      https://github.com/llvm/llvm-project/commit/84db4da288b1b2b69ee7e42e9fbab8edb55fa299
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libc/src/__support/wchar/character_converter.h

  Log Message:
  -----------
  [libc] Fix character converter in C++20 (#177421)

Internally character converter uses char8_t to represent a character.
Before C++20 we provide a typedef for it, but since C++20 it's a
keyword. The keyword version isn't listed in our is_integral, causing
countl to reject it as an invalid type. This patch just casts from
char8_t to int8_t to sidestep the issue, but in future we may want to
add char8_t, char16_t, and char32_t to our is_integral.


  Commit: 73549e60460abd1b850477d1b4409b833ef04a08
      https://github.com/llvm/llvm-project/commit/73549e60460abd1b850477d1b4409b833ef04a08
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/utils/reduce-clang-crash.py

  Log Message:
  -----------
  reduce-clang-crash.py: Use creduce if cvise is not found (#177413)

See discussion on #128592.


  Commit: 0381093140428b727a1a7af708ec034a8b07d521
      https://github.com/llvm/llvm-project/commit/0381093140428b727a1a7af708ec034a8b07d521
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [msan] Handle NEON vsli/vsri (vector shift left/right and insert) (#177283)

This does a shift and combine on the two vectors, hence we can precisely
propagate the shadow by applying the intrinsic to the input shadows.


  Commit: 2e08bf7c53e142b69b6ad449025565122ff89780
      https://github.com/llvm/llvm-project/commit/2e08bf7c53e142b69b6ad449025565122ff89780
  Author: Stanislav Mekhanoshin <Stanislav.Mekhanoshin at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp

  Log Message:
  -----------
  [TableGen] Prefer base class on tied RC sizes (#177257)

When searching for a matching subclass tablegen behavior is non
deterministic if we have several classes with the same size.
Break the tie by choosing a class with smaller BaseClassOrder.


  Commit: 68c67dbd2cdc8db5b8847d8ca56487fe50132ff5
      https://github.com/llvm/llvm-project/commit/68c67dbd2cdc8db5b8847d8ca56487fe50132ff5
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/radians-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make radians overload tests stricter. NFC (#177252)

This patch is updating
`clang/test/CodeGenHLSL/builtins/radians-overloads.hlsl` to use -O1
instead of -disable-llvm-passes, and updating the check to match the
change accordenlly.

This work is part of #138016.


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

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    A clang/test/CIR/CodeGen/builtin-bit-cast.cpp

  Log Message:
  -----------
  [Clang][CIR] Implement CIRGen logic for __builtin_bit_cast (#176782)

NOTE: This PR upstreams code from
  * https://github.com/llvm/clangir.

This logic was originally implemented by Sirui Mu in
https://github.com/llvm/clangir/pull/762. Further
modification were made by other ClangIR contributors.

Co-authored-by: Sirui Mu <msrlancern at gmail.com>


  Commit: 9fc5fd0ad689eed94f65b1d6d10f9c5642935e68
      https://github.com/llvm/llvm-project/commit/9fc5fd0ad689eed94f65b1d6d10f9c5642935e68
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/LoadStoreVectorizer.ll
    A llvm/test/CodeGen/NVPTX/default-sm.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/NVPTX/math-intrins.ll
    M llvm/test/DebugInfo/NVPTX/dbg-declare-alloca.ll

  Log Message:
  -----------
  [NVPTX] Update the default SM to 7.5 (#176021)

Update NVPTX's default SM to sm_75. This matches the behavior of offline
compilation tools in the CUDA Toolkit (nvcc, ptxas, ...)


  Commit: 0e9ded5d91180a5369cc3afac70d940cfa803644
      https://github.com/llvm/llvm-project/commit/0e9ded5d91180a5369cc3afac70d940cfa803644
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    M flang/test/Semantics/cuf23.cuf

  Log Message:
  -----------
  [flang][cuda] Allow device descriptor in show_descriptor (#177424)

Descriptor are always in managed memory so it is safe to call
show_descriptor for them.


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

  Changed paths:
    A llvm/test/CodeGen/X86/clmul-vector-256.ll
    A llvm/test/CodeGen/X86/clmul-vector-512.ll

  Log Message:
  -----------
  [X86] Add 256-bit and 512-bit vector CLMUL test coverage (#176718)


  Commit: 4b939beb79e3390046b760bef71b7d891ba9b4df
      https://github.com/llvm/llvm-project/commit/4b939beb79e3390046b760bef71b7d891ba9b4df
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/test/CodeGenObjC/arc-arm.m
    M clang/test/CodeGenObjC/arc-foreach.m
    M clang/test/CodeGenObjC/arc-property.m
    M clang/test/CodeGenObjC/arc-related-result-type.m
    M clang/test/CodeGenObjC/arc-unopt.m
    M clang/test/CodeGenObjC/arc-unsafeclaim.m
    M clang/test/CodeGenObjC/arc-with-atthrow.m
    M clang/test/CodeGenObjC/ns_consume_null_check.m
    M clang/test/CodeGenObjC/objc-arc-container-subscripting.m
    M clang/test/CodeGenObjC/os_log.m
    M clang/test/CodeGenObjCXX/auto-release-result-assert.mm
    M clang/test/CodeGenObjCXX/inheriting-constructor-cleanup.mm
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll

  Log Message:
  -----------
  Reapply "[CGObjC] Allow clang.arc.attachedcall on -O0 (#164875)" (#177285)

This reverts commit 8eac375a4bff84f0a10a9c8ee23c4da409a805f9.

A unit test needed to be updated, that was all.

I do not have merge permissions.


  Commit: 056e5a32c80d0f494797788ecdaede314eb0f947
      https://github.com/llvm/llvm-project/commit/056e5a32c80d0f494797788ecdaede314eb0f947
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/call-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll
    M llvm/test/CodeGen/AMDGPU/cvt_f32_ubyte.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f32.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f64.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/fmax3-maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3-minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fneg.ll
    M llvm/test/CodeGen/AMDGPU/fpow.ll
    M llvm/test/CodeGen/AMDGPU/fract-match.ll
    M llvm/test/CodeGen/AMDGPU/function-args.ll
    M llvm/test/CodeGen/AMDGPU/function-returns.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/i1-to-bf16.ll
    M llvm/test/CodeGen/AMDGPU/integer-canonicalizing-src-modifiers.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.store.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.frexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/omod.ll
    M llvm/test/CodeGen/AMDGPU/private-memory-atomics.ll
    M llvm/test/CodeGen/AMDGPU/repeated-divisor.ll
    M llvm/test/CodeGen/AMDGPU/roundeven.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-flags-to-fmin-fmax.ll
    M llvm/test/CodeGen/AMDGPU/strict_fpext.ll
    M llvm/test/CodeGen/AMDGPU/strict_fptrunc.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fadd.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmul.ll

  Log Message:
  -----------
  AMDGPU: Change ABI of 16-bit scalar values for gfx6/gfx7 (#175795)

Keep bf16/f16 values encoded as the low half of a 32-bit register,
instead of promoting to float. This avoids unwanted FP effects
from the fpext/fptrunc which should not be implied by just
passing an argument. This also fixes ABI divergence between
SelectionDAG and GlobalISel.

I've wanted to make this change for ages, and failed the last
few times. The main complication was the hack to return
shader integer types in SGPRs, which now needs to inspect
the underlying IR type.


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

  Changed paths:
    M clang/Maintainers.rst

  Log Message:
  -----------
  Move John McCall to the inactive maintainers list (#177406)

While reaching out to folks for a maintainers list refresh, John asked
to step down due to other commitments. Thank you for all your help!


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

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

  Log Message:
  -----------
  [ProfCheck] Add LoopInterchange test to xfail list

LoopInterchange is not currently on in the default pipeline and we have
not done any work around profile propagation within the pass yet, so
disable the test for now to get the profcheck bot back to green.


  Commit: d10b2b566ae39e5fd20184d8fff45f3b87933461
      https://github.com/llvm/llvm-project/commit/d10b2b566ae39e5fd20184d8fff45f3b87933461
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/GlobalVariable.h
    M llvm/lib/Analysis/MemoryBuiltins.cpp
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/LTO/LTO.cpp
    M llvm/lib/Linker/LinkModules.cpp
    M llvm/lib/Object/IRSymtab.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/BPF/BTFDebug.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/TargetMachine.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
    M llvm/lib/Transforms/IPO/GlobalOpt.cpp
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp
    M llvm/lib/Transforms/Instrumentation/IndirectCallPromotion.cpp
    M llvm/lib/Transforms/Instrumentation/InstrProfiling.cpp
    M llvm/lib/Transforms/Scalar/JumpTableToSwitch.cpp
    M llvm/lib/Transforms/Utils/RelLookupTableConverter.cpp

  Log Message:
  -----------
  [NFCI] replace getValueType with new getGlobalSize query (#177186)

Returns uint64_t to simplify callers. The goal is eventually replace
getValueType with this query, which should return the known minimum
reference-able size, as provided (instead of a Type) during create.
Additionally the common isSized query would be replaced with an
isExactKnownSize query to test if that size is an exact definition.


  Commit: 35563fa37c5abd3fc91fd0ac026f3345a02d37a0
      https://github.com/llvm/llvm-project/commit/35563fa37c5abd3fc91fd0ac026f3345a02d37a0
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add dtor for failing CFG-based tests (#177362)


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

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

  Log Message:
  -----------
  AMDGPU: Mark strict_fp16_to_fp as expand (#177417)

This prevents a regression in a future change.


  Commit: e936715b8c5e624b5d6cc1e2e50a32c394d03209
      https://github.com/llvm/llvm-project/commit/e936715b8c5e624b5d6cc1e2e50a32c394d03209
  Author: Akshay Deodhar <adeodhar at nvidia.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/cmpxchg-sm60.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg-sm70.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg-sm90.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg.py

  Log Message:
  -----------
  [NVPTX] Weak cmpxchg unittests for NVPTX (#176078)


  Commit: e0a132691fe9499857d95dc1d26994f82f7f4a44
      https://github.com/llvm/llvm-project/commit/e0a132691fe9499857d95dc1d26994f82f7f4a44
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h

  Log Message:
  -----------
  [SystemZ] Precommit for moving some functions around. (#177441)

In preparation for #171066 (FP16 vector support).


  Commit: 14a209f8525a07339567863216cef4746485e97d
      https://github.com/llvm/llvm-project/commit/14a209f8525a07339567863216cef4746485e97d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-22 (Thu, 22 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/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/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll

  Log Message:
  -----------
  [VPlan] Replace ComputeFindIVRes with ComputeRdxRes + cmp + sel (NFC) (#176672)

Replace ComputeFindIVResult with ComputeReductionResult + explicit
compare + select, to more explicitly and simpler model computing finding
the first/last induction, which boils down to a min/max reduction +
compare and select of the sentinel value.

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


  Commit: 869256dbd6772badac6f442dd9679f46d1f7767c
      https://github.com/llvm/llvm-project/commit/869256dbd6772badac6f442dd9679f46d1f7767c
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 65134634f994


  Commit: 6934ed51b3345caf9a4005420d1d4078fa3716b9
      https://github.com/llvm/llvm-project/commit/6934ed51b3345caf9a4005420d1d4078fa3716b9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/include/llvm/IR/Metadata.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Transforms/Scalar/GVN.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/test/Transforms/ArgumentPromotion/metadata.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/GVN/PRE/load-metadata.ll
    A llvm/test/Transforms/GVN/merge-nofpclass.ll
    M llvm/test/Transforms/GVNHoist/hoist-md.ll
    M llvm/test/Transforms/InstCombine/fold-phi-load-metadata.ll
    M llvm/test/Transforms/InstCombine/loadstore-metadata.ll
    M llvm/test/Transforms/SROA/preserve-metadata.ll
    M llvm/test/Transforms/SimplifyCFG/hoist-with-metadata.ll
    A llvm/test/Verifier/nofpclass-metadata.ll
    M llvm/test/tools/llvm-reduce/reduce-operands-to-args-metadata-to-attributes.ll

  Log Message:
  -----------
  IR: Add !nofpclass metadata (#177140)

This adds the analogous metadata to the nofpclass attribute
to assert values are not a certain set of floating-point classes.
This allows the same information to be expressed if a function
argument is passed indirectly. This matches the bitmask encoding
of nofpclass.

I also think this should be allowed for stores to symmetrically handle
sret, but leave that for later.

Alternatively we could add a more expressive !fprange metadata,
but that would be much more complex. It's useful to match the attribute,
and more annotations can always be added.

Fixes #133560


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

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

  Log Message:
  -----------
  [X86] Add crash regression test reported on #176932 (#177414)

is128BitLaneRepeatedShuffleMask can't handle target shuffle masks containing SM_SentinelZero


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

  Changed paths:
    A llvm/test/CodeGen/X86/pclmulqdq.ll

  Log Message:
  -----------
  [X86] Add test coverage for #176879 (#177393)


  Commit: 967aeecdaa7db58db4cc896823b0327636c7219c
      https://github.com/llvm/llvm-project/commit/967aeecdaa7db58db4cc896823b0327636c7219c
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-waves-per-eu.ll
    R llvm/test/CodeGen/AMDGPU/default-flat-work-group-size-overrides-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-limit-gfx1250.ll
    A llvm/test/CodeGen/AMDGPU/waves-per-eu-hints-lower-occupancy-target.ll

  Log Message:
  -----------
  [AMDGPU] Allow amdgpu-waves-per-eu to lower target occupancy range (#168358)

`amdgpu-waves-per-eu` currently does not allow users to lower the target
occupancy range that the backend will try to achieve. For example, for a
kernel targeting gfx942 with default flat workgroup sizes and no LDS
usage, `AMDGPUSubtarget::getWavesPerEU` will by default produce the
range [4,10]. Setting `"amdgpu-waves-per-eu=M,N"` (N being optional)
will only have an effect if 4 <= M <= N <= 10, in which case the [M,N]
range will be produced instead. Advanced developers may in some cases
know that a specifc kernel would not benefit from higher occupancies and
wish to communicate that to the backend. It in turns could make better
codegen decisions if it knows that increasing occupancy is not a
priority.

This modifies the computation of the waves/EU range to enable this
behavior. User-provided minimum/maximum number of waves/EU are now able
to change the default waves/EU range almost arbitrarily, with only
subtarget's specifications and the maximum occupancy induced by
workgroup size and LDS usage limiting the target occupancy range. In the
previous example, the target range will be [M,N] as long as 1 <= M <= N
<= 10.

To allow users to specify only a maximum desired number of waves per EU,
the attribute now accepts a minimum value of 0 and understands it as a
wish to not restrict the minimum number of waves per EU (a minimum value
of 1 indicates instead that the user is ok with an occupancy of 1, so it
cannot be used as the default).


  Commit: 265d093d8fa96ef2c7d5c3c49ab68a59f144d790
      https://github.com/llvm/llvm-project/commit/265d093d8fa96ef2c7d5c3c49ab68a59f144d790
  Author: Kjetil Kjeka <kjetilkjeka at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.cpp
    A llvm/test/CodeGen/NVPTX/extern-shared-valid-name.ll

  Log Message:
  -----------
  [NVPTX] fix illegal name for .extern .shared global variables (#173018)

In ptx we can create a GV in AS(3) that will be compiled to a `.extern
.shared` in ptx. Since the `.extern .shared` is not an "extern" in the
traditional sense of the word it will not be linked based on name but
rather refer to the shared memory allocated at kernel launch.

Since we don't care about the name it's tempting to make the GV unnamed.
Then the problem that the `nameUnamedGlobals` will use a name for the
global that is invalid ptx occurs. For non-extern globals, this is later
fixed by running the `NVPTXAssignValidGlobalNames` pass. However, It
makes sure to not touch externs as changing the name of "traditional
externs" will cause linking issues down the road.

This MR treats `.extern .shared` in the same manner as non-extern
globals during `NVPTXAssignValidGlobalNames` to fix the invalid names
given by `nameUnamedGlobals`.

Co-authored-by: Kjetil Kjeka <kjetil at muybridge.com>


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

  Changed paths:
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/test/Dialect/Arith/int-range-interface.mlir
    M mlir/test/Dialect/SCF/canonicalize.mlir
    M mlir/test/Dialect/SCF/one-shot-bufferize.mlir

  Log Message:
  -----------
  [mlir][Interfaces] Add generic pattern for region inlining (#176641)

Add a new canonicalization pattern that inlines the body of acyclic
`RegionBranchOpInterface` ops. This pattern is a generalization and
replacement for the following existing patterns:

* `SingleBlockExecuteInliner`: inlines `scf.execute_region` ops with a
single block.
* `SimplifyTrivialLoops`: inlines / folds away `scf.for` ops with 0 or 1
iterations.
* `RemoveStaticCondition`: inlines `scf.if` ops with a static condition.
* `FoldConstantCase`: inlines `scf.index_switch` ops with a constant
operand.

Additionally, this new pattern is also enabled for `scf.while` ops.
Loops with `scf.condition(%false)` are now also inlined. (New test case
added.)

The new pattern looks for region branch ops with a single acyclic path
through the operation (starting from and ending at "parent"). All
regions on that path can be inlined into the enclosing block.

Depends on #177116.


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

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

  Log Message:
  -----------
  [DAG] expandIntMINMAX - use getOppositeSignednessMinMaxOpcode helper to flip min/max signedness. NFC. (#177450)


  Commit: 3c40eadfcaa0568b38836cc48491bb785cd338e5
      https://github.com/llvm/llvm-project/commit/3c40eadfcaa0568b38836cc48491bb785cd338e5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  AMDGPU: Avoid introducing illegal fminnum_ieee/fmaxnum_ieee (#177418)

Avoid introducing fminnum_ieee/fmaxnum_ieee on f16 if f16
is not legal. This avoids regressing minimum/maximum cases
in a future commit.


  Commit: 5f6258b2555ea88fdb0a2a110f8ad66581fff0c3
      https://github.com/llvm/llvm-project/commit/5f6258b2555ea88fdb0a2a110f8ad66581fff0c3
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  Move Piotr Zegar to the inactive maintainers list (#176967)

While reaching out to folks for a maintainers list refresh, Piotr asked
to step down due to other commitments. Thank you for all your help!


  Commit: 3d3dd559a0830ea9048cbbc92b0f7b762c5dd0e3
      https://github.com/llvm/llvm-project/commit/3d3dd559a0830ea9048cbbc92b0f7b762c5dd0e3
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/type-info.h
    M flang-rt/lib/runtime/assign.cpp
    M flang-rt/lib/runtime/copy.cpp
    M flang-rt/lib/runtime/derived.cpp
    M flang-rt/lib/runtime/type-info.cpp
    M flang/lib/Semantics/runtime-type-info.cpp
    M flang/module/__fortran_type_info.f90
    M flang/test/Lower/CUDA/cuda-allocatable-device.cuf
    M flang/test/Lower/volatile-openmp.f90
    M flang/test/Semantics/typeinfo01.f90
    M flang/test/Semantics/typeinfo08.f90

  Log Message:
  -----------
  [flang][cuda] Add support for derived-type component with managed/unified attributes (#177409)

Derived-type components that have the `ALLOCATABLE` or `POINTER`
attribute as well as the CUDA `MANAGED` or `UNIFIED` attribute need to
have a specific allocator index set in the descriptor so the allocation
is done correctly. Without this, the allocation is done in host memory
and will trigger illegal read or write if the component is used on the
device. The correct allocator index was set some time ago for the
`DEVICE` attribute but the `MANAGED` and `UNIFIED` attribute need the
same mechanism.

Since the `Component::Genre` has quite some room I opted to add specific
genre for allocatable and pointer with both managed or unified
attribute.
@klausler Let me know if you would prefer another solution. I was
thinking about a separate field but I wanted to avoid wasting some
bytes.


  Commit: 1286de408cc4a3ba1bd6cb6fed7d9517c0429462
      https://github.com/llvm/llvm-project/commit/1286de408cc4a3ba1bd6cb6fed7d9517c0429462
  Author: Congzhe <congzhe.cao at huawei.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/test/Transforms/LoopFusion/lcssa.ll
    A llvm/test/Transforms/LoopFusion/pr165087.ll
    M llvm/test/Transforms/LoopFusion/sunk-phi-nodes.ll

  Log Message:
  -----------
  [LoopFusion] Optimize away Phi nodes that are sunk from the 2nd loop preheader (#176503)

Fixed issue #165087.

When we sink phis from the 2nd loop preheader to the exit block, we 
optimize it a bit further, i.e., propagate the uses of each phi node with 
its incoming value and optimize away the phis. Deleted `fixPHINodes()`
too because the phis are already optimized away and there is no point 
processing `fixPHINodes()`.


  Commit: 9269f84d677491f7cbecff0cf2555d90ea713f28
      https://github.com/llvm/llvm-project/commit/9269f84d677491f7cbecff0cf2555d90ea713f28
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/Maintainers.rst

  Log Message:
  -----------
  [clang] Add myself as an additional offloading driver maintainer (#177392)

I've worked in the offloading driver a decent amount both directly here
and in Intel's downstream forks and I feel I have the judgement to
consider the needs of the project overall as well as the bandwidth to
properly carry out the role.

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>


  Commit: 10d6e4e5bd3939daa0d27a81380db16cc0367b09
      https://github.com/llvm/llvm-project/commit/10d6e4e5bd3939daa0d27a81380db16cc0367b09
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp

  Log Message:
  -----------
  [StaticDataLayout] Temporarily undo diagnostic warning when the data access profile payload is not available (#177412)

Added a FIXME to add it back later after figuring out how to make it a
non-error like the PGO profile mismatch one.


  Commit: 8735e0c5145d9392b85edd54ca17481eb468d4bf
      https://github.com/llvm/llvm-project/commit/8735e0c5145d9392b85edd54ca17481eb468d4bf
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libc/config/linux/app.h
    M libc/src/__support/threads/fork_callbacks.cpp

  Log Message:
  -----------
  [libc] Remove superfluous explicitly defaulted constructors (#177471)

Any user-defined constructor, even an `= default` one, is
incompatible with aggregate initialization in C++20.

The default constructor does not need to be declared at all in
these cases.  It's implicit.


  Commit: 7ea1fa591abc28df2596781c5d7be67cf92f6ed3
      https://github.com/llvm/llvm-project/commit/7ea1fa591abc28df2596781c5d7be67cf92f6ed3
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/find-last.ll

  Log Message:
  -----------
  [LV] Skip FindLast reductions in collectInLoopReductions.

FindLast in-loop reductions are not supported, similarly to FindLastIV
reductions. Skip them in collectInLoopReductions, to avoid a crash for
loops with FindLast reductions and in-loop reductions preferred.


  Commit: ce2a5919cd69fe41322064fdec1fe9c1218e2bef
      https://github.com/llvm/llvm-project/commit/ce2a5919cd69fe41322064fdec1fe9c1218e2bef
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Dialect/GPU/invalid.mlir

  Log Message:
  -----------
  [mlir][gpu] Enforce async keyword when parsing gpu.launch with results (#176570)

The `gpu.launch` parser attempts to add a null `asyncTokenType` to the
results list if a result is requested but the `async` keyword is
missing, leading to an assertion failure.

Explicitly verify that `asyncTokenType` is valid when
`parser.getNumResults() > 0`. Emit a diagnostic error if the `async`
keyword is missing instead of crashing.

Add a regression test to `mlir/test/Dialect/GPU/invalid.mlir`.

Fix: https://github.com/llvm/llvm-project/issues/176530


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/clmul-vector.ll
    M llvm/test/CodeGen/X86/combine-pclmul.ll
    M llvm/test/CodeGen/X86/pclmulqdq.ll

  Log Message:
  -----------
  [X86] combinePCLMULQDQ - attempt to fold PCLMULQDQ(SHUFFLE(X),SHUFFLE(Y),C) -> PCLMULQDQ(X,Y,C') (REAPPLIED) (#177454)

Peek through input shuffle operands and see if we can access the shuffle
source directly with an adjusted PCLMULQDQ mask bit

REAPPLIED after #176932 was reverted due to use of
is128BitLaneRepeatedShuffleMask instead of isRepeatedTargetShuffleMask
caused failures with SM_SentinalZero shuffle mask indices - regression
test added by #177414

Fixes #176880


  Commit: 5af4c1c65a0a4500a4f9f892c3562f2fab0392b2
      https://github.com/llvm/llvm-project/commit/5af4c1c65a0a4500a4f9f892c3562f2fab0392b2
  Author: Steven Wu <stevenwu at apple.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    A llvm/include/llvm/CAS/CASNodeSchema.h
    A llvm/include/llvm/CAS/NamedValuesSchema.h
    A llvm/lib/CAS/CASNodeSchema.cpp
    M llvm/lib/CAS/CMakeLists.txt
    A llvm/lib/CAS/NamedValuesSchema.cpp
    M llvm/unittests/CAS/CMakeLists.txt
    A llvm/unittests/CAS/NamedValuesSchemaTest.cpp

  Log Message:
  -----------
  [CAS] Introduce CASNodeSchema and NamedValuesSchema (#177058)

Introduce CASNodeSchema, which is the common base class for
building a schema that can be used to represent an object
inside CAS. The schema describes the ways to encode and decode
between CAS objects and their representative objects.

NamedValuesSchema is a basic schema that describes a sorted
list of named nodes, where each node is an object. The names are
stored in the root object, allowing users to decide whether to
load the objects based on their names.


  Commit: f8c4974963302912cd6c5c11d5097de5530c4943
      https://github.com/llvm/llvm-project/commit/f8c4974963302912cd6c5c11d5097de5530c4943
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/MemCpyOptimizer.h
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    R llvm/test/Transforms/MemCpyOpt/stack-move-offset.ll

  Log Message:
  -----------
  Revert "[MemCpyOpt] support offset slices for performStackMoveOptzn and processMemCpy (#176436)" (#177482)

This reverts commit 019eb855dd6a18a8f7ae5dd86abf6bc3ad0d9fa4.

Causes miscompiles, see original PR and #177185

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


  Commit: f6e050c5f84803c6ca0d1d6d19051d3434e439a4
      https://github.com/llvm/llvm-project/commit/f6e050c5f84803c6ca0d1d6d19051d3434e439a4
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-22 (Thu, 22 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 5af4c1c65a0a


  Commit: 3219f1a5ce497125025ad8d27131cdea4b6e8595
      https://github.com/llvm/llvm-project/commit/3219f1a5ce497125025ad8d27131cdea4b6e8595
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M openmp/device/src/Configuration.cpp

  Log Message:
  -----------
  [OpenMP] Force initialization of global device environment

Summary:
This causes issues when we omit this, which requires a constructor from
an incompatible address space and bad things happen.


  Commit: 1e6e25573f5a9dce9591e6ab429c465a8271ad18
      https://github.com/llvm/llvm-project/commit/1e6e25573f5a9dce9591e6ab429c465a8271ad18
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libc/src/__support/CPP/type_traits/is_unsigned.h

  Log Message:
  -----------
  [libc] Clean up cpp::is_unsigned (#177456)

There are no unsigned floating-point types, so make it a
subset of is_integral instead of is_arithmetic.


  Commit: 778ee545b54792d7b43fba201669699ef2d9b033
      https://github.com/llvm/llvm-project/commit/778ee545b54792d7b43fba201669699ef2d9b033
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libc/src/__support/CPP/limits.h

  Log Message:
  -----------
  [libc] Clean up cpp::numeric_limits (#177461)

This adds the missing is_signed member and uses a generic
implementation for all integral types, using the same methods
employed by the libc++ implementation.


  Commit: 53b0a64e9826c0696f22b945aa919e8552ed432d
      https://github.com/llvm/llvm-project/commit/53b0a64e9826c0696f22b945aa919e8552ed432d
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/RISCV/clmul.ll
    M llvm/test/CodeGen/RISCV/rv64zbc-intrinsic.ll
    M llvm/test/CodeGen/X86/clmul-vector.ll

  Log Message:
  -----------
  [SelectionDAG] Add very basic computeKnownBits support for ISD::CLMUL. (#177445)

This implements leading zero count support so we can remove some
unnecessary ANDs.


  Commit: 707ae1df5c266522c38b9af7e9586dd891267c17
      https://github.com/llvm/llvm-project/commit/707ae1df5c266522c38b9af7e9586dd891267c17
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-22 (Thu, 22 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
    M llvm/test/CodeGen/AMDGPU/GlobalISel/mul.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-mul.mir
    M llvm/test/CodeGen/AMDGPU/integer-mad-patterns.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-mul.ll

  Log Message:
  -----------
  Reland "[AMDGPU][GlobalISel] Add RegBankLegalize support for G_MUL (#… (#177481)

…177314)"

Original reverted due to v2s16 test failure caused by upstream gfx6/7
16-bit vector behavior change that landed shortly before.

Rebased and regenerated mul.ll test.

Original PR: #177314


  Commit: 30fc5c1cdf9b177fabba55f9fc9df0025d54cf18
      https://github.com/llvm/llvm-project/commit/30fc5c1cdf9b177fabba55f9fc9df0025d54cf18
  Author: Sean Fertile <sd.fertile at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    A llvm/test/CodeGen/PowerPC/ppc64-patchpoint-size-check.ll

  Log Message:
  -----------
  [PPC64] Convert assert in patchpoint emission to usage error. (#177453)

If the patchpoint intrinsic has requested less bytes then it takes to
make the call then report a fatal usage error. Also fixed a bug where we
forgot to count one of the instructions emitted.


  Commit: a7b57cf7bba13cd7851bca1f2f3a820c74110c0d
      https://github.com/llvm/llvm-project/commit/a7b57cf7bba13cd7851bca1f2f3a820c74110c0d
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
    M offload/libomptarget/omptarget.cpp
    A offload/test/mapping/declare_mapper_target_checks.cpp

  Log Message:
  -----------
  [OpenMP][Mappers] Fix ref-count tracking for maps inserted by mappers. (#177059)

This is a fix for https://github.com/llvm/llvm-project/issues/61636.

Ravi had this implemented downstream before he retired. This PR is a
chery-pick of that.

The test is taken from @jdoerfert's WIP change in

https://github.com/jdoerfert/llvm-project/commit/527bf4b1293f452aac1f872c4f771c7950b911f9.

The change partially undoes the changes done in
0caf736d7e1d16d1059553fc28dbac31f0b9f788, so @alexey-bataev might need
to take a look.

---------

Co-authored-by: Ravi Narayanaswamy <ravi.narayanaswamy at intel.com>
Co-authored-by: Johannes Doerfert <johannes at jdoerfert.de>


  Commit: 98b42e384a957d418b48ee7351ebcbb6eccd5a8b
      https://github.com/llvm/llvm-project/commit/98b42e384a957d418b48ee7351ebcbb6eccd5a8b
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/atan2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cos-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make atan2, cos, ceil overload tests stricter NFC  (#177431)

This patch updates atan2, cos and ceil overload tests to use -O1 instead
of -disable-llvm-passes; also, the checks are updated to match the
change accordingly.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: 58f3159a00a84b5a8a2f933a47e8ed92c6cca614
      https://github.com/llvm/llvm-project/commit/58f3159a00a84b5a8a2f933a47e8ed92c6cca614
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M flang/include/flang/Evaluate/real.h

  Log Message:
  -----------
  [flang][AIX] Suppress AIX compat error (NFC) (#177174)


  Commit: 8a954feb3ed879794a82ff4313d22dcf5c4f32f8
      https://github.com/llvm/llvm-project/commit/8a954feb3ed879794a82ff4313d22dcf5c4f32f8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

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

  Log Message:
  -----------
  [LV] Replace legacy FindLast check with VPlan-based one (NFCI).

Checking directly in VPlan is more accurate, as the reductions could
have been transformed. This does not happen yet, so currently NFC.


  Commit: 476a194935fa55f9e18f9193d25d86170f2219ab
      https://github.com/llvm/llvm-project/commit/476a194935fa55f9e18f9193d25d86170f2219ab
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M libc/src/__support/CPP/type_traits/is_integral.h
    M libc/src/__support/wchar/character_converter.h

  Log Message:
  -----------
  [libc] Handle charNN_t in cpp::is_integral (#177463)

In C++20, char8_t is a distinct type from unsigned char, but is
still an integral type.  char16_t and char32_t are integral types
in both C++17 and C++20.

This also reverts the change in PR #177421, which is not needed
when cpp::is_integral_v<char8_t> works correctly in all modes.


  Commit: 7d5622f7917815d224b780309432ffe4729e4852
      https://github.com/llvm/llvm-project/commit/7d5622f7917815d224b780309432ffe4729e4852
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M offload/test/mapping/declare_mapper_target_checks.cpp

  Log Message:
  -----------
  [NFC][OpenMP] Mark new mapper test as XFAIL on intelgpu. (#177491)

Other tests in the directory already do this. The new test was added in
#177059.


  Commit: bc4b2765eb60a28913af1a2c5e92e4e806144f73
      https://github.com/llvm/llvm-project/commit/bc4b2765eb60a28913af1a2c5e92e4e806144f73
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h

  Log Message:
  -----------
  [NFCI][AMDGPU] Refine `AMDGPUSubtarget.h` (#177473)

This PR is to move code around to pave the path for using
`GET_SUBTARGETINFO_MACRO` in `GCNSubtarget.h`.


  Commit: 12b3a9f52e76611b3d3ceb746559d2c384b2565e
      https://github.com/llvm/llvm-project/commit/12b3a9f52e76611b3d3ceb746559d2c384b2565e
  Author: Usman Nadeem <mnadeem at qti.qualcomm.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-exegesis/AArch64/debug-gen-asm.s

  Log Message:
  -----------
  [llvm-exegesis] Add -mtriple to AArch64 test (#177485)

Similar to https://github.com/llvm/llvm-project/pull/148968


  Commit: 626e3423f8bde1e0e79055c4675ed7ca944579c9
      https://github.com/llvm/llvm-project/commit/626e3423f8bde1e0e79055c4675ed7ca944579c9
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/test/CIR/CodeGen/coro-task.cpp

  Log Message:
  -----------
  [CIR] Upstream coroutine builtin coro_end (#176598)

This PR adds support for emitting the `__builtin_coro_end` builtin in
CIR.


  Commit: 07ffea4d8c4f6da0ad6cfb83411c3f934c1821c1
      https://github.com/llvm/llvm-project/commit/07ffea4d8c4f6da0ad6cfb83411c3f934c1821c1
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/fptoi-256.ll
    R llvm/test/CodeGen/fptoi-256.ll

  Log Message:
  -----------
  [LLVM] Move CodeGen test to proper subdirectory. (#177493)

PR #176851 put an AArch64 test directly in the llvm/test/CodeGen
directory. This moves the test to the proper subdirectory.


  Commit: 6fbd16115049f784dfb8aae525d6dcf6c7a1756e
      https://github.com/llvm/llvm-project/commit/6fbd16115049f784dfb8aae525d6dcf6c7a1756e
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/test/AST/ast-dump-decl-stmts.cpp

  Log Message:
  -----------
  [clang] Set end loc on declspec() (#177001)

Follow-up to #176296 where the root problem was declspec() not having a
valid range.

I don't if this is the right fix! It _is_ a progression on the included
test file though, and it's similar to what
Parser::ParsePackIndexingType() in the same file does.


  Commit: 6f4661ce8f65dbc17797d7b55a3020f8b744b1c6
      https://github.com/llvm/llvm-project/commit/6f4661ce8f65dbc17797d7b55a3020f8b744b1c6
  Author: George Burgess IV <george.burgess.iv at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M SECURITY.md

  Log Message:
  -----------
  [SECURITY.md] add pointers to "what is a security issue" (#177372)

Over the years, the security group has received a decent number of
reports of malicious input causing e.g., Clang to crash.

While these reports are valuable, it seems useful to clarify that many
of them are considered bugs, rather than security issues.


  Commit: a24f6ce743cc2dd311e35894f386c05d0ead089c
      https://github.com/llvm/llvm-project/commit/a24f6ce743cc2dd311e35894f386c05d0ead089c
  Author: Adrian Prantl <aprantl at apple.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Core/ModuleList.h
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py

  Log Message:
  -----------
  [LLDB] Add a setting to simulate variables with missing locations (#177279)

Writing testcases for error handling that depends on specific DWARF is
very difficult and the resulting tests tend not to be very portable.
This patch adds a new setting to inject an error into variable
materialization, thus making it possible to write very simple source
code based tests for error handling instead.

This is primarily motivated by the Swift language plugin, but
functionality is generic and should be useful for other languages as
well.


  Commit: 599c2731b3bbe9add135558377dbee2e1fa24358
      https://github.com/llvm/llvm-project/commit/599c2731b3bbe9add135558377dbee2e1fa24358
  Author: Alireza Torabian <alireza.torabian at huawei.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    A llvm/test/Transforms/LoopFusion/pr115279.ll

  Log Message:
  -----------
  [LoopFusion] Forget cached SCEV values after the fusion (#177455)

This patch fixes the issue #115279. After the fusion, some of the cached
SCEV values such as the induction variable may not be valid anymore and
need to be forgotten.


  Commit: f53fe860385c706903f74ac45404e95a841c113f
      https://github.com/llvm/llvm-project/commit/f53fe860385c706903f74ac45404e95a841c113f
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [Vectorize] Silence a warning (NFC)

/llvm-project/llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp:1533:11:
 error: unused variable 'FindIVSelect' [-Werror,-Wunused-variable]
    auto *FindIVSelect = findUserOf<Instruction::Select>(FindIVCmp);
          ^
1 error generated.


  Commit: 33c301e84137af8a6b8701657b3023355f4f22b2
      https://github.com/llvm/llvm-project/commit/33c301e84137af8a6b8701657b3023355f4f22b2
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp

  Log Message:
  -----------
  [clang-tidy] Add replace_ to llvm-use-ranges (#177457)

Also sort the list of known algorithm wrappers.


  Commit: 8a94708d8f64f0286401f8eb36f90111e245edb4
      https://github.com/llvm/llvm-project/commit/8a94708d8f64f0286401f8eb36f90111e245edb4
  Author: Akira Hatanaka <ahatanak at gmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS.sdk/SDKSettings.json
    A clang/test/PlatformSpecific/xrOS/Sema/infer-ios-availability.c
    A clang/test/PlatformSpecific/xrOS/Sema/infer-unavailable-from-missing-ios-availability-mapping.c

  Log Message:
  -----------
  Infer visionOS availability from iOS availability (#176990)

Automatically infer and apply availability or unavailable attributes for
visionOS based on the corresponding iOS availability of the same
declaration using the version mapping information provided in
SDKSettings.json.

rdar://162148639


  Commit: 11f64e92c627154a1caeb6d68c9999cca20f0dae
      https://github.com/llvm/llvm-project/commit/11f64e92c627154a1caeb6d68c9999cca20f0dae
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Silence a warning (NFC)

llvm-project/llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp:686:7:
 error: unused variable 'DstTy' [-Werror,-Wunused-variable]
  LLT DstTy = MRI.getType(Dst);
      ^
1 error generated.


  Commit: e028b212c0faf23beb8f8b494315d0e3878cff5d
      https://github.com/llvm/llvm-project/commit/e028b212c0faf23beb8f8b494315d0e3878cff5d
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/AArch64/arm64-vcvt-fptoi.ll

  Log Message:
  -----------
  [AArch64] Add tests for vector rounding + float-to-int conversions (#173516)

Right now we only have tests for the scalar versions of these
intrinsics.


  Commit: 700b5f1387a50bfc0e17ff21288ea4ceb3b5cc39
      https://github.com/llvm/llvm-project/commit/700b5f1387a50bfc0e17ff21288ea4ceb3b5cc39
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll
    M llvm/test/CodeGen/AArch64/round-conv.ll
    M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/round-fptoui-sat-scalar.ll

  Log Message:
  -----------
  [AArch64] Add test coverage for roundeven + float-to-int conversions (#173515)

Split off from https://github.com/llvm/llvm-project/pull/170018, which
was becoming a bit of a rats' nest.

This PR:
- Cleans up the `arm64-cvt-simd-fptoi.ll`, `round-conv.ll`,
`round-fptosi-sat-scalar.ll`, and `round-fptoui-sat-scalar.ll`
regression tests, removing `nounwind readnone` annotations from the
rounding function calls. These were changed in #171288 to be LLVM
intrinsics instead of libcalls, so we no longer need to annotate them in
order for them to be compiled to native instructions. I've also removed
the declaration blocks at the end of the files, since they're no longer
necessary.

- Adds `roundeven` tests to the 4 regression tests mentioned above, to
go along with the other rounding functions currently tested.

- Changes `round-conv.ll` to have autogenerated CHECK lines/assertions,
so it's simpler to update.

- Checks with GlobalISel as well in `round-conv.ll`,
`round-fptosi-sat-scalar.ll`, and `round-fptoui-sat-scalar.ll`. The
generated code is identical in `round-conv.ll`, but not yet as good in
the latter two.

The supporting changes are necessary here and would be difficult to
split off for little gain.


  Commit: c961174b2d557c04b32fbe104ca32f5294345864
      https://github.com/llvm/llvm-project/commit/c961174b2d557c04b32fbe104ca32f5294345864
  Author: Dimitri Ratz <dimitri.ratz at protonmail.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/FindSymbols.h
    M clang-tools-extra/clangd/Protocol.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    A clang-tools-extra/clangd/test/symbol-tags.test
    M clang-tools-extra/clangd/test/symbols.test
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp

  Log Message:
  -----------
  [clangd] Add support for additional symbol tags proposed for LSP 3.18 (#167536)

Implements support for symbol tags proposed for LSP 3.18 in
https://github.com/microsoft/language-server-protocol/pull/2003,
in the `documentSymbols` and `workspace/symbols` requests.

Fixes https://github.com/clangd/clangd/issues/2123.

---------

Co-authored-by: chouzz <zhouhua258 at outlook.com>
Co-authored-by: Dimitri Ratz <dimitri.ratz at thinkdigital.cc>


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

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp

  Log Message:
  -----------
  [msan][NFCI] Check number of operands in handleVectorComparePackedIntrinsic() (#177291)

handleVectorComparePackedIntrinsic() can currently handle x86 and Arm
NEON vector comparisons, but is a bit lax about checking the number of
operands. This patch parameterizes the handler to check for the correct
number of operands, and also that the 3rd operand in x86 vector
comparisons is an ImmArg.


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

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

  Log Message:
  -----------
  [AArch64] Stop using TargetFlags as RegState for LOADgot (#177411)

The register state flags have been represented using `unsigned`, but we
intend to make this an `enum class` in llvm/llvm-project#177090.

That change has shown there is some strange behaviour in this AArch64
function, which uses operand TargetFlags (usually used for representing
some abstract form of relocation information to clarify global accesses,
also represented with `unsigned`) to initialise the register state flags
(used for representing how the register operand is used by an
instruction). These TargetFlags are always 0 in the tests, so remove the
variable and assignment.


  Commit: 3781a08e3e996351d76a43228c1d20399fdcc929
      https://github.com/llvm/llvm-project/commit/3781a08e3e996351d76a43228c1d20399fdcc929
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Clarify semantics of undef in shufflevector masks (#171453)

The current phrasing of `shufflevector` in the language reference
states:

> A poison element in the mask vector specifies that the resulting
element is poison. For backwards-compatibility reasons, LLVM temporarily
also accepts undef mask elements, which will be interpreted the same way
as poison elements.

This is a bit ambiguous. Does it mean that an undef mask element
produces a poison result element, or an undef result element?

Per https://reviews.llvm.org/D148637, the answer is the former. I've
updated the docs to make this explicit.

As part of the same paragraph, the language reference also currently
states:

> If the shuffle mask selects an undef element from one of the input
vectors, the resulting element is undef.

When I first skimmed this, I thought it meant that an undef *mask
element* resulted in an undef result element. However, it's actually
talking about undef *input elements*. That's easy to miss, since the
rest of the paragraph discusses mask elements. I've moved that sentence
to its own paragraph to make things less confusing.


  Commit: dcd646889328b7f8f3ed841ec9acfc7ceead90ab
      https://github.com/llvm/llvm-project/commit/dcd646889328b7f8f3ed841ec9acfc7ceead90ab
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td

  Log Message:
  -----------
  [RISCV] Improve vector pseudo table's experiences on translating between two different pseudo opcodes. NFC (#177232)

Sometimes we might need to translate from one vector pseudo -- like
`PseudoVFMUL_ALT_VV_M8_E16` -- to its `VFSUB_VV` counterpart, namely
`PseudoVFSUB_ALT_VV_M8_E16`. It's difficult to do this efficiently with
the current vector pseudo search table infrastructure. So I propose two
changes in this patch:
1. Currently both `RISCVVInversePseudosTable` and `RISCVVPseudosTable`
does not distinguish between F16 and BF16. This will be problematic
during lookup -- especially for `RISCVVInversePseudosTable`. So I added
a new single-bit field `IsAltFmt` into both tables.
2. It'd be great for `RISCVVPseudosTable` to return not just the base
instruction opcode but also LMUL & SEW (if there is any). Because the
alternative will require multiple additional steps (e.g. calling
`getLMul(TSFlags)`) -- especially for the SEW-specific pseudos -- that
are not really ergonomic. So I added `VLMul`, `SEW`, and `IsAltFmt` to
the result of `RISCVVPseudosTable::getPseudoInfo`. The downside of this
is of course bloating the table size, which is why I tried to mitigate
it with using bit fields.

This should be a NFC


  Commit: b043479e0c4b239ab6a5e66f1dc4fecdf8d7ff40
      https://github.com/llvm/llvm-project/commit/b043479e0c4b239ab6a5e66f1dc4fecdf8d7ff40
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M orc-rt/lib/executor/Session.cpp
    M orc-rt/unittests/SessionTest.cpp

  Log Message:
  -----------
  [orc-rt] Fix some Session::shutdown bugs. (#177528)

All calls to Session::shutdown were enquing their on-shutdown-complete
callbacks in Session's ShutdownInfo struct, but this queue is only
drained once by the thread that initiates shutdown. After the queue is
drained, subsequent calls to Session::shutdown were enquing their
callbacks in a queue that would never be drained.

This patch updates Session::shutdown to check whether shutdown has
completed already and, if so, run the on-shutdown-complete immediately.

This patch also fixes a concurrency bug: Session::shutdownComplete was
accessing SI->OnCompletes outside the session mutex, but this could lead
to corruption of SI->OnCompletes if a concurrent call to
Session::shutdown tried to enqueue a new callback to SI->OnCompletes
concurrently. This has been fixed by moving the SI->OnCompletes queue to
a new variable under the Session mutex, then draining the new queue
outside the mutex. (No testcase yet: this was discovered by observation,
and replicating the bug would depend on timing).


  Commit: 859052a34ec5ad6c240366837fda12aa6801a560
      https://github.com/llvm/llvm-project/commit/859052a34ec5ad6c240366837fda12aa6801a560
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-22 (Thu, 22 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/FileSystem.h
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Host/common/FileSystem.cpp
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.py

  Log Message:
  -----------
  [lldb] Improve error message when we can't save core (#177496)

When you specify a filename to `process save core`, we'll write it in
the current working directory. In Xcode the CWD is `/` and you can't
generally write there.

```
(lldb) process save-core --style full foo
error: failed to save core file for process: Read-only file system
```

This PR improves the error message by including the output file when we
can't save core. However, just printing the filename isn't that much
more helpful, because FileSystem::Resolve only makes a path absolute if
it exists.

```
error: failed to save core file for process to 'foo': Read-only file system
```

Therefore I also modified the interface to add a flag to force resolve a
potentially non-exist path.

```
error: failed to save core file for process to '/foo': Read-only file system
```


  Commit: fec463eea676faf85ad4e4733c62c8c7313c0266
      https://github.com/llvm/llvm-project/commit/fec463eea676faf85ad4e4733c62c8c7313c0266
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    A llvm/test/CodeGen/AArch64/clmul.ll

  Log Message:
  -----------
  [AArch64][ISel] Add lowering for i8 clmul intrinsics (#177323)

clmul added in #168731, can be lowered to pmul for full i8 vector types.


  Commit: 79fb1eb8c1d9a15e89a36aceb791e6fbc25641f7
      https://github.com/llvm/llvm-project/commit/79fb1eb8c1d9a15e89a36aceb791e6fbc25641f7
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectApropos.cpp
    A lldb/test/API/commands/apropos/formatting/TestAproposFormatting.py
    M lldb/test/API/commands/settings/TestSettings.py

  Log Message:
  -----------
  [lldb] Fix padding for settings in `apropos` output (#177295)

In the `apropos` output, commands are padded to the longest command so
that their descriptions are aligned. This PR does the same thing for the
settings.

Fixes #177284


  Commit: e3c786874ae4064b78526e4b2c110484114b6dcf
      https://github.com/llvm/llvm-project/commit/e3c786874ae4064b78526e4b2c110484114b6dcf
  Author: yonillasky <yonillasky at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/Metadata.h
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    A llvm/test/Transforms/Coroutines/coro-split-tbaa-md-neg-2.ll
    A llvm/test/Transforms/Coroutines/coro-split-tbaa-md-neg.ll
    A llvm/test/Transforms/Coroutines/coro-split-tbaa-md.ll

  Log Message:
  -----------
  [LLVM][Coroutines] Introduce TBAA metadata for coro frame object (#176543)

This helps subsequent passes to determine that aliasing between frame
objects and all other types is impossible.
There were cases where this AA issue seriously harmed the performance
of compute intensive code running inside a coroutine, since it broke
LICM and caused it to reload frame data inside tight loops over and over.

Co-authored-by: Yoni Lavi <yoni.lavi at nextsilicon.com>


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

  Changed paths:
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp

  Log Message:
  -----------
  [mlir][Interfaces] Fix use-after-free after #176641 (#177536)

Fix a use-after-free after #176641: the successor operands
`OperandRange` is now longer value after the terminator has been erased.


  Commit: 149c76538ef830f5213579b77ee67bcf18f24bb2
      https://github.com/llvm/llvm-project/commit/149c76538ef830f5213579b77ee67bcf18f24bb2
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-scalar-assignment.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/early_exit_costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
    M llvm/test/Transforms/LoopVectorize/X86/conditional-scalar-assignment.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/std-find.ll

  Log Message:
  -----------
  [LV] Separate runtime check cost from total overhead in profitability check (#176754)

In isOutsideLoopWorkProfitable function, there are two places where only
the runtime check cost (RtC) should be used, but incorrectly included
the costs of middle blocks and early-exit blocks.
1. VectorizeMemoryCheckThreshold comparison for interleaving-only
2. Minimum trip count that bounds runtime check overhead, i.e. MinTC2
calculation
This results in an overly conservative minimum profitable trip count.

This patch separates the runtime check cost from the total overhead
cost, and uses only RtC for VectorizeMemoryCheckThreshold comparison and
the MinTC2 calculation.


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

  Changed paths:
    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/Opcodes.td
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix a diagnostic discrepancy (#177384)

The current interpreter does _not_ evaluate function calls when checking
for a potential constant expression.

However, it _does_ evaluate the initializers of constructors. In the
bytecode interpreter, this is harder because we compile the initializers
and the body of a constructor all in the same function.

Add a special opcode that we emit after the constructor initializers and
that aborts when we're checking for a potential constant expression.


  Commit: 7e25a3132f3a1854fdbaf5e443b34fda253857b1
      https://github.com/llvm/llvm-project/commit/7e25a3132f3a1854fdbaf5e443b34fda253857b1
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/test/CodeGen/AMDGPU/opencl-printf.ll

  Log Message:
  -----------
  [AMDGPU] Fix use-after-erase in OpenCL printf runtime binding (#177356)

When handling OpenCL printf calls, the AMDGPU backend replaces the
actual function call with a runtime binding. However, this replacement
currently assumes that there are no uses of the original call value
result. If there are uses, the erasure of the function call leads to
errors.
This patch replaces all uses of the original printf call with a 0 value
constant, signalling success of the printf operation.

---------

Signed-off-by: Steffen Holst Larsen <HolstLarsen.Steffen at amd.com>
Co-authored-by: Steffen Holst Larsen <HolstLarsen.Steffen at amd.com>


  Commit: 4d55fb46624afb17e8bb70b308cf0d0e8a48e6cd
      https://github.com/llvm/llvm-project/commit/4d55fb46624afb17e8bb70b308cf0d0e8a48e6cd
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [TargetLowering] Avoid unnecessary EVT -> Type -> EVT roundtrip (NFC) (#177328)

For pointers, this gets the pointer EVT, then converts it back into a
type, and then gets the EVT for that type again. We can directly use the
pointer EVT.


  Commit: 7184229feafb6695e2b82adda805ccb5f82a1717
      https://github.com/llvm/llvm-project/commit/7184229feafb6695e2b82adda805ccb5f82a1717
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/include/llvm/CodeGen/MachineInstrBuilder.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/CodeGen/RenameIndependentSubregs.cpp
    M llvm/lib/CodeGen/SelectionDAG/FastISel.cpp
    M llvm/lib/CodeGen/SelectionDAG/InstrEmitter.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/CodeGen/TailDuplicator.cpp
    M llvm/lib/CodeGen/TwoAddressInstructionPass.cpp
    M llvm/lib/Target/AArch64/AArch64ExpandPseudoInsts.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/lib/Target/ARM/A15SDOptimizer.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.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/Thumb2InstrInfo.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
    M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
    M llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp
    M llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMemAbsolute.cpp
    M llvm/lib/Target/Hexagon/HexagonGenPredicate.cpp
    M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonQFPOptimizer.cpp
    M llvm/lib/Target/Hexagon/HexagonSplitDouble.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/Mips/Mips16InstrInfo.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsSEFrameLowering.cpp
    M llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp
    M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
    M llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
    M llvm/lib/Target/PowerPC/PPCFastISel.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86SpeculativeLoadHardening.cpp
    M llvm/lib/Target/X86/X86TileConfig.cpp
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-operand-types.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-temp-defs.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-typeof.td
    M llvm/test/TableGen/GlobalISelEmitter/DefaultOpsGlobalISel.td
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td
    M llvm/test/TableGen/GlobalISelEmitter/RegSequence.td
    M llvm/test/TableGen/GlobalISelEmitter/Subreg.td
    M llvm/test/TableGen/GlobalISelEmitter/dead-def.td
    M llvm/test/TableGen/GlobalISelEmitter/gisel-physreg-input.td
    M llvm/test/TableGen/GlobalISelEmitter/input-discard.td
    M llvm/test/TableGen/GlobalISelEmitter/multiple-output-discard.td
    M llvm/test/TableGen/GlobalISelEmitter/multiple-output.td
    M llvm/test/TableGen/GlobalISelEmitter/nested-subregs.td
    M llvm/test/TableGen/GlobalISelEmitter/optional-def.td
    M llvm/test/TableGen/GlobalISelEmitter/output-discard.td
    M llvm/test/TableGen/GlobalISelEmitter/undef-tied-input.td
    M llvm/tools/llvm-exegesis/lib/Assembler.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceInstructionsMIR.cpp
    M llvm/tools/llvm-reduce/deltas/ReduceRegisterDefs.cpp
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp

  Log Message:
  -----------
  [NFC][MI] Tidy Up RegState enum use (2/2) (#177090)

This Change makes `RegState` into an enum class, with bitwise operators.
It also:
- Updates declarations of flag variables/arguments/returns from
`unsigned` to `RegState`.
- Updates empty RegState initializers from 0 to `{}`.

If this is causing problems in downstream code:
- Adopt the `RegState getXXXRegState(bool)` functions instead of using a
ternary operator such as `bool ? RegState::XXX : 0`.
- Adopt the `bool hasRegState(RegState, RegState)` function instead of
using a bitwise check of the flags.


  Commit: 84b2f120f348484cf69a166b159a8cc104a54d90
      https://github.com/llvm/llvm-project/commit/84b2f120f348484cf69a166b159a8cc104a54d90
  Author: Raul Tambre <raul at tambre.ee>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.h
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    A llvm/test/CodeGen/X86/asm-dialect-directive.ll
    M llvm/test/CodeGen/X86/coal-sections.ll

  Log Message:
  -----------
  [MC][X86/M68k] Emit syntax directive for AT&T (#167234)

This eases interoperability by making it explicit in emitted assembly code which syntax is used.
Refactored to remove X86-specific directives and logic from the generic MC(Asm)Streamer.

Motivated by building LLVM with `-mllvm -x86-asm-syntax=intel` (i.e. a global preference for Intel
syntax). A Bolt test (`runtime/X86/fdata-escape-chars.ll`) was using `llc` to compile to assembly
and then assembling with `clang`. The specific option causes Clang to assume Intel syntax but only
for assembly and not inline assembly.


  Commit: 2d62af808b17d62847bc9bcb724be19388ba0f72
      https://github.com/llvm/llvm-project/commit/2d62af808b17d62847bc9bcb724be19388ba0f72
  Author: Raul Tambre <raul at tambre.ee>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M bolt/test/X86/lit.local.cfg
    M bolt/test/lit.local.cfg

  Log Message:
  -----------
  [NFCI][bolt][test] Enable AT&T syntax generally (#172355)

Having it in the X86 subdirectory only affects tests in that directory.
That's however not sufficient as for example runtime/X86/pie-exceptions-split.test is affected but
isn't located in the X86 directory.
This essentially fixes the fix for the original commit by guarding it properly for when the X86
target has been built and the flag is recognized.

Fixes: 6c48fbc1dcfbd44a47f126f21e575340b67aac06


  Commit: e85bbd09491f3409cf4d844e6f57e91ab028defa
      https://github.com/llvm/llvm-project/commit/e85bbd09491f3409cf4d844e6f57e91ab028defa
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/test/CodeGen/AMDGPU/attr-amdgpu-waves-per-eu.ll
    A llvm/test/CodeGen/AMDGPU/default-flat-work-group-size-overrides-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/propagate-waves-per-eu.ll
    M llvm/test/CodeGen/AMDGPU/vgpr-limit-gfx1250.ll
    R llvm/test/CodeGen/AMDGPU/waves-per-eu-hints-lower-occupancy-target.ll

  Log Message:
  -----------
  Revert "[AMDGPU] Allow amdgpu-waves-per-eu to lower target occupancy range" (#177544)

Reverts llvm/llvm-project#168358

Buildbot failure as commented in original PR.


  Commit: a6481281940298cd96507e808ec56909bd34992c
      https://github.com/llvm/llvm-project/commit/a6481281940298cd96507e808ec56909bd34992c
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2026-01-23 (Fri, 23 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:
  -----------
  [libclang/python] Add CompletionChunkKind enum and deprecate old CompletionChunk.Kind (#176631)

This adresses point 1 from
https://github.com/llvm/llvm-project/issues/156680.
Since step 4 is already completed, `CompletionChunk.Kind` becomes unused
in this PR, so it is removed.


  Commit: adc64c6e1745a14896efa48d23fc541e4efe5a53
      https://github.com/llvm/llvm-project/commit/adc64c6e1745a14896efa48d23fc541e4efe5a53
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/SemaCXX/cxx2c-fold-exprs.cpp

  Log Message:
  -----------
  [Clang] Fix the normalization of fold constraints (#177531)

Fold constraints can contain packs expanded from different locations.
For `C<Ps...>`, where the ellipsis immediately follows the argument, the
pack should be expanded in place regardless of the fold expression. For
`C<Ps> && ...`, the fold expression itself is responsible for expanding
Ps.

Previously, both kinds of packs were expanded by the fold expression,
which broke assumptions within concept caching. This patch fixes that by
preserving PackExpansionTypes for the first kind of pack while rewriting
them to non-packs for the second kind.

This patch also removes an unused function and performs some cleanup of
the evaluation contexts. Hopefully it is viable for backporting.

No release note, as this issue was a regression.

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


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

  Changed paths:
    M llvm/lib/Target/ARC/ARCRegisterInfo.cpp

  Log Message:
  -----------
  [NFC][ARC] Tidy Up RegState in ARC Backend (#177546)

This was missed in llvm/llvm-project#177090 because Github CI and my
local build don't have experimental targets enabled.

This is the only problematic RegState use in the experimental targets.


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

  Changed paths:
    A llvm/test/CodeGen/AArch64/GlobalISel/pr166541.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Commit reproducer for crash #166541 (#177190)

Crash was fixed in #175810, this is just committing the reproducer.


  Commit: b9ab8885c89b80cdb638aecbd5114672ec4fdb4b
      https://github.com/llvm/llvm-project/commit/b9ab8885c89b80cdb638aecbd5114672ec4fdb4b
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Shard/IR/ShardOps.td
    M mlir/include/mlir/Dialect/Shard/Transforms/Transforms.h
    M mlir/lib/Conversion/ShardToMPI/ShardToMPI.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ShardingInterfaceImpl.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.allgather to MPI (#177202)

- lowering `shard.allgather` to `mpi.allgather`
- fixing lowering of `shard.allreduce`
- minor refactoring


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

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

  Log Message:
  -----------
  [X86] Enable custom lowering of 256/512-bit vXi32 and vXi64 CLMUL nodes (#177554)

Similar to 128-bit v4i32/v2i64 support, these are can now be efficiently
lowered to PCLMUL nodes through unrolling, shuffle combining and
concatenation

If the target only supports PCLMUL then they will remain as 128-bit
nodes, but if VPCLMULQDQ is supported then they should merge into wider
types.


  Commit: 4e51f9044f17a00f5c6c0f5b2abf1fdb9b8d9eeb
      https://github.com/llvm/llvm-project/commit/4e51f9044f17a00f5c6c0f5b2abf1fdb9b8d9eeb
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.h
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.h
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTosaOps.cpp
    M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
    M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
    M mlir/test/Target/SPIRV/tosa-ops.mlir
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  [mlir][spirv] Add Conv operations for TOSA Extended Instruction Set (001000.1) (#176908)

This patch expands 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:
* Extending dialect plumbing for import, serialization, and
deserialization of the TOSA extended instruction set.
* The `spirv.Tosa.*Conv*` convolution operation from TOSA extended
instruction, each lowering to the corresponding `OpExtInst`.
* Verification enforcing that new convolution operations appears only
within `spirv.ARM.Graph` regions, operates on `!spirv.arm.tensor<...>`
types, and is well-formed according to the TOSA 001000.1 specification.

All convolution operations from TOSA 001000.1 extended instructions are
introduced: [parser, 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>
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


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

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Move some opcode impls to the source file (#177543)

They aren't templated, so move them to Interp.cpp to make the header
file a bit shorter.


  Commit: f016ee5339aa313ab90182595fe12bc1a16e2db1
      https://github.com/llvm/llvm-project/commit/f016ee5339aa313ab90182595fe12bc1a16e2db1
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Add missing dependency for b9ab8885c89b80cdb638aecbd5114672ec4fdb4b


  Commit: 323bb143491f61530097c8efd97f6269369e2e8d
      https://github.com/llvm/llvm-project/commit/323bb143491f61530097c8efd97f6269369e2e8d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/test/AST/ms-constexpr-new.cpp
    M clang/test/SemaCXX/ms-constexpr-invalid.cpp
    M clang/test/SemaCXX/ms-constexpr-new.cpp
    M clang/test/SemaCXX/ms-constexpr.cpp

  Log Message:
  -----------
  [clang][bytecode] Finish support for `msvc::constexpr` (#177388)

Keep track of whether an `InterpFrame` is allowed to call
`msvc::constexpr` functions via two new opcodes.


  Commit: 7826cbeacb0c7277bc905a7930f00575e9be88b2
      https://github.com/llvm/llvm-project/commit/7826cbeacb0c7277bc905a7930f00575e9be88b2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/Attributor/IPConstantProp/openmp_parallel_for.ll

  Log Message:
  -----------
  Attributor: Regenerate baseline test checks (#177560)


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

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add simple rank-based sg layout creation (#172867)


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

  Changed paths:
    M llvm/test/CodeGen/X86/clmul-vector-256.ll
    M llvm/test/CodeGen/X86/clmul-vector-512.ll

  Log Message:
  -----------
  [X86] Add 256-bit and 512-bit CLMULR and CLMULH test coverage (#177561)


  Commit: b791501e8062b8037c86ea1249c0ea8119f4d8fb
      https://github.com/llvm/llvm-project/commit/b791501e8062b8037c86ea1249c0ea8119f4d8fb
  Author: John Hui <updog at j-hui.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjC.cpp
    M clang/test/CodeGenObjC/arc-arm.m
    M clang/test/CodeGenObjC/arc-foreach.m
    M clang/test/CodeGenObjC/arc-property.m
    M clang/test/CodeGenObjC/arc-related-result-type.m
    M clang/test/CodeGenObjC/arc-unopt.m
    M clang/test/CodeGenObjC/arc-unsafeclaim.m
    M clang/test/CodeGenObjC/arc-with-atthrow.m
    M clang/test/CodeGenObjC/ns_consume_null_check.m
    M clang/test/CodeGenObjC/objc-arc-container-subscripting.m
    M clang/test/CodeGenObjC/os_log.m
    M clang/test/CodeGenObjCXX/auto-release-result-assert.mm
    M clang/test/CodeGenObjCXX/inheriting-constructor-cleanup.mm
    M llvm/lib/Target/AArch64/AArch64FastISel.cpp
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/test/CodeGen/AArch64/call-rv-marker.ll

  Log Message:
  -----------
  Revert "Reapply "[CGObjC] Allow clang.arc.attachedcall on -O0 (#164875)" (#177285)" (#177533)

This reverts commit 4b939beb79e3390046b760bef71b7d891ba9b4df.

This commit seems to be causing these test failures:

- ThreadSanitizer-x86_64-iossim.Darwin.norace-objcxx-run-time.mm
https://ci.swift.org/job/llvm.org/job/clang-san-iossim/14230/testReport/junit/ThreadSanitizer-x86_64-iossim/Darwin/norace_objcxx_run_time_mm/
- ThreadSanitizer-x86_64-iossim.Darwin.objc-synchronize-cycle-tagged.mm
https://ci.swift.org/job/llvm.org/job/clang-san-iossim/14230/testReport/junit/ThreadSanitizer-x86_64-iossim/Darwin/objc_synchronize_cycle_tagged_mm/
- ThreadSanitizer-x86_64-iossim.Darwin.objc-synchronize-tagged.mm
https://ci.swift.org/job/llvm.org/job/clang-san-iossim/14230/testReport/junit/ThreadSanitizer-x86_64-iossim/Darwin/objc_synchronize_tagged_mm/
- ThreadSanitizer-x86_64-iossim.Darwin.objc-synchronize.mm
https://ci.swift.org/job/llvm.org/job/clang-san-iossim/14230/testReport/junit/ThreadSanitizer-x86_64-iossim/Darwin/objc_synchronize_mm/


With the error message:

```
fatal error: error in backend: Cannot select: intrinsic %llvm.objc.clang.arc.noop.use
```


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

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/FuncBufferizableOpInterfaceImpl.cpp

  Log Message:
  -----------
  [mlir][bufferization] Cache SymbolTableCollection for CallOp types (#176909)

Use the BufferizationState symbol table cache when resolving CallOp
callee types in getBufferType(), avoiding repeated SymbolTableCollection
creation. Add a const accessor (backed by a mutable cache) so const
state can reuse the same tables. Completes a marked TODO.


  Commit: 6fc8028516220b25d6c878f492eebbae4c350298
      https://github.com/llvm/llvm-project/commit/6fc8028516220b25d6c878f492eebbae4c350298
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [LVI] Fix the type when inferring nonnull from a dereferenceable attribute bundle (#177562)


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

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

  Log Message:
  -----------
  [clang][bytecode] Fix mulc/divc op for IntegralAP types (#177565)

We need to allocate those.

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


  Commit: 689f9788d3e482791d45e1e631a1bacf78f318ba
      https://github.com/llvm/llvm-project/commit/689f9788d3e482791d45e1e631a1bacf78f318ba
  Author: Nathan Malimban <131171416+nmalimban at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/MLProgram/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/MLProgram/one-shot-bufferize.mlir

  Log Message:
  -----------
  [ml_program] fix bufferizesToMemoryRead for ml_program.global_store (#177387)

This is a fix for the `BufferizableOpInterface` implementation for
`ml_program.global_store`.

`bufferizesToMemoryRead` currently returns false for
`GlobalStoreOpInterface`, but I believe it should return true as
`ml_program.global_store` needs to read its input buffer to know what
value to store to global.

This manifested in a bug where `one-shot-bufferize` would produce MLIR
that copies uninitialized data to the global var instead of the intended
value to be stored.

For the following MLIR:

```
module {
  ml_program.global private mutable @"state_tensor"(dense<0.0> : tensor<4x75xf32>) : tensor<4x75xf32>
  func.func @main() -> tensor<4x75xf32> {
    %c0 = arith.constant 0 : index
    %cst_val = arith.constant 1.0 : f32
    %initial_state = ml_program.global_load @"state_tensor" : tensor<4x75xf32>
    %val = tensor.extract %initial_state[%c0, %c0] : tensor<4x75xf32>
    %next_val = arith.addf %val, %cst_val : f32
    %updated_tensor = tensor.insert %next_val into %initial_state[%c0, %c0] : tensor<4x75xf32>
    ml_program.global_store @"state_tensor" = %updated_tensor : tensor<4x75xf32>
    return %updated_tensor : tensor<4x75xf32>
  }
}
```
`one-shot-bufferize` produces this incorrect MLIR
```
module {
  memref.global "private" @state_tensor : memref<4x75xf32> = dense<0.000000e+00>
  func.func @main() -> tensor<4x75xf32> {
    %c0 = arith.constant 0 : index
    %cst = arith.constant 1.000000e+00 : f32
    %0 = memref.get_global @state_tensor : memref<4x75xf32>
    %1 = memref.load %0[%c0, %c0] : memref<4x75xf32>
    %2 = arith.addf %1, %cst : f32
    %alloc = memref.alloc() {alignment = 64 : i64} : memref<4x75xf32>
    memref.copy %0, %alloc : memref<4x75xf32> to memref<4x75xf32>
    memref.store %2, %alloc[%c0, %c0] : memref<4x75xf32>
    %3 = bufferization.to_tensor %alloc : memref<4x75xf32> to tensor<4x75xf32>
    %alloc_0 = memref.alloc() {alignment = 64 : i64} : memref<4x75xf32>
    %4 = memref.get_global @state_tensor : memref<4x75xf32>
    memref.copy %alloc_0, %4 : memref<4x75xf32> to memref<4x75xf32>
    return %3 : tensor<4x75xf32>
  }
}
```
Note that `memref.copy` at the end copies an uninitialized `alloc_0` to
the global variable.

But after the change we see the following MLIR:
```
module {
  memref.global "private" @state_tensor : memref<4x75xf32> = dense<0.000000e+00>
  func.func @main() -> tensor<4x75xf32> {
    %c0 = arith.constant 0 : index
    %cst = arith.constant 1.000000e+00 : f32
    %0 = memref.get_global @state_tensor : memref<4x75xf32>
    %1 = memref.load %0[%c0, %c0] : memref<4x75xf32>
    %2 = arith.addf %1, %cst : f32
    %alloc = memref.alloc() {alignment = 64 : i64} : memref<4x75xf32>
    memref.copy %0, %alloc : memref<4x75xf32> to memref<4x75xf32>
    memref.store %2, %alloc[%c0, %c0] : memref<4x75xf32>
    %3 = bufferization.to_tensor %alloc : memref<4x75xf32> to tensor<4x75xf32>
    %alloc_0 = memref.alloc() {alignment = 64 : i64} : memref<4x75xf32>
    memref.copy %alloc, %alloc_0 : memref<4x75xf32> to memref<4x75xf32>
    %4 = memref.get_global @state_tensor : memref<4x75xf32>
    memref.copy %alloc_0, %4 : memref<4x75xf32> to memref<4x75xf32>
    return %3 : tensor<4x75xf32>
  }
}
```
We now see that the relevant data is copied to `alloc_0` before it is
stored in global.

Co-authored-by: Nathan Malimban <nmalimba at ah-nmalimba-l.dhcp.mathworks.com>


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

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization/insert-slice.mlir

  Log Message:
  -----------
  [mlir][linalg] Update createWriteOrMaskedWrite (#174810)

`createWriteOrMaskedWrite` is used extensively in the Linalg vectorizer.
When a write uses non-zero indices, the helper currently computes mask
sizes as if the write started at 0 (`size = dim(d)`), which can produce
incorrect `vector.create_mask` operands for the generated
`vector.transfer_write`. Instead, the mask size should be computed as
`size = dim(d) - write_index(d)`.

EXAMPLE
-------
Let`s use this example to illustrate:
```mlir
%res = tensor.insert_slice
    %src into %dest[0, %c2] [5, 1] [1, 1] : tensor<5x1xi32> into tensor<?x3xi32>
```

This op is vectorized as a pair of `vector.transfer_read` +
`vector.transfer_write` ops. When calculating the mask for the
vector.transfer_write operation, the write indices should be taken into
account (*):
```mlir
  %dim = tensor.dim %dest, %c_0 : tensor<?x3xi32>
  // Subtract dim-0 and idx-0
  %mask_size_0 = arith.subi %dim, %c0 : index
  %x3 = arith.constant 3 : index
  // Subtract dim-1 and idx-1
  %mask_size_1 = arith.subi %c3, %c2 : index
  %mask = vector.create_mask %mask_size_0, %mask_size_1 : vector<8x1xi1>
```

Currently, the mask is incorrectly computed as:
```mlir
  %dim = tensor.dim %dest, %c_0 : tensor<?x3xi32>
  %mask = vector.create_mask %dim, %c3 : vector<8x1xi1>
```

This PR fixes that.

(*) Vectorized with `transform.structured.vectorize %0 vector_sizes [8, 1]`


  Commit: 4b7cf46f6bd1bcd3f908efaedfeea27b28b6d564
      https://github.com/llvm/llvm-project/commit/4b7cf46f6bd1bcd3f908efaedfeea27b28b6d564
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
    M lldb/include/lldb/Host/windows/PseudoConsole.h
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/test/Shell/Settings/TestFrameFormatColor.test
    M lldb/test/Shell/Settings/TestFrameFormatNoColor.test

  Log Message:
  -----------
  [lldb][windows] add STDIN and STDOUT forwarding support (#175812)


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

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/constant_folding.mlir

  Log Message:
  -----------
  [mlir][tosa] Add constant folding for tosa.add_shape operation (#173112)

This commit introduces constant folding for the tosa.add_shape
operation. When both operands of the add_shape operation are constant
shapes, the operation is evaluated at compile-time.


  Commit: 5faa18111280cc08656777ba132a05b2270467e0
      https://github.com/llvm/llvm-project/commit/5faa18111280cc08656777ba132a05b2270467e0
  Author: Jorn Tuyls <jorn.tuyls at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Transforms/RegionUtils.h
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/Transforms/move-operation-deps.mlir

  Log Message:
  -----------
  [mlir] Add side-effect check to moveOperationDependencies (#176361)

This patch adds a side-effect check to `moveOperationDependencies` to
match the behavior of `moveValueDefinitions`. Previously,
`moveOperationDependencies` would move operations with side-effecting
dependencies, which could change program semantics.

**Note** that the existing test changes are needed because unregistered
operations (e.g., "moved_op"()) are treated as side-effecting. These
tests were updated to use pure operations for operations in the moved
slice, while keeping unregistered ops for operations that aren't moved
(e.g., "before"(), "foo"()). This ensures that tests continue to
exercise their intended functionality without being blocked by the new
side-effect check.


  Commit: 7a10fc8d542560068fc871d24ae1becabfd5d26b
      https://github.com/llvm/llvm-project/commit/7a10fc8d542560068fc871d24ae1becabfd5d26b
  Author: Vishruth Thimmaiah <vishruththimmaiah at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/RISCV/combine-clmul.ll
    M llvm/test/CodeGen/X86/pclmulqdq.ll

  Log Message:
  -----------
  [DAG] Add basic folds for CLMUL nodes (#176961)

Closes #176783

Adds support for folding `ISD::CMUL`/`CMULH`/`CMULR` nodes.


  Commit: 6bae2a98b4c757da73611afe0f28b5ca5287d8c1
      https://github.com/llvm/llvm-project/commit/6bae2a98b4c757da73611afe0f28b5ca5287d8c1
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Clarify specification for float min/max operations (#172012)

This implements some clarifications for the specification of floating
point min/max operations based on the discussion in
https://discourse.llvm.org/t/rfc-a-consistent-set-of-semantics-for-the-floating-point-minimum-and-maximum-operations/89006.

The key changes are:

* Explicitly specify minnum and maxnum with an sNaN operand as
non-deterministically either returning NaN or treating sNaN as qNaN.
This was implied by our general NaN semantics, but is important to call
out here due to the special behavior of sNaN.
* Explicitly specify the same non-determinism for the minnum/maxnum
based vector reductions as well.
* Explicitly specify the meaning of nsz on float min/max ops. In
particular, clarify that unlike normal nsz semantics, it does not allow
introducing a zero with a different sign out of thin air.
* Simplify the semantics comparison section. This now focuses only on
NaN and signed zero behavior, but omits information about exceptions
that is not relevant for these non-constrained intrinsics.


  Commit: 8d55fa2853e239fda117c0f6976d10a6b89e7a3f
      https://github.com/llvm/llvm-project/commit/8d55fa2853e239fda117c0f6976d10a6b89e7a3f
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.ll
    M llvm/test/CodeGen/AMDGPU/optimize-compare.mir
    M llvm/test/CodeGen/AMDGPU/s_cmp_0.ll

  Log Message:
  -----------
  [AMDGPU] Remove redundant s_cmp_* after add X, 1 (#176962)

Convert:

```
s_add_u32 X, Y, 1
s_cmp_lg_i32 X, 0

```
to:

```
s_add_u32 X, Y, 1
<invert scc uses>
```
Also delete with s_cmp_eq_i32 X, 0, but inverting scc uses is not
necessary.

---------

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


  Commit: 3586588cc9d0b9b76ce8370505db4d5dbf1d5b70
      https://github.com/llvm/llvm-project/commit/3586588cc9d0b9b76ce8370505db4d5dbf1d5b70
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/R600Processors.td

  Log Message:
  -----------
  [NFCI][AMDGPU] Add `FeatureMadMacF32Insts` to all R600 processors (#177509)


  Commit: 668d474185340099377820464eb1f334ce8cd875
      https://github.com/llvm/llvm-project/commit/668d474185340099377820464eb1f334ce8cd875
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/ACCIfClauseLowering.cpp
    M mlir/test/Dialect/OpenACC/acc-if-clause-lowering.mlir

  Log Message:
  -----------
  [OpenACC][MLIR] clone private operands during ACCIfClauseLowering (#177458)

Clone the private operands into the compute region side. This also fixes
an issue where references to acc.private remain on the host side.


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

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/canonicalize.mlir

  Log Message:
  -----------
  [mlir][tosa] Add a canonicalization to optimize cast cast sequences (#176904)

This commit introduces a new canonicalization over a sequence of cast
operations. cast->cast sequences can be simplified to a single cast when
no narrowing is performed inbetween. This optimization is limited to
integer types, since floating point casts may impact numerical
behaviour.


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

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

  Log Message:
  -----------
  [libc++][NFC] Clang-format <vector> and remove unused __self alias (#177021)

These changes were extracted out of the size-based vector patch.

Co-authored-by: Christopher Di Bella <cjdb at google.com>


  Commit: 17a17fa81c48ad2c1cd36f27c317d964e86ecf1b
      https://github.com/llvm/llvm-project/commit/17a17fa81c48ad2c1cd36f27c317d964e86ecf1b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/PredicateInfo.h
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/PredicateInfo.cpp
    A llvm/test/Transforms/SCCP/assume-operand-bundles.ll
    A llvm/test/Transforms/Util/PredicateInfo/assume-operand-bundles.ll

  Log Message:
  -----------
  [PredicateInfo] Extract information from assume operand bundles (#177349)


  Commit: afec4c28d55acc81315a4ef4fb7bcf319da7c830
      https://github.com/llvm/llvm-project/commit/afec4c28d55acc81315a4ef4fb7bcf319da7c830
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Normalize IEEE 754 spelling (#174721)

We currently use three spellings, "IEEE754", "IEEE-754" and "IEEE 754".
Normalize to the latter.


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

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Specialize.cpp
    M mlir/test/Dialect/Linalg/roundtrip-linalg-named-ops.mlir
    M mlir/test/Dialect/Linalg/specialize-generic-ops.mlir

  Log Message:
  -----------
  [mlir][linalg] Preserve cast semantics during generic to matmul (#174757)

Infer signed/unsigned cast intent from cast ops in linalg.generic bodies
and propagate it via the matmul cast attribute. This could otherwise lead
to silent overflow/underflow errors in e2e execution.

TODO: Extend this to other named ops that support cast attribute.

Fixes #174517


  Commit: 6e738e187055bbd33b6c3d203b6b55904dfcb624
      https://github.com/llvm/llvm-project/commit/6e738e187055bbd33b6c3d203b6b55904dfcb624
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll

  Log Message:
  -----------
  [CodeGen][NPM] Add "PhysicalRegisterUsageAnalysis" once (#173489)


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

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

  Log Message:
  -----------
  [ProfCheck] Add new tests to xfail list

PhaseOrdering fixes are likely to be coincidental and are probably in
passes we have not gotten to yet. We have not started working on any of
the coroutine passes.


  Commit: 0145a643ccaf55adf33f117e50ff587a4d2b8d9c
      https://github.com/llvm/llvm-project/commit/0145a643ccaf55adf33f117e50ff587a4d2b8d9c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/test/Transforms/DeadStoreElimination/simple.ll

  Log Message:
  -----------
  [DSE] Make DSE eliminate stores to objects with a sized dead_on_return

dead_on_return is made optionally sized in #171712. This patch adds
handling in DSE so that we can actually eliminate stores to pointer
parameters marked with a sized dead_on_return attribute. We do not
eliminate stores where the store may overlap with bytes that are not
known to be dead after return.

Reviewers: nikic, antoniofrighetto, alinas, aeubanks

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


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AArch64/sve-load-store-legalisation.ll

  Log Message:
  -----------
  DAG: Use poison in more vector legalization contexts (#177580)


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

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/assume-loop-align.ll
    M llvm/test/Transforms/InstCombine/assume.ll
    M llvm/test/Transforms/InstCombine/assume_inevitable.ll

  Log Message:
  -----------
  [InstCombine] Always fold alignment assumptions into operand bundles (#177597)


  Commit: 70ee6e4427c8f55a910193bbda2eadf75e8a75f2
      https://github.com/llvm/llvm-project/commit/70ee6e4427c8f55a910193bbda2eadf75e8a75f2
  Author: Alexandre Ganea <alex_toresh at yahoo.fr>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Support/Windows/Process.inc
    M llvm/lib/Support/Windows/Threading.inc

  Log Message:
  -----------
  [Support] Move loadSystemModuleSecure into Process.inc. NFC. (#177598)

Move Windows-specific function
`llvm::sys::windows::loadSystemModuleSecure` from
`lib/Support/Windows/Threading.inc` into
`lib/Support/Windows/Process.inc`.

This is to fix link problems on Windows, see
https://github.com/llvm/llvm-project/pull/169224#issuecomment-3790350128


  Commit: 48fb51b14cdbbfe99abcef9bce0ba7e042b35bf5
      https://github.com/llvm/llvm-project/commit/48fb51b14cdbbfe99abcef9bce0ba7e042b35bf5
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [VectorCombine] Fold vector sign-bit checks (#175194)

Fold patterns that extract sign bits, reduce them, and compare against
boundary values into direct sign checks on the reduced vector.

```
icmp pred (reduce.{add,or,and,umax,umin}(lshr X, BitWidth-1)), C
    ->  icmp slt/sgt (reduce.{or,umax,and,umin}(X)), 0/-1
```

When the comparison is against 0 or MAX (1 for boolean reductions,
NumElts for add), the pattern reduces to one of four quantified
predicates:
- ∀x: x < 0 (AllNeg)
- ∀x: x ≥ 0 (AllNonNeg)
- ∃x: x < 0 (AnyNeg)
- ∃x: x ≥ 0 (AnyNonNeg)

The transform eliminates the shift and selects between
reduce.or/reduce.umax or reduce.and/reduce.umin based on cost modeling.

## The matrix of Alive2 proofs for every pair of {reduction,
comparison}:

| Reduction | == 0 | != 0 | == MAX | != MAX |
|-----------|------|------|--------|--------|
| or | [proof](https://alive2.llvm.org/ce/z/_BWxJW) |
[proof](https://alive2.llvm.org/ce/z/k3EiK6) |
[proof](https://alive2.llvm.org/ce/z/a8cAjp) |
[proof](https://alive2.llvm.org/ce/z/ci-HMt) |
| umax | [proof](https://alive2.llvm.org/ce/z/dWt28G) |
[proof](https://alive2.llvm.org/ce/z/_MqxXC) |
[proof](https://alive2.llvm.org/ce/z/KQebnF) |
[proof](https://alive2.llvm.org/ce/z/mixEgN) |
| and | [proof](https://alive2.llvm.org/ce/z/JgYrLj) |
[proof](https://alive2.llvm.org/ce/z/FZuPLy) |
[proof](https://alive2.llvm.org/ce/z/bYCa8V) |
[proof](https://alive2.llvm.org/ce/z/9fsLsN) |
| umin | [proof](https://alive2.llvm.org/ce/z/YnaSL-) |
[proof](https://alive2.llvm.org/ce/z/rGrgoM) |
[proof](https://alive2.llvm.org/ce/z/pb-ezQ) |
[proof](https://alive2.llvm.org/ce/z/JkoqEi) |
| add | [proof](https://alive2.llvm.org/ce/z/d5w5CF) |
[proof](https://alive2.llvm.org/ce/z/GUgQ2Z) |
[proof](https://alive2.llvm.org/ce/z/HnstY8) |
[proof](https://alive2.llvm.org/ce/z/j8z_3C) |

### Other test cases

| Test | Proof |
|------|-------|
| or_slt_1 (slt 1 ≡ eq 0) | [proof](https://alive2.llvm.org/ce/z/Wdb_uN)
|
| umax_sgt_0 (sgt 0 ≡ ne 0) |
[proof](https://alive2.llvm.org/ce/z/nw6NZc) |
| and_slt_max (slt 1 ≡ ne 1) |
[proof](https://alive2.llvm.org/ce/z/ZDMSXZ) |
| umin_sgt_max_minus_1 (sgt 0 ≡ eq 1) |
[proof](https://alive2.llvm.org/ce/z/Uynf8P) |
| add_ult_max (ult 4 ≡ ne 4) |
[proof](https://alive2.llvm.org/ce/z/pyDgTg) |
| add_ugt_max_minus_1 (ugt 3 ≡ eq 4) |
[proof](https://alive2.llvm.org/ce/z/mHVXJk) |
| ashr_add_eq_0 (ashr instead of lshr) |
[proof](https://alive2.llvm.org/ce/z/oa9Kgo) |

### or/umax and and/umin equivalence

| Check | Equivalence | Proof |
|-----------------|-------------|-------|
| AnyNeg | or slt 0 ≡ umax slt 0 |
[proof](https://alive2.llvm.org/ce/z/Do2tNQ) |
| AllNonNeg | or sgt -1 ≡ umax sgt -1 |
[proof](https://alive2.llvm.org/ce/z/N4kZ8Z) |
| AllNeg | and slt 0 ≡ umin slt 0 |
[proof](https://alive2.llvm.org/ce/z/4mNpMk) |
| AnyNonNeg | and sgt -1 ≡ umin sgt -1 |
[proof](https://alive2.llvm.org/ce/z/2pVnyg) |


  Commit: 2357408dd2c7700d8153f26bb081bb1065287c41
      https://github.com/llvm/llvm-project/commit/2357408dd2c7700d8153f26bb081bb1065287c41
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add layout propagation for `xegpu.store_matrix` (#174952)


  Commit: 60a108bcc8a47f6b4091a6291636fbe4dec9615f
      https://github.com/llvm/llvm-project/commit/60a108bcc8a47f6b4091a6291636fbe4dec9615f
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp

  Log Message:
  -----------
  [mlir][interface] Add getNonSuccessorInputs API to RegionBranchOpInterface (#175212)

Add getNonSuccessorInputs API to RegionBranchOpInterface.It is used to
return the non-forwarded arguments or results.


  Commit: daa98ac40a010d19150d0256827075eb3b6eb45e
      https://github.com/llvm/llvm-project/commit/daa98ac40a010d19150d0256827075eb3b6eb45e
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/PredicateInfo.cpp

  Log Message:
  -----------
  inline assert-only variable from 17a17fa (#177602)


  Commit: 168ccaebf0b0ed6c216edd54271f1cf57f45cc3b
      https://github.com/llvm/llvm-project/commit/168ccaebf0b0ed6c216edd54271f1cf57f45cc3b
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
    M lldb/include/lldb/Host/windows/PseudoConsole.h
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/test/Shell/Settings/TestFrameFormatColor.test
    M lldb/test/Shell/Settings/TestFrameFormatNoColor.test

  Log Message:
  -----------
  Revert "[lldb][windows] add STDIN and STDOUT forwarding support (#175812)" (#177610)


  Commit: 3a1288c0fbe113834dfa8835223bd8f1830ceb0d
      https://github.com/llvm/llvm-project/commit/3a1288c0fbe113834dfa8835223bd8f1830ceb0d
  Author: Nick Kreeger <nick.kreeger at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/VerificationUtils.h
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Utils/VerificationUtils.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/MemRef/invalid.mlir
    M mlir/test/Dialect/Vector/invalid.mlir

  Log Message:
  -----------
  [mlir][Utils] Add verifyElementTypesMatch helper (NFC) (#176668)

This change builds on #174336 and #175880, which introduced shared
VerificationUtils with verifyDynamicDimensionCount() and
verifyRanksMatch() methods.

This patch adds a new verifyElementTypesMatch() verification utility
that checks if two shaped types have matching element types and emits
consistent error messages. The utility is applied to several ops across
the MemRef and Vector dialects.


  Commit: 45abb3027d183dd009c8f64d50d0ff8de24d3f1e
      https://github.com/llvm/llvm-project/commit/45abb3027d183dd009c8f64d50d0ff8de24d3f1e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td

  Log Message:
  -----------
  [PowerPC] Fix instruction sizes / branch relaxation (#175556)

For PowerPC, having accurate (or at least not too small) instruction
sizes is critical, because the PPCBranchSelector pass relies on them.
Underestimating the size of an instruction can result in the wrong
branch kind being chosen, which will result in an MC error.

This patch introduces validation that the instruction size reported by
TII matches the actually emitted instruction size, and fixes various
cases where this was not the case.

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


  Commit: 284d6d6c4973f6887258bfedca96867d78c63e5a
      https://github.com/llvm/llvm-project/commit/284d6d6c4973f6887258bfedca96867d78c63e5a
  Author: Alexey Bader <alexey.bader at intel.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libsycl/Maintainers.md

  Log Message:
  -----------
  [libsycl][NFC] Assign lead maintainers for the project (#176769)

To align with https://llvm.org/docs/DeveloperPolicy.html#maintainers
libsycl project must explicitly list lead maintainers.


  Commit: c28c8a0056110dfd4689b7c0f0a2d034a6e5b2ab
      https://github.com/llvm/llvm-project/commit/c28c8a0056110dfd4689b7c0f0a2d034a6e5b2ab
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [MLIR][XeGPU] Add two 8bit float types F8E4M3FN and F8E5M2 to valid XeGPU float type. (#169420)

These float types are already part of MLIR built in types.
This PR just adds them as valid float types for XeGPU dialect.
For bit format of the two float types, see 
https://onnx.ai/onnx/technical/float8.html


  Commit: 32ce22f9939a793e5ffde112e974617229e2c1e2
      https://github.com/llvm/llvm-project/commit/32ce22f9939a793e5ffde112e974617229e2c1e2
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    A .github/workflows/prune-branches.yml
    A .github/workflows/prune-unused-branches.py

  Log Message:
  -----------
  [Github] Add initial workflow to prune unused user branches

This patch starts implementing the long requested feature of a workflow
to automatically prune user branches that are not tied to a PR. For now
this just consists of a script that finds user branches not attached to
a PR and prints them out. Future patches will add support for dumping
the diff between the branches and main (to persist to artifact storage
so people can recover if they intended to use the branch) and actually
deleting the branches.

Reviewers: cmtice, tstellar, petrhosek, vbvictor

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


  Commit: 77ebdad20a1701f30b0610a6df01ea66693ce4cf
      https://github.com/llvm/llvm-project/commit/77ebdad20a1701f30b0610a6df01ea66693ce4cf
  Author: Zinovy Nis <zinovy.nis at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-string-view.rst
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-custom-view.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-ignored.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view.cpp

  Log Message:
  -----------
  [clang-tidy] Add a new check 'modernize-use-string-view' (#172170)

Looks for functions returning `std::[w|u8|u16|u32]string` and suggests
to change it to `std::[...]string_view` if possible and profitable.

 Example:
```cpp
 std::string foo(int i) { // <---- can be replaced to `std::string_view foo(...) {`
   switch(i) {
     case 1:
       return "case1";
     case 2:
       return "case2";
     default:
       return {};
   }
 }

```


  Commit: e044ad99fed982e953c702dcc9067d156c6e37c5
      https://github.com/llvm/llvm-project/commit/e044ad99fed982e953c702dcc9067d156c6e37c5
  Author: Roy Shi <royitaqi at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/source/Host/macosx/objcxx/PosixSpawnResponsible.h

  Log Message:
  -----------
  [lldb] Unconditionally setup posix spawn responsible flag (#177451)

# Problem

The TCC support in LLDB was added by
https://github.com/llvm/llvm-project/commit/041c7b84a4b925476d1e21ed302786033bb6035f.

However, on newer macOS machines, when launching and debugging an
Catalyst app on macOS (see
[Host.mm](https://github.com/llvm/llvm-project/blob/1286de408cc4a3ba1bd6cb6fed7d9517c0429462/lldb/source/Host/macosx/objcxx/Host.mm#L1208-L1219)),
the TCC doesn't work as expected. This is because, even though the
launch info doesn't specify `eLaunchFlagInheritTCCFromParent`, the app
is still launched to inherit TCC from its parent (the LLDB). This
prevents the user from granting privacy access to the Catalyst app,
which is usually reflected in macOS' "Privacy & Security" settings.

For example, in the following screenshot (see PR), even when the microphone
access has already been granted to WhatsApp, trying to use it will still
cause a prompt (as if it's not granted already).


# Fix

On newer macOS versions, the code which was originally inside the `#if
__has_include(<responsibility.h>)` actually works. So the fix is to
unwrap them from the `#if`.

Also, since we already forward declare the type and dlsym the symbol,
the `#include <responsibility.h>` can be removed. Same for the
`@available` check, since the original code handles `dlsym` failure.


See test and screenshots in PR.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AMDGPU/vector-reduce-or.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-umax.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  DAG: Use poison for unused shuffle operands in legalizer (#177578)


  Commit: 69eac707ed87c9f2a08dcea5947be2c4f4eec6aa
      https://github.com/llvm/llvm-project/commit/69eac707ed87c9f2a08dcea5947be2c4f4eec6aa
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Frontend/CodeGenOptions.def
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/test/Driver/fast-math.f90
    A flang/test/Driver/protect-parens.f90
    A flang/test/Lower/HLFIR/protect-parens-arrays.f90
    A flang/test/Lower/HLFIR/protect-parens.f90

  Log Message:
  -----------
  [flang] Support -f(no-)protect-parens (#170505)

Driver/compiler option plumbing to get -f(no-)protect-parens supported
on flang. (This option was already supported in clang, so extended the
option config to enable it in flang.)

In the compiler, support it in code gen options and in lowering options.
Hooked up lowering options with the code by @alexey-bataev that turns
off reassociation transformations.

Co-authored-by: Alexey Bataev <a.bataev at outlook.com>


  Commit: 296f5a75bd72bc9342bd21010f8134ecc5ec78a3
      https://github.com/llvm/llvm-project/commit/296f5a75bd72bc9342bd21010f8134ecc5ec78a3
  Author: Steven Perron <stevenperron at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    A llvm/test/CodeGen/SPIRV/hlsl-resources/Sample.ll

  Log Message:
  -----------
  [SPIR-V] Implement sample and sample_clamp intrinsics for HLSL resources (#177234)

This patch implements the `sample` and `sample_clamp` intrinsics for
HLSL
resources in the SPIR-V backend. It adds the necessary intrinsic
definitions
in `IntrinsicsDirectX.td` and `IntrinsicsSPIRV.td`, and implements the
instruction selection logic in `SPIRVInstructionSelector.cpp`.

Key changes:
- Added `int_dx_resource_sample` and `int_dx_resource_sample_clamp`
intrinsics.
- Added `int_spv_resource_sample` and `int_spv_resource_sample_clamp`
intrinsics.
- Implemented `selectSampleIntrinsic` to handle
`OpImageSampleImplicitLod` generation.
- Added `ResourceDimension` enum in `DXILABI.h` and `HLSLResource.h`.
- Added a new test case
`llvm/test/CodeGen/SPIRV/hlsl-resources/Sample.ll` to verify the
implementation.


  Commit: 63e7070cbc6547aa16396a8721e8b5a97dc014c4
      https://github.com/llvm/llvm-project/commit/63e7070cbc6547aa16396a8721e8b5a97dc014c4
  Author: David Zbarsky <dzbarsky at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Add filegroup for builtin_headers (#67757)

I'd like to package these files into a distribution tar as part of
https://github.com/dzbarsky/static-clang. I'm currently applying patches
to the llvm repo but figured this bit could be upstreamed.

(Also open to ideas what to do about the `config.bzl` change in
https://github.com/dzbarsky/static-clang/blob/master/llvm.patch - it's
needed to link with musl libc)


  Commit: 12cea04988d67f940bec567b04fe76e9c9da3d1b
      https://github.com/llvm/llvm-project/commit/12cea04988d67f940bec567b04fe76e9c9da3d1b
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [lldb] Improve filecheck() by replacing assertTrue with assertEqual (#177212)


  Commit: 5b4a5cf51f37cb42c5e0bdb22b43acde137281c8
      https://github.com/llvm/llvm-project/commit/5b4a5cf51f37cb42c5e0bdb22b43acde137281c8
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-objdump.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    A llvm/test/MC/RISCV/symbolize-operands.s
    M llvm/tools/llvm-objdump/llvm-objdump.cpp

  Log Message:
  -----------
  [RISCV][llvm-objdump] Support --symbolize-operands (#166656)

This adds support for `--symbolize-operands`, so that local references
are turned back into labels by objdump, which makes it easier to tell
what is going on with a linked object.

When using `--symbolize-operands`, branch target addresses are not
printed, only the referenced symbol is printed, and the address is
elided:

```
# Without --symbolize-operands
       0: 04a05263      blez    a0, 0x44 <.text+0x44>
...
      40: fd1ff06f      j       0x10 <.text+0x10>
      44: 00000613      li      a2, 0x0

# With --symbolize-operands
       0: 04a05263      blez    a0,  <L3>
...
      40: fd1ff06f      j        <L0>
<L3>:
      44: 00000613      li      a2, 0x0
```


  Commit: 4237e74e52b0def565141937637cac35d635fd90
      https://github.com/llvm/llvm-project/commit/4237e74e52b0def565141937637cac35d635fd90
  Author: Kavin Gnanapandithan <kavin.balag at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-binops.ll

  Log Message:
  -----------
  [VectorCombine] foldShuffleOfBinops - failure to track OperandValueInfo (#171934)

Resolves #170500.

Implemented mergeInfo static helper to return common
TTI::OperandValueInfo data .

Added common OperandValueInfo `Op0Info` && `Op1Info` to NewCost
calculation.


  Commit: 6cf189acae1c54003db38ad43197b26aa0817d54
      https://github.com/llvm/llvm-project/commit/6cf189acae1c54003db38ad43197b26aa0817d54
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/builtin-rotate.c

  Log Message:
  -----------
  [clang][test] Fix builtin-rotate.c failure on ARM32 (#177290)

Replace unsigned __int128 with unsigned _BitInt(128) since __int128 is
not supported on ARM 32-bit targets.

Fixes https://lab.llvm.org/buildbot/#/builders/79/builds/2754


  Commit: fef6a14b0293469786677d55a37dcb906c0a37f1
      https://github.com/llvm/llvm-project/commit/fef6a14b0293469786677d55a37dcb906c0a37f1
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [NFCI][AMDGPU] Fix the predicate `HasDsSrc2Insts` (#177621)

I'm not sure why the predicate has a `!`, and more surprisingly,
removing it doesn't change anything.


  Commit: 9109c603a88f6ae1ab914cf2064bb5ad05970918
      https://github.com/llvm/llvm-project/commit/9109c603a88f6ae1ab914cf2064bb5ad05970918
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [MLIR][XeGPU] Add uArch limitation to scatter load store (#172845)


  Commit: 09685b79ed937ab956acd40a43eb1531165b4454
      https://github.com/llvm/llvm-project/commit/09685b79ed937ab956acd40a43eb1531165b4454
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fmax_legacy.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fmin_legacy.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize rules for fmin/fmax_legacy (#177520)


  Commit: 9f3d143d96ecde0162ce0ee0585f4adee8007278
      https://github.com/llvm/llvm-project/commit/9f3d143d96ecde0162ce0ee0585f4adee8007278
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  AMDGPU: Remove dead code configuring f16 is_fpclass (#177626)

isTypeLegal can never be true here. The register classes
are registered at the end of the target lowering constructor,
and in the subclasses.


  Commit: 41567d8ec21b79e16c9f1223e2df23c65c1bc195
      https://github.com/llvm/llvm-project/commit/41567d8ec21b79e16c9f1223e2df23c65c1bc195
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.h
    M llvm/include/llvm/MC/MCGOFFAttributes.h
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.h
    A llvm/test/CodeGen/SystemZ/zos_sinit.ll

  Log Message:
  -----------
  [SystemZ] Implement ctor/dtor emission via @@SQINIT and .xtor sections (#171476)

This patch implements support for constructors/destructors by
introducing the
`@@SQINIT` section and emitting `.xtor.<priority>` sections within the
SystemZ
AsmPrinter and in the GOFF object lowering layer.


  Commit: e67f934c12bf2a3dd6ed90b212ff40a96a074b3f
      https://github.com/llvm/llvm-project/commit/e67f934c12bf2a3dd6ed90b212ff40a96a074b3f
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/ProfDataUtils.h
    M llvm/lib/IR/ProfDataUtils.cpp
    M llvm/lib/Transforms/Utils/IntegerDivision.cpp
    M llvm/test/CodeGen/RISCV/idiv_large.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/X86/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/X86/pr38539.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/sdiv129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/srem129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/udiv129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/urem129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/vector.ll

  Log Message:
  -----------
  [profcheck] Fix profle metatdata propagation for Large Integer operations (#175862)

This PR improves the propagation of profile metadata within the
ExpandIRInsts pass. When lowering large integer division operations, the
pass now ensures that branch weights are correctly attached to the
generated control flow, preventing the loss of profile data during IR
expansion.

This PR improves signed and unsigned division/remainder for non-native
bit widths (e.g., `sdiv/udiv i129`, `srem/urem i129`) and implemented
Heuristic-Based Branch Weights labeling using established heuristics for
edge cases e.g., `Division-by-zero guards` and `Magnitude comparisons
between dividends and divisors`.

It also adds detailed comments within the expansion logic to explain the
rationale behind specific branch weight choices and the underlying
mathematical invariants.

Please refer to the implementation details in the source code for the
specific branch weight values and the logic governing their application.

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


  Commit: 7edf4e15ffbfb0ee7bd1b34fce85a3fb9c6c4872
      https://github.com/llvm/llvm-project/commit/7edf4e15ffbfb0ee7bd1b34fce85a3fb9c6c4872
  Author: Ryan Mitchell <Ryan.Mitchell at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCRegisterInfo.h
    M llvm/include/llvm/Target/Target.td
    A llvm/test/TableGen/regunit-intervals-impossible.td
    A llvm/test/TableGen/regunit-intervals.td
    M llvm/utils/TableGen/Common/CodeGenRegisters.cpp
    M llvm/utils/TableGen/Common/CodeGenRegisters.h
    M llvm/utils/TableGen/Common/CodeGenTarget.cpp
    M llvm/utils/TableGen/Common/CodeGenTarget.h
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Allow targets to enforce regunits assignment as intervals (#175823)

General tablegen infrastructure for #174888


  Commit: 98b55bcdec90b7f948ab16a8d82ab40f3e0e0a1b
      https://github.com/llvm/llvm-project/commit/98b55bcdec90b7f948ab16a8d82ab40f3e0e0a1b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  AMDGPU: Move f16 legality configuration to SITargetLowering (#177629)

f16 is never legal for R600 so this should not be in the common
base class.


  Commit: 1f8ae28e22bbb521db7cac4eb468d97e4f55fba5
      https://github.com/llvm/llvm-project/commit/1f8ae28e22bbb521db7cac4eb468d97e4f55fba5
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/include/clang/Driver/ToolChain.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Linux.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/test/Driver/hip-runtime-libs-linux.hip
    M clang/test/Driver/hipstdpar.c
    M clang/test/Driver/rocm-detect.hip

  Log Message:
  -----------
  [HIP] Pass HIP library directly and refactor (#176019)

Summary:
Currently we pass `-L` and `-l` to get the HIP library. Because we are
attached to a single HIP installation it's far better to pass it by
filename. This is because the `-L` could be out of order with other user
libraries and those could override it. If someone uses HIP with a
specific ROCm installation they most likely want that library, otherwise
incompatibilities can occur. This is still overridable with command line
flags if users want to pass a different one for some reason.

This PR also refactors the handling to be more generic for future
additions.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/frem.ll
    M llvm/test/CodeGen/AMDGPU/fabs.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.f16.ll
    M llvm/test/CodeGen/AMDGPU/fp-classify.ll
    M llvm/test/CodeGen/AMDGPU/fract-match.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll

  Log Message:
  -----------
  AMDGPU: Ignore type legality in isFAbsFree (#177630)

This treats it as free on targets without legal f16. This
matches the existing logic in fneg, and they should be the same.
The test changes are mostly neutral with a few improvements.


  Commit: 0d0249e543c91bf2f55c4e123ae8c31d3fabb77a
      https://github.com/llvm/llvm-project/commit/0d0249e543c91bf2f55c4e123ae8c31d3fabb77a
  Author: Patrick Simmons <patrick.simmons at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    A llvm/test/CodeGen/AMDGPU/inlineasm-sgmask.ll

  Log Message:
  -----------
  Try To Guess SGMasks for Inline Asm Instructions (#155491)

Addresses SWDEV-549227


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

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/arith.ll

  Log Message:
  -----------
  [AArch64] Add some basic i128 arithmetic cost test cases. NFC


  Commit: f7361efc07737d83d2b74ee49ccfac71a465bfba
      https://github.com/llvm/llvm-project/commit/f7361efc07737d83d2b74ee49ccfac71a465bfba
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Support/Threading.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/Windows/Threading.inc

  Log Message:
  -----------
  [Support] Avoid misguided FreeBSD hack (#177508)

FreeBSD doesn't do anything wrong here, it just happens to define and
use a struct thread in its own headers. The problems arise because here
in LLVM we have using namespace llvm prior to including system headers,
which is bad practice for precisely this reason. If we instead play by
the rules and defer our using namespace llvm until after we've included
the system headers then we no longer need this hack.

This hack is particularly problematic by being conditional on
__FreeBSD__ as of 9093ba9f7ee5 ("[Support] Include Support/thread.h
before api implementations (#111175)"), since on non-FreeBSD
Threading.inc can reference anything in Support/thread.h, only causing
errors on FreeBSD, which is precisely what happened in 64be34c562a2
("Enable using threads on z/OS (#171847)").

By deferring the using namespace llvm until after Threading.inc is
included there may be build failures introduced on untested platforms
due to needing to replace unqualified identifiers with qualified ones by
prepending llvm::.


  Commit: 8b00b1d928861397301506e7768575e58d7e20ee
      https://github.com/llvm/llvm-project/commit/8b00b1d928861397301506e7768575e58d7e20ee
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/Maintainers.md

  Log Message:
  -----------
  Fix formatting in `Maintainers.md` (#177498)


  Commit: 7c8a13ab79c713071b93ee4660c94133430091c2
      https://github.com/llvm/llvm-project/commit/7c8a13ab79c713071b93ee4660c94133430091c2
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/LoopPeel.h
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
    M llvm/lib/Transforms/Utils/LoopPeel.cpp

  Log Message:
  -----------
  [LoopPeel] change `peelLoop`'s return type from `bool` to `void` (#177488)


  Commit: b94c5e097b4c69e58140d494bbb21265fc0df1a6
      https://github.com/llvm/llvm-project/commit/b94c5e097b4c69e58140d494bbb21265fc0df1a6
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/strict_ldexp.f16.ll
    M llvm/test/CodeGen/AMDGPU/strict_ldexp.f32.ll
    M llvm/test/CodeGen/AMDGPU/strict_ldexp.f64.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_STRICT_FLDEXP (#177525)


  Commit: ff97d1a5e349ec7409e82d7208f69144e3a92257
      https://github.com/llvm/llvm-project/commit/ff97d1a5e349ec7409e82d7208f69144e3a92257
  Author: Madhur Kumar <152476790+MadhurKumar004 at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/dfmaf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/dfmaf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/dfmaf128.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 dfmaf128 to Header Only (#176480)

Closes https://github.com/llvm/llvm-project/issues/175315, Part of
https://github.com/llvm/llvm-project/issues/175344


  Commit: fdb05bbf62b8d4fc8dc7ce1f1cfa570f3265a8ae
      https://github.com/llvm/llvm-project/commit/fdb05bbf62b8d4fc8dc7ce1f1cfa570f3265a8ae
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [LLVM] Update assert to removed unused variable warning. (#177632)

Remove the variable definition and move the function call directly into
the assert statement. Otherwise builds with -Werror that don't use
asserts would fail.


  Commit: e7e2c2b5655991c5a2f9f4a1bfcd8203f17893e9
      https://github.com/llvm/llvm-project/commit/e7e2c2b5655991c5a2f9f4a1bfcd8203f17893e9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/test/CodeGen/RISCV/rv64zbc-intrinsic.ll
    M llvm/test/CodeGen/RISCV/rv64zbc-zbkc-intrinsic.ll

  Log Message:
  -----------
  [RISCV] Select (clmul (zext_inreg X, i32), (zext_inreg X, i32)) as (clmulh (slli X, 32), (slli X, 32)). (#177429)

Without Zba. We do the same for MUL->MULHU without Zba.


  Commit: 896a6674730b678f73ad884264c785236fd1a04c
      https://github.com/llvm/llvm-project/commit/896a6674730b678f73ad884264c785236fd1a04c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits][SelectionDAG] Add KnownBits::clmul. Support trailing bits.  NFC (#177517)

Borrow the known trailing bits logic from KnownBits::mul, but using
APIntOps::clmul.


  Commit: 4435083c268db1dc2bc86595102ff1df9cc98e96
      https://github.com/llvm/llvm-project/commit/4435083c268db1dc2bc86595102ff1df9cc98e96
  Author: Prajwal <fasfasmag at proton.me>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/f16fmal.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/f16fmal.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/f16fmal.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 f16fmal to header-only (#176576)

closes #175324 
part of #175313


  Commit: 852649d3ee567add0f2d09bd2f640b643d1f2a32
      https://github.com/llvm/llvm-project/commit/852649d3ee567add0f2d09bd2f640b643d1f2a32
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  AMDGPU: Remove an unnecessary lookup of the AMDGPUSubtarget (#177646)


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/ctlz.ll

  Log Message:
  -----------
  AMDGPU: Use generic legality checks instead of checking subtarget feature (#177656)


  Commit: 7638c1df0e50b42087260a95dc9ee890ab6ca594
      https://github.com/llvm/llvm-project/commit/7638c1df0e50b42087260a95dc9ee890ab6ca594
  Author: Sean Perry <perry at ca.ibm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/pragma-export.c
    A clang/test/CodeGen/pragma-export.cpp
    A clang/test/CodeGen/zos-pragmas.c
    A clang/test/CodeGen/zos-pragmas.cpp
    A clang/test/Parser/pragma-export.c
    A clang/test/Parser/pragma-export.cpp
    A clang/test/Sema/pragma-export-failing.c
    A clang/test/Sema/pragma-export-failing.cpp

  Log Message:
  -----------
  [SystemZ][z/OS] Implement #pragma export (#141671)

Implement the export pragma that is used in the z/OS XL C/C++ compiler
to indicate that an external symbol is to be exported from the shared
library. The syntax for the pragma is:
```
'#pragma' 'export' '(' name ')'
```
For C++ if `name` is a function it needs to be declared `extern "C"`.

See the following for the XL documentation:
- https://www.ibm.com/docs/en/zos/3.1.0?topic=descriptions-pragma-export

This code was originally in PR
https://github.com/llvm/llvm-project/pull/111035. I have split it out
into separate PRs so the code for #pragma export is in one PR and the
code for _Export keyword is in another. See that original PR for earlier
comments.


  Commit: 537276af2d0e242679e0e4af42ab5db76dede07d
      https://github.com/llvm/llvm-project/commit/537276af2d0e242679e0e4af42ab5db76dede07d
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll

  Log Message:
  -----------
  [AMDGPU][NPM] Complete fast regalloc pipeline (#174096)


  Commit: 8206c81433e32c89059cb829a4a8e11e7891ce1f
      https://github.com/llvm/llvm-project/commit/8206c81433e32c89059cb829a4a8e11e7891ce1f
  Author: google-yfyang <yfyang at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libc/src/string/memory_utils/inline_memcpy.h
    M libc/src/string/memory_utils/inline_memmove.h
    M libc/src/string/memory_utils/inline_memset.h

  Log Message:
  -----------
  [libc] Use generic/builtin.h for Emscripten in memory utils (#177474)

WASM supports bulk memory operations and can benefit from using
generic/builtin.h.


  Commit: 6aedf1cfd0d245901dff71b664f0d35ccb939276
      https://github.com/llvm/llvm-project/commit/6aedf1cfd0d245901dff71b664f0d35ccb939276
  Author: Sang Ik Lee <sang.ik.lee at intel.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [MLIR][XeGPU] Add more OCP micro scaling format types. (#177613)

Add fp4 - e2m1 and fp8 - e8m0 data type.


  Commit: 5a457837dd988aa01c65820848381a5b99a74c0a
      https://github.com/llvm/llvm-project/commit/5a457837dd988aa01c65820848381a5b99a74c0a
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
    M offload/libomptarget/omptarget.cpp
    R offload/test/mapping/declare_mapper_target_checks.cpp

  Log Message:
  -----------
  Revert "[OpenMP][Mappers] Fix ref-count tracking for maps inserted by mappers. (#177059)" (#177623)

Reverts llvm/llvm-project#177059 and llvm/llvm-project#177491.

The new test may have an issue.


  Commit: 8bc9706f31e9cfaa3b1319e58b6b908d112c44f5
      https://github.com/llvm/llvm-project/commit/8bc9706f31e9cfaa3b1319e58b6b908d112c44f5
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Only track field members with storage (#177661)

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

Added tests to verify that reference members are handled correctly,
showing that returning a reference member doesn't trigger a false
positive warning, while returning a value member still correctly
produces a warning.


  Commit: 933382d09a661eecaebcb00dbee9898dc688468c
      https://github.com/llvm/llvm-project/commit/933382d09a661eecaebcb00dbee9898dc688468c
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [Github] Force build windows container

This was failing earlier due to the 21.1.8 release not being available.
Force build the container to try and see if we can fix #177477.


  Commit: c366348ed9c326f4a7e59fe0f8af4e9aac65b812
      https://github.com/llvm/llvm-project/commit/c366348ed9c326f4a7e59fe0f8af4e9aac65b812
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_codegen.cpp
    M offload/test/mapping/use_device_ptr/target_data_use_device_ptr_class_member_fallback_nullify.cpp
    M offload/test/mapping/use_device_ptr/target_data_use_device_ptr_class_member_ref_fallback_nullify.cpp
    M offload/test/mapping/use_device_ptr/target_data_use_device_ptr_var_fallback_nullify.cpp

  Log Message:
  -----------
  [Clang][OpenMP] Codegen for `use_device_ptr(fb_nullify)`. (4/4) (#173931)

Depends on #173930.

The `FB_NULLIFY` map-type bit is set in addition to `RETURN_PARAM`, for
`use_device_ptr(fb_nullify:p)`.


  Commit: cd70e2d8367493785f1591045db2151540b14b91
      https://github.com/llvm/llvm-project/commit/cd70e2d8367493785f1591045db2151540b14b91
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    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] Fix test_chained_frame_providers on 32-bit Arm (#177668)

PC addresses must always be 16-bit aligned on 32-bit Arm CPUs.

Fixes #177666


  Commit: d064f395af7ac226dec3f8e90516a26e96e2acf1
      https://github.com/llvm/llvm-project/commit/d064f395af7ac226dec3f8e90516a26e96e2acf1
  Author: Nikita Popov <nikita.ppv at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/MC/MCObjectStreamer.cpp

  Log Message:
  -----------
  [MC] Try to fix ubsan bot

Check that the size is non-zero to make sure we don't call
memcpy with null pointers. This is well-defined now, but ubsan
may still warn about it.


  Commit: be318eb63bf7c8201375a579a671cb63624d93e2
      https://github.com/llvm/llvm-project/commit/be318eb63bf7c8201375a579a671cb63624d93e2
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/secondary.h

  Log Message:
  -----------
  [scudo] Add flags to secondary cache entries. (#177506)

Instead of setting a cache entry back to read-write based on whether MTE
is enabled, add a flag that indicates if this entry was made
inaccessible. On Android, we have seen strange crashes were MTE is
disabled for a process, but the cache entry is inaccessible, causing an
access error. This indicates MTE was enabled at some point, then
disabled again. There is likely some race, or method to disable without
making inaccessible entries read-writable again. Adding the flags should
avoid this happening in the future.

Remove the resetting of the secondary cache entries when disabling MTE
since it can be done as necessary.

This change will also allow us to always make the secondary cache
entries inaccessible in the future to increase security measures even
when MTE is not enabled.

Current unit tests already cover this change.


  Commit: c75868d9572fdec742791b15fd621e86f171b687
      https://github.com/llvm/llvm-project/commit/c75868d9572fdec742791b15fd621e86f171b687
  Author: Rohan Jacob-Rao <rohanjr at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [NFC][Clang] Minor cleanups in UnsafeLibcFunctionCallGadget::matches(). (#177514)

- Remove unneeded dynamic cast
- Add consts
- Simplify boolean condition


  Commit: a16668a8d77c608281dc2c4168bbe536dadb461c
      https://github.com/llvm/llvm-project/commit/a16668a8d77c608281dc2c4168bbe536dadb461c
  Author: agozillon <Andrew.Gozillon at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/test/Driver/bbc-mlir-pass-pipeline.f90
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    M flang/test/Fir/basic-program.fir
    A flang/test/Transforms/OpenMP/conversion-declare-mapper.mlir

  Log Message:
  -----------
  [Flang][OpenMP][MLIR] Align declare mapper pass handling with other map and global operations (#176852)

This PR makes a couple of minor tweaks to the lowering for
declare_mapper operations:

1) Add declare_mapper operations to the list of global operations to
have optimisation passes
executed on them. Primarily just to make sure we keep it inline with
other global operations
that contain regions. Prevents oddities where we embed FIR/HLFIR into
the mapper that needs
lowered before being converted to LLVM-IR. One example that springs to
mind is if we ever
decide to remove the single block condition on the operation to allow
conditional checks
   for mapped data.
2) Add a CodeGenOpenMP.cpp conversion for DeclareMapperOp to make sure
we convert the return
type correctly from a BoxType to a struct type rather than an opaque
pointer when lowering.
Currently, I've left out the block argument types from being converted
as they're wrapped
   in a fir.ref and would be opauqe pointers in either case.

So some minor additions to keep declare_mapper a little more inline with
the rest of the OpenMP operations.


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

  Changed paths:
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add tests requested in #177661


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

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

  Log Message:
  -----------
  Revert "[LLVM] Update assert to removed unused variable warning. (#177632)"

This reverts commit fdb05bbf62b8d4fc8dc7ce1f1cfa570f3265a8ae.

This was causing failures in release-mode builds because the
GetPointerBaseWithConstantOffset call would never be run which leads to
ValueOffset being uninitialized and thus the behavior of the function is
unpredictable.


  Commit: 6277359e5ada7309cefe2af549879c08ee3433ba
      https://github.com/llvm/llvm-project/commit/6277359e5ada7309cefe2af549879c08ee3433ba
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [DSE] Mark BaseValue Variable [[maybe_unused]]

It is only used within an assertion but we cannot inline the call as it
is needed to get the offset from the base pointer for the function to
work.


  Commit: 358db292cc6a9a8a5448a296f643312289f328d7
      https://github.com/llvm/llvm-project/commit/358db292cc6a9a8a5448a296f643312289f328d7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M flang/test/Lower/CUDA/cuda-synchronization.cuf
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M mlir/include/mlir/Dialect/ArmSVE/IR/ArmSVE.td

  Log Message:
  -----------
  [NFC] Fix typo `instrinsic` -> `intrinsic` (#177627)


  Commit: 5234bac082743f070d1aea533f621b9fe0f4d15e
      https://github.com/llvm/llvm-project/commit/5234bac082743f070d1aea533f621b9fe0f4d15e
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tan.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tan.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tan.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 tan implementation to header-only in src/__support/math folder. (#177224)

Part of #147386

in preparation for:


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


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

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

  Log Message:
  -----------
  [Clang][CIR][Neon] Add lowering for `vabsh_f16` (#177576)

NOTE: This PR upstreams code from
  * https://github.com/llvm/clangir.

This logic was originally implemented by Amr Hesham in
https://github.com/llvm/clangir/pull/1269. Further
modification were made by other ClangIR contributors.

Co-authored-by: Amr Hesham <amr96 at programmer.net>


  Commit: c3484862ff875271e07e4c9442ad2762e29dcba0
      https://github.com/llvm/llvm-project/commit/c3484862ff875271e07e4c9442ad2762e29dcba0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [KnownBits] Rename variables and simplify KnownBits::mul. NFC (#177658)

Replace 0/1 with LHS/RHS to match arguments. Remove unneeded calls to
getLoBits. Remove unneeded references to LHS/RHS.One.


  Commit: aee91c7a4db2dcdde250bf841e79245525708cb4
      https://github.com/llvm/llvm-project/commit/aee91c7a4db2dcdde250bf841e79245525708cb4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Set vm=0 on vadc/vsbc/vmerge. NFC (#177678)

The instructions have an explicit v0 operand that is always present so
vm is always 0. We can mark it explicitly instead of relying on
DecodeVMV0RegisterClass rejecting it.

This makes it easier to validate LLVM against the RISC-V unified-db.


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

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

  Log Message:
  -----------
  [CIR] Move emitIntrinsicCallOp to CIRGenBuilderTy (#172735)

Extract `emitIntrinsicCallOp`, which was previously defined
independently in CIRGenBuiltinAArch64.cpp and CIRGenBuiltinX86.cpp, into
`CIRGenBuilderTy`.


  Commit: d7ac1fb2115a08d4abdcf52e3dc98edfef49a5af
      https://github.com/llvm/llvm-project/commit/d7ac1fb2115a08d4abdcf52e3dc98edfef49a5af
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td

  Log Message:
  -----------
  [RISCV] Use DecodeSimpleRegisterClass in 2 more cases. NFC (#177680)


  Commit: f77a8129410e0ea86471ecce39f0a2325a47720e
      https://github.com/llvm/llvm-project/commit/f77a8129410e0ea86471ecce39f0a2325a47720e
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Utility/DataExtractor.h
    M lldb/include/lldb/Utility/VirtualDataExtractor.h
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
    M lldb/source/Utility/DataExtractor.cpp
    M lldb/source/Utility/VirtualDataExtractor.cpp
    M lldb/unittests/Utility/VirtualDataExtractorTest.cpp

  Log Message:
  -----------
  [lldb] Add a GetSubsetExtractorSP method to DataExtractor (#177309)

We have many places where an ObjectFile subclass will take the
DataExtractor representing the entire binary, create a subsection of
that in a new DataExtractor for processing. For instance, an object file
might have symbol table entries with offsets into the string table. A
common code pattern is to create a DataExtractor representing the string
table, and then pulling out the c-strings based on those offsets from
the string table DataExtractor.

When code does this, it creates a new DataExtractor, copies the
Endianness and Wordsize from the original, copies the DataBufferSP from
the original, and specifies a new start and offset into the DataBuffer.

However, if the binary is actaully stored in a VirtualDataExtractor,
this code pattern loses the correct virtual-to-physical table
translation and will not work correctly. This new method simplifies this
common pattern, and correctly takes a subset of a VirtualDataExtractor.

The current implementation only allows a subset of a
VirtualDataExtractor that is contained within a single virtual entry
(LookupTable entry) and returns a DataExtractor with the corret offsets
calculated from the LookupTable. If we need to a VirtualDataExtractor to
create a Subset DataExtractor representing multiple separate virtual
ranges of data, we'll need to copy over the LookupTable entries that
cover all the bytes, and update them to be relative to the new
VirtualDataExtractor. It's a bit of work, and it's not needed right now,
so I'm not tackling that.

I am working on a larger PR which needs this new method. This PR
contains a unit test that uses it.

rdar://148939795


  Commit: d29aa30fc3bea7c8a35a82a13aa16b0293d5a75c
      https://github.com/llvm/llvm-project/commit/d29aa30fc3bea7c8a35a82a13aa16b0293d5a75c
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-23 (Fri, 23 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/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp
    M clang/test/CIR/IR/method-attr.cir

  Log Message:
  -----------
  [CIR] Upstream support for null and virtual method pointers (#176522)

This upstreams support for pointer-to-member value representations of
null and virtual member pointers and the lowering of virtual member
pointers.


  Commit: deed378d7500da486184c11fa1be8ac49b2a1fab
      https://github.com/llvm/llvm-project/commit/deed378d7500da486184c11fa1be8ac49b2a1fab
  Author: Jan Korous <jkorous at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    A clang/include/clang/Analysis/Scalable/TUSummary/EntitySummary.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummary.h

  Log Message:
  -----------
  [SSAF] Add data structures for summary data of a single TU (#176504)


  Commit: b5d8fc553d8e03f4d325458d29ac2c9e46a464e3
      https://github.com/llvm/llvm-project/commit/b5d8fc553d8e03f4d325458d29ac2c9e46a464e3
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    M lldb/packages/Python/lldbsuite/test/lldbgdbclient.py
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    A lldb/test/API/functionalities/gdb_remote_client/TestExprNoAlloc.py

  Log Message:
  -----------
  [lldb] Fix setting CanJIT if memory cannot be allocated (#176099)

When a server is unable to allocate memory for the `_M` packet, it may
respond with an error code. In this case,
`GDBRemoteCommunicationClient::AllocateMemory()` sets
`m_supports_alloc_dealloc_memory` to `eLazyBoolYes`; `eLazyBoolNo` is
only used if the server cannot handle the packet at all. Before this
patch, `ProcessGDBRemote::DoAllocateMemory()` checked this flag and
returned `LLDB_INVALID_ADDRESS` without setting an error, which caused
`Process::CanJIT()` to set `m_can_jit = eCanJITYes`, resulting in
`IRMemoryMap::FindSpace()` attempting to allocate memory in the inferior
process and failing. With the patch,
`ProcessGDBRemote::DoAllocateMemory()` returns an error and `m_can_jit`
is set to `eCanJITNo`.

Example debug session:
```
(lldb) platform connect...
(lldb) file test
(lldb) br set...
(lldb) run
Process 100 launched:...
Process 100 stopped
* thread #1,...
(lldb) expr $x0
error: Couldn't allocate space for materialized struct: Couldn't malloc: address space is full
error: errored out in virtual lldb_private::LLVMUserExpression::DoExecute, couldn't PrepareToExecuteJITExpression
```


  Commit: cad17217813da88fc0de82fc288e567e38a73cfe
      https://github.com/llvm/llvm-project/commit/cad17217813da88fc0de82fc288e567e38a73cfe
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const_rvalue.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const.compile.fail.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const_rvalue.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_rvalue.pass.cpp

  Log Message:
  -----------
  [libc++][NFC] Simplify some `optional.observe` tests (#175682)

- Collapse the different ref/const-qualifier `operator*`, `operator->`
  and `value()` tests since they were all very similar to each other
- Refactor them to be inline with the current testing style


  Commit: b39568d78276690456912247a83680f6b209eb83
      https://github.com/llvm/llvm-project/commit/b39568d78276690456912247a83680f6b209eb83
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/test/Transforms/LoopVectorize/exact.ll
    M llvm/test/Transforms/LoopVectorize/tripcount.ll

  Log Message:
  -----------
  [LV] capture branch weights for constant trip counts (#175096)

When a vectorized loop has constant trip, it's important to update the
profile information accordingly. Hotness analysis will only look at
profile info.

For example, in the `tripcount.ll` test, without producing the profile
info, in the `const_trip_over_profile` function, the BFI of the
`vector.body` would be 32 (this is the expected value when synthetic
branch weights are used, in loops). The real value is 250. The
`for.body`value was _very_ incorrect before, too (and detrimentally so,
as it would have appeared as "very hot" when it wasn't):

The table below was obtained by printing BFI in the RUN: command, i.e.
`build/bin/opt < llvm/test/Transforms/LoopVectorize/tripcount.ll
-passes="loop-vectorize,print<block-freq>"
-loop-vectorize-with-block-frequency -S -o /dev/null`. Showing only the
`float` value, i.e. the BFI relative to the function entry BB.

```

Printing analysis results of BFI for function 'const_trip_over_profile':  
block-frequency-info: const_trip_over_profile

```

| Block | Before | After |
| ----- | ------ | ----- |
| `entry` | float = 1.0 | float = 1.0 |
| `vector.ph` | float = 1.0 | float = 1.0 |
| `vector.body` | float = **32.0** | float = **250.0** |
| `middle.block` | float = 1.0 | float = 1.0 |
| `scalar.ph` | float = 1.0 | float = 1.0 |
| `for.body` | float = **2147483647.8** | float = **1.0** |
| `for.end` | float = 1.0 | float = 1.0 |


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

  Changed paths:
    M llvm/docs/RISCVUsage.rst

  Log Message:
  -----------
  [RISC-V][sanitizers][NFCI] Add documentation on which sanitizers probably work (#177679)

Docs requested in https://github.com/llvm/llvm-project/issues/172375


  Commit: 5faf48d413503767494f4889889a0550cec2fab0
      https://github.com/llvm/llvm-project/commit/5faf48d413503767494f4889889a0550cec2fab0
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M libcxx/test/CMakeLists.txt
    M libcxx/utils/libcxx/test/features/libcxx_macros.py
    M libcxx/utils/libcxx/test/params.py

  Log Message:
  -----------
  [libc++] Automatically detect the libc++ hardening mode from the test suite (#172505)

This prevents hardcoding the hardening mode via compiler flags, and
allows testing what the default hardening mode is on platforms that set
it to something that isn't `none`. Otherwise, a platform setting a
default (which is done via -DLIBCXX_HARDENING_MODE=mode at CMake
configuration time) would end up passing `-D_LIBCPP_HARDENING_MODE=mode`
to the compiler, which does not allow checking what the default mode is.


  Commit: fc94ef9576fd716739c5753fce8b61f6b3aa7617
      https://github.com/llvm/llvm-project/commit/fc94ef9576fd716739c5753fce8b61f6b3aa7617
  Author: Tony Linthicum <tony.linthicum at outlook.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_copies.mir
    M llvm/test/CodeGen/AMDGPU/sched_mfma_rewrite_cost.mir

  Log Message:
  -----------
  AMDGPU: Disable scheduler mfma rewrite stage by default for now (#177624)

Currently generating an excess number of copies. Turning it off to avoid
churn for other developers.


  Commit: 6000703ba8ac493983bd79c8161df7e0f9827e06
      https://github.com/llvm/llvm-project/commit/6000703ba8ac493983bd79c8161df7e0f9827e06
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc-round.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc.ll

  Log Message:
  -----------
  InstCombine: Handle fptrunc in SimplifyDemandedFPClass (#175421)

Also handle llvm.fptrunc.round since it's the same.


  Commit: 7a5e59e68304ce9e173da7d81c5564b94c82b146
      https://github.com/llvm/llvm-project/commit/7a5e59e68304ce9e173da7d81c5564b94c82b146
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-frexp.ll

  Log Message:
  -----------
  InstCombine: Add baseline frexp test for SimplifyDemandedFPClass (#176121)


  Commit: c8193f19e0fa3319fbea84a7a0a06ebb8a45b2a1
      https://github.com/llvm/llvm-project/commit/c8193f19e0fa3319fbea84a7a0a06ebb8a45b2a1
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/source/Utility/VirtualDataExtractor.cpp

  Log Message:
  -----------
  [lldb] Fix for 32-bit armv7 ubuntu bot compile error


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

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fsub.ll

  Log Message:
  -----------
  InstCombine: Handle fsub in SimplifyDemandedFPClass (#175852)

alive2 fails on some of the tests, but this is due to existing
folds in instsimplify and
https://github.com/AliveToolkit/alive2/issues/1273


  Commit: 1efebfe56de881dbfe76ae055f08064bbfe69ab1
      https://github.com/llvm/llvm-project/commit/1efebfe56de881dbfe76ae055f08064bbfe69ab1
  Author: David Green <david.green at arm.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-neon-mul-div.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add test coverage for arm64-neon-mul-div.ll. NFC


  Commit: 3d073f48b48d30644bb471c305d93a375d8b5f2c
      https://github.com/llvm/llvm-project/commit/3d073f48b48d30644bb471c305d93a375d8b5f2c
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/docs/AddressSanitizer.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/ThreadSanitizer.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst

  Log Message:
  -----------
  [sanitizer][NFCI] Document interaction of inlining with disabling instrumentation (#177672)

For ASan, MSan, TSan, UBSan


  Commit: 97c4a5fc1d2de0e6ef9e06f971278b55ab8a680a
      https://github.com/llvm/llvm-project/commit/97c4a5fc1d2de0e6ef9e06f971278b55ab8a680a
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td

  Log Message:
  -----------
  [RISCV] Add a template function for disassembling LMUL=2/4/8 vector registers. NFC (#177681)


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

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

  Log Message:
  -----------
  [X86] pclmulqdq.ll - add missing AVX512 test coverage (#177694)


  Commit: 9743deaea59331998a250d4c22f25dd9e5b6455a
      https://github.com/llvm/llvm-project/commit/9743deaea59331998a250d4c22f25dd9e5b6455a
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  [CIR][NFC] Fix build after emitIntrinsicCallOp change (#177706)

The emitIntrinsicCallOp function was moved from the
architecture-specific builtin implementation files to a shared location
in CIRGenBuilderTy by https://github.com/llvm/llvm-project/pull/172735.
Unfortunately, a few changes had been merged before that change was
landed and it broke the build. This updates the broken call sites.


  Commit: 7954b4791098c709283212f9379b51626a1dc539
      https://github.com/llvm/llvm-project/commit/7954b4791098c709283212f9379b51626a1dc539
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/gdbclientutils.py
    M lldb/packages/Python/lldbsuite/test/lldbgdbclient.py
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    R lldb/test/API/functionalities/gdb_remote_client/TestExprNoAlloc.py

  Log Message:
  -----------
  Revert "[lldb] Fix setting CanJIT if memory cannot be allocated (#176099)"

This reverts commit b5d8fc553d8e03f4d325458d29ac2c9e46a464e3.


  Commit: 9571c19b8861dabddd48e336e5cfc5a926d53580
      https://github.com/llvm/llvm-project/commit/9571c19b8861dabddd48e336e5cfc5a926d53580
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [Bazel] Fix libc build. (#177716)

Fix missing dependency for change introduced in PR #177224


  Commit: 4f92da47f609844faf2b8145e79b5731cdd46e6c
      https://github.com/llvm/llvm-project/commit/4f92da47f609844faf2b8145e79b5731cdd46e6c
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  Fix bazel lldb (#177717)

PR #177309 introduced some new dependencies on DebugInfo/DWARF. This
updates the bazel file for lldb accordingly.


  Commit: cb651a2eaa651e2bc520676229b20f685aac6a40
      https://github.com/llvm/llvm-project/commit/cb651a2eaa651e2bc520676229b20f685aac6a40
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Symbol/ObjectFile.cpp

  Log Message:
  -----------
  [lldb] Avoid redundant calls to `std::shared_ptr::get` (NFC) (#177720)

Avoid redundant calls to `std::shared_ptr::get()`. The class provides a
dereference operator and using that is the standard, idiomatic way to
access the underlying object.


  Commit: 585954d7ffb3fa0a673c6ce8f42798b1e2fca4d8
      https://github.com/llvm/llvm-project/commit/585954d7ffb3fa0a673c6ce8f42798b1e2fca4d8
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/test/Driver/hip-runtime-libs-linux.hip

  Log Message:
  -----------
  [HIP] Provide implicit include to ROCm library directory (#177704)

Summary:
It's more correct to directly link the HIP runtime if we know the path,
however some users were relying on the old `-L` to pass in some other
non-standard HIP libraries. Put that part back in for now.


  Commit: 5d91c11df56948ab0b018380133d328e0ab03fc3
      https://github.com/llvm/llvm-project/commit/5d91c11df56948ab0b018380133d328e0ab03fc3
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Analysis/CMakeLists.txt
    M flang/test/Analysis/AliasAnalysis/load-ptr-alloca.fir
    A flang/test/Fir/CUDA/cuda-alias-analysis.fir
    M flang/test/Transforms/tbaa-with-dummy-scope2.fir

  Log Message:
  -----------
  [flang] Support cuf.device_address in FIR AliasAnalysis. (#177518)

Support `cuf.device_address` same way as `fir.address_of`.
This implementation implies that the host address and the device
address `MustAlias` (as shown in the new test). This should be
conservatively correct as long as `MustAlias` does not allow
to assume that the actual addresses are the same (that is what
LLVM documentation implies, I believe).

It is probably worth adding an operation interface to handle
`fir::AddrOfOp` and `cuf::DeviceAddressOp` in FIR AliasAnalysis,
but for the initial implementation I hardcoded the checks.

I also removed the call to `fir::valueHasFirAttribute` that performs
on demand SymbolTable lookups, which may be costly, and added
SymbolTable caching in FIR AliasAnalysis object. Anyway,
`fir::valueHasFirAttribute` does not work for `cuf::DeviceAddressOp`.


  Commit: f5e2f29cf344627d8b7139986b332287621ff033
      https://github.com/llvm/llvm-project/commit/f5e2f29cf344627d8b7139986b332287621ff033
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Transforms/licm.fir

  Log Message:
  -----------
  [flang] Added ConditionallySpeculatable and Pure for some FIR ops. (#174013)

This patch implements `ConditionallySpeculatable` interface for some
FIR operations (`embox`, `rebox`, `box_addr`, `box_dims` and `convert`).
It also adds `Pure` trait for `fir.shape`, `fir.shapeshift`,
`fir.shift` and `fir.slice`.

I could have split this into multiple patches, but the changes
are better tested together on real apps, and the amount of affected
code is small.

There are more `NoMemoryEffect` operations for which I am planning
to do the same in future PRs.


  Commit: 2aa2414e496d16a7063c5b09387ff7408965d7be
      https://github.com/llvm/llvm-project/commit/2aa2414e496d16a7063c5b09387ff7408965d7be
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [NFC] [HWASan] run UTC on use-after-scope.ll


  Commit: e7b7726d3036a92ad758b4835422e0b4911f9f73
      https://github.com/llvm/llvm-project/commit/e7b7726d3036a92ad758b4835422e0b4911f9f73
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/modernize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 77ebdad20a17


  Commit: 6451685beae725d5b041df40c44668393c235ffa
      https://github.com/llvm/llvm-project/commit/6451685beae725d5b041df40c44668393c235ffa
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Support/LLVM.h

  Log Message:
  -----------
  Cleanup: Remove SmallVector hacks (#177667)

We no longer support any platform that uses Clang 5. This was a
workaround for older clang versions where template arguments weren't
merged between forward declarations and definitions correctly.

Since we don't support anything this old anymore, we can drop this
workaround.

Note: I do not have merge permissions.


  Commit: cf25346dcb0e7c9e5167eaad65cc3ade4afd512a
      https://github.com/llvm/llvm-project/commit/cf25346dcb0e7c9e5167eaad65cc3ade4afd512a
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    A llvm/test/CodeGen/AMDGPU/wait-xcnt-atomic-rmw-optimization.ll

  Log Message:
  -----------
  [AMDGPU][GFX1250] Optimize s_wait_xcnt for back-to-back atomic RMWs (#177620)

This patch optimizes the insertion of s_wait_xcnt instruction for
sequences of atomic read-modify-write (RMW) operations in the
SIInsertWaitcnts pass. The Memory Legalizer conservatively inserts a
soft xcnt instruction before each atomic RMW operation as part of PR
168852, which is correct given the nature of atomic operations.
However, for back-to-back atomic RMWs, only the first s_wait_xcnt is
necessary for better runtime performance. This patch tracks atomic
RMW blocks within each basic block and removes redundant soft xcnt
instructions, keeping only the first wait in each sequence. An atomic
RMW block continues through subsequent atomic RMWs and non-memory
instructions (e.g., ALU operations) but is broken by CU-scoped memory
operations, atomic stores, or basic block boundaries.


  Commit: c3e226bd9c5fefcdf4bf873208d01e83b7e254a0
      https://github.com/llvm/llvm-project/commit/c3e226bd9c5fefcdf4bf873208d01e83b7e254a0
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py

  Log Message:
  -----------
  [NFC][libclang/python] Move CompletionChunkKind definition before CompletionChunk (#177723)

This is a required step for the 2nd point of #156680.
It is separated into a different PR for readibility, as has been
suggested here
https://github.com/llvm/llvm-project/pull/177586#pullrequestreview-3697864205


  Commit: 6a121786bdf8ecdb7ec181b3e93908f8c32a9a55
      https://github.com/llvm/llvm-project/commit/6a121786bdf8ecdb7ec181b3e93908f8c32a9a55
  Author: Chandler Carruth <chandlerc at gmail.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fixes for compiler-rt Bazel build rules (#177287)

Update the compiler-rt arch-specific file groups to include `.h` file
extensions. At least `arm` and `ppc` have these, and seems better to be
consistent and defensive.

Also add `5` to model list for outlined atomics, matching CMake.


  Commit: dc900f14535bdc7a2e0d0dc36009305799917f55
      https://github.com/llvm/llvm-project/commit/dc900f14535bdc7a2e0d0dc36009305799917f55
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/test/CodeGen/AMDGPU/llc-pipeline-npm.ll
    M llvm/test/CodeGen/X86/llc-pipeline-npm.ll

  Log Message:
  -----------
  [CodeGen][NPM] Specify Loop pass adaptor to not use MSSA (#176690)

this needs to be done since "loop-mssa" adapter assumes all passes that
are part of it to preserve MSSA, CanonicalizeFreezeInLoopsPass doesen't
do this. I'm not really sure of the history here (about having two
variants of loop pass adatpters)


  Commit: d6652c189db4811e4b56fe4164f9c5f7a6627372
      https://github.com/llvm/llvm-project/commit/d6652c189db4811e4b56fe4164f9c5f7a6627372
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Symbol/ObjectFile.cpp

  Log Message:
  -----------
  [lldb] Fix data buffer regression in ObjectFile (#177724)

This fixes a regression in `ObjectFile` and `ObjectFileELF` introduced
by #171574.

The original code created a `DataBuffer` using `MapFileDataWritable`.

```
  data_sp = MapFileDataWritable(*file, length, file_offset);
  if (!data_sp)
    return nullptr;
  data_offset = 0;
```

The new code requires converting the `DataBuffer` to a `DataExtractor`:

```
  DataBufferSP buffer_sp = MapFileDataWritable(*file, length, file_offset);
  if (!buffer_sp)
    return nullptr;
  extractor_sp = std::make_shared<DataExtractor>();
  extractor_sp->SetData(buffer_sp, data_offset, buffer_sp->GetByteSize());
  data_offset = 0;
```

The issue is that once we get a data buffer back from
MapFileDataWritable, we don't have to adjust for the `data_offset` again
when calling `SetData` as the `DataBuffer` is already normalized to have
a zero start offset. A similar issue exists in `ObjectFile`.

rdar://168317174


  Commit: e34651fa557911b04d83a90fd20191358714c5e5
      https://github.com/llvm/llvm-project/commit/e34651fa557911b04d83a90fd20191358714c5e5
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    M lld/ELF/InputFiles.h
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    R lld/test/ELF/verneed-as-needed-weak.s
    A lld/test/ELF/verneed-weak.s

  Log Message:
  -----------
  [ELF] Set vna_flags to VER_FLG_WEAK if all references are weak (#176673)

When all undefined references to a version are weak, set vna_flags to
VER_FLG_WEAK in the .gnu.version_r section. This enables glibc ld.so to
report a warning instead of an error when the required version is not
found at runtime, supporting optional dependencies.

Per https://sourceware.org/bugzilla/show_bug.cgi?id=24718#c20 ,
glibc rtld since 2.30 (BZ #24741) tolerates missing versioned symbols
when the runtime shared object defines the required version. With this
vna_flags VER_FLG_WEAK change, rtld can also tolerate a completely
missing version, printing a message like:

```
% LD_PRELOAD=c2.so ./a
./a: /tmp/t/v2/c2.so: weak version `v1' not found (required by /tmp/t/v2/b.so)
a
```

instead of a fatal error.

In addition, add a comment about `vn.vernaxus.size() == 1`.


  Commit: 2503ffbdf3307d37e20b312ab336bd3dafb37246
      https://github.com/llvm/llvm-project/commit/2503ffbdf3307d37e20b312ab336bd3dafb37246
  Author: Anutosh Bhat <andersonbhat491 at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp

  Log Message:
  -----------
  [WebAssembly] Fix exception handling initialization order in TargetMachine constructor (#177542)

The WebAssemblyTargetMachine constructor had an ordering issue where
initAsmInfo() was called before basicCheckForEHAndSjLj(). This caused
problems in incremental compilation scenarios where:

1. `initAsmInfo()` sets `MCAsmInfo` exception type based on
`Options.ExceptionModel`
2. But `Options.ExceptionModel` might still be None at this point
3. `basicCheckForEHAndSjLj()` runs later and updates
`Options.ExceptionModel`
   based on command-line flags like `-wasm-enable-eh`
4. `MCAsmInfo` retains the incorrect exception type (`None` instead of
`Wasm`)
5. This prevents WebAssembly exception handling passes from running

The fix swaps the order so basicCheckForEHAndSjLj() runs first to
establish the correct exception model before initAsmInfo() configures
MCAsmInfo based on that model.

This enables WebAssembly exception handling to work correctly in
clang-repl and other incremental compilation scenarios.


  Commit: aea6a19d7869e8f261aab6f85e7d0257b4983e2e
      https://github.com/llvm/llvm-project/commit/aea6a19d7869e8f261aab6f85e7d0257b4983e2e
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-23 (Fri, 23 Jan 2026)

  Changed paths:
    R clang/test/Driver/Inputs/DriverKit19.0.sdk/SDKSettings.plist
    A clang/test/Driver/Inputs/DriverKit19.0.sdk/SDKSettings.txt
    M clang/test/Driver/Inputs/DriverKit21.0.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX10.14.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/MacOSX10.15.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX10.15.versioned.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
    M clang/test/Driver/clang-cc1as-target-variant.s
    M clang/test/Driver/darwin-builtin-modules.c
    M clang/test/Driver/darwin-invalid-version-range.c
    M clang/test/Driver/darwin-ld-platform-version-driverkit.c
    M clang/test/Driver/darwin-ld-platform-version-maccatalyst.c
    M clang/test/Driver/darwin-ld-platform-version-macos.c
    M clang/test/Driver/darwin-ld-platform-version-target-version.c
    M clang/test/Driver/darwin-objc-runtime-maccatalyst-target-variant.m
    M clang/test/Driver/darwin-objc-runtime-maccatalyst.m
    M clang/test/Driver/darwin-sdk-version-maccatalyst.c
    M clang/test/Driver/darwin-sdk-version.c
    M clang/test/Driver/darwin-target-variant-sdk-version.c
    M clang/test/Driver/modulemap-allow-subdirectory-search.c
    M clang/test/InstallAPI/Inputs/MacOSX13.0.sdk/SDKSettings.json
    M clang/test/Modules/sdk-settings-json-dep.m
    M clang/test/Sema/Inputs/AppleTVOS15.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/MacOSX11.0.sdk/SDKSettings.json
    R clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json
    A clang/test/Sema/Inputs/WatchOS8.0.sdk/SDKSettings.json
    R clang/test/Sema/Inputs/XROS.sdk/SDKSettings.json
    A clang/test/Sema/Inputs/XROS26.0.sdk/SDKSettings.json
    M clang/test/Sema/attr-availability-ios-fallback-aligned-versions.c
    M clang/test/Sema/attr-availability-iosmac-infer-from-macos.c
    M clang/test/Sema/attr-availability-watchos.c

  Log Message:
  -----------
  [test][NFC] Add more keys to test SDKSettings files (#177538)

Every time DarwinSDKInfo reads a new key out of SDKSettings, a boatload
of test SDKSettings files need to be updated across several repositories
and forks and branches. It’s tedious to be careful to update those with
real values so that the tests are properly regression testing older
SDKs. It’s important to be careful so that the tests are accurate, e.g.
to prevent the scenario where DarwinSDKInfo starts reading a new key out
of SDKSettings and assumes that it’s always available everywhere, when
in reality it was only added a few releases ago and will break with
older SDKs. If the test SDKSettings files continue to be updated ad hoc,
it’s going to be really easy to copy/paste a default value everywhere,
and then clients will see incorrect behaviors with the real SDKs, or
even compiler crashes if the key is unconditionally read. Preemptively
add all of the maybe-possibly-compiler relevant keys to the test
SDKSettings files from the real SDKs so that the test files are an
accurate representation and shouldn't need to be touched in the future.
Where the test SDKSettings have intentionally doctored data, add a
Comments key explaining what is changed from the real SDK, and alter the
SDK name with a tag indicating the change.


  Commit: 403502f478734e14ae288aa8c22f86a752d25dd5
      https://github.com/llvm/llvm-project/commit/403502f478734e14ae288aa8c22f86a752d25dd5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-frexp.ll

  Log Message:
  -----------
  InstCombine: Implement SimplifyDemandedFPClass for frexp (#176122)


  Commit: 80d9df6b054cebfbe97d709195be4e61a7acc694
      https://github.com/llvm/llvm-project/commit/80d9df6b054cebfbe97d709195be4e61a7acc694
  Author: Gábor Spaits <gaborspaits1 at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/pr63791.ll
    M llvm/test/Transforms/InstCombine/select-of-symmetric-selects.ll
    M llvm/test/Transforms/InstCombine/select-select.ll
    M llvm/test/Transforms/InstCombine/select.ll

  Log Message:
  -----------
  [InstCombine] Combine `select(C0, select(C1, b, a), b)` -> `select(C0&&!C1, a, b)` (#177410)

Fixes #82350

Address cases like:
```
select(C0, select(C1, b, a), b) -> select(C0&!C1, a, b)
select(C0, a, select(C1, b, a)) -> select(C0|!C1, a, b)
```
    
It seem that it generates better code for the real world examples for
the few targets I have checked: https://godbolt.org/z/KeEMd9b8E .
On the most generic case it generates the same assembly code for the
sources and targets for all targets, expect RISC-V, where the targets
seem shoretr and better (less branching):
https://godbolt.org/z/3has1Td5G So I did not experience any regression
on any target in no scenario.

Proofs: https://alive2.llvm.org/ce/z/DoL3zQ


  Commit: 2b9ad865f734e8c8e7e76031ee392afdb560d665
      https://github.com/llvm/llvm-project/commit/2b9ad865f734e8c8e7e76031ee392afdb560d665
  Author: Twice <twice at apache.org>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M mlir/include/mlir/IR/ExtensibleDialect.h
    M mlir/test/IR/dynamic.mlir
    M mlir/test/lib/Dialect/Test/TestDialect.cpp

  Log Message:
  -----------
  [MLIR] Support dynamic traits in `DynamicDialect` (#177735)

Unlike Interfaces, Traits in MLIR are static: they are defined via CRTP
templates and used as base classes of an `Op`, which makes them
difficult to attach to an op dynamically.

However, in IRDL and the Python bindings, we define operations
dynamically through `DynamicDialect`, which means the traditional static
traits cannot be applied to them. Traits are important, for example,
they are how MLIR marks an op as a terminator or a non-terminator.

If `DynamicDialect` does not support traits, then even though we can
define an op with regions, we cannot define new terminators or mark an
op as a non-terminator. This makes `DynamicDialect` very limited in
region-related scenarios.

In this PR, we introduce a `DynamicOpTrait` type that “dynamizes”
`OpTrait`, enabling traits to be attached to ops in `DynamicDialect`.
The key design goal is that existing checks in the MLIR codebase such as
`op->hasTrait<XXX>()` work seamlessly on ops defined by
`DynamicOpDefinition`, without requiring any changes.

Note that currently only two traits `IsTerminator` and `NoTerminator`
are supported in this PR.

This PR aims to lay the groundwork for adding support for traits in IRDL
and python bindings (and maybe other bindings) in the future.

Related to #158066.


  Commit: 0387625c3e797c7dbd5eecfc5820dfc38074dd10
      https://github.com/llvm/llvm-project/commit/0387625c3e797c7dbd5eecfc5820dfc38074dd10
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  ValueTracking: Detect cases with no underflow for fadd (#177746)

In the case where both operands have the same sign,
as long as one of the operands is normal or infinity,
the result cannot underflow to a zero.

Pre-committing for #175614


  Commit: 000313d0453101a3960d4aba67133604dfc02313
      https://github.com/llvm/llvm-project/commit/000313d0453101a3960d4aba67133604dfc02313
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    R clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS.sdk/SDKSettings.json
    A clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS1.0.sdk/SDKSettings.json
    M clang/test/PlatformSpecific/xrOS/Sema/infer-ios-availability.c
    M clang/test/PlatformSpecific/xrOS/Sema/infer-unavailable-from-missing-ios-availability-mapping.c

  Log Message:
  -----------
  [test][NFC] Add more keys to test SDKSettings files (#177749)

Additional visionOS changes.


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

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/CodeGen/PowerPC/peephole-mma-phi-liveness.ll
    M llvm/test/Transforms/Attributor/nofpclass-fma.ll

  Log Message:
  -----------
  ValueTracking: Improve handling for fma/fmuladd (#175614)

The handling for fma was very basic and only handled the
repeated input case. Re-use the fmul and fadd handling for more
accurate sign bit and nan handling.


  Commit: 35efc168dd2f01babfb16cb6cba7af5c7f2e14ad
      https://github.com/llvm/llvm-project/commit/35efc168dd2f01babfb16cb6cba7af5c7f2e14ad
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    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-fpext.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc-round.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-frexp.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fsub.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-sqrt.ll

  Log Message:
  -----------
  InstCombine: Fold known-qnan results to a literal nan (#176123)

Previously we only considered fcNan to fold to qnan for canonicalizing
results, ignoring the simpler case where we know the nan is already
quiet.


  Commit: 3f9ddb26a2a2e4713b8bf9b1b4fac8f4bb5ef11d
      https://github.com/llvm/llvm-project/commit/3f9ddb26a2a2e4713b8bf9b1b4fac8f4bb5ef11d
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/windows/PseudoConsole.h

  Log Message:
  -----------
  [lldb] Remove a redundant semicolon. NFC.

This fixes the following warning, repeated multiple times:

    llvm-project/lldb/include/lldb/Host/windows/PseudoConsole.h:69:2: warning: extra ';' outside of a function is incompatible with C++98 [-Wc++98-compat-extra-semi]
       69 | }; // namespace lldb_private
          |  ^


  Commit: 865978a172d250b91a3dacbb16c10ff12b8800e6
      https://github.com/llvm/llvm-project/commit/865978a172d250b91a3dacbb16c10ff12b8800e6
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M lldb/source/Utility/VirtualDataExtractor.cpp

  Log Message:
  -----------
  [lldb] Fix compilation for 32 bit platforms

This fixes the following error on 32 bit platforms, if compiling with Clang:

    llvm-project/lldb/source/Utility/VirtualDataExtractor.cpp:211:55: error: non-constant-expression cannot be narrowed from type 'SizeType' (aka 'unsigned long long') to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
      211 |   return {m_start + static_cast<size_t>(entry->data), entry->size};
          |                                                       ^~~~~~~~~~~
    llvm-project/lldb/source/Utility/VirtualDataExtractor.cpp:211:55: note: insert an explicit cast to silence this issue
      211 |   return {m_start + static_cast<size_t>(entry->data), entry->size};
          |                                                       ^~~~~~~~~~~
          |                                                       static_cast<size_t>( )


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

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

  Log Message:
  -----------
  DAG: Use correct shift type for big endian store forwarding case (#177752)

Theoretically the shift amount type could differ, it just happens
none of the big endian targets do this.


  Commit: 7106ea31e99bbd121c28c2b231ada658720ceb14
      https://github.com/llvm/llvm-project/commit/7106ea31e99bbd121c28c2b231ada658720ceb14
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fma.ll

  Log Message:
  -----------
  InstCombine: Add baseline fma tests for SimplifyDemandedFPClass (#175615)


  Commit: 69059c42f7539fd6c41b0a152862ae8741bf8016
      https://github.com/llvm/llvm-project/commit/69059c42f7539fd6c41b0a152862ae8741bf8016
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp

  Log Message:
  -----------
  [clang-tidy] Add llvm::accumulate to llvm-use-ranges (#177655)

I missed this in https://github.com/llvm/llvm-project/pull/177457.

All range wrappers from STLExtras should be covered by llvm-use-ranges
now.


  Commit: 668f1c01624b2a7b15bc1639c49f6d0b39cd2e32
      https://github.com/llvm/llvm-project/commit/668f1c01624b2a7b15bc1639c49f6d0b39cd2e32
  Author: David Green <david.green at arm.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
    M llvm/test/CodeGen/AArch64/cpa-globalisel.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add GISelPredicateCode for smullwithsignbits

This allows us to select more smull instructions in the same way that SDAG does
using known sign bits.


  Commit: 0993d69bc35cfdd4f3a904a603701e66906e8987
      https://github.com/llvm/llvm-project/commit/0993d69bc35cfdd4f3a904a603701e66906e8987
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll

  Log Message:
  -----------
  InstCombine: Handle fdiv in SimplifyDemandedFPClass (#175946)


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

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

  Log Message:
  -----------
  ValueTracking: Improve nan tracking for fma square special case (#175999)

In the square multiply case, we can infer if the add of opposite
sign infinities can occur.


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

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

  Log Message:
  -----------
  InstCombine: Implement SimplifyDemandedFPClass for fma (#175616)

This can't do much filtering on the sources, except for nans.
We can also attempt to introduce ninf/nnan.


  Commit: a7732479c1bd1da4e0d39bd9b23403659bafc12e
      https://github.com/llvm/llvm-project/commit/a7732479c1bd1da4e0d39bd9b23403659bafc12e
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h

  Log Message:
  -----------
  [NFCI][AMDGPU] Move more attributes from `AMDGPUSubtarget` to `GCNSubtarget` (#177670)

They are simply not used by `AMDGPUSubtarget &` but directly via
`GCNSubtarget &`.


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

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

  Log Message:
  -----------
  [ProfCheck] Add new InstCombine test to xfail list

The fix should be quick, but just in case it takes a while to land, add
it to the xfail list so we can catch any future regressions more easily.


  Commit: 53eb230e476f69c5c879871a0d328d283a6ce172
      https://github.com/llvm/llvm-project/commit/53eb230e476f69c5c879871a0d328d283a6ce172
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Clean up SimplifyDemandedFPClass use context application (#176886)

Clean up some now redundant propagation of known-result to known-source
cases. Also move the application of the demanded mask to individual
cases, since the intermediate results are often used.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [VPlan] Fold VPDef into VPRecipeBase (NFC). (#174282)

A separate VDef is not needed any longer, fold i into VPRecipeBase to
simplify code and class hierarchy.

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

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


  Commit: 16395da0ff577750571b99fe28281ce6fb6a3ae8
      https://github.com/llvm/llvm-project/commit/16395da0ff577750571b99fe28281ce6fb6a3ae8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  Revert "[VPlan] Fold VPDef into VPRecipeBase (NFC). (#174282)"

This reverts commit f3ae334f4b7a8cf4fe0eb6ee7b2f2ef0879f522d.

Committed with out-of-date message, revert to reland with updated
message.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  Reapply "[VPlan] Move VDef subclass ID to VPRecipeBase (NFC). (#174282)"

Move SubclassID to VPRecipeBase, and store VPRecipeBase directly in
VPRecipeValue, instead of VPDef. This allows for some additional
simplifications and VPDef now just holds various helpers to deal with
removing and adding VPValues.

This reverts commit 16395da0ff577750571b99fe28281ce6fb6a3ae8.

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


  Commit: 08d96dd619cc15d92429c40c032b91cf0d1d87ed
      https://github.com/llvm/llvm-project/commit/08d96dd619cc15d92429c40c032b91cf0d1d87ed
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fdiv.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine] Mark select in fdiv transforms with unknown profile (#177759)

As part of the profcheck effort we are trying to explicitly annotate
select instructions where we cannot reasonably synthesize profile
information as having an unknown profile. This does that for the case
introduced in 0993d69bc35cfdd4f3a904a603701e66906e8987.


  Commit: 3ee9aae6f978c7ec5e15b5c4faa77444cfc6c359
      https://github.com/llvm/llvm-project/commit/3ee9aae6f978c7ec5e15b5c4faa77444cfc6c359
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Infer fast math flags for sqrt (#176003)


  Commit: 0653e079c222d0bd8dcd8d84985e806a47a70800
      https://github.com/llvm/llvm-project/commit/0653e079c222d0bd8dcd8d84985e806a47a70800
  Author: willmafh <willmafh at hotmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M libunwind/include/libunwind.h
    M libunwind/include/mach-o/compact_unwind_encoding.h
    M libunwind/include/unwind_itanium.h
    M libunwind/src/FrameHeaderCache.hpp
    M libunwind/src/Registers.hpp
    M libunwind/src/UnwindCursor.hpp
    M libunwind/src/UnwindLevel1-gcc-ext.c
    M libunwind/src/UnwindLevel1.c
    M libunwind/src/libunwind.cpp
    M libunwind/src/libunwind_ext.h

  Log Message:
  -----------
  [libunwind][NFC] Typo fixes & comments corrections & code style changes. (#174565)


  Commit: 6324f576861eaa9a0689c676d739b13325baa20a
      https://github.com/llvm/llvm-project/commit/6324f576861eaa9a0689c676d739b13325baa20a
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/.clang-tidy
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
    M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp

  Log Message:
  -----------
  [clang-tidy][NFC] Fix `bugprone-unchecked-optional-access` warnings in codebase (#170004)

Closes [#156151](https://github.com/llvm/llvm-project/issues/156151)
Assisted-by: Gemini 3 via Gemini CLI


  Commit: 0c793480f5ba4905e5f85bdc1e9009d876d9c260
      https://github.com/llvm/llvm-project/commit/0c793480f5ba4905e5f85bdc1e9009d876d9c260
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Cleanup redundant result-not-nan check for canonicalize (#177765)

Missed case from 53eb230e476f69c5c879871a0d328d283a6ce172


  Commit: 0263baa0b586620248a5778d27f6af8e3bc4d249
      https://github.com/llvm/llvm-project/commit/0263baa0b586620248a5778d27f6af8e3bc4d249
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Use SimplifyDemandedFPClass epilog helper function for fma (#176017)

NFC refactor to use shared code for fold to constant or set fast math
flags.


  Commit: 2deae0baf7c01bb87e4271dbe06537f585cf8545
      https://github.com/llvm/llvm-project/commit/2deae0baf7c01bb87e4271dbe06537f585cf8545
  Author: ChaseYalon <149000633+ChaseYalon at users.noreply.github.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    A llvm/test/Analysis/CostModel/X86/vscale-insertelement-crash.ll

  Log Message:
  -----------
  X86: Fix VSCALE insert element crash in codegen (#177705)

When inserting elements into <vscale x N x i64> scalable vectors, the X86 backend now returns InstructionCost::getInvalid() instead of panicking.

Fixes #176823


  Commit: 8dcc9b635504f9ed3b462f26c49e8edffb8c3c56
      https://github.com/llvm/llvm-project/commit/8dcc9b635504f9ed3b462f26c49e8edffb8c3c56
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M polly/lib/External/isl/.gitignore
    M polly/lib/External/isl/ChangeLog
    M polly/lib/External/isl/GIT_HEAD_ID
    M polly/lib/External/isl/codegen_test.sh.in
    A polly/lib/External/isl/cp_if_different.sh
    M polly/lib/External/isl/cpp/cpp.h.top
    M polly/lib/External/isl/doc/user.pod
    M polly/lib/External/isl/imath/tests/gmp-compat-test/genctest.py
    M polly/lib/External/isl/imath/tests/gmp-compat-test/gendata.py
    M polly/lib/External/isl/imath/tests/gmp-compat-test/genpytest.py
    M polly/lib/External/isl/imath/tests/gmp-compat-test/gmpapi.py
    M polly/lib/External/isl/imath/tests/gmp-compat-test/runtest.py
    M polly/lib/External/isl/imath/tests/linux/Dockerfile
    M polly/lib/External/isl/imath/tools/mkdoc.py
    M polly/lib/External/isl/include/isl/aff.h
    A polly/lib/External/isl/include/isl/cpp-checked-conversion.h
    A polly/lib/External/isl/include/isl/cpp-checked.h
    A polly/lib/External/isl/include/isl/cpp.h
    M polly/lib/External/isl/include/isl/ctx.h
    M polly/lib/External/isl/include/isl/fixed_box.h
    M polly/lib/External/isl/include/isl/map.h
    M polly/lib/External/isl/include/isl/multi.h
    M polly/lib/External/isl/include/isl/polynomial.h
    M polly/lib/External/isl/include/isl/set.h
    M polly/lib/External/isl/include/isl/space.h
    M polly/lib/External/isl/include/isl/stream.h
    A polly/lib/External/isl/include/isl/typed_cpp.h
    M polly/lib/External/isl/include/isl/union_map.h
    M polly/lib/External/isl/include/isl/union_set.h
    M polly/lib/External/isl/interface/extract_interface.cc
    A polly/lib/External/isl/interface/isl.py.core
    M polly/lib/External/isl/interface/plain_cpp.cc
    M polly/lib/External/isl/interface/template_cpp.cc
    M polly/lib/External/isl/isl_aff.c
    M polly/lib/External/isl/isl_aff_private.h
    M polly/lib/External/isl/isl_affine_hull.c
    M polly/lib/External/isl/isl_ast_build.c
    M polly/lib/External/isl/isl_ast_build_expr.c
    M polly/lib/External/isl/isl_ast_build_private.h
    M polly/lib/External/isl/isl_ast_codegen.c
    M polly/lib/External/isl/isl_bound.c
    M polly/lib/External/isl/isl_box.c
    M polly/lib/External/isl/isl_coalesce.c
    M polly/lib/External/isl/isl_constraint.c
    M polly/lib/External/isl/isl_convex_hull.c
    M polly/lib/External/isl/isl_copy_tuple_id_templ.c
    M polly/lib/External/isl/isl_ctx.c
    M polly/lib/External/isl/isl_dim_map.c
    A polly/lib/External/isl/isl_drop_unused_params_templ.c
    M polly/lib/External/isl/isl_factorization.c
    M polly/lib/External/isl/isl_input.c
    M polly/lib/External/isl/isl_insert_domain_templ.c
    M polly/lib/External/isl/isl_local.c
    M polly/lib/External/isl/isl_local.h
    M polly/lib/External/isl/isl_local_space.c
    M polly/lib/External/isl/isl_local_space_private.h
    M polly/lib/External/isl/isl_map.c
    M polly/lib/External/isl/isl_map_private.h
    M polly/lib/External/isl/isl_map_simplify.c
    M polly/lib/External/isl/isl_map_subtract.c
    M polly/lib/External/isl/isl_mat.c
    A polly/lib/External/isl/isl_maybe_aff.h
    M polly/lib/External/isl/isl_morph.c
    M polly/lib/External/isl/isl_multi_align_set.c
    R polly/lib/External/isl/isl_multi_align_templ.c
    M polly/lib/External/isl/isl_multi_align_union_set.c
    A polly/lib/External/isl/isl_multi_apply_explicit_domain_templ.c
    A polly/lib/External/isl/isl_multi_apply_no_explicit_domain_templ.c
    R polly/lib/External/isl/isl_multi_apply_set.c
    A polly/lib/External/isl/isl_multi_apply_set_explicit_domain_templ.c
    A polly/lib/External/isl/isl_multi_apply_set_no_explicit_domain_templ.c
    M polly/lib/External/isl/isl_multi_apply_templ.c
    R polly/lib/External/isl/isl_multi_apply_union_set.c
    A polly/lib/External/isl/isl_multi_apply_union_set_explicit_domain_templ.c
    M polly/lib/External/isl/isl_multi_arith_templ.c
    A polly/lib/External/isl/isl_multi_check_domain_templ.c
    A polly/lib/External/isl/isl_multi_domain_reverse_templ.c
    M polly/lib/External/isl/isl_multi_floor.c
    M polly/lib/External/isl/isl_multi_gist.c
    M polly/lib/External/isl/isl_multi_intersect.c
    M polly/lib/External/isl/isl_multi_read_no_explicit_domain_templ.c
    M polly/lib/External/isl/isl_multi_un_op_templ.c
    M polly/lib/External/isl/isl_output.c
    M polly/lib/External/isl/isl_point.c
    M polly/lib/External/isl/isl_polynomial.c
    M polly/lib/External/isl/isl_polynomial_private.h
    A polly/lib/External/isl/isl_pw_domain_reverse_templ.c
    M polly/lib/External/isl/isl_pw_neg_templ.c
    M polly/lib/External/isl/isl_pw_print_templ.c
    M polly/lib/External/isl/isl_pw_templ.c
    M polly/lib/External/isl/isl_pw_un_op_templ.c
    M polly/lib/External/isl/isl_sample.c
    M polly/lib/External/isl/isl_scheduler.c
    M polly/lib/External/isl/isl_seq.c
    M polly/lib/External/isl/isl_seq.h
    M polly/lib/External/isl/isl_space.c
    M polly/lib/External/isl/isl_space_private.h
    M polly/lib/External/isl/isl_stream_read_with_params_templ.c
    M polly/lib/External/isl/isl_tab.c
    M polly/lib/External/isl/isl_tab.h
    M polly/lib/External/isl/isl_tab_lexopt_templ.c
    M polly/lib/External/isl/isl_tab_pip.c
    M polly/lib/External/isl/isl_test.c
    M polly/lib/External/isl/isl_test2.cc
    M polly/lib/External/isl/isl_test_cpp17-generic.cc
    M polly/lib/External/isl/isl_test_python.py
    M polly/lib/External/isl/isl_transitive_closure.c
    A polly/lib/External/isl/isl_union_domain_reverse_templ.c
    M polly/lib/External/isl/isl_union_map.c
    M polly/lib/External/isl/isl_union_map_private.h
    M polly/lib/External/isl/isl_union_templ.c
    M polly/lib/External/isl/isl_vec.c
    M polly/lib/External/isl/isl_vertices.c
    M polly/lib/External/isl/libisl-gdb.py
    M polly/lib/External/isl/test_inputs/codegen/cholesky.c
    M polly/lib/External/isl/test_inputs/codegen/cloog/faber.c
    M polly/lib/External/isl/test_inputs/codegen/cloog/reservoir-tang-xue1.c
    M polly/lib/External/isl/test_inputs/codegen/cloog/vivien.c
    M polly/lib/External/isl/test_inputs/codegen/cloog/vivien2.c
    M polly/lib/External/isl/test_inputs/codegen/cloog/walters.c
    M polly/lib/External/isl/test_inputs/codegen/dwt.c
    A polly/lib/External/isl/test_inputs/codegen/expansion.c
    A polly/lib/External/isl/test_inputs/codegen/expansion.st
    M polly/lib/External/isl/test_inputs/codegen/hoist2.c
    M polly/lib/External/isl/test_inputs/codegen/isolate7.c
    A polly/lib/External/isl/test_inputs/codegen/mod2.c
    A polly/lib/External/isl/test_inputs/codegen/mod2.st
    M polly/lib/External/isl/test_inputs/codegen/omega/hpf-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/iter8-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/p.delft-0.c
    M polly/lib/External/isl/test_inputs/codegen/omega/p.delft2-0.c
    M polly/lib/External/isl/test_inputs/codegen/redundant.c
    A polly/lib/External/isl/test_inputs/codegen/residue.c
    A polly/lib/External/isl/test_inputs/codegen/residue.st
    M polly/lib/External/isl/test_inputs/codegen/separate2.c
    M polly/lib/External/isl/test_inputs/codegen/separate2.in
    M polly/lib/External/isl/test_inputs/codegen/unroll6.c
    A polly/lib/External/isl/test_inputs/schedule/leyin1.sc
    A polly/lib/External/isl/test_inputs/schedule/leyin1.st
    A polly/lib/External/isl/test_inputs/schedule/leyin2a.sc
    A polly/lib/External/isl/test_inputs/schedule/leyin2a.st
    A polly/lib/External/isl/test_inputs/schedule/leyin2b.sc
    A polly/lib/External/isl/test_inputs/schedule/leyin2b.st
    M polly/test/CodeGen/OpenMP/matmul-parallel.ll
    M polly/test/DeLICM/reduction_looprotate_hoisted.ll
    M polly/test/ScheduleOptimizer/pattern-matching-based-opts.ll
    M polly/test/ScheduleOptimizer/pattern-matching-based-opts_5.ll

  Log Message:
  -----------
  [Polly] Update isl to isl-0.27 (#177776)

Fixes: #177527

Updated test cases:

* CodeGen/OpenMP/matmul-parallel.ll, ScheduleOptimizer/pattern-matching-based-opts.ll
  Before the update, ISL bailed out the dependency computation due to
  hitting the max operation limit. The commit
  https://repo.or.cz/isl.git/commit/4bdfe2567715c5d1a8287c07d8685eb3db281e32
  seems to have reduced the complexity needed of the dependency
  computation, thus now being able to recognize some loops as parallel.
  The tests were checking that the outer loop is not parallel, but some
  inner loops can be parallized, particularly the array packing loops.

 * DeLICM/reduction_looprotate_hoisted.ll
   changes in how isl generates expressions

 * ScheduleOptimizer/pattern-matching-based-opts_5.ll
   changes in how isl generates expressions, and AST node changes


  Commit: 5dec140ab2bdbcc5837af22ff6876b1043e8fdc0
      https://github.com/llvm/llvm-project/commit/5dec140ab2bdbcc5837af22ff6876b1043e8fdc0
  Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IR2Vec.h
    M llvm/lib/Analysis/IR2Vec.cpp
    M llvm/unittests/Analysis/IR2VecTest.cpp

  Log Message:
  -----------
  [IR2Vec] Changes to support programmatic creation of Vocabulary (#177348)

These changes would help create `ir2vec::Vocabulary` in Python bindings
(or any other *tool*) without having to run `IR2VecVocabAnalysis` which
reads the Vocab path via command line.


  Commit: dcb6e15a83c907be0e71e01f3509d530135c56ae
      https://github.com/llvm/llvm-project/commit/dcb6e15a83c907be0e71e01f3509d530135c56ae
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M polly/test/CodeGen/OpenMP/matmul-parallel.ll

  Log Message:
  -----------
  [Polly] Avoid dependence on x86 backend

Unbreak the polly-arm-linux buildbot.


  Commit: aefd87d37cb31ca8421c8b34960ba107c56d49e5
      https://github.com/llvm/llvm-project/commit/aefd87d37cb31ca8421c8b34960ba107c56d49e5
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td

  Log Message:
  -----------
  [RISCV] Remove decodeRTZArg. NFC (#177744)

We can set the frm field in tablegen class which makes the disassembler
only accept that fixed value without needing to reject it with
decodeRTZArg.


  Commit: 2f1b1f3a543f79774aa5463c956404d330143a06
      https://github.com/llvm/llvm-project/commit/2f1b1f3a543f79774aa5463c956404d330143a06
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-01-24 (Sat, 24 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/test/Lower/OpenMP/declare-simd.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/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir

  Log Message:
  -----------
  [flang][mlir][OpenMP] Support inbranch and notinbranch clause (#177310)

Support inbranch and notinbranch clause for OpenMP declare simd
directive.


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

  Changed paths:
    M llvm/test/TableGen/MacroFusion.td
    M llvm/test/TableGen/ResolveSchedClass.td
    M llvm/utils/TableGen/SubtargetEmitter.cpp

  Log Message:
  -----------
  TableGen: Emit subtarget generated methods as final (#177781)


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

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

  Log Message:
  -----------
  [MLIR][XeGPU] Preserve Leading dimension when blocking rank-sensitive operations (#177489)

This PR preserves leading dimensions for
xegpu.load_matrix/store_matrix/atomic_rmw/convert_layout, and vector
operations which have impact on shapes:
broadcast/multi-reduction/shape_cast/transpose.
Rank-sensitive operations are operations whose semantics depend on the
tensor rank (and consequently its shape), and therefore must not alter
the input tile rank or shape, such as by dropping leading dimensions.


  Commit: 1650782144c78783a1fc6e07f44fc33b4270b793
      https://github.com/llvm/llvm-project/commit/1650782144c78783a1fc6e07f44fc33b4270b793
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-24 (Sat, 24 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/VPlanUtils.h

  Log Message:
  -----------
  [VPlan] Share and re-use logic to find FindIVResult (NFC).

Move logic to look for FindIVResult pattern out of LoopVectorize to
allow for re-use in current code and follow-up patches.


  Commit: f7d7897f4b71550fb3170626f78b61c5f83562fb
      https://github.com/llvm/llvm-project/commit/f7d7897f4b71550fb3170626f78b61c5f83562fb
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M clang/Maintainers.rst

  Log Message:
  -----------
  [clang] Add NagyDonat to the Clang Static Analyzer maintainers (#174595)

I was nominated for this role at
https://discourse.llvm.org/t/nominate-new-static-analyzer-maintainers/89362


  Commit: 8387237b4916279b1752b99cb848eeb84a04c0d2
      https://github.com/llvm/llvm-project/commit/8387237b4916279b1752b99cb848eeb84a04c0d2
  Author: Matej Košík <m4tej.kosik at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M lldb/include/lldb/API/SBDebugger.h

  Log Message:
  -----------
  [lldb] improve Doxygen rendering of an existing comment (#177785)

This commit improves the way how the example code attached to
`SBDebugger::GetSetting` method is rendered by Doxygen.

Co-authored-by: Matej Košík <matej.kosik at codasip.com>


  Commit: 24be429c8e5c4fb8bef03ab8bffcd833d103acc5
      https://github.com/llvm/llvm-project/commit/24be429c8e5c4fb8bef03ab8bffcd833d103acc5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp

  Log Message:
  -----------
  SystemZ: Use correctly offset MachinePointerInfo in CC lowering (#177793)

Previously this was just using the original base address as
the pointer info.


  Commit: 49d464ccaf4461631c5c61cc1ffa52d5a966b4bf
      https://github.com/llvm/llvm-project/commit/49d464ccaf4461631c5c61cc1ffa52d5a966b4bf
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
    A clang-tools-extra/clang-tidy/llvm/UseVectorUtilsCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/UseVectorUtilsCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/llvm/use-vector-utils.rst
    A clang-tools-extra/test/clang-tidy/checkers/llvm/use-vector-utils.cpp

  Log Message:
  -----------
  [clang-tidy] Add llvm-use-vector-utils (#177722)

This new check suggests the following replacements:
* `llvm::to_vector(llvm::map_range(X, Fn))` -> `llvm::map_to_vector(X,
Fn)`
* `llvm::to_vector(llvm::make_filter_range(X, Fn))` ->
`llvm::filter_to_vector(X, Fn)`
and add the `SmallVectorExtras.h` include when necessary.

The check is called `vector-utils` because we may want to handle more
cases in the future, like turning explicit calls to SmallVector
constructor to `llvm::to_vector` (which lives in `SmallVector.h`, not
`SmallVectorExtras.h`).

Assisted-by: claude


  Commit: f255bec95c14f27a743e8897544fdaa271d40adc
      https://github.com/llvm/llvm-project/commit/f255bec95c14f27a743e8897544fdaa271d40adc
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/tanf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/tanf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/tanf.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 tanf implementation to header-only in src/__support/math folder. (#177730)

Part of #147386

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


  Commit: 0515a5d9ff125a3f33336b44d708a4b870b2bee1
      https://github.com/llvm/llvm-project/commit/0515a5d9ff125a3f33336b44d708a4b870b2bee1
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  [AArch64][SME] Use LibcallLoweringInfo in the MachineSMEABIPass (#177762)

This adds a new helper to add calls to SME routines (addSMELibCall) and
check they are using the expected CC.

---------

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


  Commit: 3c4ce40c3f614a21fa3d4495f5d41a6a0f205421
      https://github.com/llvm/llvm-project/commit/3c4ce40c3f614a21fa3d4495f5d41a6a0f205421
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td

  Log Message:
  -----------
  [RISCV] Use decodeVMaskReg for VMaskCarryInOp. NFC (#177742)

After #177678 we don't need DecodeVMV0RegisterClass to reject vm=1
cases. All instructions that use VMaskCarryInOp have set vm=0 in their
tablegen classes.


  Commit: cf9adf58fdd01739dc014402b67104cf73f32179
      https://github.com/llvm/llvm-project/commit/cf9adf58fdd01739dc014402b67104cf73f32179
  Author: owenca <owenpiano at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

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

  Log Message:
  -----------
  [clang-format] Handle \\""" at end of Java text block (#177736)


  Commit: 402ee51532762b6612ece4fcfa89e8215fccce00
      https://github.com/llvm/llvm-project/commit/402ee51532762b6612ece4fcfa89e8215fccce00
  Author: Vikram Hegde <Vikram.Hegde at amd.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
    A llvm/test/CodeGen/AMDGPU/si-lower-control-flow-preserve-dom-tree.mir

  Log Message:
  -----------
  [AMDGPU] Fix DomTree preservation in SILowerControlFlow when nodes are removed (#176691)

I would think the "applyUpdates" API should also take care of deleting
the nodes from the analyses objects but this does not seem to be the
case. https://godbolt.org/z/38a7rfzjd shows an example where
SILowerControlFlow removes a basic block which is not removed in the
Post dominator tree.


  Commit: ac88f7bcd41a358a7d47946e2896b03c1aade44f
      https://github.com/llvm/llvm-project/commit/ac88f7bcd41a358a7d47946e2896b03c1aade44f
  Author: Ryan Kim <chokobole33 at gmail.com>
  Date:   2026-01-24 (Sat, 24 Jan 2026)

  Changed paths:
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/lib/Bindings/Python/IRAttributes.cpp
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/test/python/ir/attributes.py

  Log Message:
  -----------
  [mlir][python] Support Arbitrary Precision Integers in MLIR C API and Python Bindings (#177733)

This PR extends the MLIR C API and Python bindings to support
**arbitrary-precision integers (`APInt`)**, overcoming the previous
limitation where `IntegerAttr` values were restricted to 64 bits.

Cryptographic applications often require integer types much larger than
standard machine words (e.g., the 256-bit modulus for the BN254 curve).
Previously, attempting to bind these values resulted in truncation or
errors. This PR exposes the underlying word-based `APInt` structure via
the C API and updates the Python bindings to seamlessly handle Python's
arbitrary-precision integers.


  Commit: a06a0e2780ea50f87cbe56be7754cd6866dece0a
      https://github.com/llvm/llvm-project/commit/a06a0e2780ea50f87cbe56be7754cd6866dece0a
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses-cmdline.cpp

  Log Message:
  -----------
  [clang-tidy] Improve diagnostics of bugprone-macro-parentheses (#177841)

Closes #177594


  Commit: 778a2491149512109541cd5d59bad2d55024bdb7
      https://github.com/llvm/llvm-project/commit/778a2491149512109541cd5d59bad2d55024bdb7
  Author: Gabriel Dehame <gabrieldehame at gmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/TransformOps/AffineTransformOps.td
    M mlir/include/mlir/Dialect/Affine/Utils.h
    M mlir/lib/Dialect/Affine/TransformOps/AffineTransformOps.cpp
    M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
    A mlir/test/Dialect/Affine/SuperVectorize/transform_op.mlir

  Log Message:
  -----------
  [mlir][Affine] affine-super-vectorize transform op (#177755)

Added an operation in the transform dialect to apply the
affine-super-vectorize pass locally.
The operation vectorizes the loops that are children of the provided
operation, itself included.
Also added a test file verifying the operation behaves.


  Commit: 9311996261e1bc9acf979cf308e4d53a0330d671
      https://github.com/llvm/llvm-project/commit/9311996261e1bc9acf979cf308e4d53a0330d671
  Author: xiaoyang-sde <siujoeng.lau at gmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/23.rst
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/include/CMakeLists.txt
    A libcxx/include/__algorithm/ranges_shift_left.h
    M libcxx/include/__algorithm/shift_left.h
    M libcxx/include/algorithm
    M libcxx/include/module.modulemap.in
    M libcxx/modules/std/algorithm.inc
    A libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.shift/assert.shift_left.pass.cpp
    A libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges.shift_left.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.pass.cpp
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.compile.pass.cpp

  Log Message:
  -----------
  [libc++][ranges] implement `ranges::shift_left` (#83231)

Implement the `ranges::shift_left` algorithm from
[P2440R1](https://wg21.link/P2440R1).

Closes: #134061

---------

Co-authored-by: Hui Xie <hui.xie1990 at gmail.com>
Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: 21fdd49c24362087d6b6d6dfaa4a7cd922b6500c
      https://github.com/llvm/llvm-project/commit/21fdd49c24362087d6b6d6dfaa4a7cd922b6500c
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [libclang/python] Move SPELLING_CACHE into CodeCompletion (#177586)

This adresses point 2 from
https://github.com/llvm/llvm-project/issues/156680.

Also add a dummy object that serves as an alias to `SPELLING_CACHE`,
used to replicate the old behavior and throw a `DeprecationWarning`.


  Commit: 8fce1d75e70fe134749c055b51cde0eb971e81da
      https://github.com/llvm/llvm-project/commit/8fce1d75e70fe134749c055b51cde0eb971e81da
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/test/CodeGen/X86/extract-lowbits.ll

  Log Message:
  -----------
  [X86] Prefer andl to andb to save one byte encoding when using with bzhi or bextr (#86921)


  Commit: 51a262fb5dff3f038895c27d52aea6080f99afb1
      https://github.com/llvm/llvm-project/commit/51a262fb5dff3f038895c27d52aea6080f99afb1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/llvm/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 49d464ccaf44


  Commit: 94b90c6c05b745dc9963d111115b25e639e32df2
      https://github.com/llvm/llvm-project/commit/94b90c6c05b745dc9963d111115b25e639e32df2
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 9311996261e1


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

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

  Log Message:
  -----------
  InstCombine: Infer nnan and ninf flags on exp intrinsics (#177766)

Use the new common utility function to try fold to constant
or introduce flags.


  Commit: 60b1e9513778823b20535fd4437452e9eae4bb76
      https://github.com/llvm/llvm-project/commit/60b1e9513778823b20535fd4437452e9eae4bb76
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Infer nnan and ninf flags on log intrinsics (#177767)

Use the new common utility function to try fold to constant
or introduce flags.


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

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

  Log Message:
  -----------
  InstCombine: Infer nnan/ninf on canonicalize (#177771)


  Commit: 431dea9f33cd72d16d5d9aa8a084de4e421c16f0
      https://github.com/llvm/llvm-project/commit/431dea9f33cd72d16d5d9aa8a084de4e421c16f0
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Infer nnan and ninf on fpext (#177768)

Teach SimplifyDemandedFPClass to do this, although this is
not yet applied directly to the cast.


  Commit: 786a20710dd227169e434c1979ac1c58b79886cd
      https://github.com/llvm/llvm-project/commit/786a20710dd227169e434c1979ac1c58b79886cd
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp
    M llvm/lib/Target/AMDGPU/R600Processors.td
    M llvm/lib/Target/AMDGPU/R600Subtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  [NFCI][AMDGPU] Use `GET_SUBTARGETINFO_MACRO` in `GCNSubtarget.h` and `R600Subtarget.h` (#177402)

We can finally get rid of the manually defined boolean variables, like
other targets. Even though most of them are now defined by macros, we
still need to add the entries.


  Commit: 2f94635bae175cad20cbca2df1a36a9223ca08cf
      https://github.com/llvm/llvm-project/commit/2f94635bae175cad20cbca2df1a36a9223ca08cf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Infer nnan and ninf on fptrunc (#177769)

Teach SimplifyDemandedFPClass to do this, although this is
not yet applied directly to the cast.


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

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

  Log Message:
  -----------
  InstCombine: Infer nnan/ninf on rounding intrinsics (#177770)


  Commit: 2cc4d45715cdd5eb23df51a48d6fd95c37a2276a
      https://github.com/llvm/llvm-project/commit/2cc4d45715cdd5eb23df51a48d6fd95c37a2276a
  Author: Twice <twice at apache.org>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/python/CMakeLists.txt
    A mlir/python/mlir/dialects/ext.py
    A mlir/test/python/dialects/ext.py

  Log Message:
  -----------
  [MLIR][Python] Add a DSL for defining dialects in Python bindings (#169045)

Python bindings for the IRDL dialect were introduced in #158488. They
are currently usable—for constructing IR and dynamically loading modules
that contain `irdl.dialect` into MLIR. However, there are still several
pain points when working with them:

* The IRDL IR-building interface is not very intuitive and tends to be
quite verbose.
* We do not yet have the corresponding `OpView` classes for IRDL-defined
operations.

To address these issues, I propose creating a wrapper (effectively a
small “DSL”) on top of the existing IRDL Python bindings. This wrapper
aims to simplify IR construction and automatically generate the
corresponding `OpView` types. A simple example is shown below.

Currently, using the IRDL bindings looks like this:

```python
m = Module.create()
with InsertionPoint(m.body):
    myint = irdl.dialect("myint")
    with InsertionPoint(myint.body):
        constant = irdl.operation_("constant")
        with InsertionPoint(constant.body):
            iattr = irdl.base(base_name="#builtin.integer")
            i32 = irdl.is_(TypeAttr.get(IntegerType.get_signless(32)))
            irdl.attributes_([iattr], ["value"])
            irdl.results_([i32], ["cst"], [irdl.Variadicity.single])

        add = irdl.operation_("add")
        with InsertionPoint(add.body):
            i32 = irdl.is_(TypeAttr.get(IntegerType.get_signless(32)))
            irdl.operands_(
                [i32, i32],
                ["lhs", "rhs"],
                [irdl.Variadicity.single, irdl.Variadicity.single],
            )
            irdl.results_([i32], ["res"], [irdl.Variadicity.single])

irdl.load_dialects(m)
```

With the proposed DSL (module name `mlir.dialects.ext`), the equivalent
implementation becomes:

```python
class MyInt(Dialect, name="myint"):
    pass

i32 = IntegerType[32]

class ConstantOp(MyInt.Operation, name="constant"):
    value: IntegerAttr
    cst: Result[i32]

class AddOp(MyInt.Operation, name="add"):
    lhs: Operand[i32]
    rhs: Operand[i32]
    res: Result[i32]

MyInt.load()
```

Compared with the current IRDL Python bindings, this DSL mainly adds the
following:

* **A more intuitive interface** for constructing IRDL definitions (as
shown in the example).
* **Automatic generation of the corresponding `OpView`
classes**—including `__init__` methods and property getters for each
defined operation. Similar to TableGen’s `ins`, operands and attributes
can be interleaved in arbitrary order. Special handling is also
implemented for optional and variadic operands/results (such as
computing segment sizes) so that they feel as natural to use as native
operations.
* **Lazy insertion of ops**: all ops are created and inserted only when
`Dialect.load()` is called, which makes it unnecessary to specify an
MLIR context immediately when defining an IRDL dialect.
* **Basic type inference** in operation builders (i.e.
`OpViewCls.__init__`) for trivial result types.

The current DSL does not yet cover all IRDL operations. Several features
are not supported at the moment:
- Defining new types or attributes
- Parametric constraints
- Adding regions to operations

---------

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


  Commit: 2297e0d316496d772e3cba246b24a1ff1c0396b7
      https://github.com/llvm/llvm-project/commit/2297e0d316496d772e3cba246b24a1ff1c0396b7
  Author: Nimit Sachdeva <sachdeva.nimit.git at gmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/MoveAutoInit.cpp
    A llvm/test/Transforms/MoveAutoInit/loop-store.ll

  Log Message:
  -----------
  [MoveAutoInit] Fix for miscompilation for #150120 (#173961)

Fixes the miscompilation discussed for the PR #164882 as part of
generalizing the optimization for the issue #150120.

Without this commit, MoveAutoInit moves the store instruction to a
different branch which does not dominate the user dominator node. This
results in UB at runtime. The example in the test case is specifically
for an irreducible loop, in which all the predecessor may not dominate
user dominator head.

To fix this problem, we've introduced a new check to verify if the
predecessor of the user dominator node does in fact dominate user
dominator node before deciding that it is the node where the instruction
will be moved to.


  Commit: 61c162169c6e9e4a9797aa80f0480ff138bdea7a
      https://github.com/llvm/llvm-project/commit/61c162169c6e9e4a9797aa80f0480ff138bdea7a
  Author: foxtran <39676482+foxtran at users.noreply.github.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M mlir/lib/CAPI/Transforms/Rewrite.cpp
    M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp

  Log Message:
  -----------
  [MLIR] Fix GCC's `-Wreturn-type` warnings (#177654)

This patch fixes `-Wreturn-type` warnings which happens if MLIR is built
with GCC compiler (11.5 is used for detecting)


Founded errors
```
build/llvm-llvmorg-21.1.8/mlir/lib/CAPI/Transforms/Rewrite.cpp: In function ‘MlirGreedyRewriteStrictness mlirGreedyRewriteDriverConfigGetStrictness(MlirGreedyRewriteDriverConfig)’:
build/llvm-llvmorg-21.1.8/mlir/lib/CAPI/Transforms/Rewrite.cpp:399:1: warning: control reaches end of non-void function [-Wreturn-type]
  399 | }
      | ^
build/llvm-llvmorg-21.1.8/mlir/lib/CAPI/Transforms/Rewrite.cpp: In function ‘MlirGreedySimplifyRegionLevel mlirGreedyRewriteDriverConfigGetRegionSimplificationLevel(MlirGreedyRewriteDriverConfig)’:
build/llvm-llvmorg-21.1.8/mlir/lib/CAPI/Transforms/Rewrite.cpp:414:1: warning: control reaches end of non-void function [-Wreturn-type]
  414 | }
      | ^
build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp: In member function ‘mlir::Speculation::Speculatability mlir::gpu::SubgroupBroadcastOp::getSpeculatability()’:
build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp:2522:1: warning: control reaches end of non-void function [-Wreturn-type]
 2522 | }
      | ^
build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp: In member function ‘llvm::LogicalResult mlir::gpu::SubgroupBroadcastOp::verify()’:
build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/GPU/IR/GPUDialect.cpp:2537:1: warning: control reaches end of non-void function [-Wreturn-type]
 2537 | }
      | ^

build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp: In member function ‘mlir::Value {anonymous}::VectorContractRewriter::createMMLA(mlir::PatternRewriter&, mlir::Location, mlir::Value, mlir::Value, mlir::Value)’:
build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/ArmNeon/Transforms/LowerContractToNeonPatterns.cpp:153:3: warning: control reaches end of non-void function [-Wreturn-type]
  153 |   }
      |   ^


build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp: In function ‘std::pair<long int, long int> mlir::linalg::getFmrFromWinogradConv2DFmr(mlir::linalg::WinogradConv2DFmr)’:
build/llvm-llvmorg-21.1.8/mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp:3776:1: warning: control reaches end of non-void function [-Wreturn-type]
 3776 | }
      | ^
build/llvm-llvmorg-21.1.8/mlir/test/lib/Dialect/Test/TestOpDefs.cpp: In function ‘llvm::StringLiteral getVisibilityString(mlir::SymbolTable::Visibility)’:
build/llvm-llvmorg-21.1.8/mlir/test/lib/Dialect/Test/TestOpDefs.cpp:37:1: warning: control reaches end of non-void function [-Wreturn-type]
   37 | }
      | ^
```


  Commit: 2370bf206d9bf91144412c3d8b24aee91d55e670
      https://github.com/llvm/llvm-project/commit/2370bf206d9bf91144412c3d8b24aee91d55e670
  Author: Stefan Weigl-Bosker <stefan at s00.xyz>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/abds.ll
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [DAG] Extend MinMax matchers to detect flippable sign (#177504)

Fixes #174328


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

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

  Log Message:
  -----------
  InstCombine: Apply parameter nofpclass in SimplifyDemandedFPClass (#176104)

Apply the use operand's nofpclass to the demanded mask.


  Commit: 029efa6c11b9befdefd1b0213297174a2aeeb316
      https://github.com/llvm/llvm-project/commit/029efa6c11b9befdefd1b0213297174a2aeeb316
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Add missing dependencies for 778a2491149512109541cd5d59bad2d55024bdb7


  Commit: 9eaa1ff11ccde52f2e3bf86f253b6b646548c7cc
      https://github.com/llvm/llvm-project/commit/9eaa1ff11ccde52f2e3bf86f253b6b646548c7cc
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/builtin-rotate.c

  Log Message:
  -----------
  [clang][test] Fix builtin-rotate.c test __int128 test failure on ARM32 (#177732)

- Run the INT128 prefix checks on 64-bit targets since __int128 is not
supported on ARM32

Fixes https://lab.llvm.org/buildbot/#/builders/154/builds/26813


  Commit: 9d6f01133321df5d1fc05d7c8d52a2fae0379aff
      https://github.com/llvm/llvm-project/commit/9d6f01133321df5d1fc05d7c8d52a2fae0379aff
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/AArch64/icmp-vector-reduce.ll
    A llvm/test/Transforms/VectorCombine/X86/icmp-vector-reduce.ll

  Log Message:
  -----------
  [VectorCombine] Fold vector.reduce.OP(F(X)) == 0 -> OP(X) == 0 (#173069)

This commit introduces a pattern to do the following fold:

  vector.reduce.OP f(X_i) == 0 -> vector.reduce.OP X_i == 0

In order to decide on this fold, we use the following properties:

1. OP X_i == 0 <=> \forall i \in [1, N] X_i == 0 1'. OP X_i == 0 <=>
\exists j \in [1, N] X_j == 0
  2.  f(x) == 0 <=> x == 0

>From 1 and 2 (or 1' and 2), we can infer that

  OP f(X_i) == 0 <=> OP X_i == 0.

For some of the OP's and f's, we need to have domain constraints on X to
ensure properties 1 (or 1') and 2.

In this change we support the following operations f:

  1. f(x) = shl nuw x, y for arbitrary y
  2. f(x) = mul nuw x, c for defined c != 0
  3. f(x) = zext x
  4. f(x) = sext x
  5. f(x) = neg x

And the following reductions OP:

  a. OR X_i   - has property 1  for every X
  b. UMAX X_i - has property 1  for every X
  c. UMIN X_i - has property 1' for every X
  d. SMAX X_i - has property 1  for X >= 0
  e. SMIN X_i - has property 1' for X >= 0
  f. ADD X_i  - has property 1  for X >= 0 && ADD X_i doesn't sign wrap

The matrix of Alive2 proofs for every pair of {f,OP}:
  | OP\f | zext | sext | neg | mul | shl |
  |------|------|------|-----|-----|-----|
| or | [proof](https://alive2.llvm.org/ce/z/EqHAPd) |
[proof](https://alive2.llvm.org/ce/z/DS3eP2) |
[proof](https://alive2.llvm.org/ce/z/65A5x9) |
[proof](https://alive2.llvm.org/ce/z/TVPpUf) |
[proof](https://alive2.llvm.org/ce/z/kj--vH) |
| umin | [proof](https://alive2.llvm.org/ce/z/AK39LL) |
[proof](https://alive2.llvm.org/ce/z/xEPH2S) |
[proof](https://alive2.llvm.org/ce/z/N-ubNr) |
[proof](https://alive2.llvm.org/ce/z/dgUEH4) |
[proof](https://alive2.llvm.org/ce/z/2TUNDu) |
| umax | [proof](https://alive2.llvm.org/ce/z/Cy_DJS) |
[proof](https://alive2.llvm.org/ce/z/f42bGQ) |
[proof](https://alive2.llvm.org/ce/z/ReUx4M) |
[proof](https://alive2.llvm.org/ce/z/qSsvdG) |
[proof](https://alive2.llvm.org/ce/z/cE3Qgw) |
| smin | [proof](https://alive2.llvm.org/ce/z/j5TwTA) |
[proof](https://alive2.llvm.org/ce/z/DhNxPQ) | — |
[proof](https://alive2.llvm.org/ce/z/m03AOt) |
[proof](https://alive2.llvm.org/ce/z/bp58Q3) |
| smax | [proof](https://alive2.llvm.org/ce/z/3zmbRn) |
[proof](https://alive2.llvm.org/ce/z/6FTfRJ) | — |
[proof](https://alive2.llvm.org/ce/z/KDfKEW) |
[proof](https://alive2.llvm.org/ce/z/dajm7T) |
| add | [proof](https://alive2.llvm.org/ce/z/3kt7BB) |
[proof](https://alive2.llvm.org/ce/z/cyqzQH) | — |
[proof](https://alive2.llvm.org/ce/z/n_oGjT) |
[proof](https://alive2.llvm.org/ce/z/67bkJm) |

Proofs for known bits:
* Leading zeros - [4vi32](https://alive2.llvm.org/ce/z/w--S2D),
[16vi8](https://alive2.llvm.org/ce/z/hEdVks)
* Leading ones - [4vi16](https://alive2.llvm.org/ce/z/RyPdBS),
[v16i8](https://alive2.llvm.org/ce/z/UTFFt9)


  Commit: 73ebadaa837e039a1c07c9d373841cfb1eb0eb2b
      https://github.com/llvm/llvm-project/commit/73ebadaa837e039a1c07c9d373841cfb1eb0eb2b
  Author: keinflue <keinflue at posteo.de>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Overload.h
    A clang/test/SemaCXX/crash-GH170433.cpp

  Log Message:
  -----------
  [clang] Don't assert on perfect overload match with _Atomic (#176619)

An assertion incorrectly treated difference in _Atomic qualification as
different types for the purpose of verifying a perfect match in overload
resolution in C++.

Fixes #170433


  Commit: 0666a777ec8138f58ebc7fc41a2fb8097328308a
      https://github.com/llvm/llvm-project/commit/0666a777ec8138f58ebc7fc41a2fb8097328308a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll

  Log Message:
  -----------
  [SLP]Support for tree throttling in SLP graphs with gathered loads

Gathered loads forming DAG instead of trees in SLP vectorizer. When
doing the throttling analysis for such graphs, need to consider partially
matched gathered loads DAG nodes and consider extract and/or gather
operations and their costs.
The patch adds this analysis and allows cutting off the expensive
sub-graphs with gathered loads.

Reviewers: hiraditya, RKSimon

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


  Commit: 544c300f4396119bf5a2ea4239d32774908a882d
      https://github.com/llvm/llvm-project/commit/544c300f4396119bf5a2ea4239d32774908a882d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  DAG: Use poison instead of undef in some vector combines (#177612)

Use poison for the unused or out of bounds vector components.


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

  Changed paths:
    M mlir/lib/Dialect/SCF/Transforms/LoopSpecialization.cpp
    M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
    M mlir/test/Dialect/SCF/canonicalize.mlir
    M mlir/test/Dialect/SCF/for-loop-peeling.mlir

  Log Message:
  -----------
  [mlir][DialectUtils] Fix 0 step handling in `constantTripCount` (#177329)

A step size of "zero" does not indicate "zero iterations". It may
indicate an infinite number of iterations.

This commit makes some transformations more conservative. We used to
fold away some loops with step size 0 and that's now no longer the case.

Relation discussion:
https://discourse.llvm.org/t/infinite-loops-and-dead-code/89530


  Commit: e5d235831dfb07b6e767812af7f9d3daa5896f78
      https://github.com/llvm/llvm-project/commit/e5d235831dfb07b6e767812af7f9d3daa5896f78
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M polly/include/polly/ScopDetection.h
    M polly/include/polly/ScopDetectionDiagnostic.h
    M polly/lib/Analysis/ScopDetection.cpp
    M polly/lib/Analysis/ScopDetectionDiagnostic.cpp
    A polly/test/ScopDetectionDiagnostics/ReportIncompatibleType.ll

  Log Message:
  -----------
  [Polly] Reject scalable vector types (#177871)

Polly currently does not consider types without fixed length, which can
be encountered if an input source uses e.g. ARM SVE builtins. Such
programs have already been optimized manually. Non-fixed type lengths
also add to the difficulty of dependency analysis. Skip such types
entirely for now.
 
Fixes: #177859


  Commit: 9b3b64310650654d063ce7816c860f67bfbadd38
      https://github.com/llvm/llvm-project/commit/9b3b64310650654d063ce7816c860f67bfbadd38
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/fcmp-fadd-select.ll
    M llvm/test/Transforms/InstCombine/fcmp-select.ll
    M llvm/test/Transforms/InstCombine/fneg.ll
    M llvm/test/Transforms/InstCombine/minmax-fp.ll
    M llvm/test/Transforms/InstCombine/unordered-fcmp-select.ll

  Log Message:
  -----------
  [InstCombine] Don't convert a compare+select into a minnum/maxnum intrinsic that can't be lowered back to a compare+select (#177821)

This is a step on the yak-shaving expedition to properly implement the
new `minnum`/`maxnum` signed-zero semantics.

`InstCombineSelect` will convert a `fcmp`+`select` sequence to a
`minnum`/`maxnum` intrinsic. It doesn't require the `fcmp` to have any
particular fast-math flags, just that the `select` has `nnan` and `nsz`
(or is being used in a context where the result doesn't care about
signed zero).

It's not correct to propagate the `nnan` flag from the `fcmp`
instruction for poison-propagation reasons. Patches like
https://github.com/llvm/llvm-project/pull/117977 and
https://github.com/llvm/llvm-project/pull/141010 have *generously* made
it so that if `fcmp` doesn't have fast-math flags, we can still perform
the transformation by simply dropping the flags on the generated
intrinsic.

Unfortunately, converting an `fcmp`+`select` with fast-math flags, to a
`minnum`/`maxnum` without fast-math flags, is actually a
*pessimization*. Common ISAs like x86 and WebAssembly do not provide
single floating-point minimum/maximum instructions that handle NaN in
the same way as `minnum`/`maxnum`. They have to fall back to a routine
or a libcall, which causes its own problems
(https://github.com/llvm/llvm-project/issues/54554).

[Here's an example](https://llvm.godbolt.org/z/avYxa7ccK). Using just
`llc`, the function compiles to a single `maxss`. But with `clang -O3`,
which enables InstCombine optimizations, we end up with a much larger
(and completely unnecessary) routine for handling NaNs.

We should only perform this transformation if it's safe to add `nnan`
and `nsz` to the `minnum`/`maxnum` call, since those are the flags
necessary for lowering it *back* into an `fcmp`+`select` (or equivalent
code).

There's currently one case where we might end up without `nsz` on the
intrinsic call: if the output has one use, and that use doesn't care
about signed zero. To account for that, we should also unconditionally
set `nsz` on the generated intrinsic call.

With this in place, it should be safe to eventually revert
https://reviews.llvm.org/D122610 and further consolidate
`minnum`/`maxnum` handling.


  Commit: 7b445ddcd26f9d5fb568511fe38147c058a7d232
      https://github.com/llvm/llvm-project/commit/7b445ddcd26f9d5fb568511fe38147c058a7d232
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/AArch64/early_exit_cost.ll
    A llvm/test/Transforms/LoopVectorize/early-exit-load-live-out.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit_unsafe_ptrs.ll

  Log Message:
  -----------
  [LV] Add additional tests for early-exit loops loads not known deref.

Add additional test coverage for loops with loads that are not known to
be dereferenceable.


  Commit: cdc6a84c14ea07d66d9e388171b43429eae3397b
      https://github.com/llvm/llvm-project/commit/cdc6a84c14ea07d66d9e388171b43429eae3397b
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/ARM/lower-vmax.ll
    M llvm/test/CodeGen/ARM/minnum-maxnum-intrinsics.ll
    M llvm/test/CodeGen/ARM/vminmax.ll
    M llvm/test/CodeGen/WebAssembly/f32.ll
    M llvm/test/CodeGen/WebAssembly/f64.ll
    M llvm/test/CodeGen/WebAssembly/simd-arith.ll

  Log Message:
  -----------
  TargetLowering: Allow FMINNUM/FMAXNUM to lower to FMINIMUM/FMAXIMUM even without `nsz` (#177828)

This restriction was originally added in
https://reviews.llvm.org/D143256, with the given justification:

> Currently, in TargetLowering, if the target does not support fminnum,
we lower to fminimum if neither operand could be a NaN. But this isn't
quite correct because fminnum and fminimum treat +/-0 differently; so,
we need to prove that one of the operands isn't a zero.

As far as I can tell, this was never correct. Before
https://github.com/llvm/llvm-project/pull/172012, `minnum` and `maxnum`
were nondeterministic with regards to signed zero, so it's always been
perfectly legal to lower them to operations that order signed zeroes.


  Commit: 20c15c7afe97a546d339a5500d3fa273412e2fda
      https://github.com/llvm/llvm-project/commit/20c15c7afe97a546d339a5500d3fa273412e2fda
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libclc/clc/lib/generic/math/clc_remquo.cl
    M libclc/clc/lib/generic/math/clc_remquo.inc

  Log Message:
  -----------
  [libclc] replace float remquo with amd ocml implementation (#177131)

Current implementation has two issues:
* unconditionally soft flushes denormal.
* can't pass OpenCL CTS test "test_bruteforce remquo" on intel gpu.

This PR upstreams remquo implementation from
https://github.com/ROCm/llvm-project/tree/amd-staging/amd/device-libs/ocml/src/remainderF_base.h
It supports denormal and can pass OpenCL CTS test. Number of LLVM IR
instructions of function _Z6remquoffPU3AS5i increased from 96 to 680.

---------

Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>


  Commit: c03d0fe672b2506d22d101cb7704996f4ffda3e4
      https://github.com/llvm/llvm-project/commit/c03d0fe672b2506d22d101cb7704996f4ffda3e4
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/CodeGenOpenCL/local-scope.cl
    M clang/test/SemaOpenCL/extension-version.cl
    M clang/test/SemaOpenCL/storageclass.cl

  Log Message:
  -----------
  [OpenCL] Add clang internal extension __cl_clang_function_scope_local_variables  (#176726)

OpenCL spec restricts that variable in local address space can only be
declared at kernel function scope.
Add a Clang internal extension __cl_clang_function_scope_local_variables
to lift the restriction.

To expose static local allocations at kernel scope, targets can either
force-inline non-kernel functions that declare local memory or pass a
kernel-allocated local buffer to those functions via an implicit argument.

Motivation: support local memory allocation in libclc's implementation
of work-group collective built-ins, see example at:
https://github.com/intel/llvm/blob/41455e305117/libclc/libspirv/lib/amdgcn-amdhsa/group/collectives_helpers.ll
https://github.com/intel/llvm/blob/41455e305117/libclc/libspirv/lib/amdgcn-amdhsa/group/collectives.cl#L182

Right now this is a Clang-only OpenCL extension intended for compiling
OpenCL libraries with Clang. It could be proposed as a standard OpenCL
extension in the future.


  Commit: 2c7cf896be28febcd2f9af1b0dfdb5dfc6b97583
      https://github.com/llvm/llvm-project/commit/2c7cf896be28febcd2f9af1b0dfdb5dfc6b97583
  Author: Miguel Saldivar <saldivarcher at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/ControlFlowUtils.cpp
    M llvm/lib/Transforms/Utils/UnifyLoopExits.cpp
    A llvm/test/Transforms/UnifyLoopExits/no-exit-blocks.ll

  Log Message:
  -----------
  [llvm][UnifyLoopExits] Avoid optimization if no exit block is found (#165343)

If there is not an exit block, we should not try unify the loops.
Instead we should just return.

Fixes #165252


  Commit: 55de73daee0a589561787adf0fc97ee041414061
      https://github.com/llvm/llvm-project/commit/55de73daee0a589561787adf0fc97ee041414061
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Put VL before VTYPE in XAndes and XSfmm instruction Defs/Uses. NFC (#177877)

This is the order we use for standard vector instructions.


  Commit: 4c7ced218ed29c0197569e14b241c4008f853a41
      https://github.com/llvm/llvm-project/commit/4c7ced218ed29c0197569e14b241c4008f853a41
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td

  Log Message:
  -----------
  [RISCV] Use inheritance to simplify RVInstSet*VL* classes. NFC (#177797)

Rename classes to start with RVInstV to make it more clear they are
vector related.


  Commit: eae75353f70b01363bab9383da6b4dd4324d13a3
      https://github.com/llvm/llvm-project/commit/eae75353f70b01363bab9383da6b4dd4324d13a3
  Author: Fady Farag <com.webkit.iidmsa at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/Record.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/lib/Sema/SemaDecl.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/test/CodeGen/RISCV/GlobalISel/rv32zbkb.ll

  Log Message:
  -----------
  [NFC] Fix "FIMXE" typos to "FIXME" (#177895)

Replace common typo "FIMXE" with the intended "FIXME" across the
codebase.


  Commit: c563a88413f1139a0c81153101cadcd3227c6d6e
      https://github.com/llvm/llvm-project/commit/c563a88413f1139a0c81153101cadcd3227c6d6e
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXMips.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXwch.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td

  Log Message:
  -----------
  [RISC-V] Reduce code duplication for uimm*_lsb* operands. NFC

Use a common tablegen class instead of duplicating all the data and add a
new case macro to handle the isShiftedUInt<>() call. This refactoring was
motivated by adding RVY support since I needed to add uimm{9,10}_lsb0000.

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


  Commit: 313bec1c9a6f4e4cdb8d86643041ea5b8cb4de28
      https://github.com/llvm/llvm-project/commit/313bec1c9a6f4e4cdb8d86643041ea5b8cb4de28
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/test/Analysis/CostModel/X86/vscale-insertelement-crash.ll

  Log Message:
  -----------
  Add quotes around "print<cost-model>" argument

This is consistent with other tests and is required for some test runners.


  Commit: fc2230f574a4e2d5a5041e5f805ba1f38daa66ea
      https://github.com/llvm/llvm-project/commit/fc2230f574a4e2d5a5041e5f805ba1f38daa66ea
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-25 (Sun, 25 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISC-V][MC] Introduce RVY extension feature

This adds the initial feature for the base RVY extension,
other extensions such as the hybrid mode will be added later.
RVY specification: https://riscv.github.io/riscv-cheri/

Co-authored-by: Jessica Clarke <jrtc27 at jrtc27.com>
Co-authored-by: Petr Vesely <petr.vesely at codasip.com>

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


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

  Changed paths:
    M clang/lib/Sema/SemaLambda.cpp
    A clang/test/Modules/pr177385.cppm

  Log Message:
  -----------
  [C++20] [Modules] Set ManglingContextDecl when we need to mangle a lambda but it's nullptr (#177899)

Close https://github.com/llvm/llvm-project/issues/177385

The root cause of the problem is, when we decide to mangle a lamdba in a
module interface while the ManglingContextDecl is nullptr, we didn't
update ManglingContextDecl. So that the following use of
ManglingContextDecl is an invalid value.


  Commit: e68eadf84968608448048ccc5d7ff8bfbff06805
      https://github.com/llvm/llvm-project/commit/e68eadf84968608448048ccc5d7ff8bfbff06805
  Author: FYLGQ <799648409 at qq.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/complex.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix crash on discarded complex comparison (#177731)

Fixes llvm#176902: [clang][bytecode] crashes on ill-formed
_Static_assert comparing complex value

This patch resolves a crash in Clang's constant evaluation when handling
complex number comparisons in discarded expressions, such as those
involving short-circuiting logical operators. The crash occurred due to
unnecessary evaluation of the comparison in the experimental constant
interpreter.

The issue was originally observed and minimized in the following
example:

```cpp
#define EVAL(a, b) _Static_assert(a == b, "")

void foo() {
  EVAL(; + 0, 1i);
}
```

This patch ensures that such comparisons are handled correctly without
triggering assertions when the result is discarded.

Tests

A regression test has been added to verify that complex comparisons in
discarded expressions no longer cause crashes during constant
evaluation.

Local verification:


llvm-project-main/clang/lib/AST/ByteCode/constant-eval-complex-discard.c
passes.

Full ninja check-clang may fail locally due to a known GCC ICE when
building Clang unittests; this is unrelated to the change itself.


  Commit: a9b7b4d957aa5df863145cd4e70fe558a56e2f3d
      https://github.com/llvm/llvm-project/commit/a9b7b4d957aa5df863145cd4e70fe558a56e2f3d
  Author: flovent <flbven at protonmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Fix crash caused by overflow of Casting float number to integer (#177815)

Before this PR evaluation process will stop immediately regradless of
whether it's set to handle overflow,

this will prevent us getting value from stack, which leads to crash(with
or without assertion).

Closes  #177751.


  Commit: a53daac6f68fa23584758e437221f27cdffd11ed
      https://github.com/llvm/llvm-project/commit/a53daac6f68fa23584758e437221f27cdffd11ed
  Author: Mark Zhuang <mark.zhuang at spacemit.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    A clang/test/Driver/print-enabled-extensions/riscv-spacemit-x100.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVProcessors.td

  Log Message:
  -----------
  [RISCV] Add Spacemit X100 processor definition (#173988)

SpacemiT X100 is a 4-issue, out-of-order, RVA23 processor

https://www.spacemit.com/en/spacemit-x100-core/


  Commit: 13b20e7aeab83e82368be9ffd22ce02cb9b831ae
      https://github.com/llvm/llvm-project/commit/13b20e7aeab83e82368be9ffd22ce02cb9b831ae
  Author: Ryan Mitchell <Ryan.Mitchell at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    A llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.ll
    A llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm-gfx12.mir

  Log Message:
  -----------
  [AMDGPU][SILoadStoreOptimizer] Fix lds address operand offset (#176816)

The offset operand in GLOBAL_LOAD_ASYNC_TO_LDS_B128, for instance, is
added to both the lds and global address, but SILoadStoreOptimizer is
currently unaware of that. This PR inserts an add to counteract the
offset meant for the global address. This one add is better than not
doing the optimization at all, and having to insert 2 adds for each
global address calculation (with no offset).

```
; ENABLE-LABEL: name: promote_async_load_offset
; ENABLE: liveins: $ttmp7, $vgpr0, $sgpr0_sgpr1
; ENABLE-NEXT: {{  $}}
; ENABLE-NEXT: renamable $vgpr1 = V_LSHLREV_B32_e32 8, $vgpr0, implicit $exec
; ENABLE-NEXT: renamable $vgpr2, renamable $vcc_lo = V_ADD_CO_U32_e64 $vgpr0, 512, 0, implicit $exec
; ENABLE-NEXT: renamable $vgpr3, dead $sgpr_null = V_ADDC_U32_e64 0, killed $vgpr0, killed $vcc_lo, 0, implicit $exec
; ENABLE-NEXT: renamable $vgpr1 = disjoint V_OR_B32_e32 0, killed $vgpr1, implicit $exec
; ENABLE-NEXT: renamable $vgpr0 = V_ADD_U32_e32 256, $vgpr1, implicit $exec
; ENABLE-NEXT: GLOBAL_LOAD_ASYNC_TO_LDS_B128 killed $vgpr0, $vgpr2_vgpr3, -256, 0, implicit-def $asynccnt, implicit $exec, implicit $asynccnt :: (load store (s128), align 1, addrspace 3)
; ENABLE-NEXT: GLOBAL_LOAD_ASYNC_TO_LDS_B128 killed $vgpr1, killed $vgpr2_vgpr3, 0, 0, implicit-def $asynccnt, implicit $exec, implicit $asynccnt :: (load store (s128), align 1, addrspace 3)

; DISABLE-LABEL: name: promote_async_load_offset
; DISABLE: liveins: $ttmp7, $vgpr0, $sgpr0_sgpr1
; DISABLE-NEXT: {{  $}}
; DISABLE-NEXT: renamable $vgpr1 = V_LSHLREV_B32_e32 8, $vgpr0, implicit $exec
; DISABLE-NEXT: renamable $vgpr2, renamable $vcc_lo = V_ADD_CO_U32_e64 256, $vgpr0, 0, implicit $exec
; DISABLE-NEXT: renamable $vgpr3, $sgpr_null = V_ADDC_U32_e64 0, $vgpr0, killed $vcc_lo, 0, implicit $exec
; DISABLE-NEXT: renamable $vgpr1 = disjoint V_OR_B32_e32 0, killed $vgpr1, implicit $exec
; DISABLE-NEXT: GLOBAL_LOAD_ASYNC_TO_LDS_B128 $vgpr1, killed $vgpr2_vgpr3, 0, 0, implicit-def $asynccnt, implicit $exec, implicit $asynccnt :: (load store (s128), align 1, addrspace 3)
; DISABLE-NEXT: renamable $vgpr2, renamable $vcc_lo = V_ADD_CO_U32_e64 512, $vgpr0, 0, implicit $exec
; DISABLE-NEXT: renamable $vgpr3, $sgpr_null = V_ADDC_U32_e64 0, killed $vgpr0, killed $vcc_lo, 0, implicit $exec
; DISABLE-NEXT: GLOBAL_LOAD_ASYNC_TO_LDS_B128 killed $vgpr1, killed $vgpr2_vgpr3, 0, 0, implicit-def $asynccnt, implicit $exec, implicit $asynccnt :: (load store (s128), align 1, addrspace 3)
```

This PR also promotes the global address to an offset when the offset is
calculated with V_ADD_U64 on applicable gfx versions, (and inversely
adds the LDS offset), whereas previously the optimization opportunity
was missed entirely.


  Commit: f2deb793af7b9543180bba4b9402dcc7cc7a0c2e
      https://github.com/llvm/llvm-project/commit/f2deb793af7b9543180bba4b9402dcc7cc7a0c2e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Linker/IRMover.cpp
    A llvm/test/Transforms/FunctionImport/Inputs/attr_fixup_dae_noundef.ll
    A llvm/test/Transforms/FunctionImport/attr_fixup_dae_noundef.ll

  Log Message:
  -----------
  [IRMover] Use signature for exact definition (#177381)

It is possible for optimizations to modify attributes on exact
definitions. In particular, DeadArgumentElimination may find that a
certain argument is dead, and replace arguments in calls with `poison`.
This requires dropping the `noundef` attribute on the argument.

When ThinLTO import is performed, the destination module already has a
declaration for the function, and the definition is not imported (e.g.
because it is noinline), we currently simply retain the original
declaration. This is incorrect if call with poison arguments were
imported, as the calls become immediate UB.

There was a previous attempt to address this in
https://reviews.llvm.org/D139209. What that patch did was to fix up the
attributes of the declaration after the fact, dropping UB implying
attributes that are not present on the definition. It was reverted
because it made an incorrect assumption that the signature between the
declaration and definition must match.

In this PR, I propose to fix the issue in a different way: If the source
module holds an exact definition (which are the ones that can be, in
limited ways, modified by optimizations), then even if we don't import
the definition, we should still import a declaration based on it. This
ensures that we respect any dropped attributes. (It's probably also
useful for optimization purposes, because we also see more inferred
attributes.)

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


  Commit: 55d4c694a9c6cf1091026b1c71c4acab791b1029
      https://github.com/llvm/llvm-project/commit/55d4c694a9c6cf1091026b1c71c4acab791b1029
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/AliasAnalysis/LocalAliasAnalysis.cpp

  Log Message:
  -----------
  [mlir][analysis]  Cleanup collectUnderlyingAddressValues (NFC) (#177905)


  Commit: 150c4d6b26177b3a9a65d2a35e4fe3ee7ccc4f9d
      https://github.com/llvm/llvm-project/commit/150c4d6b26177b3a9a65d2a35e4fe3ee7ccc4f9d
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

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

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


  Commit: 0921542e3b0557e926af846a414676a6a5d0e43c
      https://github.com/llvm/llvm-project/commit/0921542e3b0557e926af846a414676a6a5d0e43c
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMFrameLowering.cpp
    A llvm/test/CodeGen/ARM/estimate-size-copy.mir

  Log Message:
  -----------
  [ARM] Count register copies when estimating function size (#175763)

`EstimateFunctionSizeInBytes`, in `ARMFrameLowering.cpp`, provides an
early estimate of the compiled size of a function, in a context that
wants to overestimate rather than underestimate.

In some cases it was underestimating severely, by over 20%. The
discrepancy was entirely accounted for by the fact that `COPY`
operations were not being counted at all, even though each one (or at
least each one that survives any post-regalloc optimizations) takes 2
bytes in Thumb or 4 in Arm. This could lead to a compile failure, if the
underestimated function size led frame lowering to not stack LR, but
later, `ARMConstantIslandsPass` needed to insert an intra-function
branch long enough to require a `bl` instruction, needing LR to have
been stacked.

The result of `EstimateFunctionSizeInBytes` was not directly available
for testing, so I added an `LLVM_DEBUG` at the end of the function. That
way, the test file doesn't need to try to make a >2048 byte function
estimated at <2048 bytes; it just needs to exhibit a function with a
single `COPY` and make sure it's counted.

At the moment, `EstimateFunctionSizeInBytes` is only used at all in
Thumb-1 compilations, to decide whether the function is large enough to
justify stacking LR as a precaution. However, the subroutine
`ARMBaseInstrInfo::getInstSizeInBytes` which counts each individual
`MachineInstr` is called from other contexts too, so I've made it return
a sensible answer for `COPY` nodes in both of Arm and Thumb.


  Commit: e1a23f71520972415639d8929d61a49dc26a64c6
      https://github.com/llvm/llvm-project/commit/e1a23f71520972415639d8929d61a49dc26a64c6
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectMemory.cpp
    A lldb/test/Shell/Commands/command-memory-region.test

  Log Message:
  -----------
  [lldb] Fix error when running "memory region --all" repeatedly (#177176)

Due to some faulty logic, if you ran "memory region --all" twice, the
second time lldb would try to repeat the command. There's nothing to
repeat, so it failed with an error. It should treat each "--all" use as
starting from scratch.

The logic here was written in a confusing way, so I've refactored it to
first look at how many arguments there are (aka how many address
expressions there are) and then validate based on that.

For reasons unknown, I could not reproduce this issue using the API test
TestMemoryRegion.py. So I have added a shell test that I confirmed does
fail without this fix.


  Commit: b33d4684e235b8f92f5d9df007af167275968acc
      https://github.com/llvm/llvm-project/commit/b33d4684e235b8f92f5d9df007af167275968acc
  Author: Kadir Cetinkaya <kadircet at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp

  Log Message:
  -----------
  [include-cleaner] Update main-file checking in htmlreport generation

We updated how walkUsed decides if a location belongs to mainfile in
51ee583b1a02b6a4dce86dbe36af91ec60d45137 but forgot to update html
report generation.


  Commit: 3ed48305ab19bf0090d2ca714a37dd7b0667b6c2
      https://github.com/llvm/llvm-project/commit/3ed48305ab19bf0090d2ca714a37dd7b0667b6c2
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/xqcibm-insert.ll

  Log Message:
  -----------
  [RISCV] Run combineOrToBitfieldInsert after DAG legalize (#177830)

Not combing `OR` into `QC.INSB(I)` before DAG legalization helps known
bits analysis to simplify the code if possible.


  Commit: 77ae87ac07c0695801e37d14b5d12185f6863d09
      https://github.com/llvm/llvm-project/commit/77ae87ac07c0695801e37d14b5d12185f6863d09
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/python/mlir/dialects/gpu/__init__.py
    M mlir/test/python/dialects/gpu/dialect.py

  Log Message:
  -----------
  [mlir][python] Add `cluster_size` to `gpu.launch_func` python binding (#177811)


  Commit: 7d887bccc9bc5d493f8aeb558275ce24f520f2c2
      https://github.com/llvm/llvm-project/commit/7d887bccc9bc5d493f8aeb558275ce24f520f2c2
  Author: Kashika Akhouri <akhourik at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add suggestion and inference for implicit this (#176703)

This PR implements support for automatically suggesting and inferring
`[[clang::lifetimebound]]` annotations for the implicit `this`.

The analysis now models the implicit this object as an implicit
parameter that carries a "placeholder loan" from the caller's scope. By
tracking this loan through the method body, the analysis can identify if
this reaches an escape point, such as a return statement.

Key Changes:
- Updated `PlaceholderLoan` to hold a union of `ParmVarDecl*` and
`CXXMethodDecl*`
- Extended `OriginManager` to handle `CXXThisExpr` and create a
dedicated origin list for the implicit this parameter
- Modified `FactsGenerator::issuePlaceholderLoans` to create a
placeholder loan for this at the entry of non-static member functions
- Updated `implicitObjectParamIsLifetimeBound` in
`LifetimeAnnotations.cpp` to check for the attribute on the method
declaration itself
- Added logic to skip implicit methods and standard assignment operators
to avoid redundant warnings on boilerplate code

Example:
```cpp
struct ReturnsSelf {
  const ReturnsSelf& get() const {    
    return *this;                     
  }
};

void test_get_on_temporary() {
  const ReturnsSelf& s_ref = ReturnsSelf().get();
  (void)s_ref;
}
```

Warning:
```
a7.cpp:5:33: warning: implict this in intra-TU function should be marked [[clang::lifetimebound]] [-Wexperimental-lifetime-safety-intra-tu-suggestions]
    5 |   const ReturnsSelf& get() const {    
      |                      ~~~        ^
      |                                  [[clang::lifetimebound]]
a7.cpp:6:12: note: param returned here
    6 |     return *this;                     
      |            ^~~~~
a7.cpp:11:30: warning: temporary bound to local reference 's_ref' will be destroyed at the end of the full-expression [-Wdangling]
   11 |   const ReturnsSelf& s_ref = ReturnsSelf().get();
      |                              ^~~~~~~~~~~~~
```

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


  Commit: 5b4811eddb28264ef1ccacc93c0f7d8cb0da31c8
      https://github.com/llvm/llvm-project/commit/5b4811eddb28264ef1ccacc93c0f7d8cb0da31c8
  Author: Julian Pokrovsky <raventid at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    A llvm/test/CodeGen/AArch64/GlobalISel/combine-constant-fold-fp-rounding.mir

  Log Message:
  -----------
  [GlobalIsel] Enabling more rules for fp constant folding (#177902)

This PR extends GlobalISel to enable additional compile time constant
foldings

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


  Commit: 7d60fe3cbd564ed2defdbe96472230ae2afe8115
      https://github.com/llvm/llvm-project/commit/7d60fe3cbd564ed2defdbe96472230ae2afe8115
  Author: Jannick Kremer <jannick.kremer at mailbox.org>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [libclang/python] Add deprecation warnings to CompletionChunk.isKind methods (#177854)

This adresses point 3 from
https://github.com/llvm/llvm-project/issues/156680.

---------

Co-authored-by: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>


  Commit: 28bf8369c676c05f4d8a0bd189109cb98342bb8b
      https://github.com/llvm/llvm-project/commit/28bf8369c676c05f4d8a0bd189109cb98342bb8b
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-i1-add-reduce.ll

  Log Message:
  -----------
  [AArch64][SDAG] Combine vecreduce.add(ZExt(predicate)) into cntp(predicate) (#176935)

This folds `vecreduce.add(ZExt(predicate))` into `cntp(predicate)`
before type legalization expands the "ZExt" for illegal types.


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

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

  Log Message:
  -----------
  [NFC][HLSL] Remove useless GEP (#177584)

This code was adding a GEP which was constant folded anyway. Removed it.


  Commit: f4d41a4efb2359a54a3879cd056db2fdb5082b80
      https://github.com/llvm/llvm-project/commit/f4d41a4efb2359a54a3879cd056db2fdb5082b80
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py
    M lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h

  Log Message:
  -----------
  [lldb-dap] Fix the completion provided to the DAP client. (#177151)

Previously, completion behavior was inconsistent,
sometimes including the partial token or removing existing user text.
Since LLDB completions includes the partial token by default, we now
strip it before sending to the client.

The completion heuristic:
1. Strip the commandEscapePrefix
2. Request completions from the debugger
3. Get the line at cursor position
4. Calculate the length of any partial token
5. Offset each completion by the partial token length

In all cases, the completion starts from the cursor position. then
offsets by `Length` to the left and inserts the completion.

Examples (single quotes show whitespace and are not part of the input):
```md
| Input      | Partial Token | Length | Completion    |
|------------|---------------|--------|---------------|
| m          | m             | 1      | memory        |
| `m         | m             | 1      | memory        |
| myfoo.     | myfoo.        | 6      | myfoo.method( |
| myfoo.fi   | myfoo.fi      | 7      | myfoo.field   |
| myfoo. b   | b             | 1      | myfoo. bar    |
| 'memory '  |               | 0      | memory read   |
| memory     | memory        | 6      | memory        |
| settings s | s             | 1      | settings show |
```

Fixes #176424


  Commit: 02232b9a61b1a134e0c42f74f26135d17f957dd5
      https://github.com/llvm/llvm-project/commit/02232b9a61b1a134e0c42f74f26135d17f957dd5
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp

  Log Message:
  -----------
  [CoroFrame][NFC] Remove code duplication in insertSpills (#177367)

This commit removes a duplicated loop looking through loads when finding
dbg records associated with a Value.


  Commit: 1d316ef4ba71d843f1e49f86e831dbf8c64ebd83
      https://github.com/llvm/llvm-project/commit/1d316ef4ba71d843f1e49f86e831dbf8c64ebd83
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Lex/PPDirectives.cpp
    M clang/test/Preprocessor/embed___has_embed_parsing_errors.c

  Log Message:
  -----------
  [Clang] prevent assertion in __has_embed parameter recovery at end-of-directive (#175104)

Fixes #175088

---

This PR addresses an assertion failure in the preprocessor triggered
when `__has_embed` parameter parsing reaches end-of-directive while
expecting a parenthesized argument.


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

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

  Log Message:
  -----------
  [X86] Rename lowerX86FPLogicOp -> combineX86FPLogicOp. NFC. (#177937)

This hasn't been part of lowering for a long time


  Commit: dbd87270885d1a23edab75ca6b840f209dac2134
      https://github.com/llvm/llvm-project/commit/dbd87270885d1a23edab75ca6b840f209dac2134
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU][NFC] Refine the representation of MODE register values. (#177574)

- Eliminate the field masks.
- Segregate the encoding logic.
- Simplify and clarify the user code.

This is supposed to help updating downstream branches where we
have a more advanced version of the same facility.


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

  Changed paths:
    M clang/lib/AST/ByteCode/Pointer.cpp
    A clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp

  Log Message:
  -----------
  [clang][bytecode] Relax assertions in Pointer::{begin,end}Lifetime (#177906)

We could get here for array roots, for which the assertion doesn't
necessarily hold.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/pclmulqdq.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - concat(scalar_to_vector(extractelt(x,0)),scalar_to_vector(extractelt(y,0))) -> concat(x,y) (#177930)

Peek through free scalar_to_vector/extract_vector_elt pairs (of the same
vector width) that might still persist (ideally a better topological
sorting would have removed these already....)


  Commit: 3c0f5045e103a9d7fd7eb59a0e0b201cb26ccb97
      https://github.com/llvm/llvm-project/commit/3c0f5045e103a9d7fd7eb59a0e0b201cb26ccb97
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/GCNProcessors.td
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SMInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/test/CodeGen/AMDGPU/occupancy-levels.ll
    A llvm/test/MC/AMDGPU/gfx13_smem.s

  Log Message:
  -----------
  [AMDGPU] Add FeatureGFX13 and SMEM encoding for gfx13 (#177567)

For now list of features is based on gfx12 and gfx1250

---------

Co-authored-by: Jay Foad <jay.foad at amd.com>


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/pr177923.ll

  Log Message:
  -----------
  [X86] combineX86FPLogicOp - attempt to fold FAND/FOR/FXOR scalar nodes if they are constant or contain UNDEFs (#177947)

Fixes #177923


  Commit: c5cb48c39701086393d1177929a328868849fc72
      https://github.com/llvm/llvm-project/commit/c5cb48c39701086393d1177929a328868849fc72
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/gfx90a/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclc.bc
    M clang/test/Driver/opencl-libclc.cl
    M libclc/CMakeLists.txt
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc] Rework libclc naming convention to use the triple (#177465)

Summary:
Right now all these libraries are installed in the `libclc/` directory
in the compiler's resource directory. We should instead follow the
per-target approach and install it according to the triple. The
sub-architectures will be put in a subdirectory as well.

I will do refactorings on this later to remove all the redundant targets
and pull this into common handling.

Also we should accept `--libclc-lib` without an argument to just find it
by default. I don't know what the plan here is since AMDGCN is the only
triple that uses this flag.


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

  Changed paths:
    M llvm/lib/Support/APInt.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Make `clmul` optimal (#177916)

Normally I would push back on implementations that take O(BitWidth)
steps, but since the corresponding APInt function already takes
O(BitWidth) steps, this KnownBits function is no worse in that regard.

Also add the same early-out optimization to both the APInt function and
the KnownBits function.


  Commit: 763919acc99b9d8ecb5af6ac516dfbd06cbe35c7
      https://github.com/llvm/llvm-project/commit/763919acc99b9d8ecb5af6ac516dfbd06cbe35c7
  Author: Karol Zwolak <karolzwolak7 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/IR/ConstantFold.cpp
    A llvm/test/Transforms/InstSimplify/fold-bfloat-half-bitcasts.ll

  Log Message:
  -----------
  [ConstantFold] constant fold bfloat <-> half bitcasts (#177663)


  Commit: 3d54f053cd2fec25f70f1fe3fd88c0720c0ea6ef
      https://github.com/llvm/llvm-project/commit/3d54f053cd2fec25f70f1fe3fd88c0720c0ea6ef
  Author: Viktoria Maximova <viktoria.maksimova at intel.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVCombinerHelper.cpp

  Log Message:
  -----------
  [NFC][SPIR-V] Avoid null pointer dereference (#177952)

The issue is found by static code analysis tool.

We expect scalar result type is determined in `getDotProductVectorType`.
Per discussion:
https://github.com/llvm/llvm-project/pull/172050#pullrequestreview-3692008084


  Commit: ad207cc2ed5d5c153e5e4742a54af88dc98d8e5d
      https://github.com/llvm/llvm-project/commit/ad207cc2ed5d5c153e5e4742a54af88dc98d8e5d
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/ProgressEvent.cpp

  Log Message:
  -----------
  [lldb-dap] Join the ProgressEventReporter thread if possible (#176984)

It is not easily noticeable because it mostly happens when ending the
debug session.


  Commit: 9be7c1037f26146e469c85061d6685a9172c5de9
      https://github.com/llvm/llvm-project/commit/9be7c1037f26146e469c85061d6685a9172c5de9
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp

  Log Message:
  -----------
  [flang][Lower] Fix UB in location handling (#177944)

Previously `prov` received the address of a variable allocated in stack
memory (the contents of `include`). `prov` would then access that memory
outside of the lifetime of that stack allocation: leading to UB.

This only manifested on thinLTO builds. No added test because
flang/test/Lower/location.f90 covers it (when thinLTO is enabled) and
there are bots guarding the thin-lto configuration.

Fixes #156629
Fixes #176404


  Commit: 8f64d44ab4df06f9613152a5187615672f8d5359
      https://github.com/llvm/llvm-project/commit/8f64d44ab4df06f9613152a5187615672f8d5359
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/side-effect.cpp

  Log Message:
  -----------
  [CIR] Apply 'side-effect' attribute logic to the function as well. (#177242)

Previous efforts in both the incubator and upstreamed added the 'pure'
and 'const' attribute lowering to calls. This patch completes that
effort by making it also appear on functions with this attribute.


  Commit: 5821b324f69ddcf381fa4c72bb01b512d02bc2a4
      https://github.com/llvm/llvm-project/commit/5821b324f69ddcf381fa4c72bb01b512d02bc2a4
  Author: Yi-Chi Lee <55395582+yichi170 at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix shape inference for broadcast bias in transpose_conv2d and depthwise_conv2d (#177739)

Fix part of #175765 

Correct shape inference for `tosa.transpose_conv2d` and
`tosa.depthwise_conv2d` when the bias tensor has `BC == 1` based on the
specification.
Fix getting the bias shape in `transpose_conv2d` (it uses the shape of
the input tensor before).


  Commit: 535ec2e4e56bdf2cb2ebc501389a6472289a9e2f
      https://github.com/llvm/llvm-project/commit/535ec2e4e56bdf2cb2ebc501389a6472289a9e2f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-frame-offests.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll

  Log Message:
  -----------
  AArch64: Use poison more in legalization (#177919)

Convert many, but not all contexts creating new undefs
to use poison instead.


  Commit: d5f405558d8f7b6018d6f3a9f75b5ffa6ae82feb
      https://github.com/llvm/llvm-project/commit/d5f405558d8f7b6018d6f3a9f75b5ffa6ae82feb
  Author: Tim Corringham <timothy.corringham at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Sema/SemaHLSL.cpp
    A clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
    A clang/test/SemaHLSL/BuiltIns/f32tof16-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/f32tof16.ll
    A llvm/test/CodeGen/SPIRV/opencl/packhalf2x16-error.ll
    A llvm/test/CodeGen/SPIRV/packhalf2x16.ll

  Log Message:
  -----------
  [HLSL] Implement f32tof16() intrinsic (#172469)

Implement the f32tof16() intrinsic, DXIL and SPIRV codegen, and related
tests.

Fixes #99113

---------

Co-authored-by: Tim Corringham <tcorring at amd.com>


  Commit: 1bad00adc416bdad95f05a29d3527bdaa78c4c1f
      https://github.com/llvm/llvm-project/commit/1bad00adc416bdad95f05a29d3527bdaa78c4c1f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/AArch64/floatdp_1source.ll
    M llvm/test/CodeGen/AMDGPU/complex-folding.ll
    M llvm/test/CodeGen/AMDGPU/fabs-r600.ll
    M llvm/test/CodeGen/AMDGPU/fabs.f64.ll
    M llvm/test/CodeGen/AMDGPU/fabs.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs-r600.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.f64.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.ll
    M llvm/test/CodeGen/AMDGPU/r600-infinite-loop-bug-while-reorganizing-vector.ll
    M llvm/test/CodeGen/AMDGPU/schedule-if-2.ll
    M llvm/test/CodeGen/ARM/fabs-to-bfc.ll
    M llvm/test/CodeGen/ARM/fabss.ll
    M llvm/test/CodeGen/ARM/fparith.ll
    M llvm/test/CodeGen/ARM/vfp.ll
    M llvm/test/CodeGen/Hexagon/bit-extract-off.ll
    M llvm/test/CodeGen/Hexagon/opt-fabs.ll
    M llvm/test/CodeGen/Mips/f16abs.ll
    M llvm/test/CodeGen/Mips/fabs.ll
    M llvm/test/CodeGen/Mips/mips64-f128.ll
    M llvm/test/CodeGen/PowerPC/2008-07-15-Fabs.ll
    M llvm/test/CodeGen/PowerPC/fabs.ll
    M llvm/test/CodeGen/PowerPC/fnabs.ll
    M llvm/test/CodeGen/X86/fabs.ll
    M llvm/test/CodeGen/X86/fnabs.ll
    M llvm/test/CodeGen/X86/fp128-i128.ll
    M llvm/test/CodeGen/X86/pr2656.ll
    M llvm/test/CodeGen/X86/stack-align.ll

  Log Message:
  -----------
  [SDAG] Remove non-canonical fabs libcall handling (#177967)

This is a followup to https://github.com/llvm/llvm-project/pull/171288,
which removed lowering of libcalls to SDAG nodes for most libcalls that
get unconditionally canonicalized to intrinsics. This handles the
remaining fabs case, which I originally skipped due to larger test
impact.


  Commit: bc06ca2e90ac13b4ae43dfb4b1080070c52b92aa
      https://github.com/llvm/llvm-project/commit/bc06ca2e90ac13b4ae43dfb4b1080070c52b92aa
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp

  Log Message:
  -----------
  [lldb-dap][NFC] Fix typo. (#177972)


  Commit: 1db5d6410b07b73fc7ccc10bbffcdc83390735c7
      https://github.com/llvm/llvm-project/commit/1db5d6410b07b73fc7ccc10bbffcdc83390735c7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/R600ISelLowering.h
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.160bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.16bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.192bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.224bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.288bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.352bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.384bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.448bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.48bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.576bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.640bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.704bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.768bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/atomic_optimizations_global_pointer.ll
    M llvm/test/CodeGen/AMDGPU/br_cc.f16.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/calling-conventions.ll
    M llvm/test/CodeGen/AMDGPU/clamp-modifier.ll
    M llvm/test/CodeGen/AMDGPU/clamp.ll
    M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll
    M llvm/test/CodeGen/AMDGPU/dagcombine-fmul-sel.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector-16bit.ll
    M llvm/test/CodeGen/AMDGPU/extract_vector_elt-f16.ll
    M llvm/test/CodeGen/AMDGPU/fabs.f16.ll
    M llvm/test/CodeGen/AMDGPU/fadd-fma-fmul-combine.ll
    M llvm/test/CodeGen/AMDGPU/fadd.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcmp.f16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.bf16.ll
    M llvm/test/CodeGen/AMDGPU/fcopysign.f16.ll
    M llvm/test/CodeGen/AMDGPU/fdiv.f16.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/fmax3-maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/fmax3.ll
    M llvm/test/CodeGen/AMDGPU/fmax_legacy.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
    M llvm/test/CodeGen/AMDGPU/fmed3.ll
    M llvm/test/CodeGen/AMDGPU/fmin3-minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/fmin3.ll
    M llvm/test/CodeGen/AMDGPU/fmin_legacy.f16.ll
    M llvm/test/CodeGen/AMDGPU/fmul.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.ll
    M llvm/test/CodeGen/AMDGPU/fneg-combines.new.ll
    M llvm/test/CodeGen/AMDGPU/fneg-fabs.f16.ll
    M llvm/test/CodeGen/AMDGPU/fneg-modifier-casting.ll
    M llvm/test/CodeGen/AMDGPU/fneg.f16.ll
    M llvm/test/CodeGen/AMDGPU/fp-classify.ll
    M llvm/test/CodeGen/AMDGPU/fpext.f16.ll
    M llvm/test/CodeGen/AMDGPU/fpow.ll
    M llvm/test/CodeGen/AMDGPU/fptosi.f16.ll
    M llvm/test/CodeGen/AMDGPU/fract-match.ll
    M llvm/test/CodeGen/AMDGPU/freeze.ll
    M llvm/test/CodeGen/AMDGPU/frem.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/half.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.cos.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fma.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.fmuladd.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log10.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maximum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.maxnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.minnum.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.sin.f16.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.ll
    M llvm/test/CodeGen/AMDGPU/omod.ll
    M llvm/test/CodeGen/AMDGPU/repeated-divisor.ll
    M llvm/test/CodeGen/AMDGPU/roundeven.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.f16.ll
    M llvm/test/CodeGen/AMDGPU/select-fabs-fneg-extract.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/select-flags-to-fmin-fmax.ll
    M llvm/test/CodeGen/AMDGPU/select-phi-s16-fp.ll
    M llvm/test/CodeGen/AMDGPU/select.f16.ll
    M llvm/test/CodeGen/AMDGPU/strict_fpext.ll
    M llvm/test/CodeGen/AMDGPU/strict_fptrunc.ll
    M llvm/test/CodeGen/AMDGPU/strictfp_f16_abi_promote.ll
    M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
    M llvm/test/CodeGen/AMDGPU/v_mac.ll
    M llvm/test/CodeGen/AMDGPU/v_mac_f16.ll
    M llvm/test/CodeGen/AMDGPU/v_madak_f16.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fadd.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmax.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmin.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fminimum.ll
    M llvm/test/CodeGen/AMDGPU/vector-reduce-fmul.ll

  Log Message:
  -----------
  AMDGPU: Move softPromoteHalfType override to R600 only (#177419)

As expected the code is much worse, but more correct.
We could do a better job with source modifier management around
fp16_to_fp/fp_to_fp16.


  Commit: 99fab0106b428676c37154821d955797fe1786a3
      https://github.com/llvm/llvm-project/commit/99fab0106b428676c37154821d955797fe1786a3
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/kernel-args.ll

  Log Message:
  -----------
  R600: Remove softPromoteHalfType (#177420)

Also includes a kind of hacky, minimal change to avoid assertions
when softPromoteHalfType is removed to fix kernel arguments
lowered as f16. Half support was never really implemented
for r600, and there just happened to be a few incidental tests
which included a half argument (which were also not even meaningful,
since the function body just folded to nothing due to no callable
function support).


  Commit: 8302e8ae6694978806f94aca81cd31258db66169
      https://github.com/llvm/llvm-project/commit/8302e8ae6694978806f94aca81cd31258db66169
  Author: David Green <david.green at arm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/aarch64-tbz.ll

  Log Message:
  -----------
  [AArch64] Update aarch64-tbz.ll test. NFC


  Commit: a78b8328aa093cd242da16ddead446240b99a769
      https://github.com/llvm/llvm-project/commit/a78b8328aa093cd242da16ddead446240b99a769
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [LifetimeSafety] Add report on misuse of clang::noescape (#177260)

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


  Commit: cb043d78b348b3be66aa4309255fd7e6f71ce6db
      https://github.com/llvm/llvm-project/commit/cb043d78b348b3be66aa4309255fd7e6f71ce6db
  Author: Aleksandar Spasojevic <aleksandar.spasojevic at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    A llvm/test/DebugInfo/AMDGPU/wqm-wwm-debug-loc.ll

  Log Message:
  -----------
  [AMDGPU] Propagate debug locations to si-wqm instructions (#168573)

Debug metadata propagation in SIWholeQuadMode pass.


  Commit: 017f2bc181b9cc963f34ecea43186a632f3f4d23
      https://github.com/llvm/llvm-project/commit/017f2bc181b9cc963f34ecea43186a632f3f4d23
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
    M llvm/test/CodeGen/AMDGPU/av-split-dead-valno-crash.ll
    M llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/masked-load-vectortypes.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/no-fold-accvgpr-mov.ll
    A llvm/test/CodeGen/AMDGPU/phi-av-pressure.ll
    M llvm/test/CodeGen/AMDGPU/phi-vgpr-input-moveimm.mir
    M llvm/test/CodeGen/AMDGPU/promote-constOffset-to-imm.ll
    M llvm/test/CodeGen/AMDGPU/tuple-allocation-failure.ll

  Log Message:
  -----------
  [AMDGPU] Simplify legalization of PHI operands (#177352)

In practice when legalizeOperands is called on a PHI node, the result is
never an SGPR class and the operands are never subregs. Simplify the
code accordingly by using the result regclass for all the inputs. This
includes using an AV class where previously we picked either an AGPR or
VGPR class.


  Commit: e9ac1a3190c24bdf511cc262e40cdc56050aefac
      https://github.com/llvm/llvm-project/commit/e9ac1a3190c24bdf511cc262e40cdc56050aefac
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/test/API/functionalities/memory-region/TestMemoryRegion.py
    M lldb/test/API/tools/lldb-dap/completions/TestDAP_completions.py

  Log Message:
  -----------
  [lldb] Improve error and docs for repeating "memory region" (#177559)

"memory region" can be given an address once and then when repeated,
it will try to find a region just beyond the last one it printed.
This continues until the end of the address space.

Then it gives you an error showing the usage, which is odd because
you just saw a bunch of "memory region" with no options work.

So I've improved the error a bit to imply its to do with the repetition.
Then described the repeating behaviour in the help text.


  Commit: 1660ac58fa7341fe46c67d561bb4b13ee139da61
      https://github.com/llvm/llvm-project/commit/1660ac58fa7341fe46c67d561bb4b13ee139da61
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetLibraryInfo.h
    M llvm/test/Instrumentation/NumericalStabilitySanitizer/basic.ll

  Log Message:
  -----------
  [TLI] Update hasOptimizedCodegen() (#177975)

Remove libcalls that no longer have optimized codegen after recent
changes.


  Commit: a70a1f3965aa735c1dc7dc8b152a57a81e76f3ac
      https://github.com/llvm/llvm-project/commit/a70a1f3965aa735c1dc7dc8b152a57a81e76f3ac
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix mlir python build (#177980)

Fixes #169045 (2cc4d45715cdd5eb23df51a48d6fd95c37a2276a)


  Commit: 090a08d91b68a73e1856db5330f45d2935b0c831
      https://github.com/llvm/llvm-project/commit/090a08d91b68a73e1856db5330f45d2935b0c831
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/AArch64/fold-equivalent-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/AArch64/icmp-vector-reduce.ll
    A llvm/test/Transforms/VectorCombine/X86/fold-equivalent-reduction-cmp.ll
    M llvm/test/Transforms/VectorCombine/X86/icmp-vector-reduce.ll

  Log Message:
  -----------
  [VectorCombine] Switch vector or<->umax/and<->umin in comparisons (#177159)

Resolves #174500

In the transformation, we use either use one of these equivalences
directly or one of the trivial inferences of their combinations.

`or<->umax`

1. `or(X) == 0 <=> umax(X) == 0`
2. `or(X) == 1 <=> umax(X) == 1`
3. `sign(or(X)) == sign(umax(X))`

`and<->umin`

1. `and(X) == -1 <=> umin(X) == -1`
2. `and(X) == -2 <=> umin(X) == -2`
3. `sign(and(X)) == sign(umin(X))`

| Case | Proof |
|------|-------|
| a. `or(X) ==/!= 0 <-> umax(X) ==/!= 0` |
[proof](https://alive2.llvm.org/ce/z/t9kER4) |
| b. `or(X) s< 0 <-> umax(X) s< 0` |
[proof](https://alive2.llvm.org/ce/z/q67EXU) |
| c. `or(X) s> -1 <-> umax(X) s> -1` |
[proof](https://alive2.llvm.org/ce/z/vY-tUd) |
| d. `or(X) s< 1 <-> umax(X) s< 1` |
[proof](https://alive2.llvm.org/ce/z/d5izg3) |
| e. `or(X) ==/!= 1 <-> umax(X) ==/!= 1` |
[proof](https://alive2.llvm.org/ce/z/gSjvpk) |
| f. `or(X) s< 2 <-> umax(X) s< 2` |
[proof](https://alive2.llvm.org/ce/z/sGUV6c) |
| g. `and(X) ==/!= -1 <-> umin(X) ==/!= -1` |
[proof](https://alive2.llvm.org/ce/z/mSAs2p) |
| h. `and(X) s< 0 <-> umin(X) s< 0` |
[proof](https://alive2.llvm.org/ce/z/xnZeDT) |
| i. `and(X) s> -1 <-> umin(X) s> -1` |
[proof](https://alive2.llvm.org/ce/z/ea_tKG) |
| j. `and(X) s> -2 <-> umin(X) s> -2` |
[proof](https://alive2.llvm.org/ce/z/ewhAab) |
| k. `and(X) ==/!= -2 <-> umin(X) ==/!= -2` |
[proof](https://alive2.llvm.org/ce/z/nBBt62) |
| l. `and(X) s> -3 <-> umin(X) s> -3` |
[proof](https://alive2.llvm.org/ce/z/F3dsfz) |


  Commit: 3dfe7bc7fb9d2f85044325af060b5d4725ee3585
      https://github.com/llvm/llvm-project/commit/3dfe7bc7fb9d2f85044325af060b5d4725ee3585
  Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/include/mlir/IR/Diagnostics.h
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp

  Log Message:
  -----------
  [MLIR] Allowed streaming enums into an mlir::Diagnostic (#177959)

Prior to this change users had to manually call `stringifyEnum` or
`mlir::debugString` to bea ble to stream an enum value into a
diagnostic, e.g.

    op.emiError("Something went wrong: ")
        << mlir::some_dialect::stringifyEnum(some_enum);

The added overload allows streaming the value directly

    op.emitError("Something went wrong: ") << some_enum;


  Commit: d7666c675c59e92f4301f53c7da3bbba59cb80c6
      https://github.com/llvm/llvm-project/commit/d7666c675c59e92f4301f53c7da3bbba59cb80c6
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU][SILoadStoreOptimizer] Fix unused variable warning (#177969)

Fix unused variable warning that fires in SILoadStoreOptimizer.cpp when
assertions are disabled. On review, we can just delete the whole assert,
since it isn't querying the def anymore. Fixes #176816
(13b20e7aeab83e82368be9ffd22ce02cb9b831ae).


  Commit: b0ce26c320ec09940442ded28d7771043639377e
      https://github.com/llvm/llvm-project/commit/b0ce26c320ec09940442ded28d7771043639377e
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/rename_check.py
    M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py

  Log Message:
  -----------
  [clang-tidy][NFC] Run ruff over python scripts (#176927)

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: a150e8081ac2b4c7c056b0290afb88b9a01d7a1d
      https://github.com/llvm/llvm-project/commit/a150e8081ac2b4c7c056b0290afb88b9a01d7a1d
  Author: Ayush Kumar Gaur <132849148+Ayush3941 at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Avoid crash in constexpr wcslen on invalid argument… (#177891)

### What the problem ?

Fix a clang bytecode constant interpreter crash when evaluating
wcslen("x") in a constant-expression path.

Previously we asserted on wchar element size mismatch and crashed in
assertion builds.

### Why it happened

The expression is already ill-typed (char[2] → const wchar_t*), clang
correctly emits a diagnostic, but later ICE checking tries to fold the
expression and reaches the builtin handler. That path must not crash.

### whats the Fix

Replace the assert(ElemSize == wchar_t size) with a graceful failure
(return false / emit appropriate diagnostic) when element sizes don’t
match, so evaluation stops safely.

### how to Test it

Add a regression test that triggers ICE checking with
-fexperimental-new-constant-interpreter and ensures clang does not crash
(verifies it reports the type error / static_assert failure instead).

Fixes #177844.

<img width="1366" height="768" alt="Screenshot_2026-01-25_22_07_50"
src="https://github.com/user-attachments/assets/488dd0b0-3c17-4f45-b2d0-9339b8fd3409"
/>

where wclen_crash.c is 

`
#include <wchar.h>

static_assert(wcslen("x") == 'x');
int main() {}
`

---------

Co-authored-by: Timm Baeder <tbaeder at redhat.com>


  Commit: 2c9efd0177910753008767a8c50e62f676721443
      https://github.com/llvm/llvm-project/commit/2c9efd0177910753008767a8c50e62f676721443
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    R clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/gfx90a/libclc.bc
    R clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclc.bc
    M clang/test/Driver/opencl-libclc.cl
    M libclc/CMakeLists.txt
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  Revert "[libclc] Rework libclc naming convention to use the triple (#177465)"

This reverts commit c5cb48c39701086393d1177929a328868849fc72.

This was causing CMake configuration failures for the postsubmit
buildbot checking the premerge configuration:
```
2026-01-26T13:46:47.849060051Z CMake Error at /home/gha/llvm-project/libclc/cmake/modules/AddLibclc.cmake:407 (add_custom_command):
2026-01-26T13:46:47.849086795Z   Attempt to add a custom rule to output
2026-01-26T13:46:47.849088339Z
2026-01-26T13:46:47.849090228Z     /home/gha/llvm-project/build/lib/clang/23/lib/r600--/libclc.bc.rule
2026-01-26T13:46:47.849101045Z
2026-01-26T13:46:47.849103110Z   which already has a custom rule.
2026-01-26T13:46:47.849104522Z Call Stack (most recent call first):
2026-01-26T13:46:47.849106013Z   /home/gha/llvm-project/libclc/CMakeLists.txt:460 (add_libclc_builtin_set)
2026-01-26T13:46:47.849107043Z
2026-01-26T13:46:47.849108005Z
2026-01-26T13:46:47.851329201Z CMake Error at /home/gha/llvm-project/libclc/cmake/modules/AddLibclc.cmake:407 (add_custom_command):
2026-01-26T13:46:47.851341592Z   Attempt to add a custom rule to output
2026-01-26T13:46:47.851343793Z
2026-01-26T13:46:47.851346484Z     /home/gha/llvm-project/build/lib/clang/23/lib/r600--/libclc.bc.rule
2026-01-26T13:46:47.851348290Z
2026-01-26T13:46:47.851350814Z   which already has a custom rule.
2026-01-26T13:46:47.851352774Z Call Stack (most recent call first):
2026-01-26T13:46:47.851354795Z   /home/gha/llvm-project/libclc/CMakeLists.txt:460 (add_libclc_builtin_set)
2026-01-26T13:46:47.851356284Z
2026-01-26T13:46:47.851357807Z
2026-01-26T13:46:47.853361832Z CMake Error at /home/gha/llvm-project/libclc/cmake/modules/AddLibclc.cmake:407 (add_custom_command):
2026-01-26T13:46:47.853368044Z   Attempt to add a custom rule to output
2026-01-26T13:46:47.853369290Z
2026-01-26T13:46:47.853370974Z     /home/gha/llvm-project/build/lib/clang/23/lib/r600--/libclc.bc.rule
2026-01-26T13:46:47.853372068Z
2026-01-26T13:46:47.853373338Z   which already has a custom rule.
2026-01-26T13:46:47.853374637Z Call Stack (most recent call first):
2026-01-26T13:46:47.853376034Z   /home/gha/llvm-project/libclc/CMakeLists.txt:460 (add_libclc_builtin_set)
2026-01-26T13:46:47.853377158Z
2026-01-26T13:46:47.853378154Z
2026-01-26T13:47:02.534691197Z -- Generating done (11.9s)
```

https://lab.llvm.org/staging/#/builders/192


  Commit: 38b7176c92f31c274226ff418891545046dcf1f0
      https://github.com/llvm/llvm-project/commit/38b7176c92f31c274226ff418891545046dcf1f0
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/kernel-args.ll

  Log Message:
  -----------
  Revert "R600: Remove softPromoteHalfType (#177420)"

This reverts commit 99fab0106b428676c37154821d955797fe1786a3.

llc was crashing in kernel-args.ll after this patch:
```
.---command stderr------------
| LLVM ERROR: Cannot select: t3: f32,ch = load<(non-temporal dereferenceable invariant load (s16), align 4, addrspace 7), sext from f16> t0, Constant:i32<36>, undef:i32
| In function: f16_arg
| PLEASE submit a bug report to https://github.com/llvm/llvm-project/issues/ and include the crash backtrace and instructions to reproduce the bug.
| Stack dump:
| 0.	Program arguments: /b/ml-opt-devrel-x86-64-b1/build/bin/llc -mtriple=r600 -mcpu=redwood
| 1.	Running pass 'Function Pass Manager' on module '<stdin>'.
| 2.	Running pass 'Unnamed pass: implement Pass::getPassName()' on function '@f16_arg'
|  #0 0x0000561402607438 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x81a7438)
|  #1 0x0000561402604b75 llvm::sys::RunSignalHandlers() (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x81a4b75)
|  #2 0x00005614026081b1 SignalHandler(int, siginfo_t*, void*) Signals.cpp:0:0
|  #3 0x00007f55eb45a050 (/lib/x86_64-linux-gnu/libc.so.6+0x3c050)
|  #4 0x00007f55eb4a8eec (/lib/x86_64-linux-gnu/libc.so.6+0x8aeec)
|  #5 0x00007f55eb459fb2 raise (/lib/x86_64-linux-gnu/libc.so.6+0x3bfb2)
|  #6 0x00007f55eb444472 abort (/lib/x86_64-linux-gnu/libc.so.6+0x26472)
|  #7 0x0000561402567005 llvm::report_fatal_error(llvm::Twine const&, bool) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x8107005)
|  #8 0x00005614023e7ba7 llvm::SelectionDAGISel::CannotYetSelect(llvm::SDNode*) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f87ba7)
|  #9 0x00005614023e6a7d llvm::SelectionDAGISel::SelectCodeCommon(llvm::SDNode*, unsigned char const*, unsigned int) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f86a7d)
| #10 0x00005614023dae94 llvm::SelectionDAGISel::DoInstructionSelection() (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f7ae94)
| #11 0x00005614023d9e6a llvm::SelectionDAGISel::CodeGenAndEmitDAG() (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f79e6a)
| #12 0x00005614023d7b5e llvm::SelectionDAGISel::SelectAllBasicBlocks(llvm::Function const&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f77b5e)
| #13 0x00005614023d4c30 llvm::SelectionDAGISel::runOnMachineFunction(llvm::MachineFunction&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f74c30)
| #14 0x00005614023d22e0 llvm::SelectionDAGISelLegacy::runOnMachineFunction(llvm::MachineFunction&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7f722e0)
| #15 0x0000561401611793 llvm::MachineFunctionPass::runOnFunction(llvm::Function&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x71b1793)
| #16 0x0000561401b790e5 llvm::FPPassManager::runOnFunction(llvm::Function&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x77190e5)
| #17 0x0000561401b80f72 llvm::FPPassManager::runOnModule(llvm::Module&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7720f72)
| #18 0x0000561401b79b56 llvm::legacy::PassManagerImpl::run(llvm::Module&) (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x7719b56)
| #19 0x00005613ff4858f4 compileModule(char**, llvm::SmallVectorImpl<llvm::PassPlugin>&, llvm::LLVMContext&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>>&) llc.cpp:0:0
| #20 0x00005613ff482ed3 main (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x5022ed3)
| #21 0x00007f55eb44524a (/lib/x86_64-linux-gnu/libc.so.6+0x2724a)
| #22 0x00007f55eb445305 __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x27305)
| #23 0x00005613ff47ea21 _start (/b/ml-opt-devrel-x86-64-b1/build/bin/llc+0x501ea21)
`-----------------------------
```


  Commit: 21dad8e5cc7d3d0f666835e4d7b3dd2f7315fffe
      https://github.com/llvm/llvm-project/commit/21dad8e5cc7d3d0f666835e4d7b3dd2f7315fffe
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    A llvm/test/CodeGen/MIR/AMDGPU/s_wait_alu_missing_operand_crash.mir

  Log Message:
  -----------
  [AMDGPU] Improve crash message when S_WAITCNT_DEPCTR is missing its operand (#177065)

The code in the test is causing a crash in `SIInstrInfo.cpp`
`fixImplicitOperands()` in `MI.implicit_operands()`:
```
  for (auto &Op : MI.implicit_operands()) {
```
MachineInstr.h:
```
  mop_range implicit_operands() {
=>  return operands_impl().drop_front(getNumExplicitOperands());
  }
```
We are trying to drop 1 operand from the operands of MI which are 0.

By early returning we are no longer crashing at that point and we are
getting a more meaningful error message:

```
*** Bad machine code: Too few operands ***
- function:    missing_operand_crash
- basic block: %bb.0  (0x5a9d30ced988)
- instruction: S_WAITCNT_DEPCTR
1 operands expected, but 0 given.
```

The code is still crashing at a different location, but at least we are
getting an error message.


  Commit: 4dd7535ca88102249a415f4cdab8769410f08509
      https://github.com/llvm/llvm-project/commit/4dd7535ca88102249a415f4cdab8769410f08509
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    A clang/test/CIR/CodeGen/address-of.cpp

  Log Message:
  -----------
  [CIR] Upstream addressof builtin (#177860)

Upstream the addressof builtin


  Commit: d43b29fc545d702b35b20802f92357bc4c4177fe
      https://github.com/llvm/llvm-project/commit/d43b29fc545d702b35b20802f92357bc4c4177fe
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add a tablegen base class for RVInstV* to reduce duplication. NFC (#177898)


  Commit: b19238d0d0a7d026de8e2ad28775db57afccb01d
      https://github.com/llvm/llvm-project/commit/b19238d0d0a7d026de8e2ad28775db57afccb01d
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/docs/BoundsSafety.rst

  Log Message:
  -----------
  [BoundsSafety] Small fixes to BoundsSafety.rst (#177961)

While reading the doc I noticed a few things that weren't rendered right
in the html output.


  Commit: 10b539f13eae2db79c3dc27dec3a6c5ca75542f8
      https://github.com/llvm/llvm-project/commit/10b539f13eae2db79c3dc27dec3a6c5ca75542f8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  InstCombine: Try SimplifyDemandedBits on copysign signs (#177942)


  Commit: 28fc4f1d96d61b15d23de5bf1ef94992be26231a
      https://github.com/llvm/llvm-project/commit/28fc4f1d96d61b15d23de5bf1ef94992be26231a
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/RISCV/fold-equivalent-reduction-cmp.ll
    A llvm/test/Transforms/VectorCombine/RISCV/fold-signbit-reduction-cmp.ll
    A llvm/test/Transforms/VectorCombine/RISCV/icmp-vector-reduce.ll
    M llvm/test/Transforms/VectorCombine/X86/fold-equivalent-reduction-cmp.ll

  Log Message:
  -----------
  [VectorCombine] Call cost calculation with correct intrinsic IDs (#177996)

#175194, #177159, and #173069 introduced the code calling
`TTI.getMinMaxReductionCost` with unexpected `Intrinsic::ID` causing
RISC-V to fail with `llvm_unreachable` panic.

Functionally, this is a small fix that also ports tests for the
aforementioned folds to RISCV.


  Commit: 29fd8686914d8de51851e776606003464790e938
      https://github.com/llvm/llvm-project/commit/29fd8686914d8de51851e776606003464790e938
  Author: Argyrios Kyrtzidis <kyrtzidis at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CAS/BuiltinUnifiedCASDatabases.h
    M llvm/include/llvm/CAS/OnDiskGraphDB.h
    M llvm/include/llvm/CAS/UnifiedOnDiskCache.h
    A llvm/include/llvm/CAS/ValidationResult.h
    M llvm/lib/CAS/ActionCaches.cpp
    M llvm/lib/CAS/BuiltinCAS.cpp
    M llvm/lib/CAS/BuiltinCAS.h
    M llvm/lib/CAS/BuiltinUnifiedCASDatabases.cpp
    M llvm/lib/CAS/OnDiskCAS.cpp
    M llvm/lib/CAS/OnDiskGraphDB.cpp
    M llvm/lib/CAS/UnifiedOnDiskCache.cpp
    M llvm/unittests/CAS/ActionCacheTest.cpp
    M llvm/unittests/CAS/BuiltinUnifiedCASDatabasesTest.cpp
    M llvm/unittests/CAS/CASTestConfig.cpp
    M llvm/unittests/CAS/CASTestConfig.h
    M llvm/unittests/CAS/ObjectStoreTest.cpp
    M llvm/unittests/CAS/UnifiedOnDiskCacheTest.cpp

  Log Message:
  -----------
  [llvm/CAS] Improve layering and decouple `UnifiedOnDiskCache` from the builtin hash implementation (#177280)


  Commit: 1d74db7e8d6a211fe421a02275eae1756c8d40fe
      https://github.com/llvm/llvm-project/commit/1d74db7e8d6a211fe421a02275eae1756c8d40fe
  Author: Ben Dunbobbin <Ben.Dunbobbin at sony.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    A cross-project-tests/dtlto/link-savetemps.test
    A cross-project-tests/dtlto/local_codegen_and_wait.py
    A cross-project-tests/dtlto/savetemps-lock.test
    A cross-project-tests/dtlto/savetemps.test
    M cross-project-tests/dtlto/signal.test
    A cross-project-tests/dtlto/test_temps.py
    M lld/COFF/LTO.cpp
    M lld/ELF/LTO.cpp
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/lib/DTLTO/DTLTO.cpp

  Log Message:
  -----------
  [DTLTO] Make temporary file handling consistent (#176807)

DTLTO emits temporary files to allow distribution of archive member
inputs.

It also emits temporary files from the ThinLTO backend, such as the
index files needed for each distributed ThinLTO backend compilation.

This change brings archive member temporary files into line with those
produced by the ThinLTO backend. They are now emitted in the same
location, warnings are emitted if they cannot be deleted, and they are
cleaned up on abnormal exit (e.g. Ctrl-C). All temporary files are
preserved when --save-temps is specified.

The existing signal-handling test has been extended to cover the full
set of DTLTO temporary files, and a new test has been added to exercise
temporary file handling in normal operation. Additionally, a minimal
test has been added to show the COFF behaviour.

SIE Internal tracker: TOOLCHAIN-21022


  Commit: 62339468e070d7f9f9b577a745aa4126852e21fc
      https://github.com/llvm/llvm-project/commit/62339468e070d7f9f9b577a745aa4126852e21fc
  Author: h-vetinari <h.vetinari at gmx.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__exception/exception_ptr.h

  Log Message:
  -----------
  [libc++] Do not redefine _LIBCPP_AVAILABILITY_HAS_INIT_PRIMARY_EXCEPTION  (#177851)

Review in #176857 asked to remove this block and make
_LIBCPP_AVAILABILITY_HAS_INIT_PRIMARY_EXCEPTION similar
to the other availability macros. This patch does this.


  Commit: c0ae6c91bfe7dc54ff4f19acd24719c258639c60
      https://github.com/llvm/llvm-project/commit/c0ae6c91bfe7dc54ff4f19acd24719c258639c60
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    A libcxx/test/libcxx/utilities/optional/optional.object/optional.iterator/assert.bounded_iterator.pass.cpp
    M libcxx/utils/libcxx/test/features/libcxx_macros.py

  Log Message:
  -----------
  [libc++] Add assertion tests for optional bounded iterator (#176597)

These were missed when implementing `optional` iterator.


  Commit: bd3ecdc59bb69a5528dee06f1e47c733bb89a25f
      https://github.com/llvm/llvm-project/commit/bd3ecdc59bb69a5528dee06f1e47c733bb89a25f
  Author: Cheng Lingfei <53817093+clingfei at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/f16sqrtl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/f16sqrtl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/f16sqrtl.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 f16sqrtl to Header Only. (#176333)

builds correctly with both `clang`, `gcc`, `cmake`, and `Bazel`.

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


  Commit: 8805e273657cd9eee097aee33ee6f49055cc81e2
      https://github.com/llvm/llvm-project/commit/8805e273657cd9eee097aee33ee6f49055cc81e2
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Cleanup: Use unique_ptr for WCG and remove unnecessary class members (#177689)


  Commit: d6dbf7876c8fa2bbd41f2df5a12e6bc89d613960
      https://github.com/llvm/llvm-project/commit/d6dbf7876c8fa2bbd41f2df5a12e6bc89d613960
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h

  Log Message:
  -----------
  [TTI] Fix comment for 'bool UnrollVectorizedLoop = false;' (NFC). (#177880)


  Commit: e4dc7034f8637fa7579677182a696a945444caab
      https://github.com/llvm/llvm-project/commit/e4dc7034f8637fa7579677182a696a945444caab
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/ordering/TestDataFormatterStdOrdering.py

  Log Message:
  -----------
  [lldb] Add libcxx std::*_ordering summary providers (#174227)

Added libcxx std::*_ordering summary providers similar to #174195.


  Commit: c327d46d7961ad75de6beb916d254816ff947c40
      https://github.com/llvm/llvm-project/commit/c327d46d7961ad75de6beb916d254816ff947c40
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.fract.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.frexp.mant.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add frexp_mant/fract intrinsic RegBankLegalize r… (#177512)

…ules


  Commit: fc6a5ed1a4ed9a244539c59b195d1b73605561d7
      https://github.com/llvm/llvm-project/commit/fc6a5ed1a4ed9a244539c59b195d1b73605561d7
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/test/CodeGen/AArch64/stack-tagging-ex-1.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-split-lifetime.ll
    M llvm/test/CodeGen/AArch64/stack-tagging-untag-placement.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [HWASan] [MTE] use precise lifetimes even if they don't cover all exits

Previously, for performance reasons, we would only use precise lifetimes
if they cover all reachable exits. Now, if they do not, we use precise
lifetimes in addition to untagging at every exit that is not dominated
by them.

This is the behavior of ASan.

Reviewers: vitalybuka, pcc

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


  Commit: bcf6d5298a8c434fd3b9f4123098431a01d7d645
      https://github.com/llvm/llvm-project/commit/bcf6d5298a8c434fd3b9f4123098431a01d7d645
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/test/MC/RISCV/zibi-valid.s

  Log Message:
  -----------
  [RISCV] Test Zibi relocation type (#177896)

Zibi beqi/bnei (#127463) use a modified B-type format (replace `rs2`
with `cimm`) and reuse the R_RISCV_BRANCH relocation type.


  Commit: ecb1b0b90f172f608717058e9a2b2c2c61da8999
      https://github.com/llvm/llvm-project/commit/ecb1b0b90f172f608717058e9a2b2c2c61da8999
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/IRCore.cpp

  Log Message:
  -----------
  [MLIR][Python] Fix overly specific type annotation on PyValue.owner (#178003)


  Commit: c9e0cf139cc93f2f531900b401bf7b8cd51468fb
      https://github.com/llvm/llvm-project/commit/c9e0cf139cc93f2f531900b401bf7b8cd51468fb
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/test/CodeGen/AMDGPU/cvt_flr_i32_f32.ll
    M llvm/test/CodeGen/AMDGPU/cvt_rpi_i32_f32.ll
    M llvm/test/TableGen/GlobalISelEmitter/CustomPredicate.td
    M llvm/test/TableGen/GlobalISelEmitter/GlobalISelEmitter.td

  Log Message:
  -----------
  [AMDGPU] Update patterns for v_cvt_flr and v_cvt_rpi (#177962)

Support GlobalISel and switch to checking `nnan` flag on instruction
instead of TargetOptions.
    
Instruction are renamed to v_cvt_floor and v_cvt_nearest on gfx11+
so add gfx11 tests as well.


  Commit: 0ae2043baa1d8ab2262840fc2258c078dfdb85d2
      https://github.com/llvm/llvm-project/commit/0ae2043baa1d8ab2262840fc2258c078dfdb85d2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll

  Log Message:
  -----------
  AMDGPU: Disable machine verifier for gfx6 run line in test (#178008)

Hack around expensive checks failures for now.


  Commit: 674b020196060f8f5fdce5961fe3b69d7009a11d
      https://github.com/llvm/llvm-project/commit/674b020196060f8f5fdce5961fe3b69d7009a11d
  Author: Nemanja Ivanovic <nemanja.i.llvm at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    A llvm/test/CodeGen/RISCV/machine-outliner-call-reg-live-across.mir

  Log Message:
  -----------
  [RISC-V] Fix outliner candidate analysis (#177126)

When analyzing outliner candidates, there is no check that the tail-call
expansion register is live across the candidate call site. That can
result in a situation where the original function sets the volatile
register and uses it in the section that gets outlined. This of course
results in the use of the register receiving the incorrect value. Namely
the address of the outlined function since that is what the tail-call
sequence placed in the register.


  Commit: 6039b470905726ce4365a26783561fe4975db4d8
      https://github.com/llvm/llvm-project/commit/6039b470905726ce4365a26783561fe4975db4d8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/kernel-args.ll

  Log Message:
  -----------
  Reapply "R600: Remove softPromoteHalfType (#177420)" (#178013)

This reverts commit 38b7176c92f31c274226ff418891545046dcf1f0.


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

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/test/CodeGen/AMDGPU/amdgpu-simplify-libcall-pow.ll

  Log Message:
  -----------
  ValueTracking: Extract isKnownIntegral out of AMDGPU (#177912)

Also do some basic conversions to use SimplifyQuery and add tests to
show assume works in a new context.


  Commit: c4585b44b65d11fe00df120e344cbeddb600a3bb
      https://github.com/llvm/llvm-project/commit/c4585b44b65d11fe00df120e344cbeddb600a3bb
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/ProcessLaunchInfo.h
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Plugins/Platform/Windows/PlatformWindows.cpp
    M lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py

  Log Message:
  -----------
  [lldb][windows] do not attach to a PseudoConsole if it is not opened (#177934)

# Summary

This patch ensures lldb will not try to read from a PseudoConsole if it
has not been opened.

# Original issue

https://github.com/llvm/llvm-project/pull/168729 introduces support for
the Windows ConPTY in `lldb-dap`. This caused a regression in `lldb`
which was not caught by our tests:
https://github.com/llvm/llvm-project/issues/175652.

This patch fixes https://github.com/llvm/llvm-project/issues/175652.

`lldb_private::ProcessLauncherWindows::LaunchProcess` connects the
debuggee to a PseudoConsole only if:
```cpp
if (hPC != INVALID_HANDLE_VALUE && launch_info.GetNumFileActions() == 0 && launch_info.GetFlags().Test(lldb::eLaunchFlagLaunchInTTY))
```

lldb needs to check the same condition in
`lldb_private::PlatformWindows::DebugProcess` to ensure that it does not
read from a PseudoConsole which has not been opened.

# Side effect

This patch reverts what https://github.com/llvm/llvm-project/pull/168729
did by adding ConPTY support.
https://github.com/llvm/llvm-project/pull/175812 is the proper fix,
however it's causing tests failures which we can't reliably reproduce at
desk. Given https://github.com/llvm/llvm-project/pull/168729 breaks
`22.x` lldb, it's better to revert the change ahead of the release of
`22.x` rather than pushing for the proper fix.


  Commit: 7fd2056efaf4c2093a36151a60e9197e253ebc79
      https://github.com/llvm/llvm-project/commit/7fd2056efaf4c2093a36151a60e9197e253ebc79
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr-i32-index-width.ll
    M llvm/test/Analysis/ScalarEvolution/ptrtoaddr.ll

  Log Message:
  -----------
  [SCEV] Sink SCEVPtrToAddr to leaf SCEVUnknowns. (#174437)

Use CastSinkingRewriter for SCEVPtrToAddr expressions as well, sinking
them the same as SCEVPtrToInt expressions.

Depends on https://github.com/llvm/llvm-project/pull/174435 
and https://github.com/llvm/llvm-project/pull/158032.

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


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

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h

  Log Message:
  -----------
  [clang-tidy] Speed up `readability-container-contains` (#175121)

This is currently one of our most expensive checks according to
`--enable-check-profile`. I measured using [the usual
setup](https://github.com/llvm/llvm-project/pull/174357#issue-3780188615):
```sh
hyperfine \
    --shell=none \
    --prepare='cmake --build build/release --target clang-tidy' \
    './build/release/bin/clang-tidy --checks=-*,readability-container-contains all_headers.cpp -header-filter=.* -system-headers -- -std=c++23 -fno-delayed-template-parsing'
```

First, the status quo:
```txt
  Time (mean ± σ):      5.243 s ±  0.158 s    [User: 4.964 s, System: 0.248 s]
  Range (min … max):    5.133 s …  5.612 s    10 runs
```
This PR improves that in two independent commits. The first commit
changes the default traversal mode from `TK_AsIs` to
`TK_IgnoreUnlessSpelledInSource`. Result:
```txt
  Time (mean ± σ):      4.554 s ±  0.100 s    [User: 4.273 s, System: 0.248 s]
  Range (min … max):    4.442 s …  4.785 s    10 runs
```

The second commit merges all 12 of the check's `BinaryOperation`
matchers into one, because I found that each additional registered
`BinaryOperation` matcher has pretty extreme overhead. Result:
```txt
  Time (mean ± σ):      3.480 s ±  0.121 s    [User: 3.264 s, System: 0.186 s]
  Range (min … max):    3.400 s …  3.798 s    10 runs
```


  Commit: 680388a149cf91a8ff40a6328fdda3bcdeac0a65
      https://github.com/llvm/llvm-project/commit/680388a149cf91a8ff40a6328fdda3bcdeac0a65
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py

  Log Message:
  -----------
  [lldb-dap] Fix assertion on the recv thread. (#177977)

threading.current_thread is a function


  Commit: 4d460d6578c5f2558e478d4bcb82039c7153fc4f
      https://github.com/llvm/llvm-project/commit/4d460d6578c5f2558e478d4bcb82039c7153fc4f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.py

  Log Message:
  -----------
  [lldb][windows] fix ProcessSaveCoreTestCase.test_save_core_to_nonwritable_dir (#178016)

This patch fixes the
`ProcessSaveCoreTestCase.test_save_core_to_nonwritable_dir` test on
Windows.

This test fails on Windows because `os.chmod` does not work on Windows.
It was used to make the directory unwritable.

[`icacls`](https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/icacls)
can be used instead to block the directory.

This is a followup to https://github.com/llvm/llvm-project/pull/177496.


  Commit: 89e38d65d83d0c6887290080ec8b268d46af8590
      https://github.com/llvm/llvm-project/commit/89e38d65d83d0c6887290080ec8b268d46af8590
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts][NFC] Move static array definition (#178014)

Move the array out of the member function.


  Commit: 528c99df3ac09c7dd8043e6ceacca691280b60d8
      https://github.com/llvm/llvm-project/commit/528c99df3ac09c7dd8043e6ceacca691280b60d8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  ValueTracking: Use m_CheckedFp in isKnownIntegral (#178019)


  Commit: ac454a2706540e2957396c0eaeea1888b8e03934
      https://github.com/llvm/llvm-project/commit/ac454a2706540e2957396c0eaeea1888b8e03934
  Author: Yi-Chi Lee <55395582+yichi170 at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir

  Log Message:
  -----------
  [mlir][tosa] Guard pooling shape inference on unranked inputs (#177999)

Fix #177946

poolingInferReturnTypes didn't properly guard the unknown rank,
triggering an assertion in ShapeAdaptor::getDimSize.


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

  Changed paths:
    M libcxx/test/benchmarks/spec.gen.py
    A libcxx/utils/parse-time-output

  Log Message:
  -----------
  [libc++] Measure additional metrics when running SPEC benchmarks (#177669)

This patch adds support for measuring additional metrics like
max RSS, retired instructions and more when running the SPEC
benchmarks.

Fixes #177611


  Commit: 8092c997bca6eccf4bb0c281ab9a2c28a870f987
      https://github.com/llvm/llvm-project/commit/8092c997bca6eccf4bb0c281ab9a2c28a870f987
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/ordering/TestDataFormatterStdOrdering.py

  Log Message:
  -----------
  [lldb] Add MSVC STL std::*_ordering summary providers (#175070)

Added summary providers for std::*_ordering from MSVC STL


  Commit: c999e9a4fe8870f7943551d9ff8b575eb282d16d
      https://github.com/llvm/llvm-project/commit/c999e9a4fe8870f7943551d9ff8b575eb282d16d
  Author: Jonas Paulsson <paulson1 at linux.ibm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
    M llvm/lib/Target/SystemZ/SystemZCallingConv.td
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZInstrVector.td
    M llvm/lib/Target/SystemZ/SystemZOperators.td
    M llvm/lib/Target/SystemZ/SystemZRegisterInfo.td
    M llvm/test/CodeGen/SystemZ/atomic-memops.ll
    M llvm/test/CodeGen/SystemZ/canonicalize-vars.ll
    A llvm/test/CodeGen/SystemZ/fp-half-vector-binops.ll
    A llvm/test/CodeGen/SystemZ/fp-half-vector-conv.ll
    A llvm/test/CodeGen/SystemZ/fp-half-vector-fcmp-select.ll
    A llvm/test/CodeGen/SystemZ/fp-half-vector-mem.ll
    A llvm/test/CodeGen/SystemZ/fp-half-vector-move.ll
    R llvm/test/CodeGen/SystemZ/fp-half-vector.ll
    A llvm/test/CodeGen/SystemZ/vec-abi-01.ll
    A llvm/test/CodeGen/SystemZ/vec-abi-02.ll
    A llvm/test/CodeGen/SystemZ/vec-abi-03.ll
    A llvm/test/CodeGen/SystemZ/vec-abi-04.ll
    A llvm/test/CodeGen/SystemZ/vec-abi-05.ll
    M llvm/test/CodeGen/SystemZ/vec-cmp-09.ll
    M llvm/test/CodeGen/SystemZ/vec-eswap-01.ll
    M llvm/test/CodeGen/SystemZ/vec-eswap-02.ll
    M llvm/test/CodeGen/SystemZ/vec-move-04.ll
    M llvm/test/CodeGen/SystemZ/vec-move-05.ll
    M llvm/test/CodeGen/SystemZ/vec-move-07.ll
    M llvm/test/CodeGen/SystemZ/vec-move-10.ll
    M llvm/test/CodeGen/SystemZ/vec-move-12.ll
    M llvm/test/CodeGen/SystemZ/vec-perm-01.ll
    M llvm/test/CodeGen/SystemZ/vec-perm-03.ll

  Log Message:
  -----------
  [SystemZ] Support fp16 vector ABI and basic codegen. (#171066)

- Make v8f16 a legal type so that arguments can be passed in vector
registers. Handle fp16 vectors so that they have the same ABI as other
fp vectors.

- Set the preferred vector action for fp16 vectors to "split". This will
scalarize all operations, which is not always necessary (like with
memory operations), but it avoids the superfluous operations that result
after first widening and then scalarizing a narrow vector (like v4f16).

Fixes #168992


  Commit: 487b69ae0a952c23802548d23ef95ff178f510f4
      https://github.com/llvm/llvm-project/commit/487b69ae0a952c23802548d23ef95ff178f510f4
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/test/CodeGen/builtins-nvptx-ptx60.cu
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/nvptx_attributes.c
    M clang/test/CodeGenCUDA/convergent.cu
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/Headers/gpuintrin.c
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/test/Lower/OpenMP/target_cpu_features.f90
    M llvm/lib/Target/NVPTX/NVPTX.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/clusterlaunchcontrol-multicast.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
    M llvm/test/CodeGen/NVPTX/convert-sm103a.ll
    M llvm/test/CodeGen/NVPTX/f32-ex2.ll
    M llvm/test/CodeGen/NVPTX/fexp2.ll
    M llvm/test/CodeGen/NVPTX/flog2.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch-O0.ll
    A llvm/test/CodeGen/NVPTX/ptx-version-validation.ll
    M llvm/test/CodeGen/NVPTX/rsqrt.ll
    M llvm/test/CodeGen/NVPTX/sm-version.ll
    M llvm/test/CodeGen/NVPTX/surf-tex.py
    R llvm/test/CodeGen/NVPTX/wmma-ptx86-sm120a.py
    M mlir/include/mlir/Dialect/GPU/Pipelines/Passes.h
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td

  Log Message:
  -----------
  Reland "[NVPTX] Validate user-specified PTX version against SM version" (#177459)

Original commit message: 

> When users explicitly specify a PTX version via -mattr=+ptxNN that's
insufficient for their target SM, we now emit a fatal error. Previously,
we silently upgraded the PTX version to the minimum required for the
target SM.
>
>When no SM or PTX version is specified, we now use PTX 3.2 (the minimum
for the default SM 3.0) instead of PTX 6.0.

---

The following commits should fix the failures that arose when I
previously tried to land this commit:

- 9fc5fd0ad689eed94f65b1d6d10f9c5642935e68 should address the
`llvm-nvptx*-nvidia-*` build failures:
https://github.com/llvm/llvm-project/pull/174834#issuecomment-3742242651

- 600514a63760c6730e4cd970d2fcead9c5a897b3 should address the MLIR
failures


  Commit: d139a31c0dcedea7bfd9741898dae8e87cd6a1f7
      https://github.com/llvm/llvm-project/commit/d139a31c0dcedea7bfd9741898dae8e87cd6a1f7
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/test/CodeGen/AArch64/stack-tagging-split-lifetime.ll
    M llvm/test/Instrumentation/HWAddressSanitizer/use-after-scope.ll

  Log Message:
  -----------
  [HWASan] [MTE] allow lifetimes with multiple starts (#175608)


  Commit: dc5f905a87a9894ad473698cc00358c40883b278
      https://github.com/llvm/llvm-project/commit/dc5f905a87a9894ad473698cc00358c40883b278
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/test/Transforms/licm.fir

  Log Message:
  -----------
  [flang,openacc] Limit operations hoisting from acc.loop. (#177727)

This patch implements `OperationMoveOpInterface::canMoveOutOf()`
method for `acc.loop`, such that even Pure operations are not hoisted
by LICM if any of their operands are referenced in the data operands
of `acc.loop`. Related to #175108.


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

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

  Log Message:
  -----------
  [ConstraintElim] Strip IsKnownNonNegative (NFC) (#177993)

The IsKnownNonNegative field is redundant, as the use of ValueTracking's
isKnownNonNegative subsumes this.

Proof: https://github.com/dtcxzyw/llvm-opt-benchmark/pull/3390


  Commit: 693a018dcf08e8ec66419b65e71d016655ed76ce
      https://github.com/llvm/llvm-project/commit/693a018dcf08e8ec66419b65e71d016655ed76ce
  Author: Anikesh Parashar <106880513+an1k3sh at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logf.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] Refractor logf to Header only (#176834)

Resolves #175368


  Commit: df739ba008152707db83174ff78fe3e8ba5c0b60
      https://github.com/llvm/llvm-project/commit/df739ba008152707db83174ff78fe3e8ba5c0b60
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/GPUToNVVM/GPUToNVVM.td
    M mlir/lib/Conversion/GPUToROCDL/GPUToROCDL.td
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
    A mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-barrier.mlir
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
    M mlir/test/Dialect/GPU/canonicalize.mlir
    M mlir/test/Dialect/GPU/ops.mlir

  Log Message:
  -----------
  [mlir][gpu] Add address space modifier to gpu.barrier (#177425)

This is a takeover of PR ##110527

This commit adds an optional list of memory fences to gpu.barrier,
allowing users to specify which memory scopes they wish to fence
explicitly, while leaving the default semantics (which are equivalent to
calling for a global and local fence by analogy to CUDA's __syncthreads)
unchanged. The new expanded semantics are implemented for SPIR-V and for
the AMDGPU backend.

See also

https://discourse.llvm.org/t/rfc-add-memory-scope-to-gpu-barrier/81021/2?u=fmarno,
where the default behavior of a gpu.barrier was hashed out (though note
that the examples based on VMCNT are outdated for AMDGPU in that memory
fences can now be annotated with the correct set of address spaces).

This commit also deprecates amdgpu.lds_barrier for usecases that don't
involve targeting a gfx908.

Assisted-by: Cursor/Claude code (tests and extending amdgpu.lds_barrier
pattern while copying it over)

---------

Co-authored-by: Finlay Marno <finlay.marno at codeplay.com>
Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>
Co-authored-by: Alan Li <alan.li at me.com>


  Commit: 55979032401ebdb62085f677770fc6c5793b584e
      https://github.com/llvm/llvm-project/commit/55979032401ebdb62085f677770fc6c5793b584e
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M openmp/device/include/Synchronization.h
    M openmp/device/src/Synchronization.cpp

  Log Message:
  -----------
  [OpenMP] Cleanup synchronization primitives (#177710)

Summary:
These shouldn't be so different after we moved away from variants. It's
much simpler to define this in-line with a single preprocessor
definition. This should be equivalent less a few unnecessary function
definitions with the advantage that SPIR-V now has less work to do.


  Commit: 0926743e2eac0854ea80e60908f914cd15882fbd
      https://github.com/llvm/llvm-project/commit/0926743e2eac0854ea80e60908f914cd15882fbd
  Author: Artem Kroviakov <71938912+akroviakov at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    M mlir/test/Dialect/XeGPU/subgroup-distribute-unit.mlir

  Log Message:
  -----------
  [MLIR][XeGPU] Add uniform values distribution pattern (#176737)


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

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__config
    A libcxx/include/__configuration/attributes.h
    M libcxx/include/__configuration/language.h
    M libcxx/include/module.modulemap.in

  Log Message:
  -----------
  [libc++][NFC] Move attribute macros out of __config into a detail header (#176903)

This patch moves all macros which expand to attributes into a detail
header, including the relatively complex visibility and ABI-hiding
attributes. This also adds sections for attributes that are important to
not be ignored. At the bottom there is a catch-all section for
attributes which can safely be ignored and are only important for the
quality of implementation.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/R600ISelLowering.h
    M llvm/test/CodeGen/AMDGPU/kernel-args.ll

  Log Message:
  -----------
  R600: Really remove softPromoteHalfType (#178040)

This was the core change in #177420, which somehow got lost
before submitting.


  Commit: d23cb79ba497281de050ef609cb91b91058bf323
      https://github.com/llvm/llvm-project/commit/d23cb79ba497281de050ef609cb91b91058bf323
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/test/CodeGen/builtins-nvptx-ptx60.cu
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/nvptx_attributes.c
    M clang/test/CodeGenCUDA/convergent.cu
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M clang/test/Headers/gpuintrin.c
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/test/Lower/OpenMP/target_cpu_features.f90
    M llvm/lib/Target/NVPTX/NVPTX.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/clusterlaunchcontrol-multicast.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
    M llvm/test/CodeGen/NVPTX/convert-sm103a.ll
    M llvm/test/CodeGen/NVPTX/f32-ex2.ll
    M llvm/test/CodeGen/NVPTX/fexp2.ll
    M llvm/test/CodeGen/NVPTX/flog2.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch-O0.ll
    R llvm/test/CodeGen/NVPTX/ptx-version-validation.ll
    M llvm/test/CodeGen/NVPTX/rsqrt.ll
    M llvm/test/CodeGen/NVPTX/sm-version.ll
    M llvm/test/CodeGen/NVPTX/surf-tex.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx86-sm120a.py
    M mlir/include/mlir/Dialect/GPU/Pipelines/Passes.h
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td

  Log Message:
  -----------
  Revert "Reland "[NVPTX] Validate user-specified PTX version against SM version"" (#178046)

Reverts llvm/llvm-project#177459

`mlir-nvidia` and `mlir-nvidia-gcc7` Buildbots are failing. 

The blamelist is small and likely because of my change. Preemptively
reverting.


  Commit: 1251751c16e1119a303c3f766d6035369c2e2ef8
      https://github.com/llvm/llvm-project/commit/1251751c16e1119a303c3f766d6035369c2e2ef8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Consistently check ComputeReductionResult in prepareForEpi (NFCI)

Always use the information from ComputeReductionResult to identify
recurrence kinds when connecting main and epilogue plans. Connecting the
live-outs involves the reduction result computations, so it is natural
and more accurate to check the reduction result for the correct
structure.

Suggested cleanup from https://github.com/llvm/llvm-project/pull/170223


  Commit: 5786ca7bd0350df1e9ddb3bb58999a0f11723222
      https://github.com/llvm/llvm-project/commit/5786ca7bd0350df1e9ddb3bb58999a0f11723222
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/PhaseOrdering/X86/pr48223.ll

  Log Message:
  -----------
  [SLP]Model disjoint or reduction of shl(zext, (0, stride, 2* stride)) as bitcast

Patch models the cost and lowering of disjoint or reduction of shl(zext,
(0, stride, 2* stride)) as bitcast via modeling as combined ops.

Reviewers: RKSimon, hiraditya

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


  Commit: 2e5eb5d2122b159312cec44b07fb184b6b857239
      https://github.com/llvm/llvm-project/commit/2e5eb5d2122b159312cec44b07fb184b6b857239
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][NFC] Forward string observer functions when appropriate (#171120)

Instead of unwrapping the arguments to string's observer functions
everywhere, simply unwrap the specific argument and then forward all of
them to a single function which does the final unwrapping of `*this`.
This simplifies the code a bit.


  Commit: 7b917b9a08e2dac495fd9e83dc8cf152c8df6fde
      https://github.com/llvm/llvm-project/commit/7b917b9a08e2dac495fd9e83dc8cf152c8df6fde
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    A clang/test/Driver/darwin-depfile-sdksettings-maccatalyst.m
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp

  Log Message:
  -----------
  macCatalyst: add SDKSettings.json as a dependency file if its potentially needed by the compiler (#177748)

Co-authored-by: Alex Lorenz <arphaman at gmail.com>


  Commit: c3564b09f7f6c72af4cfa105091f3e7097d3b228
      https://github.com/llvm/llvm-project/commit/c3564b09f7f6c72af4cfa105091f3e7097d3b228
  Author: Peng Xie <helianthus547 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx23Issues.csv
    R libcxx/test/std/utilities/utility/mem.res/mem.res.monotonic.buffer/mem.res.monotonic.buffer.mem/allocate_in_geometric_progression.pass.cpp
    A libcxx/test/std/utilities/utility/mem.res/mem.res.monotonic.buffer/mem.res.monotonic.buffer.mem/allocate_mem.pass.cpp

  Log Message:
  -----------
  [libc++] Update the status for lwg-3143 (#116971)

Current implementation uses the larger one either requested bytes or
growth factor multiply previous buffer size.

This patch updates the status of LWG 3143 and adds a libc++-specific
test case to test geometric progression.

Close #104258


  Commit: 295d5484c09943d2af2c45c764157dc045d4a0d9
      https://github.com/llvm/llvm-project/commit/295d5484c09943d2af2c45c764157dc045d4a0d9
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/gfx90a/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclc.bc
    M clang/test/Driver/opencl-libclc.cl
    M libclc/CMakeLists.txt
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  Reapply "[libclc] Rework libclc naming convention to use the triple (#177465)" (#178033)

This reverts commit 2c9efd0177910753008767a8c50e62f676721443.


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

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCBase.td
    A mlir/include/mlir/Dialect/OpenACC/OpenACCCGOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsTypes.td

  Log Message:
  -----------
  [nfc][mlir][acc] Create new file to hold intermediate representation ops (#178048)

As the OpenACC dialect is decomposed and further lowered, we need a
dedicated home for operations that do not represent direct mappings of
OpenACC language constructs. This patch introduces OpenACCCGOps.td,
included from OpenACCOps.td, to hold such intermediate operations.

The `acc.kernel_environment` and `acc.firstprivate_map` operations are
moved to this new file.


  Commit: 16c8a02f2d2e94aeccd8e2107382bf1f246644d5
      https://github.com/llvm/llvm-project/commit/16c8a02f2d2e94aeccd8e2107382bf1f246644d5
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/select-select.ll

  Log Message:
  -----------
  [InstCombine] Propagate profile metadata when combining selects (#177883)

When we simplify a pair of selects, we want to propagate profile
information when the condition remains the same and drop it when it does
not. Before this patch, we were keeping incorrect profile data in
addition to not annotating any new select instructions that had the same
value as a previous one.

Noticed by looking at 80d9df6b054cebfbe97d709195be4e61a7acc694.


  Commit: 537c648fc07390d92e0aa3a71a36c6124c7d1375
      https://github.com/llvm/llvm-project/commit/537c648fc07390d92e0aa3a71a36c6124c7d1375
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/select-index.ll
    M llvm/test/Transforms/LoopVectorize/select-smin-first-index.ll

  Log Message:
  -----------
  [LV] Precommit extra argmin/argmax tests for #170223.

Precommit extra tests for
https://github.com/llvm/llvm-project/pull/170223


  Commit: 09e59745fc7bc011e908b4e0298327de96ebffaa
      https://github.com/llvm/llvm-project/commit/09e59745fc7bc011e908b4e0298327de96ebffaa
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    R clang/test/CIR/CodeGen/X86/prefetchw-builtin.c
    A clang/test/CIR/CodeGenBuiltins/X86/prefetchw-builtins.c

  Log Message:
  -----------
  [CIR][NFC] Move prefetchw builtin tests to the CodeGenBuiltins directory (#178051)

This moves a test that was added in the wrong subdirectory in the test
tree.


  Commit: 5caf27eff3c971aabcd24093283ae996375d3828
      https://github.com/llvm/llvm-project/commit/5caf27eff3c971aabcd24093283ae996375d3828
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sinf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sinf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sinf.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 sinf implementation to header-only in src/__support/math folder. (#177963)

Part of #147386

in preparation for:


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


  Commit: 078ef9110c26fa95695ea434c615cd32051ad5c6
      https://github.com/llvm/llvm-project/commit/078ef9110c26fa95695ea434c615cd32051ad5c6
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Rename RVInstV->RVInstVUnary. NFC (#177900)

I'd like RVInstV to be only a prefix name for vector related classes.


  Commit: 4555d5382bdd34ee59d0ad0811390b66f40780c1
      https://github.com/llvm/llvm-project/commit/4555d5382bdd34ee59d0ad0811390b66f40780c1
  Author: Sean Perry <perry at ca.ibm.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Sema/SemaAttr.cpp

  Log Message:
  -----------
  [SystemZ][asan] Improve error handling for pragma export as a statement (#177979)

The changes in https://github.com/llvm/llvm-project/pull/141671 had a
failure in some asan bots. The code for parsing pragma export is the
same as for the MS pragmas. I did noticed that the MS pragma handling
code says the tokens are reinjected when calling EnterTokenStream(). Do
the same for pragma export.

The tokens on the MS pragma  and pragma export are handled by:
1. PragmaMSPragma::HandlePragma
   - collect the tokens into an array
- an annotated token is created with the pragma token & array of tokens
   - calls EnterToken() adds the annotated token
2. Parser::HandlePragmaMSPragma()
- takes the array of tokens off the annotated token can adds them to the
stream using EnterTokenStream()
    - this call says the tokens are reinjected.


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

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp

  Log Message:
  -----------
  DAG: Remove TypePromoteFloat (#177427)

Remove the now unimplemented target hook and associated DAG machinery
for the old half legalization path.

Really fixes #97975


  Commit: 648cb364f84b78740b98b11466207bef193473e9
      https://github.com/llvm/llvm-project/commit/648cb364f84b78740b98b11466207bef193473e9
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  Fix Bazel build for cd79290 (#178065)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: 460c9b2db144e4ef736a31f29c0b366e565f2574
      https://github.com/llvm/llvm-project/commit/460c9b2db144e4ef736a31f29c0b366e565f2574
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M bolt/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M llvm/include/llvm/BinaryFormat/MachO.h
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMachObjectWriter.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/test/MC/RISCV/Relocations/mc-dump.s
    M llvm/test/MC/RISCV/macho.s
    A llvm/test/MC/RISCV/riscv-relocs-macho-data.s
    A llvm/test/MC/RISCV/riscv-relocs-macho.s
    M llvm/tools/llvm-objdump/MachODump.cpp

  Log Message:
  -----------
  [RISC-V][Mach-O] Add assembler support for Mach-O relocations. (#177446)

This patch adds comprehensive assembler (MC layer) support for the
Mach-O object file format on RISC-V targets, enabling assembly and
disassembly of RISC-V code targeting Apple platforms.

Key changes:

- Define RISC-V-specific Mach-O relocation types in BinaryFormat/MachO.h
- Implement RISCVMachObjectWriter with full relocation handling for:
  - PCREL_HI/LO pairs for PC-relative addressing
  - GOT relocations for external symbols
  - Branch relocations (CALL, unconditional/conditional branches)
  - Data section relocations

Test files include llvm-otool dumps to verify the generated relocations.

This code is based on code originally written by Tim Northover.


  Commit: 78f9d78b13423ecfc354579ef00599f68e0f5b88
      https://github.com/llvm/llvm-project/commit/78f9d78b13423ecfc354579ef00599f68e0f5b88
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/test/API/python_api/file_handle/TestFileHandle.py
    M lldb/test/Shell/ScriptInterpreter/Python/io.test

  Log Message:
  -----------
  [lldb] Fix Python stderr redirection in test (#177970)

Python's internal stderr may differ from sys.stderr. 
When Python writes errors, it uses its internal stderr rather than the
overwritten sys.stderr.
This may not be the same file/handle

Fix the test to explicitly write to the specified stderr.


  Commit: dfd284fb14eda47d121a144b459e1fb1a039750e
      https://github.com/llvm/llvm-project/commit/dfd284fb14eda47d121a144b459e1fb1a039750e
  Author: Argyrios Kyrtzidis <kyrtzidis at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/unittests/CAS/CASTestConfig.cpp

  Log Message:
  -----------
  [llvm/unittests/CAS] Fix compilation for builds where `LLVM_ENABLE_ONDISK_CAS=NO` (#178057)


  Commit: 02b4ee3bc514e5ab11bfd833a663abda818c5979
      https://github.com/llvm/llvm-project/commit/02b4ee3bc514e5ab11bfd833a663abda818c5979
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/ExpandVariadics.cpp

  Log Message:
  -----------
  [NFC][ExpandVariadics] Pass VarargsTy instead of re-querying from alloca (#177434)

The struct type is already available at the call site, so pass it
through to initializeStructAlloca() instead of retrieving it via
getAllocatedType(). Reduces reliance on `getAllocatedType`.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 5188d2e7454f101109fa0c6c80322148927f5f35
      https://github.com/llvm/llvm-project/commit/5188d2e7454f101109fa0c6c80322148927f5f35
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp

  Log Message:
  -----------
  [NFCI][MemoryTaggingSupport] Replace getAllocatedType with getAllocationSize (#177436)

Replace the `isSized()` and `isScalableTy()` type predicate checks with
a more direct `getAllocationSize()` query. The `isSized` check seems
unnecessary since the verifier already rejects unsized alloca.

For context, I'm working on deleting (or at least minimizing uses of)
the getAllocatedType function, since many optimizations need to destroy
that info and just produce byte sized allocas. It is for the same
reason that opaque pointers were introduced–memory doesn't inherently
have a provenience type, only uses (load and stores) do.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: dc55e20483ac1e5d28bec002bcd9f185da24e307
      https://github.com/llvm/llvm-project/commit/dc55e20483ac1e5d28bec002bcd9f185da24e307
  Author: Jakob Koschel <jakobkoschel at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M libc/hdr/CMakeLists.txt
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/Elf32_Xword.h
    M libc/include/CMakeLists.txt
    M libc/include/elf.yaml
    M libc/include/llvm-libc-macros/link-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/Elf32_Xword.h

  Log Message:
  -----------
  [libc] Add Elf32_Xword type (#177915)

In a recent PR (https://github.com/llvm/llvm-project/pull/174772), we
introduced GnuPropertySection using ElfW(Xword). Since we are currently
missing Elf32_Xword, this is failing on 32bit architectures.

This commit adds the missing Elf32_Xword type that should always hold
64bit even on 32bit architectures.


  Commit: c71f944d81b69aa749597033c7f60f6dcc98ac39
      https://github.com/llvm/llvm-project/commit/c71f944d81b69aa749597033c7f60f6dcc98ac39
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    R clang/test/Driver/darwin-depfile-sdksettings-maccatalyst.m
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp

  Log Message:
  -----------
  Revert "macCatalyst: add SDKSettings.json as a dependency file if its potentially needed by the compiler (#177748)" (#178075)

This reverts commit 7b917b9a08e2dac495fd9e83dc8cf152c8df6fde.


  Commit: 930cac19c187affd420581b43f6c7d1b463e42f4
      https://github.com/llvm/llvm-project/commit/930cac19c187affd420581b43f6c7d1b463e42f4
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    A flang/test/Analysis/AliasAnalysis/modref-alloc-free-effects.fir
    M mlir/include/mlir/Analysis/AliasAnalysis.h

  Log Message:
  -----------
  [flang] Fixed MemAlloc/Free effects handling in FIR ModRef. (#177728)

We should ignore MemAlloc/Free effects as they are not
modifying/reading ones. This is what LocalAliasAnalysis
does. This patch also removes the operation-wide MemFree
effect from `fir.freemem`.


  Commit: 7e66d1511dc1068c52347f048d43a15e5bae4a82
      https://github.com/llvm/llvm-project/commit/7e66d1511dc1068c52347f048d43a15e5bae4a82
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    A flang/test/Transforms/CUF/cuf-kernel-licm.fir

  Log Message:
  -----------
  [flang][CUF] Limit LICM for cuf.kernel. (#178073)

This patch prevents hoisting of operations with reference operands.
Such a hoisting may break the assumptions that later CUF passes
rely on.


  Commit: 88257505b04b234847c08f64d3cfc605060e06ba
      https://github.com/llvm/llvm-project/commit/88257505b04b234847c08f64d3cfc605060e06ba
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-select.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine][profcheck] Fix missing branch data in InstCombineCompares.cpp (#178070)

These are trivial fixes where we create a new select instruction with
the same conditional as an existing select.

Tracking issue: #147390


  Commit: 144a7fc08fdaea69876093c2ac886f5b3ad4c413
      https://github.com/llvm/llvm-project/commit/144a7fc08fdaea69876093c2ac886f5b3ad4c413
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/src/__support/math/atan2f_float.h
    M libc/src/__support/math/atanf_float.h
    M libc/src/__support/math/cbrt.h
    M libc/src/__support/math/cbrtf.h
    M libc/src/__support/math/cos.h
    M libc/src/__support/math/cosf.h
    M libc/src/__support/math/range_reduction.h
    M libc/src/__support/math/range_reduction_fma.h
    M libc/src/__support/math/sin.h
    M libc/src/__support/math/sincosf_utils.h
    M libc/src/__support/math/tan.h
    M libc/src/__support/math/tanf.h

  Log Message:
  -----------
  [libm] Update include guards in libc/src/__support/math (#178055)

...due to the feedback on #177963.

Patch generated by running

    rg -l '\bLIBC_SRC' libc/src/__support/math | \
      xargs sed -i '' -e \

's/LIBC_SRC___SUPPORT_MATH_\([A-Z0-9_]*\)/LLVM_LIBC_SRC___SUPPORT_MATH_\1/'


  Commit: b26ad50604629f1faf2cd2541a308e1643bff8fc
      https://github.com/llvm/llvm-project/commit/b26ad50604629f1faf2cd2541a308e1643bff8fc
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/JSONTransport.h
    M lldb/tools/lldb-dap/DAP.cpp

  Log Message:
  -----------
  [lldb-dap][NFC] Use a lambda instead of std::bind. (#178023)

I find it easier to read what is happening, especially for member
functions.


  Commit: 0c64017c9924573b81f0a74e6c7c6e3f48f41047
      https://github.com/llvm/llvm-project/commit/0c64017c9924573b81f0a74e6c7c6e3f48f41047
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [NFC][TableGen] Adopt IfDefEmitter in CodeEmitterGen (#178050)


  Commit: 8db9774118ccdfc583ed230cbdde1c56567d0643
      https://github.com/llvm/llvm-project/commit/8db9774118ccdfc583ed230cbdde1c56567d0643
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M openmp/CMakeLists.txt
    M openmp/device/CMakeLists.txt
    M openmp/device/include/DeviceTypes.h
    M openmp/device/include/State.h
    M openmp/device/include/Synchronization.h
    M openmp/device/src/Allocator.cpp
    M openmp/device/src/Parallelism.cpp
    M openmp/device/src/Synchronization.cpp

  Log Message:
  -----------
   [OFFLOAD] Build DeviceRTL with SPIRV backend (#174675)

This PR adds configuration to build DeviceRTL with SPIRV backend. It is
primarily used for level-zero plugin for Intel GPUs

---------

Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: 87b51a2fb00b24285eb68bf974ab44bab3a7f056
      https://github.com/llvm/llvm-project/commit/87b51a2fb00b24285eb68bf974ab44bab3a7f056
  Author: Andres-Salamanca <andrealebarbaritos at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/utils/TableGen/CIRLoweringEmitter.cpp

  Log Message:
  -----------
  [CIR] Add custom constructor declaration to CIR lowering TableGen (#176664)

While working on the lowering of `BlockAddressOp`, I ran into a
limitation of the current `CIRLoweringEmitter` infrastructure: some CIR
ops require shared mutable state across multiple lowering patterns, but
the generated patterns always use a fixed default constructor and cannot
accept additional context.

**Examples:**

* `BlockAddressOp` needs to coordinate with the lowering of its
referenced `LabelOp`, requiring shared bookkeeping (e.g.
`LLVMBlockAddressInfo`) to track lowered labels and resolve unresolved
block addresses once the corresponding `BlockTagOp` is available.
* This is not unique to block addresses: for example,
`CIRToLLVMAllocaOpLowering` will also need access to shared state such
as `stringGlobalsMap`, `argStringGlobalsMap`, and `argsVarMap`.

**Possible solution:**

* **Disable generated lowering**: mark the op with `hasLLVMLowering =
false` and manually define and register the lowering patterns. This
works, but feels misleading since the operation does have an LLVM
lowering it just cannot be generated automatically. This ambiguity also
suggests that `hasLLVMLowering` might be better named `genLLVMLowering`.
* **Custom constructors (this PR)**: extend the TableGen emitter to
allow defining a single custom constructor for the generated LLVM
lowering pattern, similar to MLIR’s `OpBuilder`. When a custom
constructor is provided, the default one is not generated and the
pattern must be manually registered in the RewritePatternSet.


  Commit: 2e99240dce51ac97bbd7f58c51202a72e3697128
      https://github.com/llvm/llvm-project/commit/2e99240dce51ac97bbd7f58c51202a72e3697128
  Author: Anikesh Parashar <106880513+an1k3sh at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sinhf.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sinhf.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sinhf.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] Refractor sinhf to Header only (#177336)

Part of #147386

Resolves #177644


  Commit: 54c5dcbf7d5945ea6c3e6efc638162ec229bcbd9
      https://github.com/llvm/llvm-project/commit/54c5dcbf7d5945ea6c3e6efc638162ec229bcbd9
  Author: Ramshankar <87872158+Ramshankar07 at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ilogbf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ilogbf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ilogbf128.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 ilogbf128 to Header Only (#175396)

Refactors the ilogbf128 implementation to be header-only and available via shared math.

fixes: #175345


  Commit: 667703ed1b94e13de6cedb537670f2bc1b2c08c3
      https://github.com/llvm/llvm-project/commit/667703ed1b94e13de6cedb537670f2bc1b2c08c3
  Author: Anikesh Parashar <106880513+an1k3sh at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sinhf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sinhf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sinhf16.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] Refractor sinhf16 to Header only (#177337)

Part of #147386

Resolves #177645


  Commit: 61f272d5cc75ccecfdcd83b3e3002b30ccce9918
      https://github.com/llvm/llvm-project/commit/61f272d5cc75ccecfdcd83b3e3002b30ccce9918
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUBarrierLatency.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    A llvm/test/CodeGen/AMDGPU/schedule-barrier-latency-gfx9.mir

  Log Message:
  -----------
  [AMDGPU] Pre-GFX10 does not need added latency for workgroup fences (#177157)

Wait counts will not typically be introduced for workgroup scope fences
in pre-GFX10 ASICs.
Hence avoid adding scheduling latency for these.


  Commit: 542e9b94ab2db4758b40d199e496b3b91a2fb356
      https://github.com/llvm/llvm-project/commit/542e9b94ab2db4758b40d199e496b3b91a2fb356
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-26 (Mon, 26 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/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func-cast.cpp
    M clang/test/CIR/IR/invalid-struct.cir

  Log Message:
  -----------
  [CIR] Upstream support for pointer-to-method casts (#178004)

This adds support in CIR for handling based-to-derived and
derived-to-base casts of pointer-to-member values that point to member
functions.

Co-authored-by: Sirui Mu <msrlancern at gmail.com>


  Commit: eea64cefa2092bf6d0341ed1583d75b4ec61ee38
      https://github.com/llvm/llvm-project/commit/eea64cefa2092bf6d0341ed1583d75b4ec61ee38
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/test/CIR/CodeGen/pointer-to-member-func.cpp

  Log Message:
  -----------
  [CIR] Add support for member pointer constants (#178074)

This adds support for initializing global variables of type
pointer-to-member that pointer to member functions.


  Commit: acff9fa4dba2e39da73227d835dfd12be434645e
      https://github.com/llvm/llvm-project/commit/acff9fa4dba2e39da73227d835dfd12be434645e
  Author: Vladimir Vereschaka <vvereschaka at accesssoftek.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/cmpxchg-sm60.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg-sm70.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg-sm90.ll
    M llvm/test/CodeGen/NVPTX/cmpxchg.py

  Log Message:
  -----------
  Revert "[NVPTX] Weak cmpxchg unittests for NVPTX" (#178090)

Reverts llvm/llvm-project#176078

These changes break the NVPTX builders: llvm-nvptx[64]-nvidia-*


  Commit: e2ee42f908d035fb8349a7d43211d71363fb0e96
      https://github.com/llvm/llvm-project/commit/e2ee42f908d035fb8349a7d43211d71363fb0e96
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/src/__support/math/asin.h
    M libc/src/math/generic/asin.cpp

  Log Message:
  -----------
  [libc][math] Fix parallel implementation for asin (#178100)


  Commit: f4b77e67508ee4e3178103d7ffaf302b76d72b42
      https://github.com/llvm/llvm-project/commit/f4b77e67508ee4e3178103d7ffaf302b76d72b42
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineLoadStoreAlloca.cpp

  Log Message:
  -----------
  [InstCombine] Replace getAllocatedType() with getAllocationSize() (#177435)

Replace uses of getAllocatedType() with the more semantic
getAllocationSize() method in the alloca dereferenceability check
and zero-size alloca merging logic.

This simplifies the code by:
- Eliminating manual isArrayAllocation() checks (handled by
getAllocationSize)
- Eliminating superfluous isSized() checks (the verifier rejects them
already)
- Using TypeSize::isScalable() for scalable vector handling (before
casting to uint64_t)
- Using TypeSize::isZero() for zero-size checks

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 04f3b568c51b0f3ca0398f95e3b99dbbe102823e
      https://github.com/llvm/llvm-project/commit/04f3b568c51b0f3ca0398f95e3b99dbbe102823e
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/FunctionSpecialization.cpp

  Log Message:
  -----------
  [FunctionSpecialization] Remove getAllocatedType() type check (#177439)

Change getConstantStackValue() to check the type of the promoted
constant rather than the alloca's declared type. This is more correct
semantically since we're interested in the actual stored value's type,
not what the alloca was declared as.

The change also handles type punning cases more conservatively - if an
alloca is declared as i64 but stores a float, the old code would pass
the integer type check but potentially return a non-integer constant.
The new code correctly rejects such cases.

Also remove a bit of dead code, since the argument is a pointer type, it
cannot also have been a constant integer (and this code would be wrong
if it was reachable). Originally introduced as dead code in
https://reviews.llvm.org/D106426
30fbb06979077740961ebc46853e28ab1f999f9d.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: cbb2aa170487927c6ed6ef6e1c1ccd45e0cc2307
      https://github.com/llvm/llvm-project/commit/cbb2aa170487927c6ed6ef6e1c1ccd45e0cc2307
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

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

  Log Message:
  -----------
  [NFCI] Replace getAllocatedType with tracked value type in RewriteStatepointsForGC (#177440)

The allocas in RewriteStatepointsForGC are created with
LiveValue->getType(), so we can use Def->getType() (which equals the
alloca's type) instead of querying getAllocatedType().

Changes:
- Load instructions now use Def->getType() directly
- The ToClobber vector now stores (Type*, AllocaInst*) pairs to track
the original value's type for creating null constants

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 90bece366d5d602f674e62aa5679f51761520494
      https://github.com/llvm/llvm-project/commit/90bece366d5d602f674e62aa5679f51761520494
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    A orc-rt/docs/ErrorHandling.md

  Log Message:
  -----------
  [orc-rt] Add Error-handling documentation. (#177547)


  Commit: 865b2e9e00eb5f5fa8dcaaf1d7e7543dc6199b54
      https://github.com/llvm/llvm-project/commit/865b2e9e00eb5f5fa8dcaaf1d7e7543dc6199b54
  Author: Vedant Neve <vedantneve13 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/llogb.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/llogb.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/llogb.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 llogb to Header Only (#175524)

Fixes #175360


  Commit: aba18cf1cc65d5333940c4299251d986f66dee9a
      https://github.com/llvm/llvm-project/commit/aba18cf1cc65d5333940c4299251d986f66dee9a
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/test/ClangScanDeps/P1689.cppm
    M clang/test/ClangScanDeps/header_stat_before_open.m
    M clang/test/ClangScanDeps/headerwithdirname.cpp
    M clang/test/ClangScanDeps/headerwithdirnamefollowedbyinclude.cpp
    M clang/test/ClangScanDeps/macro-expansions.cpp
    M clang/test/ClangScanDeps/modules.cpp
    M clang/test/ClangScanDeps/regular_cdb.cpp
    M clang/test/ClangScanDeps/relative_directory.cpp
    M clang/test/ClangScanDeps/subframework_header_dir_symlink.m
    M clang/test/ClangScanDeps/target-filename.cpp
    M clang/test/ClangScanDeps/vfsoverlay.cpp
    A clang/test/Driver/darwin-depfile-sdksettings-maccatalyst.m
    M clang/test/Frontend/dependency-gen-phony.c
    M clang/unittests/Basic/DarwinSDKInfoTest.cpp

  Log Message:
  -----------
  macCatalyst: add SDKSettings.json as a dependency file if its potentially needed by the compiler (#178077)

Co-authored-by: Alex Lorenz <arphaman at gmail.com>


  Commit: a460c8e8dafc28fef240fce44dcbed043fe56a71
      https://github.com/llvm/llvm-project/commit/a460c8e8dafc28fef240fce44dcbed043fe56a71
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [NFCI][SROA] reduce calls to getAllocatedType() (#177437)

Replace repeated calls with getAllocationSize() and cached NewAllocaTy.
In AllocaSliceRewriter, the allocated type is already stored in the
NewAllocaTy member variable and now passed directly there. This change
replaces the remaining direct calls to `NewAI.getAllocatedType()` with
the cached NewAllocaTy to simplify and DRY the code.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: aca2c05439eab847fc86599f49046e02be2a08bd
      https://github.com/llvm/llvm-project/commit/aca2c05439eab847fc86599f49046e02be2a08bd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td

  Log Message:
  -----------
  [RISCV] Rename vd->rd in the MC layer for vfirst.m/vcpop.m/vmv.x.s/vfmv.f.s. (#178081)

Add a new class for instructions that write GPR/FPR. Sink
RVVConstraint=NoConstraint into this class.


  Commit: 05e2ee9664be391bf9332c2d90e4de4f279526ed
      https://github.com/llvm/llvm-project/commit/05e2ee9664be391bf9332c2d90e4de4f279526ed
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-26 (Mon, 26 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/test/CodeGen/RISCV/rvb-intrinsics/zbc.c
    M clang/test/CodeGen/RISCV/rvb-intrinsics/zbkc.c
    M llvm/include/llvm/IR/IntrinsicsRISCV.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rv32zbc-zbkc-intrinsic.ll
    M llvm/test/CodeGen/RISCV/rv64zbc-zbkc-intrinsic.ll

  Log Message:
  -----------
  [RISCV] Replace riscv.clmul intrinsic with llvm.clmul (#178092)

I did not replace riscv.clmulh/clmulr since those require a multiple
instruction pattern match. I wanted to ensure that -O0 will select the
correct instructions without relying on combines.


  Commit: 3aaeace4e2ce39d3a15acc4fe27222a2702c1f59
      https://github.com/llvm/llvm-project/commit/3aaeace4e2ce39d3a15acc4fe27222a2702c1f59
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/num-teams-dims.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [OpenMP][MLIR] Add num_teams clause with dims modifier support (#169883)

PR adds support of openmp 6.1 feature `num_teams` with dims modifier.
llvmIR translation for num_teams with dims modifier is marked as NYI.


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

  Changed paths:
    M llvm/lib/CodeGen/ShrinkWrap.cpp
    A llvm/test/CodeGen/AArch64/shrink-wrap-unreachable.ll

  Log Message:
  -----------
  [ShrinkWrap] Ensure we do not crash on unreachable blocks. (#178009)

Since we started optimizating always-true branches in the AArch64
backend (like cbz wzr), shrink wrap has been exposed to some block
structures that it does not handle correctly, usually with unreachable
blocks. This prevents the call to FindIDom/findNearestCommonDominator
from failing when looking at the predecessors of a loop if one is
unreachable.

Fixes: #177866


  Commit: 170ad2335e5c4a3bf53fdd5bfeeb9fe8350398b4
      https://github.com/llvm/llvm-project/commit/170ad2335e5c4a3bf53fdd5bfeeb9fe8350398b4
  Author: woruyu <1214539920 at qq.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    A llvm/test/TableGen/NotFirstMnemonic.td
    M llvm/utils/TableGen/AsmMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen][AsmMatcher] Fix optional operand mask indexing when HasMnemonicFirst is false (#176868)

### Summary
Fix optional operand mask indexing in the generated asm matcher when
HasMnemonicFirst is false.


  Commit: 2a335ec1453c082572fd73c674e8407f13a54ca0
      https://github.com/llvm/llvm-project/commit/2a335ec1453c082572fd73c674e8407f13a54ca0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M orc-rt/unittests/ErrorTest.cpp

  Log Message:
  -----------
  [orc-rt] Add unit test for "re-throwing" errors in handleErrors. (#178112)

handleErrors supports several different handler signatures, including
handlers that take a unique_ptr<T> (where T is a descendant of
ErrorInfoBase) and return an Error: (std::unique_ptr<T>) -> Error. In
this case the handler should be able to create an Error value to wrap
the original ErrorInfoBase object without.

This functionality was not previously tested, and will be used in
upcoming commits. This commit adds the missing test coverage.


  Commit: 60250aaa253b13450630878062c63d9915c1f18a
      https://github.com/llvm/llvm-project/commit/60250aaa253b13450630878062c63d9915c1f18a
  Author: Serosh <janmejayapanda400 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/functions.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix crash in void functions returning non-void expr… (#176550)

The bytecode compiler was incorrectly emitting an 
RVOPtr
opcode for void functions if the return expression had a non-void type
(e.g. from a conditional operator). This triggered an assertion in the
interpreter because void functions lack RVO metadata.

This patch updates 
visitReturnStmt
 to check the function’s return type and use 
discard()
 for the expression in void contexts, preventing erroneous RVO pathing.

Fixes #176536


  Commit: ddecdcc85cb4c36b6da8d48817c865a6c733904a
      https://github.com/llvm/llvm-project/commit/ddecdcc85cb4c36b6da8d48817c865a6c733904a
  Author: S. VenkataKeerthy <31350914+svkeerthy at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IR2Vec.h
    M llvm/lib/CodeGen/MIR2Vec.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/unittests/Analysis/IR2VecTest.cpp

  Log Message:
  -----------
  [IR2Vec] Change MIR2Vec vocab printer to not print non-zero entities (#178117)

This PR relaxes MIR2Vec tests, so that `reference_*_print.txt` files
need not be updated every time the list of MIR opcodes changes


  Commit: a95a9465bfd261f7b7a464d79336faa74af780c0
      https://github.com/llvm/llvm-project/commit/a95a9465bfd261f7b7a464d79336faa74af780c0
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M orc-rt/include/CMakeLists.txt
    M orc-rt/include/orc-rt-c/CoreTypes.h
    A orc-rt/include/orc-rt-c/Error.h
    A orc-rt/include/orc-rt-c/Visibility.h
    M orc-rt/include/orc-rt/Error.h
    M orc-rt/lib/executor/Error.cpp
    M orc-rt/unittests/CMakeLists.txt
    A orc-rt/unittests/ErrorCAPITest.cpp

  Log Message:
  -----------
  [orc-rt] Add C API for Errors, plus ORC_RT_C_ABI macro. (#178123)

This commit introduces a C interface for the ORC runtime's Error
handling system, enabling C clients and language bindings to work with
ORC errors.

The ORC_RT_C_ABI macro applies __attribute__((visibility("default")))
(on platforms that support it), ensuring C API symbols are exported when
building the ORC runtime as a shared library. In the future I expect
that this will be extended to support other platforms (e.g. dllexport on
Windows).


  Commit: f4ceddd307cae62fd6d3fc5a5d4c7867f63065da
      https://github.com/llvm/llvm-project/commit/f4ceddd307cae62fd6d3fc5a5d4c7867f63065da
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/selectopt.ll

  Log Message:
  -----------
  [RISCV] Support select optimization

AArch64 has enabled this in https://reviews.llvm.org/D138990, and
the measurement data still stands for RISCV in some cases.

And, similar optimization like #77284 is added too.

After this patch, the highly predictable branch will be converted
back to branches instead using selects.

This pass is disabled by default now, we can enable it by default
after more detailed investigation.

Reviewers: davemgreen, preames, dtcxzyw, lukel97, topperc, asb

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


  Commit: 0817524c11fa6a938ca89c33ef994e82f4c94bb3
      https://github.com/llvm/llvm-project/commit/0817524c11fa6a938ca89c33ef994e82f4c94bb3
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Fix VRGATHER_V*_VL operands docs. NFC (#178124)

The passthru is third operand and the mask is the fourth


  Commit: 92da1c0b9fc7d0502b8ac0cd73c836266e21f7d5
      https://github.com/llvm/llvm-project/commit/92da1c0b9fc7d0502b8ac0cd73c836266e21f7d5
  Author: Nishant Sachdeva <32475507+nishant-sachdeva at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/IR2Vec.h
    M llvm/lib/Analysis/IR2Vec.cpp
    M llvm/test/tools/llvm-ir2vec/error-handling.ll
    M llvm/tools/llvm-ir2vec/lib/Utils.cpp
    M llvm/tools/llvm-ir2vec/lib/Utils.h
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp

  Log Message:
  -----------
  [llvm-ir2vec] vocab read refactor (#177837)

Modifying llvm-ir2vec vocab reading pipeline to use Vocabulary::fromFile
instead of a full pass invocation

Addresses - [comment](
https://github.com/llvm/llvm-project/pull/177092#pullrequestreview-3687563016)
and is a follow up of the patch
[here](https://github.com/llvm/llvm-project/pull/177348)


  Commit: 95fdfcca9bcd4b1883e52e2aad32234729ffdaee
      https://github.com/llvm/llvm-project/commit/95fdfcca9bcd4b1883e52e2aad32234729ffdaee
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp

  Log Message:
  -----------
  [CIR] Move BrOp block merging to canonicalize method (#178053)

Move the redundant branch removal pattern from CIRCanonicalize pass
to BrOp::canonicalize. This follows  MLIR's convention where
canonicalization logic lives with the operation definition.

Changes:
- Add hasCanonicalizeMethod to BrOp in CIROps.td
- Implement BrOp::canonicalize in CIRDialect.cpp
- Auto-collect canonicalization patterns from all registered ops
  in CIRCanonicalizePass (matching MLIR's Canonicalizer approach)
- Remove the standalone RemoveRedundantBranches pattern class

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 15365d31e6b407d78d6c26c7b64cecacccccfd39
      https://github.com/llvm/llvm-project/commit/15365d31e6b407d78d6c26c7b64cecacccccfd39
  Author: Yexuan Xiao <bizwen at nykz.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/AST/FormatString.cpp
    M clang/test/Sema/format-strings.c

  Log Message:
  -----------
  [Sema] Fix ICE due to incorrect _Bool handling in format string checking (#174684)

Closes #174331


  Commit: 46312083751d96dc85cdf9387414b3e4c91abc51
      https://github.com/llvm/llvm-project/commit/46312083751d96dc85cdf9387414b3e4c91abc51
  Author: Marcos Maronas <mmaronas at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/cl_khr_extended_bit_ops.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/cl_khr_extended_bit_ops_spv-friendly_only.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/spirv-friendly_extended_bit_ops.ll

  Log Message:
  -----------
  [SPIRV] Extend and fix SPV_KHR_bit_instructions testing. (#175825)

On one hand, this patch adds a couple of new testcases related to
SPV_KHR_bit_instructions. On the other hand, it fixes a couple of
testcases that were using `llvm.bitreverse.*`, while they were supposed
to use the SPIRV-friendly equivalent.

---------

Co-authored-by: Marcos Maronas <marcos.maronas at intel.com>


  Commit: e0c12486dc9de08ed85e71042084f1e0416c109b
      https://github.com/llvm/llvm-project/commit/e0c12486dc9de08ed85e71042084f1e0416c109b
  Author: Keyi Zhang <Kuree at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMAttrDefs.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMDialectBytecode.td
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/test/CAPI/llvm.c
    M mlir/test/Dialect/LLVMIR/debuginfo.mlir
    M mlir/test/Target/LLVMIR/Import/debug-info.ll
    M mlir/test/Target/LLVMIR/llvmir-debug.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Add flags field to the DIDerivedType attribute (#177889)

This PR extends the `DIDerivedType` with the `flags` field.
Fixes https://github.com/llvm/llvm-project/issues/177725


  Commit: 50e59af2a028b8cb8b5dcc6e307ee03fc39b8d7b
      https://github.com/llvm/llvm-project/commit/50e59af2a028b8cb8b5dcc6e307ee03fc39b8d7b
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/test/ClangScanDeps/target-filename.cpp
    M clang/test/Frontend/dependency-gen-phony.c

  Log Message:
  -----------
  [clang][test][NFC] Fix dependency test failures (#178113)

If the path to SDKSettings.json is short enough, it will go on the same
line as the file in the output.


  Commit: 4a50d99a50ef10da020cc7de6d9f10a07398b25a
      https://github.com/llvm/llvm-project/commit/4a50d99a50ef10da020cc7de6d9f10a07398b25a
  Author: Gil Rapaport <gil.rapaport at mobileye.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/EmitC/Transforms/Transforms.h
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
    M mlir/test/Dialect/EmitC/form-expressions.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir

  Log Message:
  -----------
  [mlir][emitc] Fix recurring operands in expression (#175535)

The pretty-printing for `emitc.expression` breaks for expressions taking
the same value as operand multiple times.

Passing the same value as operand more than once is redundant, and is
therefore not the canonical form of `emitc.expression`. However, since
transformations affecting `emitc.expression` operands may cause this to
happen, `emitc.expression` must retain its support for recurring
operands.

This PR fixes this issue by shadowing the region arguments only when the
operands are unique, printing and parsing an explicit basic block
otherwise. In addition, a canonicalization pattern removing recurring
operands is added.

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


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

  Changed paths:
    M clang/lib/AST/ByteCode/InterpState.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Make InterpState::Allocator private (#178129)


  Commit: c8010da017bb82066e36c5f8d12877cbc8ab2bbd
      https://github.com/llvm/llvm-project/commit/c8010da017bb82066e36c5f8d12877cbc8ab2bbd
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst

  Log Message:
  -----------
  [analyzer][docs] Add basic description of checker 'core.CallAndMessage' (#177179)

The checker had very little documentation. Now a more detailed (but
still not much) description of the features and options is added.


  Commit: 84882630c1d17224c5c3b98dd568ac61f4251761
      https://github.com/llvm/llvm-project/commit/84882630c1d17224c5c3b98dd568ac61f4251761
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-opt-memcpy-memmove-sve.S
    M compiler-rt/lib/builtins/aarch64/sme-libc-opt-memcpy-memmove.S

  Log Message:
  -----------
  [compiler-rt][aarch64][sme] Add SVE/FP variant of `__arm_sc_memcpy` (#127093)

When SVE is available use the `-sve` variant of memcpy from AOR for
`__arm_sc_memcpy`. From:
https://github.com/ARM-software/optimized-routines/blob/71e36403858ab3ff743fcde336fb31890e57af7e/string/aarch64/memcpy-sve.S

This implementation uses FPR/ZPR load/store instructions to do the copy,
so should not cause memory hazards if called in streaming mode (with the
memory later being accessed in the streaming mode with SVE/SME
instructions).

The implementation has been slightly modified from AOR to use local
labels (matching other compiler-rt functions) but still passes the
memcpy and memmove tests from AOR.


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

  Changed paths:
    M libcxx/include/__ranges/join_with_view.h
    M libcxx/include/__ranges/subrange.h
    M libcxx/test/libcxx/ranges/range.adaptors/range.join.with/nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.utility/range.subrange/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Updated `[[nodiscard]]` implementation for `subrange` and `join_with_view` (#176936)

Added or removed `[[nodiscard]]` according to the guidelines and updated
the tests.

 - https://libcxx.llvm.org/CodingGuidelines.html
 - https://wg21.link/range.subrange
 -  https://wg21.link/range.join.with.view

Towards #172124


  Commit: ba833a616554ce50868a562e525faafea0d387d4
      https://github.com/llvm/llvm-project/commit/ba833a616554ce50868a562e525faafea0d387d4
  Author: Gil Rapaport <gil.rapaport at mobileye.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/EmitC/Transforms/Transforms.h
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
    M mlir/test/Dialect/EmitC/form-expressions.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir

  Log Message:
  -----------
  Revert "[mlir][emitc] Fix recurring operands in expression (#175535)"

This reverts commit 4a50d99a50ef10da020cc7de6d9f10a07398b25a.

Fails the buildbot.


  Commit: e3284b96815d7ef9ac358724b49a25befc2c4439
      https://github.com/llvm/llvm-project/commit/e3284b96815d7ef9ac358724b49a25befc2c4439
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    A llvm/test/Transforms/PreISelIntrinsicLowering/AMDGPU/expand-mem-intrinsics.ll

  Log Message:
  -----------
  [LowerMemIntrinsics][AMDGPU] Propagate Debug Value (#178131)

Propagate debug value to expanded loops for `memcpy`, `memmove` and
`memset` intrinsics.


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

  Changed paths:
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/State.h

  Log Message:
  -----------
  [clang][bytecode][NFC] Clean up InterpState includes (#178130)


  Commit: c2d510f5bdabf71f4f5fde36a37faf5565762195
      https://github.com/llvm/llvm-project/commit/c2d510f5bdabf71f4f5fde36a37faf5565762195
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Dialect/FIROpsSupport.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
    A flang/test/Lower/ivdep-array.f90

  Log Message:
  -----------
  [flang] fix DIR IVDEP for array assignments inside loops (#177940)

The access attribute set on hlfir.assign for arrays was lost in
InlineHLFIRAssign.cpp. This patch propagates it to the creates loads and
stores.


  Commit: 7687a14e6fcca3c8c931af8d15fec3eeb259f622
      https://github.com/llvm/llvm-project/commit/7687a14e6fcca3c8c931af8d15fec3eeb259f622
  Author: Kristof Beyls <kristof.beyls at arm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [docs] Update ics for my office hours


  Commit: 8dfca82a7cb3ee4d9f768a6c3a61236ffb329a22
      https://github.com/llvm/llvm-project/commit/8dfca82a7cb3ee4d9f768a6c3a61236ffb329a22
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [libc++][NFC] Don't use std::distance in std::equal (#177113)

We don't need to use `std::distance`, since we know for a fact that we
have random access iterators in that place. Instead, we can just
subtract the iterators, avoiding a bunch of template machinery and
imrpoving compile times a bit.


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

  Changed paths:
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-load-rcpc_immo.ll
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-store-rcpc_immo.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-integer-ll.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/inline-asm.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-vector-deinterleave2.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-vector-interleave2.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-concat-vectors.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-merge-values.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalize-xtn.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/pr57349.ll
    M llvm/test/CodeGen/AArch64/aarch64-mixed-ptr-sizes.ll
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    M llvm/test/CodeGen/AArch64/dup.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    M llvm/test/CodeGen/AArch64/stack-probing-dynamic.ll
    M llvm/test/CodeGen/AArch64/vararg-tallcall.ll
    M llvm/test/CodeGen/AArch64/win64-fpowi.ll
    M llvm/test/CodeGen/AArch64/xtn.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Remove -global-isel-abort=2 from a number of tests. NFC

This cleans up some -global-isel-abort=2 uses, either removing the unnecessary
flags or cleaning up the tests that use them.


  Commit: 13c293486603d9c2e03888866a60df7d42f8e068
      https://github.com/llvm/llvm-project/commit/13c293486603d9c2e03888866a60df7d42f8e068
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp

  Log Message:
  -----------
  [clang-tidy] Add invalidation function name to bugprone-use-after-move (#178042)

Make clearer messages because of reports
https://github.com/llvm/llvm-project/pull/170346#issuecomment-3798583117.

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: 08654adc62c1d7c9a0f8fe40138fe4317a941f3b
      https://github.com/llvm/llvm-project/commit/08654adc62c1d7c9a0f8fe40138fe4317a941f3b
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/num-threads-dims.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [OpenMP][MLIR] Add num_threads clause with dims modifier support (#171767)

PR adds support of openmp 6.1 feature num_threads with dims modifier.
llvmIR translation for num_threads with dims modifier is marked as NYI.


  Commit: ec57636ae447247683716c00437552645a52ba68
      https://github.com/llvm/llvm-project/commit/ec57636ae447247683716c00437552645a52ba68
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    A mlir/include/mlir/Dialect/Bufferization/Extensions/AllExtensions.h
    A mlir/include/mlir/Dialect/Bufferization/Extensions/ShardingExtensions.h
    R mlir/include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h
    M mlir/lib/Dialect/Bufferization/CMakeLists.txt
    A mlir/lib/Dialect/Bufferization/Extensions/AllExtensions.cpp
    A mlir/lib/Dialect/Bufferization/Extensions/CMakeLists.txt
    A mlir/lib/Dialect/Bufferization/Extensions/ShardingExtensions.cpp
    M mlir/lib/Dialect/Tensor/Extensions/ShardingExtensions.cpp
    M mlir/lib/RegisterAllExtensions.cpp
    A mlir/test/Dialect/Bufferization/shard-partition.mlir

  Log Message:
  -----------
  [mlir][shard, bufferization] Adding sharding extensions for bufferization ops (#177378)

Adding trivial sharding support for `bufferization.alloc_tensor`,
`bufferization.dealloc_tensor` and
`bufferization.materialize_in_destination`.

include/mlir/Dialect/Tensor/IR/ShardingInterfaceImpl.h -> mlir/include/mlir/Dialect/Bufferization/Extensions/ShardingExtensions.h

---------

Co-authored-by: Adam Siemieniuk <adam.siemieniuk at intel.com>


  Commit: 3278ff7a4fa8f90c60081c88f3d441cf1468e84c
      https://github.com/llvm/llvm-project/commit/3278ff7a4fa8f90c60081c88f3d441cf1468e84c
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Fix 'clang::lifetimebound' ignored on template method definition (#178000)

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

Same pattern with `getTemplateInstantiationPattern()` for attrs checking
is already used in other LLVM places, e.g.:


https://github.com/llvm/llvm-project/blob/b19238d0d0a7d026de8e2ad28775db57afccb01d/clang/lib/CodeGen/CodeGenModule.cpp#L2830-L2839


  Commit: 7287f95b1c3ee86d0dffd1703a7e7654ef1707f7
      https://github.com/llvm/llvm-project/commit/7287f95b1c3ee86d0dffd1703a7e7654ef1707f7
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Port ec57636ae447247683716c00437552645a52ba68 (#178151)


  Commit: eaf6c1446d4e99a385bde14552535cbc18b61c02
      https://github.com/llvm/llvm-project/commit/eaf6c1446d4e99a385bde14552535cbc18b61c02
  Author: Henry Kleynhans <henry.kleynhans at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/www/get_started.html
    M clang/www/hacking.html

  Log Message:
  -----------
  [Clang] Remove gnuwin32 documentation references (#177557)

Remove the documentation references to GnuWin32. The project is no
longer maintained, and as LLVM is now using Git, `llvm-lit` is now using
the GNU core utilities packaged with it rather than requiring a separate
installation.

This appears to have been on
[discourse](https://discourse.llvm.org/t/gnuwin32-alternatives-for-tests-of-msvc-build/42846/3)
but not implemented yet.


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-exp.ll

  Log Message:
  -----------
  InstCombine: Add a few more tests for SimplifyDemandedeFPClass exp handling (#178147)

These got lost in various merges. Test a few cases where flags are
inferred from context.


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

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/release-vgprs.mir

  Log Message:
  -----------
  [AMDGPU] Add test for a bug in the early release VGPRs optimization (#178141)


  Commit: e74e970036645553459e4768dfaf48b618b48de2
      https://github.com/llvm/llvm-project/commit/e74e970036645553459e4768dfaf48b618b48de2
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
    M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.f90

  Log Message:
  -----------
  [flang][OpenMP][DoConcurrent] Add `collapse` clause to generated `omp.loop_nest` op (#178138)

Adds the collpase clause to the generated loop nest both on host and
device.


  Commit: 34f434e45d03ae0571bce5a8a1a1c4ccb27992dd
      https://github.com/llvm/llvm-project/commit/34f434e45d03ae0571bce5a8a1a1c4ccb27992dd
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/PreISelIntrinsicLowering/AMDGPU/lit.local.cfg

  Log Message:
  -----------
  [NFC][AMDGPU] Add missing `lit.local.cfg` to `PreISelIntrinsicLowering` tests (#178154)

Add `lit.local.cfg` to restrict the `PreISelIntrinsicLowering/AMDGPU`
tests to AMDGPU only.

These tests were previously being run for all targets.


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

  Changed paths:
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-log.ll

  Log Message:
  -----------
  InstCombine: Add more log nnan/ninf log intrinsic inference tests (#178160)

These got lost in various merges.


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

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

  Log Message:
  -----------
  InstCombine: Stop preserving undef in SimplifyDemandedFPClass (#178163)

If we know there are no valid values, fold to poison. Previously this
would leave values that started as undef alone.


  Commit: b8cccd6cef063764eabf1956999fd5a96413d982
      https://github.com/llvm/llvm-project/commit/b8cccd6cef063764eabf1956999fd5a96413d982
  Author: Lleu Yang <hello at megakite.icu>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    A llvm/test/Analysis/ValueTracking/knownbits-clmul.ll

  Log Message:
  -----------
  [Analysis] computeKnownBitsFromOperator - add @llvm.clmul knownbits handling and tests (#177893)

This adds knownbits handling for `Intrinsic::clmul` inside
`computeKnownBitsFromOperator`. Tests are also included.

Closes #177550


  Commit: a63696edca8b9cd64d76fc4205071709c47a0a63
      https://github.com/llvm/llvm-project/commit/a63696edca8b9cd64d76fc4205071709c47a0a63
  Author: cooperp <peter_cooper at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    A clang/test/CodeGen/stack-protector-vars.cpp
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    A clang/test/Sema/stack_protector_ignore.c

  Log Message:
  -----------
  Allow the no_stack_protector attribute on local variables (#173311)

This attribute is currently only permitted on functions, but sometimes
it can be useful to opt out a specific local variable. That way the
function can still get a stack protector if other locals require it, but
locals which are opted out won't have the overhead of a stack protector
if not needed.

This is paired with an LLVM change which has already landed, which uses
the new metadata to opt specific alloca instructions out of requiring a
stack protector.


  Commit: ab85d5f6429d4237bf861781271eee6108ba6200
      https://github.com/llvm/llvm-project/commit/ab85d5f6429d4237bf861781271eee6108ba6200
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    A llvm/test/MC/AMDGPU/gfx13_asm_vop1.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop1_dpp16.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop1_dpp8.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_err.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop1_t16_promote.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1_dpp16.s
    A llvm/test/MC/AMDGPU/gfx13_asm_vop3_from_vop1_dpp8.s

  Log Message:
  -----------
  [AMDGPU] Add VOP1 support for gfx13 (#177603)

Co-authored-by: Ivan Kosarev <ivan.kosarev at amd.com>


  Commit: 8b93eeef74d89fb6c68e7be6b792b1dc633b1c74
      https://github.com/llvm/llvm-project/commit/8b93eeef74d89fb6c68e7be6b792b1dc633b1c74
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M lldb/source/Expression/UserExpression.cpp

  Log Message:
  -----------
  [lldb][UserExpression] Delay deletion of failed user expression (#177921)

Instead of creating a new `UserExpressionSP` for the fix-it expression,
just re-use the existing `user_expression_sp`. We used to always reset
it when an expression failed, even if no fix-it was available. An
upcoming patch will need the `user_expression_sp` to be alive at the
point where we set up the diagnostic errors. So this patch removes the
unconditional `reset()` on `!parse_success` in favour of resetting it to
the new fixed expression, if one is available.


  Commit: 55f0ed91ef9f6f2f2771533cc61d21019ba79153
      https://github.com/llvm/llvm-project/commit/55f0ed91ef9f6f2f2771533cc61d21019ba79153
  Author: Chaitanya <Krishna.Sankisa at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.cpp
    A flang/test/Lower/OpenMP/thread-limit-dims.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/unittests/Frontend/OpenMPDecompositionTest.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPClauses.td
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [OpenMP][MLIR] Add thread_limit with dims modifier support (#171825)

PR adds support of openmp 6.1 feature thread_limit with dims modifier.
llvmIR translation for thread_limit with dims modifier is marked as NYI.


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

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
    M llvm/unittests/Target/AArch64/AArch64SelectionDAGTest.cpp

  Log Message:
  -----------
  Support EXTRACT_SUBVECTOR in computeKnownBits for scalable vectors (#177163)

Rather than not supporting this case it would just be more conservative
as it will need to prove known bits for all elements.

Follows on from #176883


  Commit: 90829e51cf6bde39ce84d9560bfdb07ca67374b2
      https://github.com/llvm/llvm-project/commit/90829e51cf6bde39ce84d9560bfdb07ca67374b2
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sinf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sinf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sinf16.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 sinf16 implementation to header-only in src/__support/math folder. (#178062)

Part of #147386
    
in preparation for:

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


  Commit: 7cd14638d49ffefc877d66027d2290cde1072fca
      https://github.com/llvm/llvm-project/commit/7cd14638d49ffefc877d66027d2290cde1072fca
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/Mustache.cpp
    M llvm/lib/Support/Path.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/Support/* (#178167)


  Commit: 47bfb42bed9d7cf0900e2390c6130c0adeed71be
      https://github.com/llvm/llvm-project/commit/47bfb42bed9d7cf0900e2390c6130c0adeed71be
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/lib/ExecutionEngine/Interpreter/Execution.cpp
    M llvm/lib/ExecutionEngine/Orc/COFFVCRuntimeSupport.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/ExecutionEngine/* (#178173)


  Commit: 25a18889c63a9a63fe194ed1a02663cd0e60048b
      https://github.com/llvm/llvm-project/commit/25a18889c63a9a63fe194ed1a02663cd0e60048b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libcxx/docs/CodingGuidelines.rst

  Log Message:
  -----------
  [libc++] Document that backported language features should be used (#176993)

We've been using language extensions from newer language modes quite
liberally throughout the code base for a while now and didn't encounter
major problems. This patch documents that practice in the coding
guidelines.


  Commit: 47fa46c1c4ad9fb0b44e463aa80ab65fc08c3a9d
      https://github.com/llvm/llvm-project/commit/47fa46c1c4ad9fb0b44e463aa80ab65fc08c3a9d
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/Target/* (#178179)


  Commit: c2457742c0023e1d9ff8a0f7dd154e58e265fe0c
      https://github.com/llvm/llvm-project/commit/c2457742c0023e1d9ff8a0f7dd154e58e265fe0c
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Make class_match variadic, reuse for m_LiveIn. NFC (#178196)


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

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

  Log Message:
  -----------
  [VPlan] Refine VPValue types in tryToFoldLiveIns (NFC) (#178183)

tryToFoldLiveIns operates on live-ins (that is, both VPIRValues and
VPSymbolicValues), and returns a VPIRValue. Clarify this.


  Commit: 05443a9807bca50e8dee8936f10b5d574a981e83
      https://github.com/llvm/llvm-project/commit/05443a9807bca50e8dee8936f10b5d574a981e83
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++] Refactor how we do amortized growth (#171117)

When doing amortized growth we currently have separate functions for
calculating the new capacity and allocating. However, we set the size to
the calculated capacity that way instead of the actually required size.
This makes the interface quite confusing, since the size has to be set
manually. Instead, this patch refactors the function to get the
amortized growth capacity to instead allocate and set the size
correctly.


  Commit: fa3f78ebedfaf03c671fece8c3b42f16ef7b24d6
      https://github.com/llvm/llvm-project/commit/fa3f78ebedfaf03c671fece8c3b42f16ef7b24d6
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp

  Log Message:
  -----------
  [clangd] Support clang-cl flags /std:c++23preview and /std:clatest (#178080)

Related to https://github.com/clangd/clangd/issues/527 and
https://github.com/clangd/clangd/issues/1850.

Previously: https://github.com/llvm/llvm-project/pull/160030


  Commit: dba9397b3173bee1591830f2829abd5ef5538946
      https://github.com/llvm/llvm-project/commit/dba9397b3173bee1591830f2829abd5ef5538946
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M .github/workflows/ids-check.yml

  Log Message:
  -----------
  [GHA] Disable the ids-check workflow (#178170)

The workflow is too disruptive as it is because we are still missing too
many `LLVM_ABI` annotations. Disable it for the time being.

See #109483 for details.


  Commit: c1152f0fb250a8321dbb2aa73e2a8d6c798f2127
      https://github.com/llvm/llvm-project/commit/c1152f0fb250a8321dbb2aa73e2a8d6c798f2127
  Author: Lukas Sommer <lukas.sommer at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Transforms/Utils/DialectConversion.cpp
    M mlir/test/Transforms/test-legalizer-rollback.mlir
    M mlir/test/lib/Dialect/Test/TestPatterns.cpp

  Log Message:
  -----------
  [mlir] Avoid segfault in 'MoveBlockRewrite' rollback (#178148)

Prior to this change, rollback of the `MoveBlockRewrite` could result in
segfault if the block wasn't contained in a region anymore.

That situation could arise if the previous rollback of another rewrite
orphaned the block by removing it from its region, as demonstrated by
the new test pattern.

Signed-off-by: Lukas Sommer <lukas.sommer at amd.com>


  Commit: d5bc5f9b3070eeacefdb415e22977044ff2270ba
      https://github.com/llvm/llvm-project/commit/d5bc5f9b3070eeacefdb415e22977044ff2270ba
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add fixit verification of lifetimebound suggestions (NFC) (#177763)

We first run -fixit mode and apply fixes in-place, then check with
-Werror=lifetime-safety-suggestions if something is left unfixed (which
means annotations are missing)


  Commit: 1c870d0dfe9573160df469fdb00d90f2d097662d
      https://github.com/llvm/llvm-project/commit/1c870d0dfe9573160df469fdb00d90f2d097662d
  Author: Mariusz Sikora <mariusz.sikora at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    A llvm/test/MC/AMDGPU/gfx13_asm_sop1.s
    A llvm/test/MC/AMDGPU/gfx13_asm_sop1_alias.s

  Log Message:
  -----------
  [AMDGPU] Add SOP1 support for gfx13 (#177618)

Co-authored-by: Jay Foad <jay.foad at amd.com>


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

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

  Log Message:
  -----------
  [ConstraintElim] Use try_emplace to improve code (NFC) (#178186)


  Commit: 737db63fafa273a840d84594ca7c96fef113c8f2
      https://github.com/llvm/llvm-project/commit/737db63fafa273a840d84594ca7c96fef113c8f2
  Author: Ryutaro Okada <140468571+sakupan102 at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/test/Dialect/Linalg/bufferize.mlir

  Log Message:
  -----------
  [mlir][Linalg] implement bufferization for `linalg.pack` (#177982)

Add a BufferizableOpInterface implementation for linalg.pack now that
pack supports memref semantics
https://github.com/llvm/llvm-project/commit/4b066c7fff3455dc547fabb676583391febe41e9.
This completes the op’s bufferization path and avoids copy-before-write
for destination operands.

---------

Signed-off-by: Ryutaro Okada <1015ryu88 at gmail.com>


  Commit: d456e56f27814a82ba125499186a30e44517f415
      https://github.com/llvm/llvm-project/commit/d456e56f27814a82ba125499186a30e44517f415
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    A flang/test/Lower/OpenACC/acc-deviceptr.f90

  Log Message:
  -----------
  [flang][acc] remap variable in device_ptr clauses (#177018)

I previously disabled the variable remapping to data operand results in
the IR for the deviceptr clause because it was not clear how fir.box
would be dealt with and the remapping increased the usage of fir.box.
Since then, it was clarified that lowering could use fir.box and that it
would be up to the runtime to deal with the fact that the fir.box is
implemented by a descriptor allocated on the host and containing the
base address of an entity on the device.
Remove the workaround.


  Commit: 4848313824ef17e85a474331c1f4f7b261c7ec77
      https://github.com/llvm/llvm-project/commit/4848313824ef17e85a474331c1f4f7b261c7ec77
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    A flang/test/Lower/HLFIR/ivdep-elemental.f90
    A flang/test/Lower/HLFIR/ivdep-where.f90

  Log Message:
  -----------
  [flang] propagate IVDEP in array expressions optimization (#178171)

Follow-up on https://github.com/llvm/llvm-project/pull/177940.
This propagates the access attribute in cases where hlfir.assign is
being transformed in array expression optimizations.
It also adds handling for the cases where there are WHERE/FORALL or user
defined assignments inside the loop and that an hlfir.region_assign is
first being generated.


  Commit: 45102be5e541a316cdf75bcf877684a5ce3ad620
      https://github.com/llvm/llvm-project/commit/45102be5e541a316cdf75bcf877684a5ce3ad620
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/include/flang/Lower/ConvertCall.h
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/test/Lower/HLFIR/calls-f77.f90
    M flang/test/Lower/HLFIR/elemental-array-ops.f90
    M flang/test/Lower/HLFIR/where.f90
    M flang/test/Lower/Intrinsics/storage_size-2.f90
    M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.f90
    M flang/test/Lower/array-elemental-calls-char-dynamic.f90
    M flang/test/Lower/array-elemental-calls-char.f90
    M flang/test/Lower/io-statement-clean-ups.f90
    M flang/test/Transforms/DoConcurrent/locally_destroyed_temp.f90

  Log Message:
  -----------
  [flang] emit declare for function result before call (#177615)

This change moves the declare of result storage alloca before the call
so that alias analysis can revert to linking fir.declare to the fisrt
dominating dummy_scope instead of the dominating one.

This is only relevant when MLIR inlining is enabled and is the first
step to fix issues recent TBAA changes that placed target data in its
own tree exposed an issue with the result storage of a TARGET result.
After inlining, the usages of the result storage inside the callee and
after the call ended-up being placed in different nodes (target and non
target) of the same TBAA tree (for the dominating function).

The fact that both nodes are placed in the same tree stems from
https://github.com/llvm/llvm-project/pull/146006 that fixed another TBAA
issue related to MLIR inlining and function result where the function
result was placed into the wrong TBAA tree, which with nested inlining
could end-up being the tree of a callee where the result storage was a
dummy, causing the TBAA to wrongfully tell that any access to the result
storage inside the nested callee did not alias with any access after the
call.

By moving the declare before the call that will be inlined, this patch
will allow reverting #146006 and fixing both issues: the TBAA emit for
usages of the result storage after the call will always be placed in a
different TBAA tree than any usages of the result storage inside the
callee.


  Commit: 9a39c2ff75d0df9dbdf613e5e2ab638176555451
      https://github.com/llvm/llvm-project/commit/9a39c2ff75d0df9dbdf613e5e2ab638176555451
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
    R flang/test/Transforms/tbaa-for-local-vars.fir
    M flang/test/Transforms/tbaa-target-inlined-results.fir
    M flang/test/Transforms/tbaa-with-dummy-scope2.fir

  Log Message:
  -----------
  Revert "[flang] Use outermost fir.dummy_scope for TBAA of local allocations. (#146006) (#177617)

This reverts commit 90da61634a4accc9869b4e1cb1ac3736158c33e6.

See https://github.com/llvm/llvm-project/pull/177615 for more context
about why this patch is and can now be reverted.


  Commit: 051d93195744fa7bfe8fd0b8813274ec7574dc11
      https://github.com/llvm/llvm-project/commit/051d93195744fa7bfe8fd0b8813274ec7574dc11
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp

  Log Message:
  -----------
  [flang] remove AbstractConverter.h include from IntrinsicCall.h (#178150)

AbstractConverter.h is pulling a lot of headers, including some from
Evaluate. This causes any library using IntrinsicCall.h to have to link
against FortranEvaluate and FortranSupport while there is no actual
need/usage of Evaluate data structures.

I opened https://github.com/llvm/llvm-project/issues/178142 to fully
remove the AbstractConverter from IntrinsicCall.cpp, but for now this
patch should at least prevent the consumers of IntrinsicCall.h to
bring-in these extra libraries.

Should solve the DEBUG build problem from
https://github.com/llvm/llvm-project/pull/178076.


  Commit: 48565d9e7224c29c991674769822ab61a89bc9d2
      https://github.com/llvm/llvm-project/commit/48565d9e7224c29c991674769822ab61a89bc9d2
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Analysis/DataFlow/IntegerRangeAnalysis.h
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp

  Log Message:
  -----------
  [mlir][dataflow] Drop the firstIndex argument of visitNonControlFlowArguments (#175210)

This PR improves the signature of `visitNonControlFlowArguments`:
- The function now takes non-successor-inputs ("non-control-flow
arguments") instead of successor inputs. This is more consistent with
the naming of the function.
- `firstIndex` is no longer needed and dropped. (It was needed only to
identify the non-successor-inputs among the block arguments / op
results.)

Background: Successor inputs are forwarded values (e.g., iter_args / op
results of an `scf.for`) and non-successor-inputs are all other block
arguments / op results (e.g., the loop induction variable of an
`scf.for`.)

Note for LLVM integration: `visitNonControlFlowArguments` now receives
the non-successor-input directly. You no longer have to find those among
the list of all block arguments / op results based on `firstIndex`.

RFC:
https://discourse.llvm.org/t/rfc-drop-the-firstindex-argument-of-visitnoncontrolflowarguments-of-sparseforwarddataflowanalysis/89419/5


  Commit: a73bdba2e80c6cff91ec135b5502909b14934d68
      https://github.com/llvm/llvm-project/commit/a73bdba2e80c6cff91ec135b5502909b14934d68
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [flang][OpenMP] Update semantic checks for LINEAR clause (#177055)

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

In particular, make step-simple-modifier be compatible (i.e. not
exclusive) for OpenMP spec versions < 52, and update the modifier
validity checks for the construct on which the clause is located.


  Commit: cdb1948b616a075ce80598e38e06b49a362d0750
      https://github.com/llvm/llvm-project/commit/cdb1948b616a075ce80598e38e06b49a362d0750
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix Bazel build for 90829e51 (#178210)


  Commit: c41691c8b6a86a7703314a556f84b98df92a688c
      https://github.com/llvm/llvm-project/commit/c41691c8b6a86a7703314a556f84b98df92a688c
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCMIPeephole.cpp
    A llvm/test/CodeGen/PowerPC/peephole-livevars-tracking.mir

  Log Message:
  -----------
  [PowerPC] Fix XXPERMDI peephole and ISEL LiveVariables bugs (#172122)

Fixes https://github.com/llvm/llvm-project/issues/159116
Prevent XXPERMDI splat optimization when the splat output register is
used in other instructions, which caused undefined register references. 
Also track removed ISEL operands in simplifyToLI to prevent 
LiveVariables corruption during ISEL-to-COPY conversion.


  Commit: 21b0fdf8ec703e8c64e2c979b13c12030239cce0
      https://github.com/llvm/llvm-project/commit/21b0fdf8ec703e8c64e2c979b13c12030239cce0
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/defaultmap.f90
    A offload/test/offloading/fortran/target-defaultmap-implicit-mapper.f90

  Log Message:
  -----------
  [Flan][OpenMP] Implement TODO support for compatible defaultmap types for implicit mappers (#177389)

Make implicit default mapper generation respect defaultmap categories so
unrelated defaultmap clauses no longer suppress mappers for derived
types.
Added related tests.


  Commit: f0bf97281f981f130eee0b7672a5eb223bb8bc01
      https://github.com/llvm/llvm-project/commit/f0bf97281f981f130eee0b7672a5eb223bb8bc01
  Author: Zhuoran Yin <zhuoryin at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/MemRef/Transforms/MultiBuffer.cpp
    M mlir/test/Dialect/MemRef/multibuffer.mlir

  Log Message:
  -----------
  [MemRef] Propagate strided layout through view-like ops in multiBuffer (#176941)

The memref::multiBuffer transformation replaces an allocation with a
multi-buffered allocation and creates a strided memref.subview at each
loop iteration. When the original allocation is used through view-like
ops, the existing code only handles SubViewOp, leaving other view-like
ops with incorrect types.

This patch extends replaceUsesAndPropagateType to handle ExpandShapeOp,
CollapseShapeOp, and CastOp using TypeSwitch. For each view-like op, we
compute the correct result type (or assert on failure) and create a new
operation, then recursively propagate the updated type through chains.
New FileCheck tests cover expand_shape, collapse_shape, cast, and a
chained expand_shape->cast case.

A single ViewLikeOpInterface hook is not practical here: view-like ops
have distinct type inference and validity rules (e.g., subview uses
offset/size/stride inference, expand/collapse use reassociation, cast
requires compatibility checks). Ops like memref.view or
memref.reinterpret_cast need additional layout/size validation beyond
what multi-buffering currently tracks, so this patch handles the common
safe cases directly.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/emergency-slot.mir

  Log Message:
  -----------
  [RISCV] Remove 'implicit $vl' from PseudoVMV_X_S in emergency-slot.mir. NFC (#178015)

This instruction doesn't use VL and the pseudo doesn't have a VL
operand. According to VSETVLIInserter tests, this instruction only gets
implicit $vtype added to it.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmacc-sdnode.ll

  Log Message:
  -----------
  [RISCV] Reorder some check-prefixes in a way that makes the update script work. NFC (#178120)

Prior to this, the update_llc_test_checks script would generate ZVFBFA
and ZVFBFWMA checks that were already included in ZVFHMIN.


  Commit: e7063e820637498355a184a45c42c19fa58ff2f3
      https://github.com/llvm/llvm-project/commit/e7063e820637498355a184a45c42c19fa58ff2f3
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td
    M mlir/test/Dialect/SPIRV/IR/composite-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/group-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/intel-ext-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/logical-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
    M mlir/test/Dialect/SPIRV/IR/structure-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Enforce `SPIRV_Vector` to have rank of one (#178185)

Currently only vector length is enforced however this allows vectors of
rank >1 to pass the verification as long as the length agrees. This
change restricts `SPIRV_Vector`s to be of rank 1 as required by the
SPIR-V spec.

This also fixes a bug where `SPIRV_Composite` allowed high ranked
vectors but `spirv::CompositeType` did not leading to cast assertions
where the composite type was assumed.

Finally, this change adds two new common constraints that can enforce
all three: rank, length and type.

fixes #178127


  Commit: f32c00f6d8aa8d2d57bf8afb47f3c99bdf7ac537
      https://github.com/llvm/llvm-project/commit/f32c00f6d8aa8d2d57bf8afb47f3c99bdf7ac537
  Author: Valery Pykhtin <valery.pykhtin at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/LiveIntervalUnion.h
    M llvm/include/llvm/CodeGen/LiveRegMatrix.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveIntervalUnion.cpp
    M llvm/lib/CodeGen/LiveRegMatrix.cpp
    M llvm/lib/CodeGen/RegAllocBase.cpp
    M llvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.cpp

  Log Message:
  -----------
  [regalloc][LiveRegMatrix][AMDGPU] Fix LiveInterval dangling pointers in LiveRegMatrix. (#168556)

This patch correctly removes segments from LiveRegMatrix that reference LiveIntervals removed after spilling. Added validity check that LiveRegMatrix doesn't contain invalid references to intervals.


  Commit: 28d621e752f898643bb16beee9607b95dad1d753
      https://github.com/llvm/llvm-project/commit/28d621e752f898643bb16beee9607b95dad1d753
  Author: Susan Tan (ス-ザン タン) <zujunt at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    A flang/test/Lower/do-while-to-scf-while.f90

  Log Message:
  -----------
  [flang] Lowering fortran structured do-while loops to `scf.while` (#177476)

WIP. Implemented structured do-while loops (i.e., the only control-flow
edge that can leave the outer loop is the one taken when the DO WHILE
condition becomes false) lowering to `scf.while`.


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

  Changed paths:
    M libcxx/include/__algorithm/ranges_swap_ranges.h
    M libcxx/include/__algorithm/swap_ranges.h

  Log Message:
  -----------
  [libc++] Forward calls to ranges::swap_ranges to the 3-leg implementation if possible (#176762)

This allows us to make use of any optimizations to `std::swap_ranges` in
`ranges::swap_ranges`.

This patch also moves some code specific to `ranges::swap_ranges` into
`ranges_swap_ranges.h`.


  Commit: a871f8783015abddca18092da2e8acae4bd1fe74
      https://github.com/llvm/llvm-project/commit/a871f8783015abddca18092da2e8acae4bd1fe74
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang-rt/unittests/Runtime/Reduction.cpp

  Log Message:
  -----------
  [flang-rt] Use std::numeric_limits::infinity (#178166)

#175373 introduces a divide-by-zero to create an infinity value, which
is undefined behavior in C++ (C++20 [expr.mul] §4), even when done at
compile-time. This cases flaky test fails with the flang-x86_64-windows
buildbot. Visual Studio 2026 refuses to compile it with error C2124.

Use `std::numeric_limits<float>::infinity()` instead.


  Commit: 94e21bcec061c1691cd0d5382e3c6f420e0386c4
      https://github.com/llvm/llvm-project/commit/94e21bcec061c1691cd0d5382e3c6f420e0386c4
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir

  Log Message:
  -----------
  [mlir][tosa] Improve level check error messages (#174980)

This commit adds expected and actual values to the level check error
messages, making it easier for a user to diagnose issues.


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

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

  Log Message:
  -----------
  [RISCV] Remove VL from VMV_X_S/VFMV_F_S implicit uses in MC layer. (#178043)


  Commit: c8646f52482aef5e059c4012d3d75418af132c3a
      https://github.com/llvm/llvm-project/commit/c8646f52482aef5e059c4012d3d75418af132c3a
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgDialect.cpp

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


  Commit: 01a4b528376b6784d6c3350a262a3139af5fc38b
      https://github.com/llvm/llvm-project/commit/01a4b528376b6784d6c3350a262a3139af5fc38b
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp

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


  Commit: 24b5cf154b2c92d7cc4cbafb4188bf9abe958a42
      https://github.com/llvm/llvm-project/commit/24b5cf154b2c92d7cc4cbafb4188bf9abe958a42
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/GPU/Transforms/EliminateBarriers.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for llvm-else-after-return in EliminateBarriers.cpp (NFC)


  Commit: 8a6be403da5aaf79c7dd6c481388cde979b7b4fa
      https://github.com/llvm/llvm-project/commit/8a6be403da5aaf79c7dd6c481388cde979b7b4fa
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in TestLinalgTransforms.cpp (NFC)


  Commit: 6f8cea3f90596c1a80e89e2c1e2d2aa75cc9e4e8
      https://github.com/llvm/llvm-project/commit/6f8cea3f90596c1a80e89e2c1e2d2aa75cc9e4e8
  Author: Jean-Didier PAILLEUX <jean-didier.pailleux at sipearl.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang-rt/include/flang-rt/runtime/terminator.h
    M flang-rt/lib/runtime/main.cpp
    M flang-rt/lib/runtime/stop.cpp
    M flang-rt/lib/runtime/terminator.cpp
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Runtime/stop.h
    M flang/lib/Lower/Runtime.cpp
    M flang/lib/Optimizer/Builder/Runtime/Main.cpp
    M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
    M flang/test/Fir/MIF/init.mlir

  Log Message:
  -----------
  [flang][MIF] Adding Stop and ErrorStop PRIF call procedures (#166787)

This PR proposes to add `Stop` and `ErrorStop` PRIF call procedures to the MIF
dialect. If the `-fcoarray` flag is passed, then all calls to `STOP` and `ERROR
STOP` will use those of PRIF in flang-rt. Thes procedure has been registered 
during the initialization (mif::InitOp).

---------

Co-authored-by: Dan Bonachea <dobonachea at lbl.gov>


  Commit: ccea75dc12e9c8022e1fa07ebb4bfb686170f35a
      https://github.com/llvm/llvm-project/commit/ccea75dc12e9c8022e1fa07ebb4bfb686170f35a
  Author: David Tenty <daltenty at ibm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/unittests/TargetParser/Host.cpp

  Log Message:
  -----------
  [llvm][AIX][unit] skip AIXTargetVersionDetect when target env in effect (#178017)

The unit tests expects OS levels in the default triple to match the
host, but if we are overriding the compiled in default with an
environment setting that may not be the case.


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

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir

  Log Message:
  -----------
  Revert "[mlir][tosa] Improve level check error messages" (#178239)

Reverts llvm/llvm-project#174980


  Commit: 20014885c36ab2fab24da463d3837e699d02f364
      https://github.com/llvm/llvm-project/commit/20014885c36ab2fab24da463d3837e699d02f364
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M .github/workflows/libcxx-build-and-test.yaml
    A libcxx/cmake/caches/Generic-asan-in-tests-only.cmake
    M libcxx/include/__debug_utils/sanitizers.h
    M libcxx/include/deque
    M libcxx/include/string
    A libcxx/test/extensions/libcxx/asan/diagnose_container_overflow_checks_disablement.verify.cpp
    A libcxx/test/extensions/libcxx/asan/disable_container_overflow_checks.pass.cpp
    M libcxx/test/libcxx/containers/strings/basic.string/asan.pass.cpp
    M libcxx/test/libcxx/containers/strings/basic.string/asan_short.pass.cpp
    M libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
    M libcxx/test/support/asan_testing.h
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/libcxx/test/features/libcxx_macros.py

  Log Message:
  -----------
  [libc++] Honor __SANITIZER_DISABLE_CONTAINER_OVERFLOW__ in libc++ (#168955)

Address sanitizer recently got a new macro __SANITIZER_DISABLE_CONTAINER_OVERFLOW__
which is intended to disable container overflow checks in libraries (either the
standard library or user libraries that might provide such checks). This patch makes
libc++ honor that macro and, in addition, cleans up how these checks are enabled for
string (which is special) by introducing a macro just for string.

rdar://166234942


  Commit: 9e5ef1f13c6159f3222de3e3842e8fb030e532c3
      https://github.com/llvm/llvm-project/commit/9e5ef1f13c6159f3222de3e3842e8fb030e532c3
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [Github] Add glob patterns for `clang:ssaf` label (#178079)

This change updates the `new-prs-labeler.yml` file to automatically add
`clang:ssaf` label to PRs that add or modify SSAF headers,
implementation, tests and documentation.


  Commit: 24862c2b6003c2b8f7f08aad571eb47355037d3d
      https://github.com/llvm/llvm-project/commit/24862c2b6003c2b8f7f08aad571eb47355037d3d
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-emergency-slot.mir

  Log Message:
  -----------
  [RISCV][test] Simplify a test. (#178052)


  Commit: 79f5bc4927ecae52138953879f4430a77bfe31e3
      https://github.com/llvm/llvm-project/commit/79f5bc4927ecae52138953879f4430a77bfe31e3
  Author: kwyatt-ext <kwyatt.external at hpe.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/docs/FortranStandardsSupport.md
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Lower/rank-clause02.f90
    A flang/test/Parser/unparse-rank-clause.f90
    A flang/test/Semantics/rank-clause01.f90

  Log Message:
  -----------
  [flang] Implemented the RANK clause of an attr-spec, per the Fortran 2023 Standard (#176979)

This implements the RANK clause per the Fortran 2023 Standard. This
includes both the parsing/semantics and un-parsing functionality. It is
a fairly straight-forward change.

An executable test was added that tests the examples from the Fortran
2023 What's New document.

check-flang, check-flang-rt, and llvm-lit tests have been executed
against this change.

---------

Co-authored-by: Kevin Wyatt <kwyatt at hpe.com>


  Commit: ae24a90ce6337e24311c6f93d5afc88d96a37481
      https://github.com/llvm/llvm-project/commit/ae24a90ce6337e24311c6f93d5afc88d96a37481
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll

  Log Message:
  -----------
  [SLP][NFC]Add disojoint reduction or tests, which can be represented as bitcasts/bswaps


  Commit: d3ebc63fb8744a0474dd52f56d3c56a399744d22
      https://github.com/llvm/llvm-project/commit/d3ebc63fb8744a0474dd52f56d3c56a399744d22
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [clang-cl] Handle -fmacro-prefix-map= (#177917)


  Commit: fbdb9d32cc2e752ea2d1ea8b2c3606839798d9f4
      https://github.com/llvm/llvm-project/commit/fbdb9d32cc2e752ea2d1ea8b2c3606839798d9f4
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/bug177502.f90

  Log Message:
  -----------
  [flang] Symbol for ENTRY with RESULT has Subroutine flag set (#177671)

When creating a HostAssocDetails symbol for an ENTRY statement with an
explicit RESULT, name resolution unconditionally sets the Subroutine
flag on the symbol. Don't do that.

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


  Commit: d69ad211b5da5a1c34848451366f1b0ddb123ccc
      https://github.com/llvm/llvm-project/commit/d69ad211b5da5a1c34848451366f1b0ddb123ccc
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/bug177601.f90

  Log Message:
  -----------
  [flang] Missing function-vs-subroutine checks on bindings (#177699)

Derived type procedure bindings aren't always subject to the checks of
the function-vs-subroutine classification flags on their symbol table
entries in name resolution, and we're missing some cases that aren't
caught later in expression semantics, which assumed that name resolution
would have already handled them. So check function-vs-subroutine errors
on bindings in expression semantics entirely.

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


  Commit: cc04746802cb899dcce844383af9e430c2800855
      https://github.com/llvm/llvm-project/commit/cc04746802cb899dcce844383af9e430c2800855
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Object/GOFFObjectFile.cpp
    M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
    M llvm/lib/ObjectYAML/CodeViewYAMLTypes.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/Object(YAML)/* (#178177)


  Commit: 84cccfc828448bfbde8dc00e13b4219af2c67b44
      https://github.com/llvm/llvm-project/commit/84cccfc828448bfbde8dc00e13b4219af2c67b44
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/lib/Transforms/Utils/SampleProfileInference.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/Transforms/* (#178178)


  Commit: 4803b0b2696b7c51a8934b3c9b348017de6d07de
      https://github.com/llvm/llvm-project/commit/4803b0b2696b7c51a8934b3c9b348017de6d07de
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/SandboxIR/Context.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/SandboxIR/* (#178180)


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

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.cpp
    M llvm/lib/Target/ARM/ARMTargetTransformInfo.h
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanHelpers.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Analysis/CostModel/AArch64/insert-extract.ll

  Log Message:
  -----------
  [TTI] Add VectorInstrContext for context-aware insert/extract costs. (#175982)

This commit introduces the VectorInstrContext (VIC) infrastructure to
improve cost estimates for insert/extracts based on the context
instruction in which the insert/extract is used.

This is similar to CastContextHint, and allows providing context on how
the insert/extract is going to be used before creating IR. This is
useful in the LoopVectorizer, where costs need to estimated before
creating IR.

The new hint currently only replaces an existing check in AArch64,
but new uses will be introduced in follow-ups, including
https://github.com/llvm/llvm-project/pull/177201.

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


  Commit: 023bfa20131f93a35c405117af3f5267921baa0e
      https://github.com/llvm/llvm-project/commit/023bfa20131f93a35c405117af3f5267921baa0e
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp

  Log Message:
  -----------
  [CIR] ExprWithCleanups for Complex expr (#178032)

Upstream support ExprWithCleanups for Complex expr


  Commit: 23a05130154107fca71e9c4881f6279c42a88cc5
      https://github.com/llvm/llvm-project/commit/23a05130154107fca71e9c4881f6279c42a88cc5
  Author: David Peixotto <dpeixotto at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/RegAllocBasic.h
    M llvm/test/CodeGen/AMDGPU/register-killed-error-after-alloc-failure0.mir
    M llvm/unittests/CodeGen/CMakeLists.txt
    A llvm/unittests/CodeGen/RegAllocBasicTest.cpp

  Log Message:
  -----------
  [regalloc][basic] Fix non-deterministic codegen in basic register allocator (#177998)

The basic register allocator's priority queue exhibited
non-deterministic behavior when multiple LiveIntervals had identical
spill weights. This caused different register allocation decisions
between ASAN and non-ASAN builds, leading to spurious test failures on
some internal tests.

Root Cause:
The CompSpillWeight comparator only compared spill weights:
```
  return A->weight() < B->weight();
```

When two LiveIntervals had equal weights, the comparator returned false
for both comp(A,B) and comp(B,A), making them equivalent in the heap
ordering. The C++ standard does not specify the relative order of
equivalent elements in a heap. In practice, the heap's internal
structure for equivalent elements depends on implementation details and
memory layout. ASAN changes memory layout, leading to different valid
heap configurations and thus different dequeue order.

Fix:
Add an explicit stable tie-breaker using virtual register numbers:
```
  return std::tuple(A->weight(), A->reg()) <
         std::tuple(B->weight(), B->reg());
```

Register numbers are stable integers independent of memory layout,
ensuring deterministic behavior across all build configurations. When
spill weights are equal, higher-numbered virtual registers are allocated
first, which is equally valid and deterministic.

Test Updates:
Updated test expectations in
CodeGen/AMDGPU/register-killed-error-after-alloc-failure0.mir to reflect
the new deterministic allocation order. When LiveIntervals have equal
spill weights, the allocator now consistently processes them in register
number order rather than in an implementation-defined order.


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

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp

  Log Message:
  -----------
  ValueTracking: Move sin/cos computeKnownFPClass handling to support (#178240)

These are the same for now but keep the separate names for future
use.


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

  Changed paths:
    M llvm/lib/CodeGen/RegisterCoalescer.cpp

  Log Message:
  -----------
  [RegisterCoalescer] Remove unneeded definesFullReg check (#178241)

An equivalent check is already done inside
TargetInstrInfo::isReMaterializable.


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

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/AMDGPU/nofpclass-amdgcn-log.ll
    M llvm/test/Transforms/Attributor/nofpclass-log.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-log.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  ValueTracking: log never returns denormal (#178234)


  Commit: 4ca6d8a6bf6b3ab1864a920b7e958f2790b324b7
      https://github.com/llvm/llvm-project/commit/4ca6d8a6bf6b3ab1864a920b7e958f2790b324b7
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir

  Log Message:
  -----------
  Reland: [mlir][tosa] Improve level check error messages (#178248)

This commit adds expected and actual values to the level check error
messages, making it easier for a user to diagnose issues.


  Commit: e80de08aa6a4301b8e306607750eaf83c9241e13
      https://github.com/llvm/llvm-project/commit/e80de08aa6a4301b8e306607750eaf83c9241e13
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-27 (Tue, 27 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
    A llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.atomic.cmpxchg.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-atomic-cmpxchg.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_ATOMIC_CMPXCHG (#178066)

>From the legalizer, G_ATOMIC_CMPXCHG is legal with local and region pointers.
Global and flat pointers are converted into G_AMDGPU_ATOMIC_CMPXCHG. Implement
rules for both variants.


  Commit: 828f14483dc3f194c3e8de730f5fa8ea6348864f
      https://github.com/llvm/llvm-project/commit/828f14483dc3f194c3e8de730f5fa8ea6348864f
  Author: Justin Stitt <justinstitt at google.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [Clang] Invert emptiness check for correctness (#178068)

Fix a bug in a deferred call which was supposed to clear the `DeclForInitializer` field but was doing so incorrectly because the emptiness check needs to be inverted.


  Commit: 2158b83f61a788a4027f5f22d24f86eac43f42a5
      https://github.com/llvm/llvm-project/commit/2158b83f61a788a4027f5f22d24f86eac43f42a5
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    A clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    A clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  Add nodelete annotation for WebKit checkers with a new checker for validation (#177839)

This PR adds the support for specifying
`[[clang::annotate_type("webkit.nodelete")]]` on a function return type,
in which case, the whole function is considered "trivial" or more
precisely that it does not trigger any destruction of an object.

This PR also introduces alpha.webkit.NoDeleteChecker which validates
soundness of the annotation by examining the function body. The checker
will warn if `[[clang::annotate_type("webkit.nodelete")]]` is specified
on a function with a body which does not pass the triviality test.

---------

Co-authored-by: Balazs Benics <benicsbalazs at gmail.com>


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

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

  Log Message:
  -----------
  InstCombine: Apply demanded mask at recursion limit in SimplifyDemandedFPClass (#178157)

This fixes missed flag inference in some cases, due to not inferring
no-nan result implies no-nan source. Also start treating explicit
nofpclass
attributes as a leaf value, like a constant or argument.


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

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

  Log Message:
  -----------
  InstCombine: Check one use before trying to simplify copysign sign (#178251)

Fixes #178245


  Commit: 934638cc6e0548a1eaae90a32761d9e11822020a
      https://github.com/llvm/llvm-project/commit/934638cc6e0548a1eaae90a32761d9e11822020a
  Author: Ayush Kumar Gaur <132849148+Ayush3941 at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/TosaToSCF/TosaToSCF.cpp
    A mlir/test/Conversion/TosaToSCF/tosa-to-scf-invalid.mlir

  Log Message:
  -----------
  [MLIR][TOSA] Guard scatter lowering against unranked operand (#178188)

### What the problem 

--tosa-to-scf crashes when lowering tosa.scatter if operands are
unranked, because the lowering assumes RankedTensorType and later builds
tensor.extract_slice, which asserts on unranked tensors.

### Why it Happened

The current pattern does not check operand ranks before lowering, even
though the implementation hardcodes 3D (N,W,C) semantics and cannot
handle unranked or differently-ranked tensors.

### Whats The Fix

Add rank/type guards in ScatterOpConverter and fail the rewrite unless
operands are ranked with expected ranks (values/input: rank-3, indices:
rank-2), allowing legalization to fail gracefully instead of crashing.

Fixes #177966


  Commit: a451344abac1b3be5172539811c7a75056940498
      https://github.com/llvm/llvm-project/commit/a451344abac1b3be5172539811c7a75056940498
  Author: Jakob Koschel <jakobkoschel at google.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake

  Log Message:
  -----------
  [libc] fix LIBC_CONF_ENABLE_STRONG_STACK_PROTECTOR (#178136)

In order to apply the stack protector correctly to the compile options,
we need to make sure to use the same config name everywhere.

`LIBC_CONF_ENABLE_STACK_PROTECTOR` seems to be outdated and all other
places specify `LIBC_CONF_ENABLE_STRONG_STACK_PROTECTOR` and it should
therefore be updated here as well.


  Commit: 6826f1a6f35b690b604bc81bfe73a5b743905303
      https://github.com/llvm/llvm-project/commit/6826f1a6f35b690b604bc81bfe73a5b743905303
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_rtl.cpp

  Log Message:
  -----------
  [ASan] Fix UnpoisonDefaultStack stack bottom estimation (#178137)

UnpoisonDefaultStack estimates the stack bottom as:

```
    bottom = ((uptr)&local_stack - page_size) & ~(page_size - 1);
```

However, this can try to poision memory that doesn't have a shadow (i.e.
AddrIsInMem(x) is false) if the local_stack variable is within two pages
of the actual bottom of the space available for stack. This causes the
unpoison-alternate-stack.cpp test (which allocates a very small stack)
to fail.

This PR changes this computation to check AddrIsInMem before subtracting
the additional page.

rdar://82645815


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

  Changed paths:
    M llvm/tools/llvm-tli-checker/llvm-tli-checker.cpp

  Log Message:
  -----------
  llvm-tli-checker: Print custom name instead of standard name (#178265)

Previously this always printed the standard name if the function
was available, leaving any custom name override untested. Print the
target's name instead. The message should possibly include the standard
name for reference.

Closes #142537


  Commit: c960499255a04e402d118d86a00ebcf1a8942ac9
      https://github.com/llvm/llvm-project/commit/c960499255a04e402d118d86a00ebcf1a8942ac9
  Author: Steven Perron <stevenperron at google.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl

  Log Message:
  -----------
  Revert "[HLSL] Improve HLSL resource method generation" (#178266)

Reverts llvm/llvm-project#176806

This is causing memsan failures related to the source locations for cast
instructions we are not generating. The failure is not straight forward
to fix, so I will revert this while I work on a fix.


  Commit: 3f5a5d45d18a514f086f3e07c9676ca5fb95bbe9
      https://github.com/llvm/llvm-project/commit/3f5a5d45d18a514f086f3e07c9676ca5fb95bbe9
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/constant_folding.mlir

  Log Message:
  -----------
  [mlir][tosa] Add constant folding support for `tosa.dim` (#176975)

This enhances shape inference.


  Commit: beb440566496fb0577ac82c76c2cc3bf28b6bae5
      https://github.com/llvm/llvm-project/commit/beb440566496fb0577ac82c76c2cc3bf28b6bae5
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/CAS/BUILD.gn

  Log Message:
  -----------
  [gn] Handle llvm_enable_ondisk_cas better for CASTests


  Commit: 16722ff5e2579bcaf4de2024aa2aeaccc84a1be2
      https://github.com/llvm/llvm-project/commit/16722ff5e2579bcaf4de2024aa2aeaccc84a1be2
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/BranchProbability.h
    M llvm/include/llvm/Support/SourceMgr.h

  Log Message:
  -----------
  llvm: Add `LLVM_ABI` annotations in SourceMgr and BranchProbability (#177344)

These were found as part of an unrelated change in #174892 [1].

This effort is tracked in #109483.

[1]
https://github.com/llvm/llvm-project/pull/174892#issuecomment-3740884157


  Commit: 774279f012ab56ae24730a9436f97d1160955f78
      https://github.com/llvm/llvm-project/commit/774279f012ab56ae24730a9436f97d1160955f78
  Author: Lucas Chollet <lucas.chollet at free.fr>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-cov.rst
    M llvm/test/tools/llvm-cov/ignore-filename-regex.test
    A llvm/test/tools/llvm-cov/include-and-exlude-filename-regex.test
    A llvm/test/tools/llvm-cov/include-filename-regex.test
    M llvm/tools/llvm-cov/CodeCoverage.cpp
    M llvm/tools/llvm-cov/CoverageFilters.cpp
    M llvm/tools/llvm-cov/CoverageFilters.h

  Log Message:
  -----------
  [llvm-cov] Introduce `-include-filename-regex` (#175779)

This allows to filter the source directory so the coverage outputs only includes the files matching the regex.


  Commit: 4ccdd2ffaccf619bb45482e9591c2aae5b5c53f8
      https://github.com/llvm/llvm-project/commit/4ccdd2ffaccf619bb45482e9591c2aae5b5c53f8
  Author: Michael G. Kazakov <mike.kazakov at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libcxx/include/__algorithm/pstl.h
    M libcxx/include/__pstl/backend_fwd.h
    M libcxx/include/__pstl/backends/default.h
    M libcxx/test/libcxx/algorithms/pstl.nodiscard.verify.cpp
    A libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted.pass.cpp
    A libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/pstl.exception_handling.pass.cpp

  Log Message:
  -----------
  [libc++][pstl] Generic implementation of parallel std::is_sorted (#176129)

This PR implements a generic backend-agnostic parallel `std::is_sorted`
based on `std::transform_reduce`.

While this approach is suboptimal comparing a direct backend-specific
implementation, since it doesn't support early termination and requires
a reduction operation, it does show speedup when the dataset is large
enough and the comparator is not absolutely trivial.

Parent issue: #99938


  Commit: 18280cfd933368463b2a9ab5216e87224e112be0
      https://github.com/llvm/llvm-project/commit/18280cfd933368463b2a9ab5216e87224e112be0
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.h
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    M mlir/include/mlir/Dialect/OpenACC/OpenACC.h
    M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
    M mlir/unittests/Dialect/OpenACC/CMakeLists.txt
    A mlir/unittests/Dialect/OpenACC/OpenACCTypeInterfacesTest.cpp

  Log Message:
  -----------
  [flang][acc] Use ReducibleType interface on LogicalType (#178253)

Introduce a new ReducibleType type interface in the OpenACC dialect that
provides a type-aware mechanism for translating OpenACC reduction
operators to arith::AtomicRMWKind values. This interface should be
attached to value types that can participate in OpenACC reductions.

For FIR, implement this interface on fir::LogicalType to handle the
AccLand and AccLor reduction operators, which map to
arith::AtomicRMWKind::andi and ori respectively.


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

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

  Log Message:
  -----------
  [libc++] Rewrite the std::lower_bound benchmark to be more efficient and add an upper_bound benchmark (#177180)

The current benchmark is incredibly slow to run. This patch refactors
the benchmark to be faster and also adds an equivalent benchmark for
`std::upper_bound`.

Fixes #177026


  Commit: bdfe03bbceeb063b5ff9df9bcb31a3db870fcf62
      https://github.com/llvm/llvm-project/commit/bdfe03bbceeb063b5ff9df9bcb31a3db870fcf62
  Author: Djordje Todorovic <djordje.todorovic at htecgroup.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/CodeGen/Mips/musttail-forward-declaration.c
    A clang/test/CodeGen/Mips/musttail-pic.c
    A clang/test/CodeGen/Mips/musttail-visibility.c
    A clang/test/CodeGen/Mips/musttail-weak.c
    A clang/test/CodeGen/Mips/musttail.c
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
    A llvm/test/CodeGen/Mips/musttail.ll

  Log Message:
  -----------
  [MIPS][ISel] Fix musttail (#161860)

Properly handle clang::musttail attribute on MIPS backend.

It fixes: https://github.com/llvm/llvm-project/issues/161193


  Commit: c183af34af4d94ea58a17ec189471cb0df24f326
      https://github.com/llvm/llvm-project/commit/c183af34af4d94ea58a17ec189471cb0df24f326
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/noreturn.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Dialect/LLVMIR/func.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    M mlir/test/Target/LLVMIR/Import/function-attributes.ll
    M mlir/test/Target/LLVMIR/Import/instructions.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [CIR] Implement 'noreturn' attribute for functions/calls. (#177978)

This mirrors what LLVM does, and requires propagating into the LLVM
dialect: When the user specifies 'noreturn' we propagate this down
throughout the stack.

Note the similar 'willreturn' is too strong of a guarantee (in that they
are not opposites of each other, as there is a 'unknown' implied by all
others), so we cannot use that on non-noreturn functions.


  Commit: 2753e1dedfff36596cb1af2c6522614094db6cbf
      https://github.com/llvm/llvm-project/commit/2753e1dedfff36596cb1af2c6522614094db6cbf
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/arith-int.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/load-binop-store.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/vec3-base.ll

  Log Message:
  -----------
  [RISCV] Set the reciprocal throughtput cost for division to TTI::TCC_Expensive (#177516)

Fixes #176208. Scaled back version of #176515 that only affects the RISCV backend.

Only modifies the cost for cases when DIV is a legal operation.

Updates the cost for both Scalar and Vector types.

Used `TTI::TCC_Expensive` as suggested by
https://github.com/llvm/llvm-project/issues/176208#issuecomment-3760902537.

---------

Co-authored-by: Luke Lau <luke_lau at icloud.com>


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

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

  Log Message:
  -----------
  [RISCV] Replace VPatBinaryV_VX_VROTATE with VPatBinaryV_VX. NFC (#178254)

VPatBinaryV_VX_VROTATE appeared to be almost exact copy and paste of
VPatBinaryV_VX except it used 'XLenVT' instead of 'vti.Scalar'.
'vti.Scalar' is 'XLenVT' for integer vectors so this wasn't a real
difference.

This change allows VV_VX or VV_VX_VI combination classes to be used,
further reducing the code.

No tablegen outputs change with this patch.


  Commit: f2921e536bb03bbef73a0e5740c518545cf997ee
      https://github.com/llvm/llvm-project/commit/f2921e536bb03bbef73a0e5740c518545cf997ee
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-with-selects.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine][profcheck] More fixes for missing branch data in InstCombineCompares.cpp (#178084)

Again, these fixes are trivial as we're creating new select instructions
with predicates from existing select instructions.

In this case, we create one select instruction from two existing select
instructions, but since both existing select instructions have the same
predicate, their profile data should be the same, so we can reuse the
profile data from either instruction. Therefore, we arbitrarily reuse
the profile data from the first select instruction.

Tracking issue: #147390


  Commit: bc6aab2a3a56149f33f8dd7a9d7cb5f017bba865
      https://github.com/llvm/llvm-project/commit/bc6aab2a3a56149f33f8dd7a9d7cb5f017bba865
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/round-fptoui-sat-scalar.ll

  Log Message:
  -----------
  [AArch64] Add missing GlobalISel patterns to round+convert multiclass (#177799)

This allows GlobalISel to fuse floating point round+convert operations
in the same way as SelectionDAG.


  Commit: e470fa2e1b9dadd58a2affcbc79013fce3d441ac
      https://github.com/llvm/llvm-project/commit/e470fa2e1b9dadd58a2affcbc79013fce3d441ac
  Author: dyung <douglas.yung at sony.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/stack-protector-vars.cpp

  Log Message:
  -----------
  Add -emit-llvm to RUN line for test added in #173311. (#178271)

Should fix the test failure on buildbots that do not build the x86
backend such as
https://lab.llvm.org/buildbot/#/builders/190/builds/35171 and
https://lab.llvm.org/buildbot/#/builders/154/builds/26976.


  Commit: 4239e858fee7998b0dbc1decf24f230cddc2e83d
      https://github.com/llvm/llvm-project/commit/4239e858fee7998b0dbc1decf24f230cddc2e83d
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/test/CodeGen/AArch64/nontemporal-load.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/nontemporal-load-store.ll

  Log Message:
  -----------
  [AArch64] Align nontemporal store/load little-endian checks (#177468)

This patch aims to align all nontemporal store/load handling to
systematically enforce a little-endian target. This has been the
effective support LLVM had for NT store/load lowering (there has been no
effective support for big-endian, even with the inconsistencies).

The change in `llvm/lib/Target/AArch64/AArch64InstrInfo.td` is
effectively a NFC, because the only lowering of LDNP, in
`llvm/lib/Target/AArch64/AArch64ISelLowering.cpp`, have already checked
for `isLittleEndian`. The change in
`llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h` affects its
single caller
`llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp`. The
previous logic has been wrong, enabling vectorization of effectively
illegal nontemporal store/load instructions on big-endian.


  Commit: 85812fde9e09fe870f3005cbf54c0144df21eaaa
      https://github.com/llvm/llvm-project/commit/85812fde9e09fe870f3005cbf54c0144df21eaaa
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M polly/lib/Transform/ZoneAlgo.cpp

  Log Message:
  -----------
  [Polly][DeLICM] Check for error state (#178281)

When the ISL max-operations is exceeded, `is_wrapping` will return an
error state. Propagate the error state to the caller.

Fixes #175953


  Commit: 94f8a32f3d8fc62a84200210179f04fd41774f66
      https://github.com/llvm/llvm-project/commit/94f8a32f3d8fc62a84200210179f04fd41774f66
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix macOS lldb BUILD (#178274)

Missing dep + a layering_check violation in macOS only deps (not tested
on current CI)


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td

  Log Message:
  -----------
  [RISCV] Remove RVInstV2. NFC (#177901)

It only as 2 users and RVInstV2 isn't a good name. We can use RVInstVX
and set vs2 to 0 at the definition.


  Commit: 90cc5a4618903e0832517f3be0d58deaf9f49c2c
      https://github.com/llvm/llvm-project/commit/90cc5a4618903e0832517f3be0d58deaf9f49c2c
  Author: Vikas Patel <55973740+vkpatel186 at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [clang-format] Add ObjCSpaceBeforeMethodDeclColon option to control space before Objective-C method return type (#170579)

[clang-format] Add ObjCSpaceBeforeMethodDeclColon option to control
space before Objective-C method return type

This patch introduces the ObjCSpaceBeforeMethodDeclColon style option,
allowing users to add or remove a space between the '-'/'+' and the
return type in Objective-C method declarations (e.g., '- (void)method'
vs '-(void)method').

Includes documentation and unit tests.


  Commit: fcd0ef005d3fd7cf0d5f38bec20bbf3484f60092
      https://github.com/llvm/llvm-project/commit/fcd0ef005d3fd7cf0d5f38bec20bbf3484f60092
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-cvt-simd-fptoi.ll
    M llvm/test/CodeGen/AArch64/round-conv.ll
    M llvm/test/CodeGen/AArch64/round-fptosi-sat-scalar.ll
    M llvm/test/CodeGen/AArch64/round-fptoui-sat-scalar.ll

  Log Message:
  -----------
  [AArch64] Fuse froundeven+convert into single instruction (#177800)

Stacked on https://github.com/llvm/llvm-project/pull/177799.

We're already able to fuse `fceil`, `ffloor`, `ftrunc`, and `fround`
followed by a float-to-int conversion into a single "rounded conversion"
instruction. However, we were not doing this for `froundeven`, even
though there's a "convert to integer, rounding to even" instruction
(`FCVTNS`/`FCVTNU`).


  Commit: f8e59085620cbe5b7f65d92e211d037c47a6197b
      https://github.com/llvm/llvm-project/commit/f8e59085620cbe5b7f65d92e211d037c47a6197b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 2158b83f61a7


  Commit: 0e4ce03e7ebcff838cde28aa479cb0639ff61c13
      https://github.com/llvm/llvm-project/commit/0e4ce03e7ebcff838cde28aa479cb0639ff61c13
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 23a051301541


  Commit: e7780836e1d37e34bce003e0d9308fceb34506a2
      https://github.com/llvm/llvm-project/commit/e7780836e1d37e34bce003e0d9308fceb34506a2
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port b285745dc1a4


  Commit: 90b5ec12264967feb8bb257c17c7821f5b1f4dce
      https://github.com/llvm/llvm-project/commit/90b5ec12264967feb8bb257c17c7821f5b1f4dce
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    A llvm/test/CodeGen/AMDGPU/debug-independence-revertScheduling.ll

  Log Message:
  -----------
  [AMDGPU] revertScheduling must behave the same with or without debug (#177483)

When revertScheduling reorders instructions only update LiveIntervals if
non-debug instructions have been re-ordered. Otherwise code-generation
can change with debug info.

---------

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


  Commit: 4a60ee93328c9cbaf2e2acaec20ab6fa2211586b
      https://github.com/llvm/llvm-project/commit/4a60ee93328c9cbaf2e2acaec20ab6fa2211586b
  Author: Sean Perry <perry at ca.ibm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/test/Sema/pragma-export-failing.cpp

  Log Message:
  -----------
  [SystemZ][asan] Handle error of pragma in struct so memory clean up happens (#178243)

I missed the other failing case for pragmas in declarations with the fix
in #177979. Anytime the pragma is tokenized, the parser needs to call
HandlePragmaExport() so the allocated token is consumed completely by
EnterTokenStream().


  Commit: 9e62b779cc9114fcb4e8bc48c6090c6e90eeb2e3
      https://github.com/llvm/llvm-project/commit/9e62b779cc9114fcb4e8bc48c6090c6e90eeb2e3
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/ConstantRangeList.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/IR/* (#178175)


  Commit: 9bdaebbeae4ce2e5fda875d901eda402c47d8355
      https://github.com/llvm/llvm-project/commit/9bdaebbeae4ce2e5fda875d901eda402c47d8355
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/atomic_sync.h
    M libcxx/include/__atomic/atomic_sync_timed.h
    M libcxx/include/__atomic/atomic_waitable_traits.h

  Log Message:
  -----------
  [libc++] Remove a bunch of unused includes from <atomic> detail headers (#178161)


  Commit: 3446ff1e672e16347bb7e9bbc2b36ce501d471c7
      https://github.com/llvm/llvm-project/commit/3446ff1e672e16347bb7e9bbc2b36ce501d471c7
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Transforms/AllReduceLowering.cpp
    M mlir/test/Dialect/GPU/all-reduce-add.mlir
    M mlir/test/Dialect/GPU/all-reduce-maxf.mlir
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir] Update all-reduce (& vector tests) to use workgroup barriers (#178285)

This commit updates the lowering of all-reduce operations to annotate
the generated barriers with `memfence [#gpu.address_space<workgroup>]`
so that these barriers do not force unrelated global memory operations
to complete. It similarly sets up the warp synchronization function in
the vectory distribuhte tests, since they also only read/write shared
memory.

In additon, this commit adds convenience builders for gpu.barrier, which
will allow it to either fence on a given address space or on the address
space of a provided memref.


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

  Changed paths:
    M llvm/lib/IR/Intrinsics.cpp
    A llvm/test/Assembler/invalid-interleave.ll

  Log Message:
  -----------
  [Intrinsics] Check that element count is a valid multiple before calling VectorType::getOneNthElementsVectorType. (#178283)

Fixes #178275


  Commit: e2427281c61f2cb60d09e717c56c0db7cdf4b423
      https://github.com/llvm/llvm-project/commit/e2427281c61f2cb60d09e717c56c0db7cdf4b423
  Author: timon-ul <timon.ulrich at advantest.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp

  Log Message:
  -----------
  [clangd] Find implementations recursively  (#177564)

This makes `textDocument/implementation` return not just direct implementations
(e.g. directly derived classes) but indirect ones (e.g. derived classes of derived
classes) as well.

This is a step towards fixing https://github.com/clangd/clangd/issues/2499.


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

  Changed paths:
    M lldb/include/lldb/Core/ModuleSpec.h
    M lldb/source/Core/ModuleList.cpp
    M lldb/source/Target/TargetList.cpp
    M lldb/unittests/Target/LocateModuleCallbackTest.cpp

  Log Message:
  -----------
  [lldb] Enable locate module callback for main executable in launch mode (#176266)

During target creation for launch mode, the locate module callback was
not invoked for the main executable because the Target doesn't exist yet
when ModuleList::GetSharedModule is called. This prevented custom module
location logic from being applied to the main executable.

This change adds a PlatformSP to ModuleSpec so that GetSharedModule can
call the locate module callback using the Platform directly, even when
Target is not available. The Platform is now set on the ModuleSpec in
TargetList::CreateTargetInternal before calling ResolveExecutable.

Co-authored-by: George Hu <georgehuyubo at gmail.com>


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    R llvm/lib/Target/RISCV/RISCVSchedTTAscalonD8.td
    A llvm/lib/Target/RISCV/RISCVSchedTTAscalonX.td
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/fp.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/fx.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vdiv_vsqrt.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vislide-vx.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vle-vse-vlm.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vlse-vsse.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vlseg-vsseg.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vlxe-vsxe.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vmv.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vreduce.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vrgather-vcompress.s
    R llvm/test/tools/llvm-mca/RISCV/tt-ascalon-d8/vshift-vmul.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/fp.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/fx.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vdiv_vsqrt.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vislide-vx.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vle-vse-vlm.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vlse-vsse.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vlseg-vsseg.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vlxe-vsxe.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vmv.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vreduce.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vrgather-vcompress.s
    A llvm/test/tools/llvm-mca/RISCV/tt-ascalon-x/vshift-vmul.s

  Log Message:
  -----------
  [RISCV] Rename Tenstorrent Ascalon D8 to Ascalon X (#178199)

As per the official release document. D8 is a former name, used
internally.

Ref: Brief from https://tenstorrent.com/en/ip/risc-v-cpu


  Commit: a7f9621a498637102a57b85dd977585e9070796d
      https://github.com/llvm/llvm-project/commit/a7f9621a498637102a57b85dd977585e9070796d
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-vcvt-fptoi.ll
    M llvm/test/CodeGen/AArch64/shuffle-tbl34.ll

  Log Message:
  -----------
  [AArch64] Add vector floating-point round+convert patterns (#177801)

Stacked on https://github.com/llvm/llvm-project/pull/177800.

We were previously able to fuse *scalar* floating-point round + convert
to integer sequences into a single "rounding conversion" instruction.
This PR extends that to vectors.


  Commit: 93ed74c8905926a6fa97fd0c8cfd7954469d03f3
      https://github.com/llvm/llvm-project/commit/93ed74c8905926a6fa97fd0c8cfd7954469d03f3
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.cpp

  Log Message:
  -----------
  [lldb] Fix unchecked llvm::Expected in ObjectFileWasm (#178299)

Don't discard the llvm::Error when we fail to parse the module or field
name.


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

  Changed paths:
    M openmp/device/CMakeLists.txt
    M openmp/device/include/Synchronization.h
    M openmp/device/src/Synchronization.cpp

  Log Message:
  -----------
  [OpenMP] Small fixes after refactoring and adding SPIR-V support


  Commit: 4aaf7ed74bba1a27ed6056177ad95deaec7e8b80
      https://github.com/llvm/llvm-project/commit/4aaf7ed74bba1a27ed6056177ad95deaec7e8b80
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M offload/include/Shared/Debug.h

  Log Message:
  -----------
  [Offload] Allow specifying debug level with `all` debug type (#178213)

This change allows users to specify debug level with `all` debug type.
The effect of `all:<num>` is equivalent to `<num>`.


  Commit: a46366d7ccaf7618e77751786cd089f8090c9127
      https://github.com/llvm/llvm-project/commit/a46366d7ccaf7618e77751786cd089f8090c9127
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/Mips/musttail.c

  Log Message:
  -----------
  [MIPS][ISel] Write irrelevant test output to /dev/null (#178304)

This allows the test to run on read-only file systems. Fixes
bdfe03bbceeb063b5ff9df9bcb31a3db870fcf62.


  Commit: 35c3669898c02c30e5cb29e08ad8f81dbdb38354
      https://github.com/llvm/llvm-project/commit/35c3669898c02c30e5cb29e08ad8f81dbdb38354
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/Frontend/CompilerInstance.cpp

  Log Message:
  -----------
  [Modules] Add information to stack dump about the built module when clang crashes. (#178108)

This patch adds the functionality to print current module name and
module file at a crash that mirrors `remark_module_build`'s output.


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

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zbc-intrinsic.ll
    M llvm/test/CodeGen/RISCV/rv64zbc-zbkc-intrinsic.ll

  Log Message:
  -----------
  [RISCV] Add signext attribute to llvm.clmul test caes in rv64zbc(-zbkc)-intrinsic.ll. NFC (#178236)

This shows an extra instruction in the clmulr case. We could replace
clmulh+srli+sext.w with clmulr+srai.


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvqdotq.td

  Log Message:
  -----------
  [RISCV] Correct the Predicates for Zvqdotq patterns. NFC (#178295)

The _VL patterns only had GetTypePredicate. The intrinsic predicates
only had Zvqdot. This patch updates them both to use Zvqdot and
GetTypePredicate.

NFC because illegal types and opcodes shouldn't reach isel.


  Commit: 956485d39a63e9bdeeb1bd3c5efc303935558125
      https://github.com/llvm/llvm-project/commit/956485d39a63e9bdeeb1bd3c5efc303935558125
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/source/Core/Module.cpp

  Log Message:
  -----------
  [lldb][NFC] Remove ObjectFile::ResolveSymbolForAddress (#177479)

Nothing overrides this method and the base class's implementation
returns nullptr.


  Commit: 9ca02a13a484ae351a4ba6dba725a4d232728dcb
      https://github.com/llvm/llvm-project/commit/9ca02a13a484ae351a4ba6dba725a4d232728dcb
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Target/DynamicLoader.h
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectType.cpp
    M lldb/source/Core/Address.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Plugins/SymbolFile/JSON/SymbolFileJSON.cpp
    M lldb/source/Symbol/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFileOnDemand.cpp
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/ThreadPlanShouldStopHere.cpp
    M lldb/unittests/ObjectFile/MachO/TestObjectFileMachO.cpp
    M lldb/unittests/Symbol/SymtabTest.cpp

  Log Message:
  -----------
  [lldb][NFC] Mark Symbol pointers as const where easily possible (#177472)

These are the places that required no modifications to surrounding code.


  Commit: 339f7795708921fbd07ce063956abaa6238d49fe
      https://github.com/llvm/llvm-project/commit/339f7795708921fbd07ce063956abaa6238d49fe
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-llvm.mlir
    M offload/libomptarget/omptarget.cpp
    A offload/test/mapping/declare_mapper_target_checks.cpp

  Log Message:
  -----------
  Reland "[OpenMP][Mappers] Fix ref-count tracking for maps inserted by mappers. (#177059)" (#177673)

This reverts commit 5a457837dd988aa01c65820848381a5b99a74c0a.

Includes the test fix from
https://github.com/llvm/llvm-project/pull/177659.

The test had to be updated to exclude a scenario that was failing
with/without the change (involving mapping a struct with a byref member
with a mapper).

-----
**Original PR's description:**

This is a fix for https://github.com/llvm/llvm-project/issues/61636.

Ravi had this implemented downstream before he retired. This PR is a
chery-pick of that.

The test is taken from @jdoerfert's WIP change in

https://github.com/jdoerfert/llvm-project/commit/527bf4b1293f452aac1f872c4f771c7950b911f9.

The change partially undoes the changes done in
0caf736d7e1d16d1059553fc28dbac31f0b9f788, so @alexey-bataev might need
to take a look.


  Commit: 1d379d05d46d77b5f008349cc14de27dd055f4b9
      https://github.com/llvm/llvm-project/commit/1d379d05d46d77b5f008349cc14de27dd055f4b9
  Author: Akshay Deodhar <adeodhar at nvidia.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    R llvm/test/CodeGen/NVPTX/atomicrmw-expand.ll
    A llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
    A llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
    A llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
    A llvm/test/CodeGen/NVPTX/atomicrmw.py
    M llvm/test/CodeGen/NVPTX/atomics-sm60.ll
    R llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    R llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
    M llvm/test/CodeGen/NVPTX/lit.local.cfg

  Log Message:
  -----------
  [NVPTX][AtomicExpandPass] Complete support for AtomicRMW in NVPTX (#176015)

This PR adds full support for atomicrmw in NVPTX. This includes:

- Memory order and syncscope support (changes in AtomicExpandPass.cpp,
NVPTXIntrinsics.td)

- Script-generated tests for integer and atomic operations
(atomicrmw.py, atomicrmw-sm*.ll in tests/CodeGen/NVPTX). Existing
atomics tests which are subsumed by these have been removed
(atomics-sm*.ll, atomics.ll, atomicrmw-expand.ll).

- ~~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.~~ Has been split out into
https://github.com/llvm/llvm-project/pull/176073. Rebased.

- NOTE: The initial load issued for atomicrmw emulation loops (and
cmpxchg emulation loops) must be a strong load. Currently,
AtomicExpandPass issues a weak load. Fixing this breaks several
backends. I'm planning to follow up with a separate PR.


  Commit: 3b0880a2c270c3bd493f39b2812afc7984198d8c
      https://github.com/llvm/llvm-project/commit/3b0880a2c270c3bd493f39b2812afc7984198d8c
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/test/ClangScanDeps/modules.cpp

  Log Message:
  -----------
  [clang][test][NFC] Fix more dependency test failures (#178313)

The bots found another spot where the path to SDKSettings.json is short
enough to go on the same line as the file in the output.


  Commit: 8a62457c10229c2e3bb4d6a2499f0e63b3901ddc
      https://github.com/llvm/llvm-project/commit/8a62457c10229c2e3bb4d6a2499f0e63b3901ddc
  Author: Akshay Deodhar <adeodhar at nvidia.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/atomicrmw-expand.ll
    R llvm/test/CodeGen/NVPTX/atomicrmw-sm60.ll
    R llvm/test/CodeGen/NVPTX/atomicrmw-sm70.ll
    R llvm/test/CodeGen/NVPTX/atomicrmw-sm90.ll
    R llvm/test/CodeGen/NVPTX/atomicrmw.py
    M llvm/test/CodeGen/NVPTX/atomics-sm60.ll
    A llvm/test/CodeGen/NVPTX/atomics-sm70.ll
    A llvm/test/CodeGen/NVPTX/atomics-sm90.ll
    M llvm/test/CodeGen/NVPTX/atomics.ll
    M llvm/test/CodeGen/NVPTX/distributed-shared-cluster.ll
    M llvm/test/CodeGen/NVPTX/lit.local.cfg

  Log Message:
  -----------
  Revert "[NVPTX][AtomicExpandPass] Complete support for AtomicRMW in NVPTX (#176015)" (#178329)

This reverts commit 1d379d05d46d77b5f008349cc14de27dd055f4b9. This
change breaks llvm-nvptx-nvidia-win in the buildbot.


  Commit: cf4ce383b3c7776c06ee744acebfec1e0c1c946d
      https://github.com/llvm/llvm-project/commit/cf4ce383b3c7776c06ee744acebfec1e0c1c946d
  Author: Brian Cain <brian.cain at oss.qualcomm.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dylib.cmake

  Log Message:
  -----------
  [hexagon] Add dylib cmake + toolchain_only (#177247)

The toolchains take up much less space when we enable dylib, so let's
create an option to build them that way.

Also: TOOLCHAIN_ONLY was ineffective in
hexagon-unknown-linux-musl-clang-cross.cmake because cmake takes the
first setting from hexagon-unknown-linux-musl-clang.cmake with
precedence. FORCE it to fix that issue.

Signed-off-by: Brian Cain <brian.cain at oss.qualcomm.com>


  Commit: d733771113339608aff6002d1fa89aaf4a51c502
      https://github.com/llvm/llvm-project/commit/d733771113339608aff6002d1fa89aaf4a51c502
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll

  Log Message:
  -----------
  Revert "[SLP]Support for tree throttling in SLP graphs with gathered loads"

This reverts commit 0666a777ec8138f58ebc7fc41a2fb8097328308a.

Makes clang assert, see repro at
https://github.com/llvm/llvm-project/pull/177855#issuecomment-3808529832


  Commit: 9d5d2eec215b98da04f30a9bdb62e663fefb38d5
      https://github.com/llvm/llvm-project/commit/9d5d2eec215b98da04f30a9bdb62e663fefb38d5
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/test/CodeGen/SPIRV/pointers/array-skips-gep.ll
    M llvm/test/CodeGen/SPIRV/pointers/load-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-struct.ll
    M llvm/test/CodeGen/SPIRV/pointers/store-to-array-first-element.ll
    M llvm/test/Instrumentation/AddressSanitizer/asan-stack-safety.ll

  Log Message:
  -----------
  [Mem2Reg] Remove extraneous getAllocatedType() check (#177438)

Replace uses of getAllocatedType() in PromoteMemoryToRegister.cpp with
type tracking from actual loads and stores. This makes the promotion
logic more semantic - it now checks that all loads/stores use a
consistent type rather than requiring them to match the alloca's
declared type.

Changes:
- isAllocaPromotable() now tracks the first load/store type seen and
ensures all subsequent accesses use the same type
- AllocaInfo gains a ValueType field populated during AnalyzeAlloca()
- PromoteMem2Reg tracks AllocaValueTypes alongside other per-alloca info
- PHI nodes and UndefValues are created using the tracked type

This is semantically more permissive - an alloca declared as i64 but
only accessed as i32 is now promotable. This is correct because the
alloca is just a blob of memory; what matters for Mem2Reg is consistent
access patterns.

Test changes:
- asan-stack-safety.ll: Changed loads/stores to volatile to prevent
promotion while preserving ASAN stack safety analysis behavior
- SPIRV pointer tests (array-skips-gep.ll, load-struct.ll,
store-struct.ll, store-to-array-first-element.ll): Added escape calls to
prevent alloca promotion, as these tests verify SPIRV backend handling
of Function-storage-class pointers

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 6c22adcaee4cc9620927a743cc0cbea952f3debe
      https://github.com/llvm/llvm-project/commit/6c22adcaee4cc9620927a743cc0cbea952f3debe
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGClass.cpp
    M clang/test/CodeGenCXX/inheriting-constructor.cpp
    M clang/test/CodeGenCXX/vtt-address-space.cpp

  Log Message:
  -----------
  [clang] consistent addrspace for GetVTTParameter result (#177044)

Avoid using VTT->getValueType() and VoidPtrTy and DRY the code to more
accurately get and set the addrspace without relying on the behavior of
struct indexing into a GlobalValue declared type.


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

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

  Log Message:
  -----------
  [RISCV] Make RVInstIVI_VROR inherit from RVInstVBase. NFC (#178293)


  Commit: 0ed8e7230f82ab0da92730200268ccada64e8484
      https://github.com/llvm/llvm-project/commit/0ed8e7230f82ab0da92730200268ccada64e8484
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/scalable-predication.ll

  Log Message:
  -----------
  [VPlan] Create SCEV before any VPIRInstructions to check for overflow (#177911)

This PR tried to fix the assertion fail at VPlanTransforms.cpp:4862
since SCEV was created after VPIRInstructions.

The tripcount in scalable-predication.ll was changed from constant value
256 to non-constant value %n to avoid VPIRInstructions optimized out,
which cannot trigger the assertion fail.

The orders in ir-bb<entry> from:

ir-bb<entry>:
  EMIT vp<%2> = EXPAND SCEV (1 umax %n)
  EMIT vp<%3> = sub ir<-1>, vp<%2>
  EMIT vp<%4> = EXPAND SCEV (4 * vscale)<nuw>
  EMIT vp<%5> = icmp ult vp<%3>, vp<%4>
  EMIT branch-on-cond vp<%5>
Successor(s): scalar.ph, vector.ph

to:

ir-bb<entry>:
  EMIT vp<%2> = EXPAND SCEV (1 umax %n)
  EMIT vp<%3> = EXPAND SCEV (4 * vscale)<nuw>
  EMIT vp<%4> = sub ir<-1>, vp<%2>
  EMIT vp<%5> = icmp ult vp<%4>, vp<%3>
  EMIT branch-on-cond vp<%5>
Successor(s): scalar.ph, vector.ph


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td

  Log Message:
  -----------
  [RISCV] Add missing HasStdExtZvkb Predicate to some of the vector rotate patterns. NFC (#178250)

We already had it on the rotl with immediate patterns, but not any of
the others. This reduces the isel table size by a few hundred bytes by
allowing additional factoring with the rotl with immediate patterns.

This is NFC because these patterns shouldn't make it to isel if the
predicate wasn't already satisfied.


  Commit: 2f92d440438e6049e46e1e8c75e4b1806b835a51
      https://github.com/llvm/llvm-project/commit/2f92d440438e6049e46e1e8c75e4b1806b835a51
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/RISCV/sink-to-early-exit.ll
    A llvm/test/Transforms/LoopVectorize/sink-to-early-exit.ll

  Log Message:
  -----------
  [LV] Pre-commit test for sinking the recipe into vector early exit block. nfc (#177954)

Pre-commit for #168031


  Commit: bf408aa842872df0348b61cc931561befe198088
      https://github.com/llvm/llvm-project/commit/bf408aa842872df0348b61cc931561befe198088
  Author: Hubert Tong <hubert.reinterpretcast at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/unittests/TargetParser/Host.cpp

  Log Message:
  -----------
  [NFC] Fix unused but set variable

Fixes https://github.com/llvm/llvm-project/pull/178017#issuecomment-3808860054.


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

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

  Log Message:
  -----------
  [libclc] Make output filename configurable; rename top-level targets (#178119)

This PR relates to c5cb48c39701.

Pass `OUTPUT_FILENAME` to `add_libclc_builtin_set` to allow downstream
output naming (e.g. libspirv in
https://github.com/intel/llvm/tree/sycl/libclc).

Rename top-level target to `libclc-${ARG_TRIPLE}` to avoid collision
with `library-${ARG_ARCH_SUFFIX}` in our downstream when libclc TRIPLE
matches libspirv ARCH_SUFFIX.

---------

Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>


  Commit: 4c11b005f2969092b739dd50f8879ac8fded787e
      https://github.com/llvm/llvm-project/commit/4c11b005f2969092b739dd50f8879ac8fded787e
  Author: Prajwal KP <prajwal.kp.1817 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sqrtf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sqrtf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sqrtf16.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 sqrtf16 to Header Only (#177726)

closes: #177651


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

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

  Log Message:
  -----------
  [RISCV] Make sure Zvk* and Zvb* predicates are always paired with a GetVTypePredicates<vti>.Predicates. NFC (#178269)

We were inconsistent about this. Being consistent reduces the
number of unique predicate checks in the generated file.
    
NFC because illegal types don't make it to isel.


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

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/single-byte-counters.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general.c
    M llvm/test/tools/llvm-cov/Inputs/branch-macros-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-macros-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/showLineExecutionCounts-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/showLineExecutionCounts-single.yaml

  Log Message:
  -----------
  [Coverage][Single] Enable Branch coverage for CondOp (#113110)

Depends on: #112730 #113114


https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492


  Commit: 04402d32a5b6d8aa2512230a96a4878e88501c30
      https://github.com/llvm/llvm-project/commit/04402d32a5b6d8aa2512230a96a4878e88501c30
  Author: Sersawy <65075626+Abdelrhmansersawy at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/llogbf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/llogbf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/llogbf16.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 llogbf16 to header-only (#178078)

Closes #175351


  Commit: be0907b10891dc8a08a244b108249e2afb39f473
      https://github.com/llvm/llvm-project/commit/be0907b10891dc8a08a244b108249e2afb39f473
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    A clang/test/Driver/Inputs/FakeOS1.0.sdk/SDKSettings.json
    M clang/test/Driver/darwin-builtin-modules.c

  Log Message:
  -----------
  [clang][driver][darwin] Switch back to using CanonicalName to identify the SDK instead of SupportedTargets (#178115)

The SDK's SupportedTarget for its CanonicalName doesn't necessarily have
an LLVMTargetTripleSys/LLVMTargetTripleEnvironment that matches the
CanonicalName. e.g. sometimes new SDKs use arm64-apple-ios1.0 during
bringup, but their CanonicalName is set to the new platform. Go back to
using CanonicalName to identify the SDK as a Triple::OSType, and expose
the Triple::EnvironmentType used to build the SDKPlatformInfo when
SupportedTargets isn't present.


  Commit: f92948fa9b52c6c64255d0cf0dfb0ef64c8e83fd
      https://github.com/llvm/llvm-project/commit/f92948fa9b52c6c64255d0cf0dfb0ef64c8e83fd
  Author: DannyDaoBoYang <daobo.yang41 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sinpif.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sinpif.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sinpif.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 sinpif to Header Only. (#176580)

closes [#176477](https://github.com/llvm/llvm-project/issues/176477)

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

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


  Commit: 69e855bb1bcad5cf2a684d424d5094ff61075da8
      https://github.com/llvm/llvm-project/commit/69e855bb1bcad5cf2a684d424d5094ff61075da8
  Author: Dasha Buka <dvbuka at proton.me>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ilogb.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ilogb.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ilogb.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 ilogb implementation to header-only in src/__support/math folder. (#175504)

closes #175348


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

  Changed paths:
    A clang/test/Modules/modulemap-with-named-module.cppm

  Log Message:
  -----------
  [NFC] [C++20] [Modules] Make sure we can use named module with module map


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

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

  Log Message:
  -----------
  [RISCV] Hoist a duplicate setOperationAction to a common place. NFC (#178364)


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrFormatsC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXwch.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZcmop.td

  Log Message:
  -----------
  [RISCV] Add OPC_C0/C1/C2 named values to tablegen. NFC (#178325)

This adds named opcodes for the compressed instructions like we have for
the 32-bit instructions.


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

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

  Log Message:
  -----------
  [RISCV] Remove unnecessary 'let' from VFWMACCBF16_V. NFC (#178367)

earlyclobber and RVVConstraint are already handled in VWMAC_FV_V_F.


  Commit: adbbe856d7e65351b5d786bb7c9c4cbcf2f81b86
      https://github.com/llvm/llvm-project/commit/adbbe856d7e65351b5d786bb7c9c4cbcf2f81b86
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp

  Log Message:
  -----------
  [perf] Replace copy-assign by move-assign in llvm/lib/CodeGen/* (#178172)


  Commit: da3f2934c3d49624e49c353012d8d7a4e8fc9bfb
      https://github.com/llvm/llvm-project/commit/da3f2934c3d49624e49c353012d8d7a4e8fc9bfb
  Author: Snehasish Kumar <mail at snehasish.net>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/branch.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine][profcheck] Propogate profile metadata when transforming br (X && !Y) to br (!X || Y) (#175939)

Updated visitBranchInst to propagate and swap !prof metadata when transforming br (X && !Y) to br (!X || Y).


  Commit: fc7ad8127a80f9284f805ce3f04109e6033e885e
      https://github.com/llvm/llvm-project/commit/fc7ad8127a80f9284f805ce3f04109e6033e885e
  Author: Snehasish Kumar <mail at snehasish.net>
  Date:   2026-01-27 (Tue, 27 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/binop-select.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine][profcheck] Preserve !prof metadata when folding select. (#177707)

The new select `InstCombinerImpl::foldBinOpSelectBinOp` reuses the same
condition in the same BB as the original so the profile info can be
trivially copied over.


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

  Changed paths:
    M clang/docs/StandardCPlusPlusModules.rst

  Log Message:
  -----------
  [docs] [C++20] [Modules] Offer a method to use clang module map with named modules (#178368)

See the doc for details.


  Commit: a21001ab41742939afa57b557239239506653b9f
      https://github.com/llvm/llvm-project/commit/a21001ab41742939afa57b557239239506653b9f
  Author: int-zjt <zhangjiatong.0 at bytedance.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/Local.cpp

  Log Message:
  -----------
  [JumpThreading] Avoid unnecessary map resizing in gatherIncomingValuesToPhi (#173596)

Previously, `gatherIncomingValuesToPhi` populated the `IncomingValues`
map with *all* non-undef incoming values from the PHI node. For PHI
nodes with a large number of incoming blocks, this caused the
`SmallDenseMap` to grow significantly, triggering expensive resizing and
rehashing operations, even when the caller
(`redirectValuesFromPredecessorsToPhi`) was only interested in a small
subset of predecessors.

This patch optimizes the logic to prevent this unnecessary map growth.

Instead of collecting all values, we now:
1. Initialize the `IncomingValues` map specifically for the blocks in
`BBPreds` (setting them to `nullptr` initially).
2. Iterate through the PHI node and update the map entries only if the
incoming block is already present in the map.

This ensures that the size of the map is bounded by the size of
`BBPreds`. Since `BBPreds` is typically small, this change keeps the map
within the `SmallDenseMap`'s inline storage in most cases, eliminating
heap allocations and resizing overhead for large PHI nodes.

The `selectIncomingValueForBlock` and `replaceUndefValuesInPhi` helpers
are also updated to handle map entries where the value is `nullptr`.


  Commit: 5e3b7084dc676fe1237041fda5b606bd4e655c90
      https://github.com/llvm/llvm-project/commit/5e3b7084dc676fe1237041fda5b606bd4e655c90
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/RelocScan.h

  Log Message:
  -----------
  [ELF] Simplify RelocScan after #163138 (#178375)


  Commit: 3ddddf7a490007660ab49277231e917ff75578d2
      https://github.com/llvm/llvm-project/commit/3ddddf7a490007660ab49277231e917ff75578d2
  Author: Sladyn <sladygit98 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M offload/tools/kernelreplay/llvm-omp-kernel-replay.cpp

  Log Message:
  -----------
  Use reportFatalUsageError in llvm-omp-kernel-replay (#178371)

All error cases in this tool are usage errors (bad user input, missing
files, malformed JSON) rather than internal LLVM bugs, so
`reportFatalUsageError` is the appropriate replacement.


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

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/simd-relaxed-fmax.ll
    M llvm/test/CodeGen/WebAssembly/simd-relaxed-fmin.ll

  Log Message:
  -----------
  [WebAssembly] Zero and NaN checks for min/max (#177968)

Custom lower FMINNUM, FMINIMUMNUM, FMAXNUM and FMAXIMUMNUM to generate
relaxed_min and relaxed_max when the inputs cannot be NaN or signed
zero.

Tablegen patterns have also been modified to check the above conditions
when trying to match relaxed min/max using the pmin/pmax pattern.


  Commit: f4b593a792a61a53068f43b83854b39e304c03f9
      https://github.com/llvm/llvm-project/commit/f4b593a792a61a53068f43b83854b39e304c03f9
  Author: Rick Gaiser <rgaiser at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M clang/lib/Basic/Targets/Mips.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.cpp
    M clang/test/Misc/target-invalid-cpu-note/mips.c
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h
    M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
    M llvm/lib/Target/Mips/Mips.td
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
    M llvm/lib/Target/Mips/MipsSubtarget.cpp
    M llvm/lib/Target/Mips/MipsSubtarget.h
    M llvm/test/CodeGen/Mips/cpus.ll
    A llvm/test/CodeGen/Mips/r5900-short-loop.ll
    A llvm/test/MC/Mips/r5900-invalid.s
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [Mips] Add r5900 (PlayStation 2 Emotion Engine) CPU support (#176666)

This PR adds basic support for the MIPS R5900 CPU, the Emotion Engine
processor used in the PlayStation 2.

**LLVM changes:**
- Add r5900 CPU definition (with soft float support for now)
- Disable instructions not supported by r5900 (64-bit multiply/divide,
LL/SC atomics, COP3)
- Add r5900 specific short loop delay slot fix (hardware errata
workaround)
- Set ISA extension `AFL_EXT_5900` in ELF flags for proper ABI
identification

**Clang changes:**
- Add r5900 as a valid CPU target for `-mcpu=r5900`
- Add r5900 to CPU test coverage


  Commit: 355898a6ce901bf9285a428888068e008b5557e9
      https://github.com/llvm/llvm-project/commit/355898a6ce901bf9285a428888068e008b5557e9
  Author: Dominik Steenken <dost at de.ibm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/Driver/ToolChains/Clang.cpp
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    A llvm/test/CodeGen/SystemZ/patchable-function-entry.ll

  Log Message:
  -----------
  [SystemZ] Enable -fpatchable-function-entry=M,N (#178191)

This PR enables the option `-fpatchable-function-entry` for SystemZ. It
utilizes existing common code and just adds the emission of nops after
the function label in the backend.

SystemZ provides multiple nop options of varying length, making the
semantics of this option somewhat ambiguous. In order to align with what
`gcc` does with that same option, we#re choosing `nopr` as the
canoonical nop for this purpose.

For test, this adapts an existing test file from aarch64.


  Commit: 4a5c5b5929ccd5779ee2ffb34759aea7847ead3d
      https://github.com/llvm/llvm-project/commit/4a5c5b5929ccd5779ee2ffb34759aea7847ead3d
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/test/API/commands/help/TestHelp.py

  Log Message:
  -----------
  [lldb] Make "help format" test more strict (#178216)

Originally added in a81bd7f1014f316b42bf7274f76a340b833e663b /
https://reviews.llvm.org/D35525, this test either was not strict enough,
or lldb's behaviour has drifted since.

I think the intention was to check exactly when the output of "help
format" would wrap. Which should happen when we have printed up to the
terminal width, minus a few characters because we walk backwards to the
closest whitespace point to break at (so we don't split a word).

I've updated the test to check the exact outputs and cover printing one
line and two instances where we need to split different amounts onto a
second line.


  Commit: 9d800ad0a4e9845cba0bf3418878ea729001edea
      https://github.com/llvm/llvm-project/commit/9d800ad0a4e9845cba0bf3418878ea729001edea
  Author: Mirko Brkušanin <Mirko.Brkusanin at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/R600Instructions.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/divergence-driven-buildvector.ll

  Log Message:
  -----------
  [AMDGPU] Use FPImmLeaf for float constants, fix build_vector patterns (#178018)


  Commit: c064244fa28ba15d37e22ff1f1485ce114935a83
      https://github.com/llvm/llvm-project/commit/c064244fa28ba15d37e22ff1f1485ce114935a83
  Author: Julian Pokrovsky <raventid at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp
    A llvm/test/CodeGen/X86/fixup-vpermq-to-vinsert.mir

  Log Message:
  -----------
  [X86] X86FixupInstTunings - attempt to convert VPERMQri to VINSERTI128rri (#177327)

When the immediate is 0x44, VPERMQ/VPERMPD duplicates the lower 128-bit
lane to both lanes. This is equivalent to inserting the lower 128-bits
into the upper 128-bit position, which VINSERTI128/VINSERTF128 can
potentially do more efficiently on some targets.

This patch enables X86FixupInstTuning to convert:
  VPERMQ  ymm, ymm, 0x44 -> VINSERTI128 ymm, ymm, xmm, 1
  VPERMPD ymm, ymm, 0x44 -> VINSERTF128 ymm, ymm, xmm, 1

Resolves #159410


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

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

  Log Message:
  -----------
  [SLP][X86] Add test case for #176906 (#178386)


  Commit: af0d34894c6905b2d106aa134f311bff47986b38
      https://github.com/llvm/llvm-project/commit/af0d34894c6905b2d106aa134f311bff47986b38
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/clamp-fmed3-const-combine.ll

  Log Message:
  -----------
  [AMDGPU] Fix legacy index in fmed3 optimization (#177426)

The `matchFPMed3ToClamp` implementation incorrectly used the old
indexing for arguments from when it was wrapped in an intrinsic
instruction (i.e. the arguments would start at index 2). This missed
case was however in a conditional part of the optimization that would
only be hit if none of the other optimizations were hit. This commit
fixes this path and adds a test ensuring the path is tested in the
future.

Signed-off-by: Steffen Holst Larsen <HolstLarsen.Steffen at amd.com>
Co-authored-by: Steffen Holst Larsen <HolstLarsen.Steffen at amd.com>


  Commit: 6cbefe0016c56077513de1afa2c9a54c12b1f1a9
      https://github.com/llvm/llvm-project/commit/6cbefe0016c56077513de1afa2c9a54c12b1f1a9
  Author: Steffen Larsen <sholstla at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    A llvm/test/CodeGen/AMDGPU/opencl-printf-invalid-signature.ll

  Log Message:
  -----------
  [AMDGPU] Skip printf runtime binding if function signature is unexpected (#177573)

When creating the binding for OpenCL printf calls, we expect the
signature of the function to match the OpenCL specification. If the
signature is unexpected, this patch makes the pass skip creating the
binding to avoid incorrect behavior and crashes.

---------

Signed-off-by: Steffen Holst Larsen <HolstLarsen.Steffen at amd.com>
Co-authored-by: Steffen Holst Larsen <HolstLarsen.Steffen at amd.com>


  Commit: fd1b5048e9dc4d80dbf04996afea35e40d44a62e
      https://github.com/llvm/llvm-project/commit/fd1b5048e9dc4d80dbf04996afea35e40d44a62e
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Shard/Transforms/Partition.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for performance-unnecessary-value-param in Partition.cpp (NFC)


  Commit: ec6b988877cb9af5dd2d01f3f6c0ae55fb04fabe
      https://github.com/llvm/llvm-project/commit/ec6b988877cb9af5dd2d01f3f6c0ae55fb04fabe
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for llvm-qualified-auto in GPUToLLVMConversion.cpp (NFC)


  Commit: 67b217ae6c913ed3da50fd4610cb69d97991fde0
      https://github.com/llvm/llvm-project/commit/67b217ae6c913ed3da50fd4610cb69d97991fde0
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/SCFToGPU/SCFToGPU.cpp

  Log Message:
  -----------
  [MLIR] Apply clang-tidy fixes for readability-container-size-empty in SCFToGPU.cpp (NFC)


  Commit: 24bf018be2055e131c440ffd1b8251e660d3d226
      https://github.com/llvm/llvm-project/commit/24bf018be2055e131c440ffd1b8251e660d3d226
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/enum-size.cpp

  Log Message:
  -----------
  [clang-tidy] performance-enum-size should ignore enums within extern "C" (#178233)

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


  Commit: 51845a53fd2e2f6b0a18dfad3f912e9f676a5fc9
      https://github.com/llvm/llvm-project/commit/51845a53fd2e2f6b0a18dfad3f912e9f676a5fc9
  Author: Soumik15630m <soumik15630m at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/crash-on-out-of-bound-extract.ll

  Log Message:
  -----------
  [SLP] Fix crash on extractelement with out-of-bounds index.....Fixes … (#176918)

…The cose modeling logic was attempting to set a bit in APInt for an
out-of-bounds index, causing an assertion failure. This patch ignores
OOB indices as they produce poison- which is already handled.
Fixes #176780  

this is the same test result which produces this bug 

<img width="1600" height="964" alt="image"
src="https://github.com/user-attachments/assets/80593902-9d15-4e18-850b-a558bca8518e"
/>


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

  Changed paths:
    A flang/test/Lower/const-arg-glob.f90

  Log Message:
  -----------
  [flang][NFC] Separated test for --enable-constant-argument-globalisation (#178350)

The test for --enable-constant-argument-globalisation was added to
existing lowering test as part of
https://github.com/llvm/llvm-project/commit/de528ffb17ebce96e0bc4dde1749146c41ca1d0d

Decouple this test from the other lowering tests to ease conversion to
HLFIR lowering.

Co-authored-by: Jean Perier <jperier at nvidia.com>

Co-authored-by: Jean Perier <jperier at nvidia.com>


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

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/pr176906.ll

  Log Message:
  -----------
  [CostModel][X86] reduce_add(vXi1) will lower as a scalar ctpop (#178400)

Fixes #176906


  Commit: 16d8d4b84edd257a81b243767d7b6bd62bbfb9fa
      https://github.com/llvm/llvm-project/commit/16d8d4b84edd257a81b243767d7b6bd62bbfb9fa
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    A llvm/test/CodeGen/WebAssembly/simd-shuffle-widen.ll

  Log Message:
  -----------
  [WebAssembly] Fix crash in ReplaceNodeResults for ANY_EXTEND_VECTOR_INREG (#178374)

Fixes a crash during type legalization by allowing
ISD::ANY_EXTEND_VECTOR_INREG to fall back to default expansion instead
of hitting llvm_unreachable.

Fixed: #177209


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

  Changed paths:
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [clang][ExprConst] Fix rendering of explicit this parameters (#177551)

in compile-time backtraces.

The two test cases used to be rendered as `foo(s, 0)` and `foo2(s)`.


  Commit: eb64fb6d1208d7a97039f4b042b9b55afa7da0e6
      https://github.com/llvm/llvm-project/commit/eb64fb6d1208d7a97039f4b042b9b55afa7da0e6
  Author: Gil Rapaport <gil.rapaport at mobileye.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/EmitC/Transforms/Transforms.cpp
    M mlir/test/Dialect/EmitC/form-expressions.mlir
    M mlir/test/Dialect/EmitC/invalid_ops.mlir
    M mlir/test/Dialect/EmitC/ops.mlir

  Log Message:
  -----------
  [mlir][emitc] Fix recurring operands in expression (#178382)

Relanding #175535 which got reverted for failing the buildbot.
New canonicalization pattern moved to dialect code.


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

  Changed paths:
    R openmp/README.rst
    A openmp/docs/Building.md
    M openmp/docs/SupportAndFAQ.rst
    M openmp/docs/_themes/llvm-openmp-theme/static/agogo.css_t
    M openmp/docs/conf.py
    M openmp/docs/index.rst
    M openmp/runtime/README.txt
    M openmp/runtime/doc/doxygen/libomp_interface.h

  Log Message:
  -----------
  [OpenMP][docs] Revise building manual (#176175)

Go into more detail on the two non-legacy build modes. 

I decided use create a dedicated document documention the build process.
`index.rst` only keeps the "Getting Started" part. `README.rst` is
vastly outdated with the still valid parts integrated into the new
documentation. `SupportAndFAQ.rst` is unstructured and keeps only the
non-building parts.

The the new building document is written in Meltdown, following the
decision from LLVM.


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

  Changed paths:
    M llvm/docs/CommandGuide/FileCheck.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/test/FileCheck/check-multiple-prefixes-mixed.txt
    M llvm/utils/FileCheck/FileCheck.cpp

  Log Message:
  -----------
  [FileCheck] Allow -check-prefix to take multiple prefixes (#178187)

There was no real benefit to disallowing this, and it sometimes caused
unnecessary churn in the RUN lines of tests which were updated from
single-to-multiple or multiple-to-single prefixes.

This effectively makes -check-prefixes the primary option and
-check-prefix just an alias of it. The documentation is upated
accordingly.


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/test/CodeGen/AMDGPU/release-vgprs.mir

  Log Message:
  -----------
  [AMDGPU] Fix buggy insertion of DEALLOC_VGPRS message (#178401)

We inserted the DEALLOC_VGPRS message if there were no pending scratch
stores the first time an S_ENDPGM instruction was visited. But because
this pass uses a worklist to revisit blocks until it reaches a fixed
point, it is possible that pending scratch stores are only discovered on
the second or later visit to a block. Fix this by storing a flag for
each S_ENDPGM instruction which can be updated by later visits.


  Commit: f44ecfd0702518ad2cfaec1c13549ef9c0aa2f73
      https://github.com/llvm/llvm-project/commit/f44ecfd0702518ad2cfaec1c13549ef9c0aa2f73
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/FileAction.h
    M lldb/source/Host/common/FileAction.cpp
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp

  Log Message:
  -----------
  [lldb][windows] fix an invalid cast from a file descriptor to a HANDLE (#178238)


  Commit: c494b74020a2f9440f7f92fe1401a513af53d940
      https://github.com/llvm/llvm-project/commit/c494b74020a2f9440f7f92fe1401a513af53d940
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp

  Log Message:
  -----------
  [mlir][emitc] Remove unused #include


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

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.cpp
    M clang/lib/Analysis/LifetimeSafety/Checker.cpp
    M clang/lib/Analysis/LifetimeSafety/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/test/Analysis/lifetime-cfg-output.cpp
    M clang/test/Analysis/scopes-cfg-output.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    A clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
    M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
    M clang/test/Sema/warn-lifetime-safety-noescape.cpp

  Log Message:
  -----------
  [LifetimeSafety] Detect dangling fields (#177363)

Detect dangling field references when stack memory escapes to class
fields. This change extends lifetime safety analysis to detect a common
class of temporal memory safety bugs where local variables or parameters
are stored in class fields but outlive their scope.

- Added a new `FieldEscapeFact` class to represent when an origin
escapes via assignment to a field
- Refactored `OriginEscapesFact` into a base class with specialized
subclasses for different escape scenarios
- Added detection for stack memory escaping to fields in constructors
and member functions
- Implemented new diagnostic for dangling field references with
appropriate warning messages

Importantly,
- Added `AddParameterDtors` option to CFG to add parameter dtors and
lifetime ends behind an option. In principle, parameters ctors and dtors
do not belong in the function context but in the caller context. This
becomes incorrect to include in function's CFG when we have inlined CFGs
like some analyses in the analyzer (produces double dtors for
arguments). Therefore this provides a way to opt-in to know about
destructed params on function exits.


  Commit: bf7e2b81e779713cc535c884e287ec6cf02fcfef
      https://github.com/llvm/llvm-project/commit/bf7e2b81e779713cc535c884e287ec6cf02fcfef
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/test/Preprocessor/has_attribute_errors.cpp
    A clang/test/Preprocessor/has_c_attribute_errors.c

  Log Message:
  -----------
  [Clang] prevent preprocessor crash on incomplete scoped __has_cpp_attribute arguments (#178273)

Fixes #178098

---

This patch addressed the issue when `__has_cpp_attribute` is expanded
with incomplete scoped attributes. The scoped name parsing can lex to
`eof`/`eod` at


https://github.com/llvm/llvm-project/blob/3f5a5d45d18a514f086f3e07c9676ca5fb95bbe9/clang/lib/Lex/PPMacroExpansion.cpp#L1877-L1881

and then proceed with


https://github.com/llvm/llvm-project/blob/3f5a5d45d18a514f086f3e07c9676ca5fb95bbe9/clang/lib/Lex/PPMacroExpansion.cpp#L1425-L1430


since `eof`/`eod` is not guarded at


https://github.com/llvm/llvm-project/blob/3f5a5d45d18a514f086f3e07c9676ca5fb95bbe9/clang/lib/Lex/PPMacroExpansion.cpp#L1367-L1372

this could lead to a preprocessor crash


https://github.com/llvm/llvm-project/blob/3f5a5d45d18a514f086f3e07c9676ca5fb95bbe9/clang/lib/Lex/PPMacroExpansion.cpp#L1370


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/pr178410.ll

  Log Message:
  -----------
  [X86] vectorizeExtractedCast - don't assume vector source type is simple (#178414)

Fixes #178410


  Commit: 6fe246e639aae37329f34d57e2b8729bf9d3cfab
      https://github.com/llvm/llvm-project/commit/6fe246e639aae37329f34d57e2b8729bf9d3cfab
  Author: Prajwal <fasfasmag at proton.me>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [DAG] SDPatternMatch - Add matchers for reassociatable additions with NSW/NUW flags (#177973)

Fixes #176809


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

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/misc-attrs.cpp
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Dialect/LLVMIR/func.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    M mlir/test/Target/LLVMIR/Import/function-attributes.ll
    M mlir/test/Target/LLVMIR/Import/instructions.ll
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [CIR] Implement returns_twice, cold, hot, noduplicate, convergent func attrs (#178289)

Continuing my quest to get most of the attributes completed, this patch
implements 5 attributes for CIR/Clang CIR codegen.

4 of the 5 are also implemented in LLVM-MLIR, since 'convergent' was
already there.

As a part of this, we also had to make sure that attributes were handled
properly for Call operation lowering, like we do for function
attributes.


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

  Changed paths:
    M clang/test/Sema/const-ptr-int-ptr-cast.c

  Log Message:
  -----------
  [clang][test] Replace stdint include with uintptr_t typedef (#178125)

This is what we usually do in tests.


  Commit: 6074f9b6246686e61e48d9e3aafc1c2069f93e5a
      https://github.com/llvm/llvm-project/commit/6074f9b6246686e61e48d9e3aafc1c2069f93e5a
  Author: Joshua Rodriguez <josh.rodriguez at arm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    M llvm/test/CodeGen/AArch64/arm64-vshift.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add support for scalar variants of neon right shifts (#178207)

Neon intrinsics are able to operate on single-element vectors (e.g <1 x
i64>). However, LLVM doesn't allow single-element vectors, and instead
converts them to scalar values (e.g i64) in the frontend.
To get around this, the backend must place these scalar values onto an
fpr register bank, in order for the intrinsic to operate on the value as
a vector.

Previously, scalar right shift intrinsics were not legalising due to
misconfigured logic in AArch64LegalizerInfo, which treated non-vector
variants of these intrinsics as invalid.
This has been fixed so that the following can lower:
sqshrn
sqshrun
sqrshrn
sqrshrun
uqshrn
uqrshrn


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

  Changed paths:
    M libc/config/gpu/config.json

  Log Message:
  -----------
  [libc] Do not use stack protectors or frame pointers on GPU

Summary:
This doesn't work because they're unused in some contexts. Added in
https://github.com/llvm/llvm-project/pull/178136


  Commit: 762ba885f95bc2145cb1dcc312aea6517e4f0c9c
      https://github.com/llvm/llvm-project/commit/762ba885f95bc2145cb1dcc312aea6517e4f0c9c
  Author: Damian Heaton <Damian.Heaton at arm.com>
  Date:   2026-01-28 (Wed, 28 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/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-fdot-product.ll

  Log Message:
  -----------
  [LV] Add support for llvm.vector.partial.reduce.fadd (#163975)

Allows the Loop Vectorizer to generate `llvm.vector.partial.reduce.fadd`
intrinsics when sequences which match its requirements are found.


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

  Changed paths:
    M flang/test/Lower/c-interoperability-c-pointer.f90
    M flang/test/Lower/c-interoperability.f90
    M flang/test/Lower/character-elemental.f90
    M flang/test/Lower/character-local-variables.f90
    M flang/test/Lower/complex-operations.f90

  Log Message:
  -----------
  [flang] Converted five tests from old lowering to new lowering (part 9) (#176310)

Tests converted from test/Lower: c-interoperability-c-pointer.f90,
c-interoperability.f90, character-elemental.f90,
character-local-variables.f90, complex-operations.f90


  Commit: 8c944d0a4ccb7741d677acf31f20cebc4c290ea7
      https://github.com/llvm/llvm-project/commit/8c944d0a4ccb7741d677acf31f20cebc4c290ea7
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [AArch64] Refactor PACM emission in Pointer Authentication (NFC) (#175937)

Refactor the emission of PACM instructions in the AArch64 Pointer
Authentication code to simplify the control flow and reduce duplication.

This change consolidates the PACM generation logic, making the code
easier to follow and less error-prone, while preserving the existing
behavior and generated output.

No functional change is intended beyond the internal refactoring.


  Commit: 8e362e10c79a73438a8678dbb1f9be29b3c01cae
      https://github.com/llvm/llvm-project/commit/8e362e10c79a73438a8678dbb1f9be29b3c01cae
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
    M llvm/test/CodeGen/AArch64/sign-return-address-pauth-lr.ll

  Log Message:
  -----------
  [AArch64] Remove dead code emission in Pointer Authentication (#175989)

The AArch64 Pointer Authentication pass was emitting address
materialization instructions that were never used. These instructions
formed dead code and served no purpose in the final control flow.

Remove the unnecessary ADRP/ADD sequence from the Pointer Auth codegen
and update the corresponding test to reflect the simplified output.

This avoids generating dead instructions and keeps the PAUTH LR sequence
minimal and correct.


  Commit: 4ec35a0b0e13f15ad38a2fa668004c892a365795
      https://github.com/llvm/llvm-project/commit/4ec35a0b0e13f15ad38a2fa668004c892a365795
  Author: Mitch Briles <mitchbriles at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/AMDGPU/combine-scalar-selects.ll

  Log Message:
  -----------
  [VectorCombine] Fix crash when folding select of bitcast (#177183)

Fixes #177144. Nits appreciated.

The fold in question does the following transformation:
Before
```
%bc = bitcast <4 x i32> %src to <16 x i8>
%e0 = extractelement <16 x i8> %bc, i32 0
%s0 = select i1 %cond, i8 %e0, i8 0
%e1 = extractelement <16 x i8> %bc, i32 1
%s1 = select i1 %cond, i8 %e1, i8 0
...
```

After
```
%sel = select i1 %cond, <4 x i32> %src, <4 x i32> zeroinitializer
%bc = bitcast <4 x i32> %sel to <16 x i8>
%e0 = extractelement <16 x i8> %bc, i32 0
%e1 = extractelement <16 x i8> %bc, i32 1
...
```
If every select shares the condition and has 0 in the false branch, the
bitcast can be replaced with a select between the original vector and
`zeroinitializer`, followed by a bitcast. Then each `select(cond,
extelt(...), 0)` can be replaced with `extelt(...)`.
The crash happens when the condition is defined after the original
bitcast, because the bitcast is replaced with the select + bitcast, and
now the select references a condition not yet defined.


  Commit: 68450ba210f315b9bb102f5f93f6f0049ef2ecaa
      https://github.com/llvm/llvm-project/commit/68450ba210f315b9bb102f5f93f6f0049ef2ecaa
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll

  Log Message:
  -----------
  [SLP]Support for tree throttling in SLP graphs with gathered loads

Gathered loads forming DAG instead of trees in SLP vectorizer. When
doing the throttling analysis for such graphs, need to consider partially
matched gathered loads DAG nodes and consider extract and/or gather
operations and their costs.
The patch adds this analysis and allows cutting off the expensive
sub-graphs with gathered loads.

Reviewers: hiraditya, RKSimon

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

Recommit after revert in d733771113339608aff6002d1fa89aaf4a51c502, which
was related to a crash in SelectionDAG


  Commit: 3a60a1e6fe561eb97f9a7404ee112211bc003af4
      https://github.com/llvm/llvm-project/commit/3a60a1e6fe561eb97f9a7404ee112211bc003af4
  Author: puneeth_aditya_5656 <myakampuneeth at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/test/Dialect/Arith/canonicalize.mlir

  Log Message:
  -----------
  [mlir][Arith] Fix crash when folding operations with dynamic-shaped tensors (#178428)

- Add static shape check in `getBoolAttribute` to prevent crash when
folding comparison operations with dynamic-shaped tensor types
- Add static shape check in `SelectOp::fold` before creating
`DenseElementsAttr` for the result
- Add test case to verify the fix

Fixes #178415.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: f9222cdb30c3d0e8451539ce33dc5446739271d9
      https://github.com/llvm/llvm-project/commit/f9222cdb30c3d0e8451539ce33dc5446739271d9
  Author: Steven Perron <stevenperron at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/TypeLoc.h
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl

  Log Message:
  -----------
  Reapply "[HLSL] Improve HLSL resource method generation" (https://github.com/llvm/llvm-project/pull/178266) (#178427)

This reverts commit
https://github.com/llvm/llvm-project/commit/c960499255a04e402d118d86a00ebcf1a8942ac9,
and fixes the msan error.


  Commit: 2489e034fdacb4c834a31b3af501d07085c89a75
      https://github.com/llvm/llvm-project/commit/2489e034fdacb4c834a31b3af501d07085c89a75
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    A llvm/test/CodeGen/AArch64/pr161013.ll
    A llvm/test/CodeGen/X86/pr161013.ll

  Log Message:
  -----------
  [LegalizeIntegerTypes] Add `PromoteIntOp_ANY_EXTEND_VECTOR_INREG` (#178144)

Fixes #161013


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

  Changed paths:
    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/VPlanUtils.h
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll

  Log Message:
  -----------
  [VPlan] Remove non-reductions after simplifications. (#176795)

In some cases, we identify patterns as reductions, even though they can
be simplified to a non-reduction.

Mark VPReductionPHIRecipe as not reading from memory & not having
side-effects, to clean them up.

We also need to remove ComputeReductionResult VPInstructions with
live-in arguments. This means there is actually no reduction, and we
need to fold it to the live in. Otherwise we would incorrectly reduce
the live-in.

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


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

  Changed paths:
    M libcxx/include/__tree

  Log Message:
  -----------
  [libc++] Use the fast path for move assignment in __tree if the allocator is_always_equal (#177115)

This avoids instantiating some code that we know is dead. This is also a
prerequisite for #134330, since we avoid trying to `const_cast` in the
common case now.


  Commit: 5feb2028a0bb82a6e0035b1ecfedbd0c01c010cd
      https://github.com/llvm/llvm-project/commit/5feb2028a0bb82a6e0035b1ecfedbd0c01c010cd
  Author: Davide Grohmann <davide.grohmann at arm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVTosaTypes.td
    M mlir/include/mlir/IR/OpBase.td
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTosaOps.cpp
    M mlir/test/Dialect/SPIRV/IR/tosa-ops-verification.mlir
    M mlir/test/Dialect/SPIRV/IR/tosa-ops.mlir
    M mlir/test/Target/SPIRV/tosa-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add Pooling, Fourier Transform, and MatMul operations (#177585)

to TOSA Extended Instruction Set (001000.1)

This patch expands 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:

* Extending dialect plumbing for import, serialization, and
deserialization of the TOSA extended instruction set.
* The spirv.Tosa.*Pool* pooling operations, spirv.Tosa.MatMul, and
spirv.Tosa.*FFT* (Fourier Transform) operations from TOSA extended
instruction, each lowering to the corresponding OpExtInst.
* Verification enforcing that new convolution operations appears only
within spirv.ARM.Graph regions, operates on !spirv.arm.tensor<...>
types, and is well-formed according to the TOSA 001000.1 specification.

All these operations from TOSA 001000.1 extended instructions are
introduced: [parser, 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: 1873c746c6a79fcfd3f5e5884b42f3843cc7c5aa
      https://github.com/llvm/llvm-project/commit/1873c746c6a79fcfd3f5e5884b42f3843cc7c5aa
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/release-vgprs-spill.ll

  Log Message:
  -----------
  [AMDGPU] Add test for early release VGPRs with spills (#178444)


  Commit: 362c39d36dd87c5659b0caa3115dfa67f592cdf6
      https://github.com/llvm/llvm-project/commit/362c39d36dd87c5659b0caa3115dfa67f592cdf6
  Author: Marek Sedláček <mr.mareksedlacek at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/lib/Transforms/Utils/LoopUnrollRuntime.cpp
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    A llvm/test/Transforms/LoopUnroll/unroll-multi-exit-loop-heuristics.ll

  Log Message:
  -----------
  [LoopUnroll] Use branch probability in multi-exit loop unrolling (#164799)

This patch improves multi-exit loop unrolling by taking into account
branch probability and not only other exit being deopting one.

This implementation uses branch metadata directly because of unstable
state of BPI in this part of code (runtime unrolling invalidates the
state of the map and using BPI in my tests has caused errors).
If branch probability metadata are not present then the current deopt
heuristic is still used.

---------

Co-authored-by: Marek Sedlacek <msedlacek at azul.com>


  Commit: 5413a22e79189b8e4f76efb9c1b6425298c9c4bc
      https://github.com/llvm/llvm-project/commit/5413a22e79189b8e4f76efb9c1b6425298c9c4bc
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll

  Log Message:
  -----------
  [SLP] Reordered disjoint or reduction of shl(zext, (0, stride, 2* stride)) modelled as bitcast

Added support for reorder reduction of shl(zext)-like construct. Such
constructs are modelled currently as shuffle + bitcast.

Reviewers: RKSimon, hiraditya

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


  Commit: c3d4375729e5f3c83d97a788a4d0d7853dae1fae
      https://github.com/llvm/llvm-project/commit/c3d4375729e5f3c83d97a788a4d0d7853dae1fae
  Author: Vladimir Gorsunov <gorsunov at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilderClang.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    A lldb/test/Shell/SymbolFile/NativePDB/invalid-inlinee-not-in-ipi.yaml
    M lldb/test/Shell/SymbolFile/NativePDB/lit.local.cfg
    M llvm/include/llvm/DebugInfo/CodeView/LazyRandomTypeCollection.h
    M llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp

  Log Message:
  -----------
  [lldb][NativePDB] Fix crash in debugger when PDB has bad type index value (#166455)

Fix crash when an inline site record in the PDB file contains type index
which is out of bounds


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

  Changed paths:
    M mlir/test/Dialect/Arith/expand-ops.mlir
    M mlir/test/Dialect/Tensor/fold-into-pack-and-unpack.mlir

  Log Message:
  -----------
  [MLIR] Fix typo "LABLE" in test checks (#178448)


  Commit: 5d018e93fe98811ccdc44ac065d49fd9d4956470
      https://github.com/llvm/llvm-project/commit/5d018e93fe98811ccdc44ac065d49fd9d4956470
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.h
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.128bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.320bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.32bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.64bit.ll
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.96bit.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointers-contents-legalization.ll
    M llvm/test/CodeGen/AMDGPU/function-args.ll
    M llvm/test/CodeGen/AMDGPU/gfx-callable-argument-types.ll
    M llvm/test/CodeGen/AMDGPU/global-load-xcnt.ll
    M llvm/test/CodeGen/AMDGPU/kernel-argument-dag-lowering.ll
    M llvm/test/CodeGen/AMDGPU/permute_i8.ll
    M llvm/test/CodeGen/AMDGPU/sdwa-peephole.ll
    M llvm/test/CodeGen/AMDGPU/trunc-store.ll
    M llvm/test/CodeGen/AMDGPU/vni8-across-blocks.ll
    M llvm/test/CodeGen/AMDGPU/widen-smrd-loads.ll

  Log Message:
  -----------
  AMDGPU: Perform zero/any extend combine into permute (#177370)

Increases opportunities to generate permutes.
Motivated sub-optimal code generation of a CK kernel.


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

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

  Log Message:
  -----------
  [lldb-dap] Fix debugger initialisation order in DAP::InitializeDebugger (#178022)

Validate the debugger before assigning it to the member debugger to
avoid setting an invalid debugger on error.

We usually have an existing session with that debugger ends up messing
with that session.


  Commit: 68695090ccf1fc7d1b6245d3f6efc18cabd7633b
      https://github.com/llvm/llvm-project/commit/68695090ccf1fc7d1b6245d3f6efc18cabd7633b
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp

  Log Message:
  -----------
  [alpha.webkit.NoDeleteChecker] Fix a nullptr deference crash during lookupInBases (#178351)

Added a null check in the lambda passed to lookupInBases.


  Commit: e72c4fc73464c78b32b68ade8e8774ce4097e444
      https://github.com/llvm/llvm-project/commit/e72c4fc73464c78b32b68ade8e8774ce4097e444
  Author: byteforge <stormcraft318 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp

  Log Message:
  -----------
  [clang][constexpr] Move inf/nan/denormal handling into FP binop callbacks (#178421)

Update the callback signature for `EvaluateFpBinOpExpr` and
`interp__builtin_elementwise_fp_binop` to return
`std::optional<APFloat>`, allowing individual callbacks to decide
whether to handle special floating-point cases (inf/nan/denormal).

Previously, the helper functions had hardcoded validation that forced
all callbacks to reject these cases. This blocked intrinsics needing
custom validation (e.g., rounding mode checks). Now each callback
controls its own validation and returns `std::nullopt` when the fold is
invalid.

Fixes #178416


  Commit: 39431347f8691ce9487a620de342bd42c09ea934
      https://github.com/llvm/llvm-project/commit/39431347f8691ce9487a620de342bd42c09ea934
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp

  Log Message:
  -----------
  [clang-tidy] Fix false positive in readability-non-const-parameter for dependent expression (#177345)

Closes #176623


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

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

  Log Message:
  -----------
  [AArch64][GlobalISel] Update testing for fixed point fcvt. NFC

This adds GlobalISel test coverage for fcvt_combine.ll and adds more variants
for testing.


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

  Changed paths:
    M flang/test/Lower/c_ptr-constant-init.f90
    M flang/test/Lower/complex-real.f90
    M flang/test/Lower/computed-goto.f90
    M flang/test/Lower/constant-literal-mangling.f90
    M flang/test/Lower/control-flow.f90

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

Tests converted from test/Lower: c_ptr-constant-init.f90,
complex-real.f90,
computed-goto.f90, constant-literal-mangling.f90, control-flow.f90

---------

Co-authored-by: Jean Perier <jperier at nvidia.com>


  Commit: ffeb7d73f317e78caa22025330abf0b5106b2f83
      https://github.com/llvm/llvm-project/commit/ffeb7d73f317e78caa22025330abf0b5106b2f83
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlowFramework.cpp

  Log Message:
  -----------
  [mlir][dataflow ] Drop LLVM_DEBUG of DATAFLOW_DEBUG (NFC) (#177398)

We kept the DATAFLOW_DEBUG macro because when
LLVM_ENABLE_ABI_BREAKING_CHECKS is 0, the debugName in AnalysisState is
not defined, which prevents us from printing debug logs(In this case, we
define DATAFLOW_DEBUG(X) as an empty macro, so it won't print any logs).
Therefore, this PR only removes LLVM_DEBUG. We are now using LDBG, so
LLVM_DEBUG is no longer needed.
https://github.com/llvm/llvm-project/pull/176911


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

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

  Log Message:
  -----------
  [X86] LowerBUILD_VECTORvXbf16 - pull out repeated MVT::f16/bf16 selection. NFC. (#178467)


  Commit: fd45140ed66573ddfef59b6eb78901b77e01d946
      https://github.com/llvm/llvm-project/commit/fd45140ed66573ddfef59b6eb78901b77e01d946
  Author: Anikesh Parashar <106880513+an1k3sh at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/tbz-tbnz.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.is.fpclass.f16.ll
    M llvm/test/CodeGen/LoongArch/lsx/vmskcond.ll
    M llvm/test/CodeGen/RISCV/bittest.ll
    M llvm/test/CodeGen/RISCV/float-intrinsics.ll
    M llvm/test/CodeGen/SystemZ/tdc-05.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/is_fpclass-fp80.ll
    M llvm/test/CodeGen/X86/test-shrink.ll

  Log Message:
  -----------
  [DAG] SimplifyDemandedBits - ICMP_SLT(X,0) - only sign mask of X is required (#164946)

Resolves #164589


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

  Changed paths:
    M llvm/test/CodeGen/AArch64/stp-opt-with-renaming-undef-assert.mir
    M llvm/test/CodeGen/AArch64/sve-calling-convention.ll
    M llvm/test/CodeGen/AMDGPU/postra-bundle-memops.mir
    M llvm/test/CodeGen/Mips/optimizeAndPlusShift.ll
    M llvm/test/CodeGen/X86/tailregccpic.ll
    M llvm/test/MC/AsmParser/altmacro_string_escape.s
    M llvm/test/Transforms/LoopVectorize/memdep.ll
    M llvm/utils/DSAclean.py

  Log Message:
  -----------
  [LLVM] Fix typo "LABLE" in test checks (#178451)


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

  Changed paths:
    M flang/include/flang/Runtime/extensions.h

  Log Message:
  -----------
  [flang-rt] Fix defining `pid_t` on GPU builds (#178470)

Summary:
We support building flang-rt on GPU targets. These do not have POSIX
types so we should not include this if it's not present.


  Commit: e45ea95dbe236e233ad978067688789e7478541a
      https://github.com/llvm/llvm-project/commit/e45ea95dbe236e233ad978067688789e7478541a
  Author: Rose Hudson <rose.hudson at sony.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    A cross-project-tests/dtlto/fat-lto-objects.test
    M lld/ELF/Driver.cpp
    M lld/test/ELF/dtlto/timetrace.test
    M llvm/include/llvm/LTO/LTO.h
    M llvm/lib/DTLTO/DTLTO.cpp

  Log Message:
  -----------
  [DTLTO] support distributing bitcode from FatLTO objects (#176928)

We already have code to extract bitcode files from archives so they can
be distributed. Extend this code to extract bitcode from FatLTO objects
too, which otherwise cannot be used with DTLTO.


  Commit: 46585a3082811501dff7d15ad6d7d54653c660f0
      https://github.com/llvm/llvm-project/commit/46585a3082811501dff7d15ad6d7d54653c660f0
  Author: John Harrison <harjohn at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
    M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.py
    M lldb/test/API/tools/lldb-dap/coreFile/TestDAP_coreFile.py
    R lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_args.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_basic.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_cwd.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_debuggerRoot.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_disableSTDIO.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_array.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_object.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_failing_console.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_failing_launch_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_invalid_launch_commands_and_console.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_invalid_program.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_no_lldbinit_flag.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_disabled.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_enabled.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_sourcePath.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection_and_console.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stopOnEntry.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_terminate_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_termination.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_version.py
    M lldb/test/API/tools/lldb-dap/module-event/TestDAP_module_event.py
    M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
    M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
    M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_console.py
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
    M lldb/test/API/tools/lldb-dap/terminated-event/TestDAP_terminatedEvent.py
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/EventHelper.h

  Log Message:
  -----------
  [lldb-dap] Improve test performance by removing negative assertions. (#178041)

Investigating some of the biggest slow downs during tests, the biggest
offender is 'wait_for_stopped' requiring a negative assertion around the
'stopped' event.

It currently waits for a negative predicate to fail before continuing.
This means it must wait for the full DEFAULT_TIMEOUT (50s) before the
test is allowed to continue.

To mitigate this, I added a new `collect_events` helper that will wait
for the given event to occur with the DEFAULT_TIMEOUT, then wait for a
quiet period (0.25s) before returning.

This greatly reduces the amount of idle waiting during tests.

Additionally, looking a the performance of individual test files,
`TestDAP_launch` is the slowest overall test. No individual test is that
slow, but the fact it has so many tests in the same file results in the
test harness waiting for that one file to finish.

To mitigate that, I split `TestDAP_launch` into individual test files
that run in parallel, reducing the runtime locally from over 2mins to
~5s.


  Commit: 89ce70920a536c759f8f452a93cab29d64dfb41d
      https://github.com/llvm/llvm-project/commit/89ce70920a536c759f8f452a93cab29d64dfb41d
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/div.ll
    M llvm/test/Transforms/InstCombine/fmul-bool.ll
    M llvm/test/Transforms/InstCombine/mul.ll
    M llvm/test/Transforms/InstCombine/rem.ll
    M llvm/test/Transforms/InstCombine/sdiv-canonicalize.ll
    M llvm/test/Transforms/InstCombine/urem-via-cmp-select.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine][profcheck] Add unknown branch weight to all selects in InstCombineMulDivRem.cpp (#178308)

These select instructions originate from code without existing branches,
so there's no existing branch weight data. Therefore, we add unknown
branch weights to all of them.

Tracking issue: #147390


  Commit: 5ad82667180b5ec539c2cc9934a5a95dd997bcb1
      https://github.com/llvm/llvm-project/commit/5ad82667180b5ec539c2cc9934a5a95dd997bcb1
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    R lld/test/wasm/pic-static.ll
    A lld/test/wasm/pic-static.s

  Log Message:
  -----------
  [lld][WebAssembly] Convert pic-static test to assembly. NFC (#178321)

The expectations and the `RUN` commands here are otherwise unmodified.


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

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

  Log Message:
  -----------
  [DAGISel][NFC] Add XForm/Convert/CopyToReg Comments (#178379)

Thus updates the TableGen comments (both in the TableGen source, and the
code that TableGen produces) to make it clearer what is being
represented by the ConvertToTarget emitter, the XForm emitter, and the
CopyToReg emitter.


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

  Changed paths:
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Track transparent member functions for "all" GSL pointers (#177660)

Track transparent member functions (like data, begin, end, operator*,
etc) for all gsl::Pointer types and not just for STL types. This is a
change in semantics of `gsl::Pointer` annotations which now handles
specially **named** functions differently.

1. Tracking more methods that return pointers or references to objects
owned by the implicit object argument
2. Ensuring that methods like `data()`, dereference operators, and
begin/end iterators are properly tracked

The changes allow the analyzer to detect more cases where addresses of
stack memory are returned, particularly when working with GSL pointer
types that provide access to their underlying objects through methods
like `data()` or operators like `*` and `->`.

One particular idiom that is now detected is iterators involved in
range-based for-loops.

```cpp

View ContainerMyObjReturnView(Container<MyObj> c) {
  for (const MyObj& x : c) {  // expected-warning {{address of stack memory is returned later}}
    return x;                 // expected-note {{returned here}}
  }
  for (View x : c) {  // expected-warning {{address of stack memory is returned later}}
    return x;         // expected-note {{returned here}}
  }
  return Global;
}
```


  Commit: a58038307a604096bcc2ba0e6635be339ea704b7
      https://github.com/llvm/llvm-project/commit/a58038307a604096bcc2ba0e6635be339ea704b7
  Author: Dan Bonachea <dobonachea at lbl.gov>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M flang/docs/FortranStandardsSupport.md
    M flang/docs/ParallelMultiImageFortranRuntime.md

  Log Message:
  -----------
  [flang] Document experimental support for multi-image features (#178011)

This PR updates flang's Fortran standard conformance documentation to
reflect the recent addition of experimental support for multi-image
features.

PRs implementing that support include:
* #151675
* #154081
* #154770
* #154166
* #165573


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

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

  Log Message:
  -----------
  [X86] pclmulqdq.ll - add clmul vector test coverage for #176879 (#178473)


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

  Changed paths:
    M clang/test/CIR/CodeGen/vtt.cpp

  Log Message:
  -----------
  [CIR][NFC?] Fix vtt.cpp test (#178469)

It isn't clear whether this is the correct fix, but this is the changes
required to make this test pass.


  Commit: 3e68df04daa191ed02578848fab70cdc6f2bc2aa
      https://github.com/llvm/llvm-project/commit/3e68df04daa191ed02578848fab70cdc6f2bc2aa
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/MC/RISCV/attribute-arch.s
    M llvm/test/MC/RISCV/rv32p-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Update P extension to 019. (#178031)

This renames two scalar instructions to not start with P. P means
"packed".


  Commit: 9607d81b5b536608251a2318276a6f6f23652a9d
      https://github.com/llvm/llvm-project/commit/9607d81b5b536608251a2318276a6f6f23652a9d
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/index/Background.cpp
    M clang-tools-extra/clangd/index/IndexAction.cpp
    M clang-tools-extra/clangd/index/IndexAction.h
    M clang-tools-extra/clangd/indexer/IndexerMain.cpp
    M clang-tools-extra/clangd/unittests/IndexActionTests.cpp

  Log Message:
  -----------
  [clangd] Unify IndexAction callbacks into one (#178132)

This allows users of IndexAction who create the action but do not call
it (e.g. the call will happen through ToolExecutor) to do some work when
the action is complete, without assuming that a particular one of the
individual callbacks (e.g. include graph) will be called last.


  Commit: 97faac1a714755b1a9ae2c3f62da6e36dd4ccb5e
      https://github.com/llvm/llvm-project/commit/97faac1a714755b1a9ae2c3f62da6e36dd4ccb5e
  Author: Grigory Pastukhov <99913765+grigorypas at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    A llvm/test/Transforms/AddDiscriminators/pseudo-probe-discriminator.ll

  Log Message:
  -----------
  [CSSPGO] Preserve pseudo-probe discriminators in cloneWithBaseDiscriminator (#178267)

In the O0 pipeline, `SampleProfileProbePass` runs before
`AddDiscriminatorsPass`. The
pseudo-probe pass stores probe IDs in the discriminator field using a
special encoding
(bits [2:0] = 0x7 as marker). When `AddDiscriminatorsPass` later
processes instructions
on the same source line, it calls `cloneWithBaseDiscriminator()` which
overwrites these
pseudo-probe discriminators with DWARF base discriminators, breaking
sample profile
matching.

This patch adds a check to `cloneWithBaseDiscriminator()` to detect and
preserve
pseudo-probe discriminators, similar to the existing check in 
`cloneByMultiplyingDuplicationFactor()`.

In optimized pipelines (O1+), AddDiscriminators runs before pseudo-probe
instrumentation,
so this issue doesn't manifest. However, the fix makes the code robust
regardless of
pass ordering.


  Commit: 95a5ff1d1c13c2cff024d1dd3e3296ab626c25ca
      https://github.com/llvm/llvm-project/commit/95a5ff1d1c13c2cff024d1dd3e3296ab626c25ca
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [flang][openacc][NFC] Fix header format (#178477)


  Commit: 0c41758502e6952f0501acf4d8c2c13bf5b2b4b5
      https://github.com/llvm/llvm-project/commit/0c41758502e6952f0501acf4d8c2c13bf5b2b4b5
  Author: RattataKing <46631728+RattataKing at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/lib/Bindings/Python/IRCore.cpp

  Log Message:
  -----------
  [MLIR][Python] Remove partial LLVM APIs in python bindings (#178290)

mlir-py bindings should only rely on C mlir APIs.
This PR replaced partial LLVM utilities (`Twine`, `ArrayRef`,
`SmallVector`, `StringRef`) with equivalent STL, and added a `join()`
helper function in `IRCore.cpp` to concat strings.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: 5136b04dd2aaeb3cbc724c0015e7f06ed2408e1a
      https://github.com/llvm/llvm-project/commit/5136b04dd2aaeb3cbc724c0015e7f06ed2408e1a
  Author: Katherine Rasmussen <krasmussen at lbl.gov>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/test/Semantics/c7108.f90
    M flang/test/Semantics/generic09.f90
    M flang/test/Semantics/resolve11.f90
    M flang/test/Semantics/resolve17.f90
    M flang/test/Semantics/resolve18.f90
    M flang/unittests/Common/FortranFeaturesTest.cpp

  Log Message:
  -----------
  [flang] Remove `AmbiguousStructureConstructor` warnings (#178088)

Remove `AmbiguousStructureConstructor` warnings. This removes harmless
warnings about standards-conforming generic function references that
are never ambiguous with structure constructors.


  Commit: c856c3d045932171c3c6e82437877ba47b6b2b24
      https://github.com/llvm/llvm-project/commit/c856c3d045932171c3c6e82437877ba47b6b2b24
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-mapper-combined-entry.mlir
    A offload/test/offloading/fortran/default-mapper-derived-enter-data-teams-collapse.f90

  Log Message:
  -----------
  [MLIR][OpenMP] Fix mapper being attached to partial maps. (#178247)

Fix OpenMP mapper lowering by attaching user-defined/default mappers
only to the base parent entry, not combined/segment entries. This
prevents mapper calls with partial sizes. Added relevant tests.


  Commit: efe75626cd3a0ef30e28194f6f64f4bee22b8817
      https://github.com/llvm/llvm-project/commit/efe75626cd3a0ef30e28194f6f64f4bee22b8817
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/abs-intrinsic.ll

  Log Message:
  -----------
  [InstCombine] Add combines for unsigned comparison of absolute value to constant (#176148)

This patch implements the following two peephole optimisations:
1. ``` abs(X) u> K --> K >= 0 ? `X + K u> 2 * K` : `false` ```;
2. If `abs(INT_MIN)` is `poison`, ```abs(X) u< K --> K >= 1 ? `X + (K -
1) u<= 2 * (K - 1)` : K != 0```.

See the following Alive2 proofs:
[1](https://alive2.llvm.org/ce/z/J2SRSv) and
[2](https://alive2.llvm.org/ce/z/tfxTrU).


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

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

  Log Message:
  -----------
  [DAG] SDPatternMatch - allow m_BinOp / m_c_BinOp to take an optional SDNodeFlags required for matching (#178435)

BinaryOpc_match is already wired up for this - but allow us to use
m_BinOp/m_c_BinOp with the required flags directly

Updated the foldShiftToAvg folds to make use of this


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

  Changed paths:
    M libcxx/test/benchmarks/spec.gen.py

  Log Message:
  -----------
  [libc++] Reduce the number of warnings when running SPEC (#160366)

We don't care about warnings in the SPEC suite, so just use -w to turn
them off.


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

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/ops.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix pad op verifier when padding is dynamic (#177622)

When padding is dynamic the verifier should not return failure, it
shouldn't try to check the pad values.


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

  Changed paths:
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/MathToFuncs/MathToFuncs.cpp
    M mlir/lib/Conversion/PDLToPDLInterp/PredicateTree.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/lib/Conversion/VectorToXeGPU/VectorToXeGPU.cpp
    M mlir/lib/Dialect/AMDGPU/Transforms/FoldMemRefsOps.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/OuterProductFusion.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/Transforms/AsyncRegionRewriter.cpp
    M mlir/lib/Dialect/GPU/Transforms/EliminateBarriers.cpp
    M mlir/lib/Dialect/IRDL/IR/IRDL.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Linalg/Transforms/SimplifyDepthwiseConv.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/MemRef/Transforms/FlattenMemRefs.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitDeclare.cpp
    M mlir/lib/Dialect/PDL/IR/PDL.cpp
    M mlir/lib/Dialect/SCF/Transforms/LoopCanonicalization.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/lib/Dialect/SPIRV/IR/SPIRVTypes.cpp
    M mlir/lib/Dialect/SPIRV/Transforms/SPIRVConversion.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/lib/Dialect/Vector/Utils/VectorUtils.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/lib/IR/AsmPrinter.cpp
    M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
    M mlir/lib/Rewrite/ByteCode.cpp
    M mlir/lib/TableGen/Operator.cpp
    M mlir/lib/TableGen/Type.cpp
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/lib/Target/IRDLToCpp/IRDLToCpp.cpp
    M mlir/lib/Target/IRDLToCpp/TranslationRegistration.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/Ptr/PtrToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/lib/Dialect/Linalg/TestLinalgElementwiseFusion.cpp
    M mlir/tools/mlir-tblgen/AttrOrTypeFormatGen.cpp

  Log Message:
  -----------
  [mlir] Fix new clang-tidy warning llvm-type-switch-case-types. NFC. (#178487)

Pre-commiting this before landing the new check in
https://github.com/llvm/llvm-project/pull/177892


  Commit: 6f79891cf582aba7998c5caba9d7a03fd7cc61bc
      https://github.com/llvm/llvm-project/commit/6f79891cf582aba7998c5caba9d7a03fd7cc61bc
  Author: Daniel Thornburgh <mysterymath at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Sema/attr-modular-format.c

  Log Message:
  -----------
  [clang] Check that first modular_format argument is an identifier (#178322)

This fixes an oversight discovered in #147431.


  Commit: b88d49ef12a9e2a863b21ac04c687f7453264164
      https://github.com/llvm/llvm-project/commit/b88d49ef12a9e2a863b21ac04c687f7453264164
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFComputeSharedMemoryOffsetsAndSize.cpp
    M flang/test/Fir/CUDA/cuda-shared-offset.mlir

  Log Message:
  -----------
  [flang][cuda] Do not initialize shared variable (#178489)


  Commit: 53438419b9a07b9d6200a8d4e737d3a7f88e1202
      https://github.com/llvm/llvm-project/commit/53438419b9a07b9d6200a8d4e737d3a7f88e1202
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [SDPatternMatch][NFC] Use empty SDNodeFlags instead of std::optional (#178483)

I think we can avoid using std::optional for SDNodeFlags in
UnaryOpc_match.

NFC.


  Commit: 024b8ac74eb856644987195fc6e0bbccd5989018
      https://github.com/llvm/llvm-project/commit/024b8ac74eb856644987195fc6e0bbccd5989018
  Author: Sersawy <65075626+Abdelrhmansersawy at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/llogbf128.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/llogbf128.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/llogbf128.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 llogbf128 to header-only (#175617)


  Commit: df0c6f4caacb8a6eec9e653d9da450b8aec48a49
      https://github.com/llvm/llvm-project/commit/df0c6f4caacb8a6eec9e653d9da450b8aec48a49
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h

  Log Message:
  -----------
  [OpenMP] Rename some data members in ConstructDecompositionT for clar… (#178475)

…ity, NFC


  Commit: 07ee61d59ef9f568166116300a4a59e2b615ea10
      https://github.com/llvm/llvm-project/commit/07ee61d59ef9f568166116300a4a59e2b615ea10
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUtils.cpp

  Log Message:
  -----------
  [LoopUnroll] Fix unused variable warning (#178490)

Fixes 362c39d36dd87c5659b0caa3115dfa67f592cdf6.


  Commit: a8913a22290d4049e6c20f3712908c11b3b6b9ed
      https://github.com/llvm/llvm-project/commit/a8913a22290d4049e6c20f3712908c11b3b6b9ed
  Author: cpist (He / Him) <tinyfrog12 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/logf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/logf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/logf16.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 logf16 to header-only shared math (#175408)

## Summary

Following the discussion in the RFC [1], Refactors logf16 to a
header-only shared math.

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

## Implementation 

- Moved the core logic and lookup tables from `generic/logf16.cpp` to
`__support/math/logf16.h`
- Updated `generic/logf16.cpp` to include the new header and call
`internal::logf16`
- Updated `CMakeLists.txt` and `BUILD.bazel` to reflect the dependency
changes and new header library

Fix : https://github.com/llvm/llvm-project/issues/175367


  Commit: 7cf11edd53a822139bdce6b79c31919ece18ccf0
      https://github.com/llvm/llvm-project/commit/7cf11edd53a822139bdce6b79c31919ece18ccf0
  Author: Jonathan Cohen <joncoh at apple.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    A llvm/test/CodeGen/AArch64/early-ifcvt-load-to-cond-br.mir
    A llvm/test/CodeGen/AArch64/early-ifcvt-remarks.mir

  Log Message:
  -----------
  [EarlyIfConversion] Add analysis for data-dependent conditional branches(#174457)

Add infrastructure to identify conditional branches on values loaded from 
memory.  Such branches are likely to be harder to predict accurately since 
branch  history (probably) provides little useful information.

This analysis walks the def-use chain from the branch condition to find
loads that feed into it. Several cases are excluded from consideration:
- Loads from constant pools (predictable values)
- Dereferenceable invariant loads (loop-invariant)
- Branches with biased probability (null checks, etc.)
- Loads not "close in program time" to the branch (must be in the same
  basic block with no intervening calls)

The analysis is disabled by default behind -enable-early-ifcvt-data-dependent.


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

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/Transforms/Transforms.h
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
    M mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
    M mlir/test/Dialect/XeGPU/propagate-layout.mlir
    A mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp

  Log Message:
  -----------
  [mlir][xegpu] Add initial support for layout conflict handling. (#173090)

This PR adds initial support for layout conflict resolution in XeGPU.
Layout conflict occurs when some op's use point expects a different
layout than what the op can currently provide. This conflict needs to be
resolved by adding certain other xegpu ops.

Initially, We only focus conflict handling at tensor desc use points.


  Commit: 3f3190e72d20fe360a0749ba5fae962106acd23a
      https://github.com/llvm/llvm-project/commit/3f3190e72d20fe360a0749ba5fae962106acd23a
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h

  Log Message:
  -----------
  [NFC] update doc comment on `setLoopEstimatedTripCount` (#178091)

See [this
discussion](https://github.com/llvm/llvm-project/pull/174896#issuecomment-3802361713)
prompted by PR #174896.

A 0-0 encoding in branch weights is invalid (the probability of an edge
is computed as a fraction where the denominator is the sum of the
weights and the numerator is its - the edge's - weight). So BPI actually
handles it as 1-1, which then results in raising the BFI of the loop
body that's meant to be cold.

The aforementioned PR addressed this, but didn't update the doc comment.


  Commit: 7075f38109b59912751fbf7298e871a5626bca76
      https://github.com/llvm/llvm-project/commit/7075f38109b59912751fbf7298e871a5626bca76
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemProfUse.cpp
    M llvm/test/Transforms/PGOProfile/data-access-profile.ll

  Log Message:
  -----------
  [StaticDataLayout][MemProf] Annotate string literal hotness by making use of data access profiles. (#178333)

The change is gated under a new option
`memprof-annotate-string-literal-section-prefix` so we can flag-gate it
for rollout purposes.

A follow-up PR https://github.com/llvm/llvm-project/pull/178336/changes
updates the codegen pass to reconcile the hotness similar to the
reconciliation for other global variables.


  Commit: 43f58a86f36162cb1d1bb595f2d238ad3d93ad09
      https://github.com/llvm/llvm-project/commit/43f58a86f36162cb1d1bb595f2d238ad3d93ad09
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  Exclude some target-specific tests from profcheck (#178500)


  Commit: 18925d131b5c3c7ac79eb12333263bd89375e817
      https://github.com/llvm/llvm-project/commit/18925d131b5c3c7ac79eb12333263bd89375e817
  Author: Atharv Mane <atharvamane19 at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/fsqrtl.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/fsqrtl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/fsqrtl.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 fsqrtl to be header-only (#176169)

This PR refactors fsqrtl to be header only as discussed. No functional
change intended. Test and build files were updated as required by the
refactor
Fixes #175335


  Commit: d6ca3d085e254f93d9592d1e9d32c46c84625b5f
      https://github.com/llvm/llvm-project/commit/d6ca3d085e254f93d9592d1e9d32c46c84625b5f
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Object/WasmObjectFile.cpp

  Log Message:
  -----------
  [WebAssembly] Dump more info when printing symbols. NFC (#178328)


  Commit: 2615005982c3d20e6eb7fd46f2759373ad1eab74
      https://github.com/llvm/llvm-project/commit/2615005982c3d20e6eb7fd46f2759373ad1eab74
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnts] Cleanup: Remove WaitEventMaskForInst member variable (#178030)

The event mask is constant and target dependent it should be accessed
through the WCG object.


  Commit: 9d3d1ddd95429416ccadf8c50cd23fd417dd7e8d
      https://github.com/llvm/llvm-project/commit/9d3d1ddd95429416ccadf8c50cd23fd417dd7e8d
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/MC/WasmObjectWriter.cpp

  Log Message:
  -----------
  [MC][WebAssembly] Use `contains` over `count` for map membership. NFC (#178348)


  Commit: 28e980fbdd724fa193681316adbfb41e115106d3
      https://github.com/llvm/llvm-project/commit/28e980fbdd724fa193681316adbfb41e115106d3
  Author: Usama Hameed <u_hameed at apple.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/test/CodeGen/AArch64/stack-tagging-prologue.ll

  Log Message:
  -----------
  [MTE][Darwin] This patch extends support for the stack frame history buffer to  Darwin. (#178049)

Darwin reserves slot 231 for storing a pointer to the history ring
buffer. It also uses bits 60-62 to store the size of the ring buffer

rdar://168176496


  Commit: 570d5e3318c23aacfb44c50d5cdc824a8c39107d
      https://github.com/llvm/llvm-project/commit/570d5e3318c23aacfb44c50d5cdc824a8c39107d
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libcxx/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Don't define _LIBCPP_INSTRUMENTED_WITH_ASAN for hwasan builds (#178278)

This macro should not be defined if `LLVM_USE_SANITIZER` is `HWAddress`.


  Commit: b3f3aa81e0207dd6d778db8f2b5d42df1f9c4716
      https://github.com/llvm/llvm-project/commit/b3f3aa81e0207dd6d778db8f2b5d42df1f9c4716
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/src/__support/math/CMakeLists.txt

  Log Message:
  -----------
  [libc][math] Fix AMD build errors. (#178507)


  Commit: dbce14f0d65e75517398890c467daf31a9276a09
      https://github.com/llvm/llvm-project/commit/dbce14f0d65e75517398890c467daf31a9276a09
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M libc/include/llvm-libc-macros/pthread-macros.h
    R libc/include/pthread.h.def
    M libc/include/pthread.yaml

  Log Message:
  -----------
  [libc] Clean up pthread.yaml (#178327)

Remove pthread.h.def and use pure generation.  Fix YAML records
for standards to correct syntax and remove redundancies.

Don't declare NULL, which is not specified for <pthread.h>.
Do declare PTHREAD_NULL.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp

  Log Message:
  -----------
  [llvm] Fix new clang-tidy warning llvm-type-switch-case-types. NFC. (#178502)

Pre-commiting this before landing the new check in
https://github.com/llvm/llvm-project/pull/177892


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

  Changed paths:
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    M flang/lib/Optimizer/OpenMP/LowerNontemporal.cpp

  Log Message:
  -----------
  [flang] Fix new clang-tidy warning llvm-type-switch-case-types. NFC. (#178512)

Pre-commiting this before landing the new check in
https://github.com/llvm/llvm-project/pull/177892


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

  Changed paths:
    M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
    A clang-tools-extra/clang-tidy/llvm/TypeSwitchCaseTypesCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/TypeSwitchCaseTypesCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/llvm/type-switch-case-types.rst
    A clang-tools-extra/test/clang-tidy/checkers/llvm/type-switch-case-types.cpp

  Log Message:
  -----------
  [clang-tidy] Add llvm-type-switch-case-types check (#177892)

Adds a new check for `llvm::TypeSwitch`:
* `.Case<T>([](T *X) { ... })` --> `.Case([](T *X) { ... } )`
* `.Case<T>([](auto X) { ... })` --> warning only

I ran this on mlir to make sure the warning make sense and that all
fixits compile:
https://gist.github.com/kuhar/a2276a2364325521ea6f39d2098497b9.

Assisted-by: claude


  Commit: 8d9df60efb92b1e41ffc490233c523d6275d0223
      https://github.com/llvm/llvm-project/commit/8d9df60efb92b1e41ffc490233c523d6275d0223
  Author: Jonathan Cohen <joncoh at apple.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/EarlyIfConversion.cpp

  Log Message:
  -----------
  [EarlyIfConversion] Fix lambda capture in `callInRange` (#178504)

Post merge failure in windows buildbot:
https://lab.llvm.org/buildbot/#/builders/46/builds/29831


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

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/llvm/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 779d8062605a


  Commit: 241de80d38d4482eeecc2c7f51dc1f2b7f06ad69
      https://github.com/llvm/llvm-project/commit/241de80d38d4482eeecc2c7f51dc1f2b7f06ad69
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/CMakeLists.txt
    A mlir/include/mlir/Dialect/MemRef/IR/MemoryAccessOpInterfaces.h
    A mlir/include/mlir/Dialect/MemRef/IR/MemoryAccessOpInterfaces.td
    M mlir/lib/Dialect/MemRef/IR/CMakeLists.txt
    A mlir/lib/Dialect/MemRef/IR/MemoryAccessOpInterfaces.cpp

  Log Message:
  -----------
  [mlir][memref] Define interfaces for ops that access memrefs at an index (#177013)

This commit defines interfaces for operations that perform certain kinds
of indexed access on a memref. These interfaces are defined so that
passes like fold-memref-alias-ops and the memref flattener can be made
generic over operations that, informally, have the forms `op ... %m[%i0,
%i1, ...] ...` (an IndexedAccessOpInterface) or the form `op %src[%s0,
%s1, ...], %dst[%d0, %d1, ...] size ...` (an IndexedMemCopyOpInterface).

These interfaces have been designed such that all the passes under
MemRef/Transforms that currently have a big switch-case on memref.load,
vector.load, nvgpu.ldmatrix, etc. can be migrated to use them.

(This'll also let us get rid of the awkward fact that we have memref
transforms depending on the GPU and NVGPU dialects)

While the interface doesn't currently contemplate changing element types
(enabling, for example, writing a bf16 => u16 update to be done in
place), future extensions to allow such transformations could be worth
exploring.

This commit only defines the interfaces so that it'll be easier to
review the design - the implementation is in a future PR.

---------

Co-authored-by: Jakub Kuderski <jakub at nod-labs.com>


  Commit: 536670bce2c3612c47f3c567bfe13a4d0b644874
      https://github.com/llvm/llvm-project/commit/536670bce2c3612c47f3c567bfe13a4d0b644874
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M .github/workflows/libcxx-check-generated-files.yml

  Log Message:
  -----------
  [Github] Make libcxx-check-generated-files.yml not run in forks

This is best practice according to
https://llvm.org/docs/CIBestPractices.html. Found this when looking at
PRs on forks and saw one running for libc++.


  Commit: 22d28e6ee6aabc0714ac0ab003ff24fabc26aa56
      https://github.com/llvm/llvm-project/commit/22d28e6ee6aabc0714ac0ab003ff24fabc26aa56
  Author: Kelvin Li <kli at ca.ibm.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M flang/test/Lower/volatile-openmp.f90

  Log Message:
  -----------
  [flang][AIX] update type format in LIT (NFC) (#178505)


  Commit: 97e1df149de213b760aae4060ee9e25dc9908125
      https://github.com/llvm/llvm-project/commit/97e1df149de213b760aae4060ee9e25dc9908125
  Author: Andrei Elovikov <a.elovikov at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    A llvm/test/Transforms/LoopVectorize/vplan-print-after-all.ll
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp

  Log Message:
  -----------
  [VPlan] Add hidden `-vplan-print-after-all` option (#175839)

This consists of the following changes: 
        
* Merge several overloads of `VPlanTransforms::runPass` into a single
function
  to avoid code duplication.
  
* Add helper macro `RUN_VPLAN_PASS` to capture the transformation name
  and pass it to the helper above for printing.

* Add new `-vplan-print-after-all` option (somewhat similar to existing
  `-vplan-verify-each`).
  
* Add two empty passes `printAfterInitialConstruction`/`printFinalVPlan`
so that initial/final
   VPlans would be supported in `-vplan-print-after-all`

This follows the original future plans in
https://github.com/llvm/llvm-project/pull/123640.


  Commit: e882aed1f94a117e762351d8c5bd840f5d60ad65
      https://github.com/llvm/llvm-project/commit/e882aed1f94a117e762351d8c5bd840f5d60ad65
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add assertions that binary and ternary classes are being used correctly in RISCVInstrInfoP.td. NFC (#178520)

The P extension defines an 'R' bit in some encodings that when set
indicates the instruction reads the destination register.

We had some problems in the past where we weren't using the ternary
classes for these cases. This patch adds asserts to better check this.


  Commit: 032accdce98dd60a33739e995056a22a750443d8
      https://github.com/llvm/llvm-project/commit/032accdce98dd60a33739e995056a22a750443d8
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h

  Log Message:
  -----------
  [clang][coverage] Introduce `hasSkipCounter` instead of `getIsCounterPair` (#178397)

The return value of `getIsCounterPair(S)` was `std::pair<bool,bool>` but
its `hasExec` wasn't used. So, introduce just the `hasSkipCounter(S)`.

It'd be better to name `getExecSkipCounterExistence` if
`std::pair<bool,bool>` would be resurrected in the future.


  Commit: 599c2a006324ef42cceb0fd1c626e767a4cbbef8
      https://github.com/llvm/llvm-project/commit/599c2a006324ef42cceb0fd1c626e767a4cbbef8
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/single-byte-counters.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general.c
    M llvm/test/tools/llvm-cov/Inputs/showLineExecutionCounts-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/showLineExecutionCounts-single.yaml

  Log Message:
  -----------
  [Coverage][Single] Enable Branch coverage for loop statements (#113109)

Depends on: #112730 #113114


https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492


  Commit: 5b9751b99b6bf37eb8d2d7d0e5085a4b560544b6
      https://github.com/llvm/llvm-project/commit/5b9751b99b6bf37eb8d2d7d0e5085a4b560544b6
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix build for 241de80d38d4482eeecc2c7f51dc1f2b7f06ad69 (#178527)


  Commit: 913344bea1467cac1907ee18fe936300271e8964
      https://github.com/llvm/llvm-project/commit/913344bea1467cac1907ee18fe936300271e8964
  Author: Marco Elver <elver at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/docs/AddressSanitizer.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/ThreadSanitizer.rst

  Log Message:
  -----------
  [Clang] Improve documentation for __builtin_allow_sanitize_check() (#175106)

Clarify that the builtin is intended for guarding explicit sanitizer
checks that use the runtime API to perform such checks. Update the
description to use "allowed" instead of "active" to better reflect the
intended usage and semantics, which would allow policy refinements in
future [1]. Also make the examples more concrete.

[1] https://discourse.llvm.org/t/explicit-sanitizer-checks-with-builtin-allow-sanitize-check/89383


  Commit: 18fd154e7c4580ed18078a9394e344b008ef8d52
      https://github.com/llvm/llvm-project/commit/18fd154e7c4580ed18078a9394e344b008ef8d52
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
    A llvm/test/tools/llvm-gsymutil/X86/elf-invalid-llvm-stmt-sequence.yaml
    A llvm/test/tools/llvm-gsymutil/X86/elf-llvm-stmt-sequence.yaml

  Log Message:
  -----------
  Modify llvm-gsymutil to work around invalid DW_AT_LLVM_stmt_sequence attributes. (#178034)

The DW_AT_LLVM_stmt_sequence attribute is an attribute that can be added
to a DW_TAG_subprogram DIE to uniquely identify the exact line tables
entries for a given function. This helps when we merge functions in the
same compile unit and end up with multiple sequences in the line table
that describe the same address range. Having this attribute on a
function allows us to select the right line table entries for a
function. This also helps us convert to GSYM and always get the line
tables right.

We have seen a large amount of errors when binaries have
DW_AT_LLVM_stmt_sequence attributes on functions but their values have
invalid .debug_line sequence offsets. When this would happen, the
conversion to GSYM would not emit any line table entries for that
function. This patch tries to use the DW_AT_LLVM_stmt_sequence attribute
when finding all line entries for a function, but it will fall back to
not using and requiring it to be correct. This ensures we always get the
most information in the GSYM even when DW_AT_LLVM_stmt_sequence values
are not valid. Others are working on fixing the compiler or LTO/Bolt
issues that cause invalid DW_AT_LLVM_stmt_sequence values to be in a
final executable, but this patch will help track and mitigate the issue.


  Commit: 1630dc44cf4a0d22004e9e339c57b4548f01f56f
      https://github.com/llvm/llvm-project/commit/1630dc44cf4a0d22004e9e339c57b4548f01f56f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/FileAction.h
    M lldb/source/Host/common/FileAction.cpp
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp

  Log Message:
  -----------
  Revert "[lldb][windows] fix an invalid cast from a file descriptor to a HANDLE (#178238)" (#178532)


  Commit: fcd609762cd47fdf7e90b879d58c4621fd8c520a
      https://github.com/llvm/llvm-project/commit/fcd609762cd47fdf7e90b879d58c4621fd8c520a
  Author: Zachary Yedidia <zyedidia at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lld/ELF/Writer.cpp
    M lld/test/ELF/fill-trap.s

  Log Message:
  -----------
  [lld] Fill section gaps with trap instructions (#176845)

Fills unused parts of code segments with trap instructions instead of
zeroes. This is especially useful on x86-64 since 0x00 0x00 is a
two-byte instruction that performs a memory access. Benefits:

- Provides an explicit trap when executing invalid code.
- Required for security reasons when targeting LFI.
- Makes disassembling easier, especially without symbol information.
Previously an odd number of zero bytes between sections could cause a
disassembler to incorrectly disassemble the remainder of the program.


  Commit: 502d2d43db06cb94206be972f51ae62d55304dd7
      https://github.com/llvm/llvm-project/commit/502d2d43db06cb94206be972f51ae62d55304dd7
  Author: Michael Spencer <bigcheesegs at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [clang][modulemap] Don't call translateFile (#176288)

In some cases `SourceManager::translateFile` ends up spending a lot of
time loading source locations from PCMs, significantly slowing down
module scanning. The actual requirements are that we use local FileIDs
for module maps so that we can compute affecting module maps, and that
there is only one FileID per module map per compiler instance. This
patch simply records the FileEntry to FileID mapping and reuses it when
needed.


  Commit: c54b288461646e0c9d0a0d3bc0cf9ff13eda234e
      https://github.com/llvm/llvm-project/commit/c54b288461646e0c9d0a0d3bc0cf9ff13eda234e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Use IntImmLeaf/FPImmLeaf. NFC (#178525)


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.h
    R llvm/test/Transforms/LoopVectorize/vplan-print-after-all.ll
    M llvm/unittests/Transforms/Vectorize/VPlanUncountableExitTest.cpp

  Log Message:
  -----------
  Revert "[VPlan] Add hidden `-vplan-print-after-all` option (#175839)" (#178544)

This reverts commit 97e1df149de213b760aae4060ee9e25dc9908125.

It looks like the commit caused some build bot failures. Revert back to green
so the failures can be investigated.

https://lab.llvm.org/buildbot/#/builders/159/builds/39803
https://lab.llvm.org/buildbot/#/builders/2/builds/43204


  Commit: 5b4f424454a0b83411111224b349e3e28f8d58f8
      https://github.com/llvm/llvm-project/commit/5b4f424454a0b83411111224b349e3e28f8d58f8
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M libclc/CMakeLists.txt
    R libclc/clc/include/clc/clctypes.h
    M libclc/clc/include/clc/float/definitions.h
    M libclc/clc/include/clc/integer/clc_upsample.h
    M libclc/clc/include/clc/integer/definitions.h
    M libclc/clc/include/clc/integer/gentype.inc
    M libclc/clc/include/clc/integer/gentype24.inc
    M libclc/clc/include/clc/internal/clc.h
    M libclc/clc/include/clc/math/gentype.inc
    M libclc/clc/include/clc/math/tables.h
    M libclc/clc/include/clc/relational/clc_all.h
    M libclc/clc/include/clc/relational/clc_any.h
    M libclc/clc/include/clc/relational/clc_isequal.h
    M libclc/clc/include/clc/relational/clc_isinf.h
    M libclc/clc/include/clc/relational/clc_isnan.h
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/opencl/include/clc/opencl/opencl-base.h

  Log Message:
  -----------
  [libclc][NFC] Fix build warning typedef-redefinition (#177888)

Fix downstream build warning:
redefinition of typedef 'ushort8' is a C11 feature [-Wtypedef-redefinition]

clctypes.h re-defines typedef from opencl-c-base.h. Both files are
included in libclc/opencl folder.
This PR deletes clctypes.h and includes opencl-c-base.h for both CLC and
OpenCL libraries.
Previously opencl-c-base.h was only included in OpenCL library.


  Commit: b79f5b56f0628442cefbc4550e745c94690e9093
      https://github.com/llvm/llvm-project/commit/b79f5b56f0628442cefbc4550e745c94690e9093
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    A clang/test/CIR/CodeGen/no-odr-use.cpp

  Log Message:
  -----------
  [CIR] Add handling for non-ODR use DeclRefLValues (#178323)

This upstreams the code to handle decl ref l-values for non-odr uses.


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

  Changed paths:
    M .github/workflows/prune-unused-branches.py

  Log Message:
  -----------
  [Github] Filter only origin branches in prune unused branches workflow

We should only have branches from the origin remote when actually
running the workflow, but this makes the script easier to test locally
where I have branches from several different remotes.

Reviewers: 

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


  Commit: 0cd50b0d3b37ebe349972548d5386cca99fca955
      https://github.com/llvm/llvm-project/commit/0cd50b0d3b37ebe349972548d5386cca99fca955
  Author: Luohao Wang <luohaothu at live.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [Clang][Sema] Avoid crash in overload diagnostics for invalid static deducing-this (#177783)

Fix #177741

Overload candidate diagnostics reserve a conversion slot for the object
argument. For static methods this slot does not correspond to a real
parameter, and for ill-formed declarations with an explicit object
parameter we could index past the parameter list and crash in assert
builds.

Use isExplicitObjectMemberFunction() when mapping conversion slots to
parameters and guard parameter-range computation to keep notes robust.


  Commit: 43dd36216555c9414af04166801beaf2ea82bb41
      https://github.com/llvm/llvm-project/commit/43dd36216555c9414af04166801beaf2ea82bb41
  Author: John Harrison <harjohn at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setExceptionBreakpoints.py
    M lldb/test/API/tools/lldb-dap/exception/TestDAP_exception.py
    M lldb/test/API/tools/lldb-dap/exception/cpp/TestDAP_exception_cpp.py
    M lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/Makefile
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/TestDAP_runtime_instruments.py
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/categories
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/main.c
    M lldb/tools/lldb-dap/Handler/ExceptionInfoRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    A lldb/tools/lldb-dap/SBAPIExtras.h

  Log Message:
  -----------
  [lldb-dap] Adding more details to 'exceptionInfo'. (#176465)

In the exceptionInfo request I've added additional information for crash
data, instrumentation data and more detailed exception data.

For example, when UBSan is enabled, you now see additional information
in the exception stack trace about the detected issue:

<img width="1728" height="538" alt="Screenshot 2026-01-15 at 3 05 08 PM"
src="https://github.com/user-attachments/assets/b761af2c-90ac-4eb7-9926-3ab133f1b753"
/>

I included a new test for stopping at `lldb::eStopReasonInstrumentation`
and ensuring we have additional information reported.

---------

Co-authored-by: Ebuka Ezike <yerimyah1 at gmail.com>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: ea509d2857606750218ab80b082ffcae43aef7fc
      https://github.com/llvm/llvm-project/commit/ea509d2857606750218ab80b082ffcae43aef7fc
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/single-byte-counters.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general.c

  Log Message:
  -----------
  [Coverage][Single] Enable Branch coverage for SwitchStmt (#113112)

Depends on: #112730 #113114


https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492


  Commit: f6fe6fc86a0ce3253c7a6cca2841a905ad6cf3a3
      https://github.com/llvm/llvm-project/commit/f6fe6fc86a0ce3253c7a6cca2841a905ad6cf3a3
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/deleted-instructions-clear.ll
    M llvm/test/Transforms/SLPVectorizer/X86/parent-node-split-non-schedulable.ll
    A llvm/test/Transforms/SLPVectorizer/X86/split-node-marked-to-gather.ll
    M llvm/test/Transforms/SLPVectorizer/X86/split-vectorize-gathered-def-after-use.ll

  Log Message:
  -----------
  [SLP]Do not vectorize subtrees of the split node, marked as gathers.

If the split node was marked as gather/buildvector nodes, the vectorizer
should not vectorize its subtrees, which are marked as deleted.


  Commit: 5968e29dad63d9c866675dbce9cc284fcec8a900
      https://github.com/llvm/llvm-project/commit/5968e29dad63d9c866675dbce9cc284fcec8a900
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.h
    M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
    A lldb/test/API/functionalities/postmortem/elf-core/linux-x86_64-no-exe.core

  Log Message:
  -----------
  [lldb] Add the ability to load ELF core file executables and shared libraries from memory (#177289)

This patch enables ELF core files to be loaded and still show
executables and shared libraries. Functionality includes:
- Load executable and shared libraries from memory if ELF headers are
available
- Create placeholder for missing shared libraries and executable.
Previously you just wouldn't get anything in the "image list" if no
executable was provided.


  Commit: 16149ca93227d0d26a2f7387e95ad30971e99f43
      https://github.com/llvm/llvm-project/commit/16149ca93227d0d26a2f7387e95ad30971e99f43
  Author: Greg Clayton <gclayton at fb.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
    A lldb/test/Shell/SymbolFile/DWARF/Inputs/gnu-ref-strp-alt.yaml
    A lldb/test/Shell/SymbolFile/DWARF/gnu-ref-strp-alt.test

  Log Message:
  -----------
  Add support for DW_FORM_GNU_ref_alt and DW_FORM_GNU_strp_alt. (#176056)

LLDB's DWARF parser didn't support parsing DW_FORM_GNU_ref_alt and
DW_FORM_GNU_strp_alt forms which would cause any file loaded by LLDB to
fail to parse any DWARF. Added support for parsing this information
only, not for actually finding the debug info reference to an alternate
file or a string in an alternate file. These extensions are used by DWZ
files which are present in some linux distros, so it will be good for
LLDB to just be able to parse these without emitting an error like:

(lldb) b bar
warning: (arm64) /tmp/a.out unsupported DW_FORM values: 0x1f20 0x1f21


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

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

  Log Message:
  -----------
  [NFC][CodeGen] Simplify fullyRecomputeLiveIns (#178045)

Use range for loop and simplify the convergence loop.


  Commit: 9fb61d97221350cfefed15d07258d33a981bd2ea
      https://github.com/llvm/llvm-project/commit/9fb61d97221350cfefed15d07258d33a981bd2ea
  Author: Jessica Clarke <jrtc27 at jrtc27.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h

  Log Message:
  -----------
  [NFCI][ELF][Mips] Refactor MipsGotSection to avoid explicit writes (#178561)

Splitting the VA / addend calculations between build and writeTo means
having to keep them in sync and duplicating some of the logic. Move all
such calculations into build, mirroring how the normal non-MIPS code in
Relocations.cpp ensures the addend and initial memory contents are set.


  Commit: 9aaf0b89f5ab3c84f8ad24213992a8158d344b96
      https://github.com/llvm/llvm-project/commit/9aaf0b89f5ab3c84f8ad24213992a8158d344b96
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
    M mlir/include/mlir/Tools/PDLL/AST/Types.h
    M mlir/lib/Analysis/Presburger/Simplex.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/Conversion/MathToLibm/MathToLibm.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/Affine/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Affine/Transforms/DecomposeAffineOps.cpp
    M mlir/lib/Dialect/Affine/Utils/Utils.cpp
    M mlir/lib/Dialect/Arith/Utils/Utils.cpp
    M mlir/lib/Dialect/ArmSME/Transforms/TileAllocation.cpp
    M mlir/lib/Dialect/Async/Transforms/AsyncParallelFor.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/BufferResultsToOutParams.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
    M mlir/lib/Dialect/Func/IR/FuncOps.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/GPUHeuristics.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgMatchOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ConstantFold.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ConvertConv2DToImg2Col.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DecomposeLinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseOpFusion.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ElementwiseToLinalg.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp
    M mlir/lib/Dialect/Linalg/Transforms/HoistPadding.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Split.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/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/ACCImplicitData.cpp
    M mlir/lib/Dialect/Quant/IR/TypeParser.cpp
    M mlir/lib/Dialect/Quant/Transforms/NormalizeQuantTypes.cpp
    M mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/lib/Dialect/Shape/IR/Shape.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorCodegen.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorInferTypeOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Utils/ConversionUtils.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Utils/ReshapeOpsUtils.cpp
    M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorInterleave.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransferSplitRewritePatterns.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/TransformOps/XeGPUTransformOps.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/IR/AffineExpr.cpp
    M mlir/lib/Interfaces/ValueBoundsOpInterface.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp
    M mlir/lib/Target/LLVMIR/Transforms/TargetToTargetFeatures.cpp
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Transform/TestTransformDialectExtension.cpp
    M mlir/tools/mlir-tblgen/AttrOrTypeDefGen.cpp
    M mlir/tools/mlir-tblgen/BytecodeDialectGen.cpp
    M mlir/tools/mlir-tblgen/OpPythonBindingGen.cpp

  Log Message:
  -----------
  [mlir] Apply clang-tidy check llvm-use-vector-utils. NFC. (#178526)


  Commit: ed4aab07ec7eb335f6a082245885c15f1185472a
      https://github.com/llvm/llvm-project/commit/ed4aab07ec7eb335f6a082245885c15f1185472a
  Author: puneeth_aditya_5656 <myakampuneeth at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M offload/liboffload/src/OffloadImpl.cpp

  Log Message:
  -----------
  [Offload][AMDGPU] Fix olQueryQueue uninitialized output parameter (#178464)

## Summary
- Fix uninitialized output parameter in `olQueryQueue_impl` when
`Queue->AsyncInfo->Queue` is null
- Set `IsQueueWorkCompleted` to `true` when no underlying queue exists
(no pending work)
- Resolves test failure on AMDGPU for
`olQueryQueueTest.SuccessEmptyAsyncQueueCheckResult`

Fixes #178462.

## Test plan
- [x] Fixed
`OffloadAPI/queue.unittests/olQueryQueueTest/SuccessEmptyAsyncQueueCheckResult/AMDGPU_AMD_Radeon_RX_7700_XT_0`
test
- [ ] CI tests pass

---------

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>
Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: 3404537393f5896650ddc71f0e1285977c8f8aa4
      https://github.com/llvm/llvm-project/commit/3404537393f5896650ddc71f0e1285977c8f8aa4
  Author: Saina Daneshmand <66389676+SainaDaneshmandjahromi at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sqrt.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sqrt.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sqrt.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 sqrt to header-only (#178335)

This refactors `sqrt` to be header-only, following the libc math
refactoring plan.

Part of #147386  
Closes #177648


  Commit: eef6b62dccde684bce421de3939b2a85f48a896f
      https://github.com/llvm/llvm-project/commit/eef6b62dccde684bce421de3939b2a85f48a896f
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/Analysis/MemoryBuiltins.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/Transforms/Instrumentation/AddressSanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
    M llvm/test/Instrumentation/BoundsChecking/runtimes.ll
    M llvm/test/Instrumentation/BoundsChecking/simple.ll
    M llvm/test/Instrumentation/MemorySanitizer/alloca.ll
    M llvm/test/Transforms/LowerConstantIntrinsics/objectsize_basic.ll

  Log Message:
  -----------
  [NFCI][IRBuilder] Add CreateAllocationSize helper (#178346)

Create a new `IRBuilderBase::CreateAllocationSize` method to compute the
runtime size of an alloca as a Value*. This handles both static and
dynamic allocas by computing `ArraySize * ElementSize`, and using
CreateTypeSize to properly handle scalable vectors.

This de-duplicates code across multiple instrumentation and analysis
passes and increases consistency.

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 46606bbc530e01e6e2d4547f6012f0a262253e31
      https://github.com/llvm/llvm-project/commit/46606bbc530e01e6e2d4547f6012f0a262253e31
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix formatting for #178527 (#178582)

Fixes 5b9751b99b6bf37eb8d2d7d0e5085a4b560544b6.


  Commit: bacba0605899c2a4815e0046ff9002e3cbc2be3c
      https://github.com/llvm/llvm-project/commit/bacba0605899c2a4815e0046ff9002e3cbc2be3c
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  [Lint] Replace getAllocatedType with getAllocationSize (#178353)

This now also handles constant array allocations (getAllocationSize
returns total size for constant array allocations, whereas the old code
explicitly excluded isArrayAllocation from linting support).

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


  Commit: 218d0c2ed1b7c1ad6c8589e869f73aa6b3bdd60c
      https://github.com/llvm/llvm-project/commit/218d0c2ed1b7c1ad6c8589e869f73aa6b3bdd60c
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp

  Log Message:
  -----------
  [NFC][CodeGen] Use getAllocationSize instead of manual size computation (#178360)

Replace manual alloca size computation with `getAllocationSize` API.
This reduces dependency on `getAllocatedType` when just needed for size
and vscale queries.

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: b7c1a6f8b447fba6fff47d309eb7ba1bc22e8c53
      https://github.com/llvm/llvm-project/commit/b7c1a6f8b447fba6fff47d309eb7ba1bc22e8c53
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/Transforms/SafeStack/X86/debug-loc.ll

  Log Message:
  -----------
  [CodeGen] Only use actual alloca alignment (#178361)

Remove getPrefTypeAlign calls and use only the alloca's explicit
alignment, since the type may not be semantically useful, there is no
useful reason to change alignment to support it.

The alloca's explicit alignment (from getAlign()) is already optimally
correct; we don't need to derive alignment from the allocated type.

Co-authored-by: Claude Sonnet 4.5 <noreply at anthropic.com>


  Commit: 7dfa132936a89a966befb6045f306cb9905c6dab
      https://github.com/llvm/llvm-project/commit/7dfa132936a89a966befb6045f306cb9905c6dab
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M lld/ELF/Arch/RISCV.cpp
    M lld/test/ELF/riscv-vendor-relocations.s

  Log Message:
  -----------
  [ELF,RISCV] Fix code style after #169273 (#178365)


  Commit: f86fab6105ec76097dc46abe587463e3aef852d8
      https://github.com/llvm/llvm-project/commit/f86fab6105ec76097dc46abe587463e3aef852d8
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/single-byte-counters.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general.c
    M llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-templates-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-templates-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-templates.cpp
    M llvm/test/tools/llvm-cov/Inputs/showLineExecutionCounts-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/showLineExecutionCounts-single.yaml
    M llvm/test/tools/llvm-cov/branch-templates.test

  Log Message:
  -----------
  [Coverage][Single] Enable Branch coverage for IfStmt (#113111)

Depends on: #112730 #113114


https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492


  Commit: 7901e2d04c553f6b9e17800059be8cd702c65bac
      https://github.com/llvm/llvm-project/commit/7901e2d04c553f6b9e17800059be8cd702c65bac
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

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

  Log Message:
  -----------
  workflows/release-tasks: Add missing needs tag to release-lit job (#178224)

The job references variables from the validate-tag job, so it needs to
have it listed in the 'needs' tag. This is why this job failed for the
22.1.0-rc2 release.


  Commit: 7a4d26635d6cf631a6256d35d4b1bec3a6a8e30e
      https://github.com/llvm/llvm-project/commit/7a4d26635d6cf631a6256d35d4b1bec3a6a8e30e
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SafeStack.cpp

  Log Message:
  -----------
  [CodeGen] Remove unused variable (NFC)

/llvm-project/llvm/lib/CodeGen/SafeStack.cpp:666:11:
 error: unused variable 'Ty' [-Werror,-Wunused-variable]
    Type *Ty = AI->getAllocatedType();
          ^
1 error generated.


  Commit: 667c981ac07a91d5c6fef512c2fcb0a7166dc0ad
      https://github.com/llvm/llvm-project/commit/667c981ac07a91d5c6fef512c2fcb0a7166dc0ad
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [bazel][mlir] Fix build for #178526 (#178593)

Fix 9aaf0b89f5ab3c84f8ad24213992a8158d344b96.


  Commit: 0d562c96689de6bce7ca06bd1890724c72d9c536
      https://github.com/llvm/llvm-project/commit/0d562c96689de6bce7ca06bd1890724c72d9c536
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [clang][bytecode] Only check static lambda captures if we have to (#178452)

Call `getCaptureFields()` only if the function is static, because we
only care about the captures in that case.


  Commit: 3a5978124638944a188f5327154f4558a40f08b4
      https://github.com/llvm/llvm-project/commit/3a5978124638944a188f5327154f4558a40f08b4
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SafeStack.cpp

  Log Message:
  -----------
  [SafeStack] remove unused variable (#178589)

An accidental conflict between two of my PRs that each removed one of
the two uses of this variable.


  Commit: 223e750afea14c9190f889847937c67db0441d62
      https://github.com/llvm/llvm-project/commit/223e750afea14c9190f889847937c67db0441d62
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Fix build for #177289 (#178596)

Fix 5968e29dad63d9c866675dbce9cc284fcec8a900.

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: 08f5ce893cb4152a394c32ac45b67bcaeab58c64
      https://github.com/llvm/llvm-project/commit/08f5ce893cb4152a394c32ac45b67bcaeab58c64
  Author: woruyu <1214539920 at qq.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    A llvm/test/CodeGen/LoongArch/pr177863.ll

  Log Message:
  -----------
  [LoongArch][DAG] Custom lowering for vector SETCC operations (#177904)

### Summary
This PR resolves https://github.com/llvm/llvm-project/issues/177863


  Commit: b6c412814a946b060561c6d88043f8b44180c3a2
      https://github.com/llvm/llvm-project/commit/b6c412814a946b060561c6d88043f8b44180c3a2
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-c-general.c
    M llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-logical-mixed.cpp
    M llvm/test/tools/llvm-cov/Inputs/branch-macros-single.proftext
    M llvm/test/tools/llvm-cov/Inputs/branch-macros-single.yaml
    M llvm/test/tools/llvm-cov/Inputs/branch-macros.cpp
    M llvm/test/tools/llvm-cov/branch-macros.test

  Log Message:
  -----------
  [Coverage][Single] Enable Branch coverage for `BinLAnd` and `BinLOr` (#113113)

Depends on: #113109 #113110 #113111


https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492


  Commit: e5d6ed68fd3f3b48d12cbe76aecc7800e5b0eb61
      https://github.com/llvm/llvm-project/commit/e5d6ed68fd3f3b48d12cbe76aecc7800e5b0eb61
  Author: Pradeep Kumar <pradeepku at nvidia.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/nvvm/redux-sync-invalid.mlir
    A mlir/test/Target/LLVMIR/nvvm/tcgen05-ld-red-invalid.mlir
    A mlir/test/Target/LLVMIR/nvvm/tcgen05-ld-red.mlir
    M mlir/test/python/dialects/nvvm.py

  Log Message:
  -----------
  [mlir][NVVM] Add support for tcgen05.ld.red Op (#177330)

The commit adds the following:
- Adds tcgen05.ld.red Op with tests under tcgen05-ld-red.mlir and
tcgen05-ld-red-invalid.mlir
- Renamed ReduxKind to ReductionKind and renamed it across NVVM and GPU
Dialects
- Replaced Tcgen05LdRedOperationAtr with ReductionKindAttr
- Updated tcgen05.ld.red and nvvm.redux.sync tests


  Commit: 2b14f33e5534eb3c60d7d55a436ce4a17e2f3dcd
      https://github.com/llvm/llvm-project/commit/2b14f33e5534eb3c60d7d55a436ce4a17e2f3dcd
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [GitHub] Include memory tagging sources in sanitizer (#178604)

These are part of sanitizer implementation.


  Commit: 507d1856ccef4193ed48edabc010fe4661c9216c
      https://github.com/llvm/llvm-project/commit/507d1856ccef4193ed48edabc010fe4661c9216c
  Author: bala-bhargav <penugondabalabharghav at gmail.com>
  Date:   2026-01-28 (Wed, 28 Jan 2026)

  Changed paths:
    M clang/unittests/DirectoryWatcher/CMakeLists.txt

  Log Message:
  -----------
  [clang][unittests] Fix linker error for DirectoryWatcherTest with CLANG_LINK_CLANG_DYLIB (#178455)

Move clangDirectoryWatcher from LINK_LIBS to CLANG_LIBS so it gets
replaced by clang-cpp when building with CLANG_LINK_CLANG_DYLIB=ON.

When using both CLANG_LINK_CLANG_DYLIB=ON and LLVM_ENABLE_LTO=Thin, the
test would fail with:
ld.lld: error: undefined symbol:
clang::DirectoryWatcher::create(llvm::StringRef, std::function<void
(llvm::ArrayRef

This happens because clangDirectoryWatcher was being linked as a
separate library alongside clang-cpp (which already contains
clangDirectoryWatcher), causing duplicate symbol issues with LTO.

The fix correctly categorizes:
- clangDirectoryWatcher → CLANG_LIBS (Clang library, bundled in
clang-cpp)
- LLVMTestingSupport → LINK_LIBS (LLVM library, always linked directly)

#178302


  Commit: d8da229d7172700f4f93fafe3ac22144ca04f6e9
      https://github.com/llvm/llvm-project/commit/d8da229d7172700f4f93fafe3ac22144ca04f6e9
  Author: Jhalak Patel <jhalakp at nvidia.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/Utils/Utils.h
    M mlir/include/mlir/Dialect/Utils/StaticValueUtils.h
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Dialect/SCF/Utils/Utils.cpp
    M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
    M mlir/test/Dialect/SCF/trip_count.mlir
    M mlir/test/lib/Dialect/SCF/TestSCFUtils.cpp

  Log Message:
  -----------
  [mlir][scf] Interpret trip counts as unsigned integers   (#178060)

Trip counts represent iteration counts and are always non-negative. This
PR fixes all call sites to correctly use `getZExtValue()` instead of
`getSExtValue()` when extracting trip count values from `APInt`. Also
documents to clarify results are unsigned.


  Commit: 399f25f030cc083534c3d583abb4a1d445ced572
      https://github.com/llvm/llvm-project/commit/399f25f030cc083534c3d583abb4a1d445ced572
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-29 (Thu, 29 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-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Handle temporaries of non-trivial view types (#177878)

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

This enables the analysis to correctly track lifetimes through
non-trivial view types that require temporary binding due to having a
destructor.

This is fixed by handling `MaterializeTemporaryExpr` even for
lifetime-extended temporaries and fixing the flow of origins.


  Commit: 12c13e0009bb1a0e07044ea8129ff114cb461184
      https://github.com/llvm/llvm-project/commit/12c13e0009bb1a0e07044ea8129ff114cb461184
  Author: Carl Ritson <carl.ritson at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.s.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.s.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.s.buffer.load.ll

  Log Message:
  -----------
  [AMDGPU][GFX1250] Implement offset handling in s.buffer.load (#178389)

Divergent path of s.buffer.load must handle 32b offset extension
behaviour on GFX1250.
Tests in llvm.amdgcn.s.buffer.load.ll are rewritten to avoid using
export instructions not available on GFX1250.


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

  Changed paths:
    M libcxx/include/__config
    M libcxx/include/__cxx03/__config
    R libcxx/test/libcxx-03/libcpp_freestanding.sh.cpp
    R libcxx/test/libcxx/libcpp_freestanding.sh.cpp

  Log Message:
  -----------
  [libc++][NFC] Remove _LIBCPP_FREESTANDING (#176907)

`_LIBCPP_FREESTANDING` isn't used and it is unclear what libc++'s
strategy is going to be for implementing freestanding at the moment.
Therefore, remove the macro.


  Commit: 655c31dcab304cfced38dd15d2c15a4bea4145e4
      https://github.com/llvm/llvm-project/commit/655c31dcab304cfced38dd15d2c15a4bea4145e4
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_wmma_w32.txt

  Log Message:
  -----------
  [AMDGPU] Change scale_src2 encoding from vgpr0 to literal 0 (#178404)

This changes the fix from #167777 to use the encoding for literal 0
instead of the encoding for vgpr0, to match new SP3 behaviour and for
consistency with all other unused VALU source operands since #175753.


  Commit: 822756c2181ea897afdfadc6b1e38c978db289bb
      https://github.com/llvm/llvm-project/commit/822756c2181ea897afdfadc6b1e38c978db289bb
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoZb.td
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64zbs.ll

  Log Message:
  -----------
  [RISCV] Add ISEL pattern to convert add (shl -1, X), Y to sub Y, (bset zero, X) (#178601)

Fixes #178588


  Commit: a5ffce0faebe5f49d8befb774f4cb781b9e33df7
      https://github.com/llvm/llvm-project/commit/a5ffce0faebe5f49d8befb774f4cb781b9e33df7
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/MemoryMonitor.h
    M lldb/source/Host/common/MemoryMonitor.cpp

  Log Message:
  -----------
  [lldb] Fix memory monitor shutdown on Linux using eventfd (#178083)

The current linux implementation has a 1 second timeout when polling for
memory pressure. lldb-dap may take up to an extra 1 second to shutdown.
Use an event file descriptor to immediately stop the memory monitor
thread.

Fixes #150220


  Commit: 12dd34260eccf4937a4a66cad5702f74f8777b47
      https://github.com/llvm/llvm-project/commit/12dd34260eccf4937a4a66cad5702f74f8777b47
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/test/API/commands/help/TestHelp.py

  Log Message:
  -----------
  [lldb][test] Add tests for formatting of command option descriptions (#178235)

These test the existing behaviour before I work on #177570.
    
I chose "breakpoint set" because it has options with ANSI underlines
in the description.
    
The tests cover no ANSI (use-colour off) and with ANSI (use-color on).
The latter is where we have problems right now.


  Commit: a0e0f515419841a0c46e5192db318b207c6faab3
      https://github.com/llvm/llvm-project/commit/a0e0f515419841a0c46e5192db318b207c6faab3
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2026-01-29 (Thu, 29 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

  Log Message:
  -----------
  [AArch64][Driver] Enable host supported features with march=native. (#177128)

Currently, march=native enables the base features implied by the host
system architecture, such as Armv8.2-A, Armv9-A, etc, rather than the
actual features supported by the host (e.g. crypto). This is suboptimal
as it generally leaves optional but supported features disabled.

This patch aligns the behaviour of march=native with mcpu=native by
using the latter's decoding logic to decode the former as well. This
means both options should enable a similar set of features. We also set
the target-cpu accordingly, so that march=native becomes a drop-in
replacement for mcpu=native.


  Commit: 224a6ffbc7a777ee12f3f0e108088a1b64e60d32
      https://github.com/llvm/llvm-project/commit/224a6ffbc7a777ee12f3f0e108088a1b64e60d32
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M libcxx/include/__algorithm/specialized_algorithms.h
    M libcxx/include/__algorithm/swap_ranges.h
    M libcxx/include/__bit_reference
    A libcxx/test/libcxx/algorithms/specialized_algorithms.compile.pass.cpp

  Log Message:
  -----------
  [libc++] Refactor swap_ranges to use __specialized_algorithm for the vector<bool>::iterator specialization (#173384)


  Commit: 8756292abb0072800190af329733f3d9217034fb
      https://github.com/llvm/llvm-project/commit/8756292abb0072800190af329733f3d9217034fb
  Author: puneeth_aditya_5656 <myakampuneeth at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/IR/BuiltinTypeInterfaces.td
    M mlir/lib/IR/BuiltinTypeInterfaces.cpp
    M mlir/lib/IR/BuiltinTypes.cpp
    A mlir/test/Dialect/MemRef/high-rank-overflow.mlir
    M mlir/unittests/IR/ShapedTypeTest.cpp

  Log Message:
  -----------
  [mlir] Fix integer overflow in ShapedType::getNumElements and `makeCanonicalStridedLayoutExpr` (#178395)

Add to `ShapedTypeInterface` a new `tryGetNumElements()` API which
returns `std::optional<int64_t>` - returns `std::nullopt` on overflow
instead of UB, using `llvm::checkedMul` for proper overflow detection.
`getNumElements()` now uses this new API to assert on overflow.

Also fix `AffineExpr` canonicalization to avoid crashing on overflow
using `llvm::checkedMul`.

Fixes #178362
Fixes #177816

---------

Co-authored-by: Claude Opus 4.5 <noreply at anthropic.com>


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

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

  Log Message:
  -----------
  [AMDGPU] Remove obsolete comment again

Obsoleted by e4464bf3d458 "AMDGPU/GlobalISel: Select scalar v2s16 G_BUILD_VECTOR".
Removed by cb64455faa36 "[AMDGPU] Remove obsolete comment".
Accidentally reintroduced by a8d9d50762c4 "[AMDGPU] gfx90a support".


  Commit: f1235bd624d60d048b1ef68e60321498bd63bb2c
      https://github.com/llvm/llvm-project/commit/f1235bd624d60d048b1ef68e60321498bd63bb2c
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/source/Host/windows/MainLoopWindows.cpp
    A lldb/test/Shell/DAP/TestSTDINConsole.test

  Log Message:
  -----------
  [lldb-dap][windows] allow STDIN to be a console (#178409)

Co-authored-by: Ebuka Ezike <yerimyah1 at gmail.com>


  Commit: 1dd9e200469262ffa5ab658d10143ef4f93d9adf
      https://github.com/llvm/llvm-project/commit/1dd9e200469262ffa5ab658d10143ef4f93d9adf
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/configuration.py
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py

  Log Message:
  -----------
  [lldb] Fix UbSan decorator (#177964)

the ubsan decorator previously assumes the platform is macOS.

macOS has an extra underscore in symbols names match two or more.
uses the llvm-nm that is built instead of the system's nm.


  Commit: 4ebede7696417c3db98e26a30b96ac541fc67b1f
      https://github.com/llvm/llvm-project/commit/4ebede7696417c3db98e26a30b96ac541fc67b1f
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/source/Host/windows/MainLoopWindows.cpp
    R lldb/test/Shell/DAP/TestSTDINConsole.test

  Log Message:
  -----------
  Revert "[lldb-dap][windows] allow STDIN to be a console (#178409)" (#178641)


  Commit: 3fb8601273d8ad8b8586205bbfc13acb87439147
      https://github.com/llvm/llvm-project/commit/3fb8601273d8ad8b8586205bbfc13acb87439147
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/source/Interpreter/Options.cpp

  Log Message:
  -----------
  [lldb] Refactor command option printing (#178208)

So I have an easier time fixing #177570.

Changes I have made:
* Init a variable inside if statement to reduce scope.
* Added const to some variables.
* Early return if we print a single line, and dedent the "else" that
handles multiple lines.
* Only convert lldb's short codes into ansi codes once.
* Rename a couple of variables where they could have either referred to
the visible text or the raw data with the ansi codes in.


  Commit: 73c7c562dd9e1ead9641aaee5f67d972e1b40c84
      https://github.com/llvm/llvm-project/commit/73c7c562dd9e1ead9641aaee5f67d972e1b40c84
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    A llvm/test/CodeGen/AArch64/sve-ldst-sext.ll
    A llvm/test/CodeGen/AArch64/sve-ldst-zext.ll
    M llvm/test/CodeGen/X86/2007-10-29-ExtendSetCC.ll
    M llvm/test/CodeGen/X86/avx512-ext.ll
    M llvm/test/CodeGen/X86/iabs.ll
    M llvm/test/CodeGen/X86/icmp-abs-C.ll
    M llvm/test/CodeGen/X86/icmp-pow2-logic-npow2.ll
    M llvm/test/CodeGen/X86/known-bits.ll
    M llvm/test/CodeGen/X86/neg-abs.ll
    M llvm/test/CodeGen/X86/widen-load-of-small-alloca-with-zero-upper-half.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/basic.ll.expected

  Log Message:
  -----------
  [LLVM][DAGCombiner] Look through freeze when combining extensions of loads (#175022)

Following on from https://github.com/llvm/llvm-project/pull/172484 I
have added support to tryToFoldExtOfLoad for looking through freezes, in
order to catch more cases of extending loads. This type of code is
sometimes seen being generated by the loop vectoriser. For now I've
limited this to cases where the load is only used by the freeze, since
otherwise it leads to worse code in some X86 tests.


  Commit: 3f1386b9861758beb7a9ba15c24bdba3a9f8c03d
      https://github.com/llvm/llvm-project/commit/3f1386b9861758beb7a9ba15c24bdba3a9f8c03d
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Add braces around a switch case. NFC. (#178637)


  Commit: e17374a33f051d7580f35fcac5712d300bfdd9a2
      https://github.com/llvm/llvm-project/commit/e17374a33f051d7580f35fcac5712d300bfdd9a2
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/source/Host/windows/MainLoopWindows.cpp
    A lldb/test/Shell/DAP/TestSTDINConsole.test

  Log Message:
  -----------
  [lldb-dap][windows] allow STDIN to be a console (#178642)


  Commit: 245043fad49ecf989e462d1a82a380570165dd95
      https://github.com/llvm/llvm-project/commit/245043fad49ecf989e462d1a82a380570165dd95
  Author: Oleksandr Tarasiuk <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaType.cpp
    M clang/test/SemaCXX/underlying_type.cpp

  Log Message:
  -----------
  [Clang] avoid assertion in __underlying_type for enum redeclarations (#177984)

Fixes #177943

---

This patch addresses cases where `__underlying_type` is used with enum
redeclarations. The previously added assertion
(https://github.com/llvm/llvm-project/pull/155900) treated a missing
`int` on the referenced `EnumDecl` as an indicator of a _demoted
definition_, while this condition can also occur for redeclarations.


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

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

  Log Message:
  -----------
  [clang][bytecode][NFC] Use `Block::deref()` in `EvalEmitter` (#178630)

Instead of doing the casting around `Block::data()` ourselves.


  Commit: 40ebbb6362af00f412a8e0455621be02cce6db24
      https://github.com/llvm/llvm-project/commit/40ebbb6362af00f412a8e0455621be02cce6db24
  Author: Yingying Wang <3171290993 at qq.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/test/Transforms/LoopInterchange/reduction2mem-limitation.ll
    M llvm/test/Transforms/LoopInterchange/reduction2mem.ll

  Log Message:
  -----------
  [LoopInterchange] Initialize new_var to InitValue on first iteration (#178370)

Fixed a bug found during testing:
- If it is the first iteration, `new_var` should be initialized to
'InitValue'.


  Commit: 1e4b4fa1b26309a22c5c39e2f4452eadc1160204
      https://github.com/llvm/llvm-project/commit/1e4b4fa1b26309a22c5c39e2f4452eadc1160204
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    M flang/test/Lower/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    M flang/test/Lower/OpenMP/real10.f90
    A flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
    A flang/test/Transforms/OpenMP/function-filtering.mlir
    R flang/test/Transforms/omp-function-filtering.mlir

  Log Message:
  -----------
  [Flang][OpenMP] Minimize host ops remaining in device compilation (#137200)

This patch updates the function filtering OpenMP pass intended to remove
host functions from the MLIR module created by Flang lowering when
targeting an OpenMP target device.

Host functions holding target regions must be kept, so that the target
regions within them can be translated for the device. The issue is that
non-target operations inside these functions cannot be discarded because
some of them hold information that is also relevant during target device
codegen. Specifically, mapping information resides outside of
`omp.target` regions.

This patch updates the previous behavior where all host operations were
preserved to then ignore all of those that are not actually needed by
target device codegen. This, in practice, means only keeping target
regions and mapping information needed by the device. Arguments for some
of these remaining operations are replaced by placeholder allocations
and `fir.undefined`, since they are only actually defined inside of the
target regions themselves.

As a result, this set of changes makes it possible to later simplify
target device codegen, as it is no longer necessary to handle host
operations differently to avoid issues.


  Commit: 4cc80831ea5d39c186fc29692556b762ffb6478b
      https://github.com/llvm/llvm-project/commit/4cc80831ea5d39c186fc29692556b762ffb6478b
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    A flang/test/Integration/OpenMP/target-nesting-in-host-ops.f90
    A flang/test/Integration/OpenMP/target-use-device-nested.f90
    A flang/test/Integration/OpenMP/task-target-device.f90
    A flang/test/Integration/OpenMP/threadprivate-target-device.f90
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
    M mlir/test/Target/LLVMIR/omptarget-debug-loop-loc.mlir
    M mlir/test/Target/LLVMIR/omptarget-debug-var-1.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-to-device.mlir
    M mlir/test/Target/LLVMIR/omptarget-memcpy-align-metadata.mlir
    R mlir/test/Target/LLVMIR/omptarget-target-inside-task.mlir
    R mlir/test/Target/LLVMIR/omptarget-threadprivate-device-lowering.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm-invalid.mlir
    R mlir/test/Target/LLVMIR/openmp-target-nesting-in-host-ops.mlir
    R mlir/test/Target/LLVMIR/openmp-target-use-device-nested.mlir
    R mlir/test/Target/LLVMIR/openmp-task-target-device.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Simplify OpenMP device codegen (#137201)

After removing host operations from the device MLIR module, it is no
longer necessary to provide special codegen logic to prevent these
operations from causing compiler crashes or miscompilations.

This patch removes these now unnecessary code paths to simplify codegen
logic. Some MLIR tests are now replaced with Flang tests, since the
responsibility of dealing with host operations has been moved earlier in
the compilation flow.

MLIR tests holding target device modules are updated to no longer
include now unsupported host operations.


  Commit: 8a9f362e5151470a319c63c06867790a08eef488
      https://github.com/llvm/llvm-project/commit/8a9f362e5151470a319c63c06867790a08eef488
  Author: Miloš Poletanović <poletanovicmilos97 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    A mlir/test/Conversion/SCFToSPIRV/signed-vector.mlir

  Log Message:
  -----------
  [MLIR][Arith] Ensure ConstantOp validates signless integers for vectors (#177857)

Fixes #177818 
`arith::ConstantOp::isBuildableWith()` was only checking scalar integers
for signlessness, allowing signed vector element types to pass
validation incorrectly.

---------

Co-authored-by: Milos Poletanovic <mpoletanovic at syrmia.com>


  Commit: 24e95bae3655c2740d1525a3095652cfa98189da
      https://github.com/llvm/llvm-project/commit/24e95bae3655c2740d1525a3095652cfa98189da
  Author: Abhishek Varma <avarma094 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Generalization.cpp
    M mlir/test/Dialect/Linalg/generalize-named-ops.mlir

  Log Message:
  -----------
  [mlir][Linalg] Preserve discardable/user-defined attributes during generalization (#178599)

-- As observed in a [downstream
project](https://github.com/iree-org/iree/pull/23294#discussion_r2734982998)
: the named to generize linalg op conversion wasn't preserving
discardable attributes.
-- This commit aims to fix the same.
-- Only a single test case is added as the change applies to any named
linalg op's generalization.

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


  Commit: d2e18bebe0b95d09ef8d0ac2ba0aa8d0e129be54
      https://github.com/llvm/llvm-project/commit/d2e18bebe0b95d09ef8d0ac2ba0aa8d0e129be54
  Author: Henry Linjamäki <henry.linjamaki at tuni.fi>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.h
    A clang/test/Driver/Inputs/hipspv/lib/hip-device-lib/hipspv-spirv64-unknown-chipstar.bc
    M clang/test/Driver/hipspv-link-static-library.hip
    M clang/test/Driver/hipspv-pass-plugin.hip
    A clang/test/Driver/hipspv-toolchain-rdc-separate.hip
    M clang/test/Driver/hipspv-toolchain-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [Clang] Lift HIPSPV onto the new offload driver (#168043)

Update HIPSPV toolchain to support `--offload-new-driver`. Additionally,
tailor `llvm-spirv` invocation for
[chipStar](https://github.com/CHIP-SPV/chipStar) via
`spirv64-*-chipstar` offload triple.

Depends on one commit from #170467 and one from #170655.

---------

Co-authored-by: Henry Linjamäki <henry.mikael.linjamaki at intel.com>
Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: 312078b117c22ff9e592a5cd2dbefaf6188a971f
      https://github.com/llvm/llvm-project/commit/312078b117c22ff9e592a5cd2dbefaf6188a971f
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [Sema] Fix format-strings test on 32-bit Arm (#178450)


  Commit: 162267ee90019c6b8241dcf470a2d3fae2b306a7
      https://github.com/llvm/llvm-project/commit/162267ee90019c6b8241dcf470a2d3fae2b306a7
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/get-active-lane-mask-extract.ll

  Log Message:
  -----------
  [AArch64][SME2] Allow lowering to whilelo.x2 in non-streaming mode (#178399)

Since #145322 relaxed the SME predicate for the multi-register while
instructions, these instructions are allowed in non-streaming mode
when SME2 is available.

This patch removes the isStreaming() restriction from both
performActiveLaneMaskCombine & ReplaceGetActiveLaneMaskResults,
allowing the whilelo.x2 intrinsic to be used if SVE or streaming
SVE is available.


  Commit: ac039c597713d0c5834cc7c11f58094f08a8cd2c
      https://github.com/llvm/llvm-project/commit/ac039c597713d0c5834cc7c11f58094f08a8cd2c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    A llvm/test/Transforms/ExpandIRInsts/X86/expand-fp-convert-small.ll

  Log Message:
  -----------
  [ExpandIRInsts] Test fptoi expansion for small types

Allow testing fptoui/fptosi on half types, which are small enough
for alive2 to verify the result.

They currently pass for non-undef/poison input. (The fptoui
expansion is the same as fptosi, which is confusing, but not
incorrect, because the saturation it performs is not actually
required by fptoi.)


  Commit: e509974d423f1f260d63ec374463b5f75b18625e
      https://github.com/llvm/llvm-project/commit/e509974d423f1f260d63ec374463b5f75b18625e
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M .ci/buildbot/worker.py
    M polly/ci/polly-x86_64-linux-test-suite.py

  Log Message:
  -----------
  [Polly][CI] Unconditionally delete test-suite build

The test-suite should be recompiled every time, even in incremental
builds.


  Commit: 9ae6d8f565515a0199b18d6f156b1a41f328af1a
      https://github.com/llvm/llvm-project/commit/9ae6d8f565515a0199b18d6f156b1a41f328af1a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/Driver/hipspv-link-static-library.hip
    M clang/test/Driver/hipspv-toolchain.hip

  Log Message:
  -----------
  [Clang] Try to fix HIPSPV tests after #168043

Summary:
https://github.com/llvm/llvm-project/pull/168043 seems to not have
specified the target triple for the tests so different architectures
fail these tests. Try to set it manually. If this doesn't clear up the
bots I'll revert both.


  Commit: b1f845df32ffa7f0ac85dd824ae52c64ec6b021a
      https://github.com/llvm/llvm-project/commit/b1f845df32ffa7f0ac85dd824ae52c64ec6b021a
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [MLIR][OpenMP] Fix unused variable warning for #137201 (#178659)

Fixes 4cc80831ea5d39c186fc29692556b762ffb6478b.


  Commit: 8fa48070ec4055191239ed48c29e039c2358d48a
      https://github.com/llvm/llvm-project/commit/8fa48070ec4055191239ed48c29e039c2358d48a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp

  Log Message:
  -----------
  [ExpandIRInsts] Simplify constant construction (NFC)

Don't go through IRBuilder for constants we can create with
APInt APIs.


  Commit: 43108bf7bb0d019bade7db7c1c526d9544c33dbb
      https://github.com/llvm/llvm-project/commit/43108bf7bb0d019bade7db7c1c526d9544c33dbb
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/runtimes/CMakeLists.txt

  Log Message:
  -----------
  [openmp] Build doxygen in bootstrapping builds (#178298)

When LLVM_ENABLE_DOXYGEN=ON, forward the `doxygen-openmp` build target
from the nested (default target) runtimes build. When
LLVM_BUILD_DOCS=ON, also trigger `doxygen-build` with `ninja doxygen`.
LLVM_INCLUDE_DOCS=ON is required in the runtimes build, which is the
default.

This is required to update the OpenMP doxygen documentation at
https://openmp.llvm.org/doxygen by the publish-doxygen-docs buidbot,
discussed here:
https://github.com/llvm/llvm-zorg/pull/716#pullrequestreview-3713032311


  Commit: a482eb793ad4c565482f703b5f9325d1d973eabe
      https://github.com/llvm/llvm-project/commit/a482eb793ad4c565482f703b5f9325d1d973eabe
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/exception/runtime-instruments/TestDAP_runtime_instruments.py

  Log Message:
  -----------
  [lldb-dap] Conditionally check UBSan stack trace on Darwin only (#178655)

non-darwin platforms may have incorrect stop information location
heuristics. Enable assertion once UBSan stopInfo heuristic is updated.

I hit this locally, I don't see it hitting any CI bot but should, Mostly
likely the CI linux bots may not have `compiler_rt` run time enabled.
see
https://github.com/llvm/llvm-project/pull/177964#discussion_r2732271531


  Commit: dea1d29d73f761901bcc9f4a6e4e7217a08d0983
      https://github.com/llvm/llvm-project/commit/dea1d29d73f761901bcc9f4a6e4e7217a08d0983
  Author: Konrad Kleine <kkleine at redhat.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    A clang-tools-extra/docs/clang-reorder-fields.rst
    M clang-tools-extra/docs/index.rst

  Log Message:
  -----------
  [clang-tools-extra][docs] Add documentation for clang-reorder-fields (#178446)

Add comprehensive documentation for the clang-reorder-fields tool,
addressing #35520. The tool has existed in the repository but was
previously undocumented.

The documentation includes:
- Basic usage examples for C and C++ structs/classes
- Constructor initializer list reordering
- Designated initializer support (C++20)
- Detailed limitations and caveats
- Command line option reference
- Common use cases (memory layout optimization, etc.)

Fixes #35520

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: ac00a1142f8af4cfbe8feaa2471290af66fed2c9
      https://github.com/llvm/llvm-project/commit/ac00a1142f8af4cfbe8feaa2471290af66fed2c9
  Author: Frederik Harwath <frederik.harwath at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    A llvm/test/CodeGen/AMDGPU/mfma-convergent.mir

  Log Message:
  -----------
  [AMDGPU] Ensure v_mfma_scale_f32_{16x16x128|32x32x64}_f8f6f4 instructions are convergent (#178627)

The scaled variants of mfma instructions are not properly marked as
"convergent" and hence the machine-sink pass sinks them which is
incorrect.

This patch ensures that the instructions get marked as "convergent". The
new test also covers other mfma variants, but only the scale variants
are mistreated without the changes from this patch.


  Commit: 3b97c1a1fcdec66e42d49ed1a4ee79dceb9f923a
      https://github.com/llvm/llvm-project/commit/3b97c1a1fcdec66e42d49ed1a4ee79dceb9f923a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.h
    R clang/test/Driver/Inputs/hipspv/lib/hip-device-lib/hipspv-spirv64-unknown-chipstar.bc
    M clang/test/Driver/hipspv-link-static-library.hip
    M clang/test/Driver/hipspv-pass-plugin.hip
    R clang/test/Driver/hipspv-toolchain-rdc-separate.hip
    M clang/test/Driver/hipspv-toolchain-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  Revert "[Clang] Lift HIPSPV onto the new offload driver (#168043)"

This reverts commit 9ae6d8f565515a0199b18d6f156b1a41f328af1a.
This reverts commit d2e18bebe0b95d09ef8d0ac2ba0aa8d0e129be54.


  Commit: 02771a3eaff153002ec544c3dc4427d56ccd4456
      https://github.com/llvm/llvm-project/commit/02771a3eaff153002ec544c3dc4427d56ccd4456
  Author: Fateme Hosseini <quic_fhossein at quicinc.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
    A llvm/test/CodeGen/Hexagon/livedebugvalues-bundle-terminator.mir

  Log Message:
  -----------
  Fix insert DBG_VALUE after terminator Failure for Hexagon (#173401)

This patch fixes an assertion failure on VLIW targets like Hexagon,
where a packet can contain both a terminator and a spill/copy. The
existing code did not look inside bundles, hence, it could leave a
transfer anchored on a terminator. When LiveDebugValues later
attempted to insert a DBG_VALUE after that packet, it hit:

  Assertion `!TR.TransferInst->isTerminator() && "Cannot insert
DBG_VALUE after terminator"' failed

The change switches to instr_iterator and walks each packet with
getBundleStart/getBundleEnd. Packets containing a terminator are skipped
for insertion; non‑terminator ops in other packets are still processed
normally. This avoids illegal insertion points while keeping spill/copy
tracking intact.


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/build-vector-128.ll
    M llvm/test/CodeGen/X86/build-vector-512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-sse41.ll

  Log Message:
  -----------
  [X86] Canonicalise insertps(insertps(v,s,c0),s,c1) patterns to blend(v,splat(s)) (#178649)

Avoid situations where SimplifyDemandedVectorElts / shuffle combining
keeps messing with the zero masks of inner insertps - usually this is
benign but if they share operands it can cause infinite loops

Fixes #178538


  Commit: 1c0c4f4cf58c1f49fb531d733fdb7ce5e62bf0fa
      https://github.com/llvm/llvm-project/commit/1c0c4f4cf58c1f49fb531d733fdb7ce5e62bf0fa
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [lldb][SymbolFileDWARF][NFC] Call base class implementation of GetTypeSystemForLanguage (#178667)

Removes duplicated code by simply calling into the base-class.

Motivation is just that I stumbled upon this when making changes in the
surrounding area.


  Commit: f37bf0ce65b14fd5fb969743c47ab2958a7dad06
      https://github.com/llvm/llvm-project/commit/f37bf0ce65b14fd5fb969743c47ab2958a7dad06
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/RISCV.h
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/ext-int-cc.c
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    R llvm/test/CodeGen/RISCV/bitint-fp-conv-200.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll

  Log Message:
  -----------
  Revert "[RISCV] Support RISCV BitInt larger than 128 (#175515)" (#178311)

This reverts commit e3156c531da5aa4ec604605ed4e19638879d773c.

We need to resolve a crash on trunk and LLVM 22. Reverting makes it
easier to backport.

Fixes #176637.


  Commit: 25f6470f8f2e2f09a2382d309990cdf1915905e2
      https://github.com/llvm/llvm-project/commit/25f6470f8f2e2f09a2382d309990cdf1915905e2
  Author: Minsoo Choo <minsoochoo0122 at proton.me>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.h
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm64.h
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_x86_64.h
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_i386.cpp

  Log Message:
  -----------
  [lldb] [Process/FreeBSD] [Process/FreeBSDKernel] Run clang-format (#178676)

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


  Commit: 99e63bbbabbbd7f441dee4f87919686921b01024
      https://github.com/llvm/llvm-project/commit/99e63bbbabbbd7f441dee4f87919686921b01024
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-fp-convert-small.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fptosi129.ll
    M llvm/test/Transforms/ExpandIRInsts/X86/expand-large-fp-convert-fptoui129.ll

  Log Message:
  -----------
  [ExpandIRInsts] Improve variable naming

Improve naming of variables/blocks, both in the code and the
generated IR.


  Commit: 7deea9db700a26c2b15afebe573b914febe030ac
      https://github.com/llvm/llvm-project/commit/7deea9db700a26c2b15afebe573b914febe030ac
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Move WaitcntBrackets::simplifyXcnt near other simplify functions. NFC. (#178673)


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

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/merge-consecutive-loads-256.ll

  Log Message:
  -----------
  [X86] canonicalizeLaneShuffleWithRepeatedOps - avoid folding vperm2x128(vpshufd(load()),undef) -> vpshufd(vperm2x128(load(),undef)) (#178675)

There's no benefit to letting vperm2x128 handle the fold in an unary
shuffle and llvm-mca assumes there's an extra register dependency, which
confuses analysis.

Fixes #178632


  Commit: 1a384ffc82a4c83adc89dae744e2309415df9f85
      https://github.com/llvm/llvm-project/commit/1a384ffc82a4c83adc89dae744e2309415df9f85
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp

  Log Message:
  -----------
  [NFCI][OpenMPOpt] replace call to getAllocatedType with getAllocationSize (#178356)

Removes reliance on the exact structure of the declared alloca type,
without changing the behavior of the code here.


  Commit: 53ec484ebf6c1b08c68bb449c728f8845fecf7d7
      https://github.com/llvm/llvm-project/commit/53ec484ebf6c1b08c68bb449c728f8845fecf7d7
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/unittests/CodeGen/SelectionDAGNodeConstructionTest.cpp

  Log Message:
  -----------
  [SelectionDAG] Add CTLS to FoldConstantArithmetic and optimize i1 CTLS to 0. (#178552)

Since we don't have a CTLS intrinsic, it likely gets constant folded
while it is still a CTLZ pattern so I'm using a unittest to test it.


  Commit: f05b4c408581f087e250e5f85d36c41177ac7acd
      https://github.com/llvm/llvm-project/commit/f05b4c408581f087e250e5f85d36c41177ac7acd
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Extensions/Extensions.cpp

  Log Message:
  -----------
  [NFC][LLVM] Fix macro redefinition warning in Extensions.cpp (#178555)

Also add missing file header and fixed code to used nested namespace for
definining the anchor function.


  Commit: 2ea77ed013a6c8165d9ef685eb8c4dc1ed0b07c7
      https://github.com/llvm/llvm-project/commit/2ea77ed013a6c8165d9ef685eb8c4dc1ed0b07c7
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/disjoint-or-reductions.ll

  Log Message:
  -----------
  [SLP]Support for bswap pattern for bytes-based disjoint or reductions

If the reduction forms reversed bitcast, we can represent it as
a bitcast + bswap, if the source elements are byte sized

Reviewers: hiraditya, RKSimon

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


  Commit: dfe05b84b36588d6d576b668933377f0d464aca7
      https://github.com/llvm/llvm-project/commit/dfe05b84b36588d6d576b668933377f0d464aca7
  Author: Ryan Cowan <ryan.cowan at arm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [GlobalISel] Provide a fast path for ResetMachineFunctionPass when the function is empty (#177341)

As part of https://github.com/llvm/llvm-project/pull/174746 I
encountered a compile time regression due to ResetMachineFunction
performing full resets on empty functions. In normal operation, this
behaviour is not likely to impact compile time, as the pass is only
inserted when using GlobalISel.

https://github.com/llvm/llvm-project/pull/174746 includes GlobalISel
passes in the SDAG pipeline (only on AArch64) and skips them if a given
function is not optnone surfacing this. By checking if the
MachineFunction is empty we can perform a more lightweight reset that
just sets the required flags, reducing the impact of this change.


  Commit: ad1a45b903b87f8e0c36a20f054d170ff2b5b2d5
      https://github.com/llvm/llvm-project/commit/ad1a45b903b87f8e0c36a20f054d170ff2b5b2d5
  Author: Ryan Cowan <ryan.cowan at arm.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/MachineDominators.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.cpp
    M llvm/lib/Target/AArch64/AArch64TargetMachine.h
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/gisel-commandline-option.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/optnone-llc.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/optnone-mixed.ll
    M llvm/test/CodeGen/AArch64/O3-pipeline.ll
    M llvm/test/CodeGen/AArch64/cfguard-checks.ll
    M llvm/test/CodeGen/AArch64/csr-copy-hint.mir
    M llvm/test/CodeGen/AArch64/large-stack.ll
    M llvm/test/CodeGen/AArch64/ldrpre-ldr-merge.mir
    M llvm/test/CodeGen/AArch64/literal_pools_float.ll
    M llvm/test/CodeGen/AArch64/machine-outliner-remarks.ll
    M llvm/test/CodeGen/AArch64/multi-vector-load-size.ll
    M llvm/test/CodeGen/AArch64/multi-vector-store-size.ll
    M llvm/test/CodeGen/AArch64/semantic-interposition-memtag.ll
    M llvm/test/CodeGen/AArch64/strpre-str-merge.mir
    M llvm/test/CodeGen/AArch64/swift-error-unreachable-use.ll
    M llvm/test/CodeGen/MIR/AArch64/print-parse-overloaded-intrinsics.mir
    M llvm/test/DebugInfo/Generic/debug-label-mi.ll
    M llvm/test/Feature/optnone-llc.ll

  Log Message:
  -----------
  [AArch64] Use GISel for optnone functions (#174746)

Currently, when SDAG is run on AArch64 and an `optnone` function is
encountered, the selector is chosen as FastISel. AArch64 makes use of
GlobalISel at O0 and this patch aims to align `optnone` with this
functionality.

A flag is exposed to enable this functionality for a given backend but,
as AArch64 is currently the only backend I could find using GlobalISel
at O0 this is the only one with it implemented. This flag is set when
the target supports GlobalISel & GlobalISel hasn't been forced by the
user, the target machine or by being at an optimisation level lower than
`EnableGlobalISelAtO`.

If this happens, the GlobalISel passes are included as shown in
`llvm/test/CodeGen/AArch64/O3-pipeline.ll` and skipped by IRTranslator
for functions not marked as `optnone`.

In updating the tests based on this functionality, I found some unused
check lines or run lines that mixed SDAG with GlobalISel pass names
which have been fixed.

---------

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


  Commit: 7c07cb6542a0c5e4340e09a9a247e3e5123c6567
      https://github.com/llvm/llvm-project/commit/7c07cb6542a0c5e4340e09a9a247e3e5123c6567
  Author: Akash Banerjee <akash.banerjee at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A offload/test/offloading/fortran/recursive-default-mapper.f90

  Log Message:
  -----------
  [MLIR][OpenMP] Fix recursive mapper emission. (#178453)

Recursive types can cause re-entrant mapper emission. The mapper
function is created by OpenMPIRBuilder before the callbacks run, so it
may already exist in the LLVM module even though it is not yet
registered in the ModuleTranslation mapping table. Reuse and register it
to break the recursion. Added offloading test.


  Commit: fdb16234505805a028f04397bca18b1bee4a6ab0
      https://github.com/llvm/llvm-project/commit/fdb16234505805a028f04397bca18b1bee4a6ab0
  Author: Dark Steve <Prasoon.Mishra at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    A llvm/test/CodeGen/AMDGPU/si-late-branch-lowering-preserve-loop-info.mir

  Log Message:
  -----------
  [AMDGPU] Teach SILateBranchLowering pass to preserve MachineLoopInfo (#178276)

When splitting blocks inside loops due to SI_EARLY_TERMINATE_SCC0
handling, add the split block to the loop to keep MachineLoopInfo valid.


  Commit: 8a4244b560f3e760e07c50f543ef3810859d1e46
      https://github.com/llvm/llvm-project/commit/8a4244b560f3e760e07c50f543ef3810859d1e46
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Target/ProcessStructReader.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/ValueObject/ValueObject.cpp

  Log Message:
  -----------
  [lldb][windows] fix unchecked Expected<T> (#178681)

This patch fixes unchecked `Expected<T>` returns from the
`CompilerType::GetByteSize` method.


  Commit: 1f8058ec64a69443f5ce2373557eff1c4d877010
      https://github.com/llvm/llvm-project/commit/1f8058ec64a69443f5ce2373557eff1c4d877010
  Author: John Harrison <harjohn at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/CMakeLists.txt
    R lldb/tools/lldb-dap/Handler/BreakpointLocationsHandler.cpp
    A lldb/tools/lldb-dap/Handler/BreakpointLocationsRequestHandler.cpp
    R lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    A lldb/tools/lldb-dap/Handler/CompletionsRequestHandler.cpp

  Log Message:
  -----------
  [lldb-dap] NFC Renaming files for consistency. (#178560)

I noticed recently that CompletionsHandler.cpp and
BreakpointLocationsHandler.cpp do not follow the same naming pattern as
the rest of the request handlers.

Renaming to include `Request` for consistency.


  Commit: be3309a5b61dfecf4094dd56a664803852664296
      https://github.com/llvm/llvm-project/commit/be3309a5b61dfecf4094dd56a664803852664296
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/tools/lldb-dap/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 1f8058ec64a6


  Commit: 69c0f929e06535effb368fa237eabafa51f50158
      https://github.com/llvm/llvm-project/commit/69c0f929e06535effb368fa237eabafa51f50158
  Author: Aviral Goel <aviralg at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    A clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    M clang/include/clang/Analysis/Scalable/TUSummary/TUSummary.h
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/Serialization/SerializationFormat.cpp

  Log Message:
  -----------
  [SSAF] Add SerializationFormat Interface (#177719)

To support multiple serialization formats in SSAF this PR adds a common
serialization format interface. We will separately implement a
serialization format registry similar to
[this](https://github.com/llvm/llvm-project/pull/173290) PR, followed by
a JSON-based serialization format.


  Commit: 22c4f9534a404680c798cbe22784fca6ebdd4dc4
      https://github.com/llvm/llvm-project/commit/22c4f9534a404680c798cbe22784fca6ebdd4dc4
  Author: Sam Clegg <sbc at chromium.org>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    A lld/test/wasm/merge-undefined-symbols.s
    M lld/wasm/SymbolTable.cpp

  Log Message:
  -----------
  [lld][WebAssembly] Improve merging multiple occurrences of an undefined symbol (#178550)

This change renames `setImportAttributes` to `updateExistingUndefined`
which better defines what it does. We also now call this function for
all different symbol types.

In addition we preserve the `NO_STRIP` symbol attribute if any undefined
reference is tagged as such.

This is partial fix for #174676, although there seems to be anther crash
that occurs after this issue is fixed.


  Commit: 2a7662127639b1e3437f12629904dbd14ee5888a
      https://github.com/llvm/llvm-project/commit/2a7662127639b1e3437f12629904dbd14ee5888a
  Author: Osman Yasar <37121924+osmanyasar05 at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [GlobalISel] Add integer_reassoc_combines from SelectionDAG (#177931)

This PR converts two DAGCombiner fold patterns to GlobalISel MIR
patterns:
- `((A + (B - C)) - B) -> A - C`
- `((A - (B - C)) - C) -> A - B`

Original patterns:
https://github.com/llvm/llvm-project/blob/5b4811eddb28264ef1ccacc93c0f7d8cb0da31c8/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L4359

The patterns do not include hasOneUse checks since the instruction count
remains the same even when both intermediate results have other uses (3
ops → 3 ops).


  Commit: 9377c1d68b64d9c3dc70f5e04d2e7843c680ea76
      https://github.com/llvm/llvm-project/commit/9377c1d68b64d9c3dc70f5e04d2e7843c680ea76
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
    M mlir/test/Dialect/SPIRV/IR/non-uniform-ops.mlir
    M mlir/test/Target/SPIRV/non-uniform-ops.mlir
    M mlir/tools/mlir-tblgen/SPIRVUtilsGen.cpp

  Log Message:
  -----------
  [mlir][spirv] Enforce `GroupNonUniformQuadSwap` direction values using an attribute (#178684)

The direction can only take one of the three values {0, 1, 2} so we use
a SPIR-V attribute to enforce it. This property cannot be enforced when
the direction is a constant value as the verifier cannot test for
non-local properties.


  Commit: f3ecf490a458c9d95ca3448437a19c0966a07bd6
      https://github.com/llvm/llvm-project/commit/f3ecf490a458c9d95ca3448437a19c0966a07bd6
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [GitHub] add MemoryTaggingSupport.cpp in sanitizer (#178705)


  Commit: caae29c4b98f5e4b7fc7f2b2725bec1907993d83
      https://github.com/llvm/llvm-project/commit/caae29c4b98f5e4b7fc7f2b2725bec1907993d83
  Author: AidinT <at.aidin at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/IR/CMakeLists.txt
    M mlir/include/mlir/IR/Interfaces.td
    A mlir/include/mlir/IR/OpAsmDialectInterface.td
    M mlir/include/mlir/IR/OpImplementation.h
    M mlir/include/mlir/TableGen/Interfaces.h
    M mlir/lib/IR/CMakeLists.txt
    M mlir/lib/TableGen/Interfaces.cpp
    M mlir/test/mlir-tblgen/dialect-interface.td
    M mlir/tools/mlir-tblgen/DialectInterfacesGen.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR] convert OpAsmDialectInterface using ODS (#171488)

This PR converts OpAsmDialectInterface using ODS.

It also introduces a new Interface Method class `InterfaceMethodDeclaration` which will declare the function without definition.


  Commit: 243f011577193c99358ccc4142b296d4fa80ea11
      https://github.com/llvm/llvm-project/commit/243f011577193c99358ccc4142b296d4fa80ea11
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/docs/ReleaseNotes.md
    M mlir/include/mlir/Dialect/GPU/Pipelines/Passes.h
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td

  Log Message:
  -----------
  [mlir][GPU|NVVM] Update the default SM to 7.5  (#177469)

Update MLIR's default SM to `sm_75`. This matches the behavior of
offline compilation tools in the CUDA Toolkit (`nvcc`, `ptxas`, ...) and
follows suit with 9fc5fd0ad689eed94f65b1d6d10f9c5642935e68.

Additionally, `sm_75` is the oldest GPU variant compatible with the
widest range of recent major CUDA Toolkit versions (11/12/13).


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

  Changed paths:
    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/lib/Dialect/XeGPU/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
    M mlir/lib/Dialect/XeGPU/Utils/XeGPUUtils.cpp
    A mlir/test/Dialect/XeGPU/sg-to-wi-experimental-unit.mlir
    A mlir/test/Dialect/XeGPU/sg-to-wi-experimental.mlir
    M mlir/test/lib/Dialect/XeGPU/TestXeGPUTransforms.cpp

  Log Message:
  -----------
  [mlir][xegpu] Add `XeGPUSgToWiDistributeExperimental` pass.  (#177492)

Currently XeGPU lowering pipeline uses `XeGPUSubgroupDistribute` pass to
subgroup to work item distribution of ops. This pass is well established
and relies on vector distribution's `WarpOp` based distribution
mechanism. However, recent experiments with larger kernels have shown
that this pass is very expensive in terms of compile time (see below).

This prompted us to create a new pass that does not rely on `WarpOp`
based distribution. This PR adds the initial infra to move away from the
old way and align Wg To WI distribution with Wg to Sg distribution. New
pass also uses context-aware type conversion based on XeGPU layouts to
distributed vector types from SG to WI.

This PR adds the following changes:
* SG to WI distribution pass based on context-aware type conversions
using `OpConversionPatterns`
* Test pass for testing individual patterns
(`TestXeGPUSgToWiDistributeExperimental`)
* `XeGPUSgToWiDistributeExperimentalPass` which will eventually replace
`XeGPUSubgroupDistribute`

Flash attention e2e compilations stats:
```
----Wall Time----  ----Name----
    0.0032 (  0.2%)  Parser
    0.0008 (  0.0%)  CSE
    0.0000 (  0.0%)    (A) DominanceInfo
    0.0002 (  0.0%)  GpuXeVMAttachTarget
    1.1427 ( 58.7%)  'gpu.module' Pipeline
    0.0019 (  0.1%)    XeGPUWgToSgDistribute
    0.0003 (  0.0%)    CSE
    0.0000 (  0.0%)      (A) DominanceInfo
    0.0002 (  0.0%)    LowerAffinePass
    0.0001 (  0.0%)    CSE
    0.0000 (  0.0%)      (A) DominanceInfo
    0.0008 (  0.0%)    XeGPUPropagateLayout
    0.0056 (  0.3%)    XeGPUBlocking
    0.0010 (  0.1%)    Canonicalizer
    0.0004 (  0.0%)    CSE
    0.0000 (  0.0%)      (A) DominanceInfo
    0.0015 (  0.1%)    XeGPUPropagateLayout
    0.0007 (  0.0%)    XeGPUOptimizeBlockLoads
    0.0010 (  0.0%)    Canonicalizer
    0.0004 (  0.0%)    CSE
    0.0000 (  0.0%)      (A) DominanceInfo
    0.0015 (  0.1%)    XeGPUPropagateLayout
    1.1274 ( 57.9%)    XeGPUSubgroupDistribute
    0.7959 ( 40.9%)  Output
    0.0022 (  0.1%)  Rest
    1.9461 (100.0%)  Total
```


  Commit: 40006a767dbae755affc1c7a84e9bd9a176b7851
      https://github.com/llvm/llvm-project/commit/40006a767dbae755affc1c7a84e9bd9a176b7851
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 69c0f929e065


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

  Changed paths:
    M .github/workflows/prune-branches.yml
    M .github/workflows/prune-unused-branches.py

  Log Message:
  -----------
  [Github] Make prune branches workflow save branch patches

This patch makes the prune branches workflow create patches for the
branches that it is about to prune containing all their changes. These
are then uploaded as a Github artifact with a 90 day experiation just in
case there was something in a branch that someone will later need and is
not available elsewhere.

Reviewers: petrhosek, vbvictor, cmtice

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


  Commit: 3222670c681cb3d1ac57fbd0faffec8957a7403a
      https://github.com/llvm/llvm-project/commit/3222670c681cb3d1ac57fbd0faffec8957a7403a
  Author: Christopher Di Bella <cjdb at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M libcxx/include/__split_buffer

  Log Message:
  -----------
  [libc++] Fix `__split_buffer_size_layout` bugs (#178341)

As `__split_buffer` doesn't have any unit tests, and because #139632
disassociated adding `__split_buffer` support for both pointer-based and
size-based layouts from its `vector` counterpart, libc++ had no way to
expose `__split_buffer_size_layout` bugs until the size-based vector
patch integrated #139632. This commit fixes the two problems that were
identified while working on #155330.


  Commit: 696ea11b94d119416c9618b5add09d5ac09428aa
      https://github.com/llvm/llvm-project/commit/696ea11b94d119416c9618b5add09d5ac09428aa
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp
    A llvm/test/ExecutionEngine/JITLink/x86-64/ELF_no_debug_info.s

  Log Message:
  -----------
  [ELFDebugObjectPlugin] Do not wait for std::future in post-fixup phase in the absent of debug info (#178541)

If there is no debug information, we wouldn't call
`DebugObject::collectTargetAlloc` in the post-allocation phase.
Therefore, when it's in the post-fixup phase,
`DebugObject::awaitTargetMem` will fail with _"std::future_error: No
associated state"_ because the std::future was not even populated.


  Commit: 84c66f4f0d2917fbf21f8a37718b9cbe56a19db1
      https://github.com/llvm/llvm-project/commit/84c66f4f0d2917fbf21f8a37718b9cbe56a19db1
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    A mlir/test/Dialect/Vector/vector-emulate-narrow-type-aligned-store-only.mlir
    M mlir/test/lib/Dialect/MemRef/TestEmulateNarrowType.cpp

  Log Message:
  -----------
  [mlir][vector] Add assumeAligned mode to vector.store narrow type emulation (#178565)

The revision adds a new `assumeAligned` mode to the emulation, so
downstream projects can use simple path when it meets the requirements.
E.g., if the offset is always aligned with container's element type, we
can skip the check of front padding sizes.

---------

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


  Commit: d8d4096c0be0a6a3248c8deae96608913a85debf
      https://github.com/llvm/llvm-project/commit/d8d4096c0be0a6a3248c8deae96608913a85debf
  Author: Osman Yasar <37121924+osmanyasar05 at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/Target/GlobalISel/Combine.td
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/combine-shl-from-extend-narrow.postlegal.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/combine.mir
    M llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll

  Log Message:
  -----------
  [GlobalISel] Rewrite binop_left_to_zero using MIR Patterns (#177924)

Following 2d87319f06ef936233ba6aaa612da9586c427d68, this PR rewrites the
`binop_left_to_zero` rule using MIR Patterns.

The new pattern uses `GIReplaceReg` in the apply clause. According to
[MIRPatterns.rst](https://github.com/llvm/llvm-project/blob/5b4a5cf51f37cb42c5e0bdb22b43acde137281c8/llvm/docs/GlobalISel/MIRPatterns.rst?plain=1#L222),
`GIReplaceReg` checks `canReplaceReg`, so the new apply pattern is
equivalent to the old `matchOperandIsZero` implementation.

Added tests for all the opcodes covered by this rule `(G_SHL, G_LSHR,
G_ASHR, G_SDIV, G_UDIV, G_SREM, G_UREM, G_MUL)`.


  Commit: 6d27fa75919e4236db66bb55a7e8bd91844543b8
      https://github.com/llvm/llvm-project/commit/6d27fa75919e4236db66bb55a7e8bd91844543b8
  Author: Andrei Elovikov <a.elovikov at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/utils/update_analyze_test_checks.py

  Log Message:
  -----------
  [NFC][UTC] Avoid copy-paste in `update_analyze_test_checks.py` (#178456)

I'm going to extend it to support VPlan dump tests soon and this cleanup
avoids future growth of the `if/elif/elif` chain.


  Commit: 73dc25c1b66e66da0f574299c4e39d66d95235cd
      https://github.com/llvm/llvm-project/commit/73dc25c1b66e66da0f574299c4e39d66d95235cd
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M libc/include/pthread.yaml
    A libc/src/pthread/pthread_getattr_np.h

  Log Message:
  -----------
  [libc] Add pthread_getattr_np declaration (#178549)

Add header declaration and implementation header for the GNU
extension function pthread_getattr_np.  An actual implementation
can come later.


  Commit: 8513cadd0e1e0d8f0bab990b63d12d3feb530050
      https://github.com/llvm/llvm-project/commit/8513cadd0e1e0d8f0bab990b63d12d3feb530050
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [ProfCheck] Add ExpandIRInsts test to profcheck-xfail.txt

There are in-flight patches to fix the remaining ExpandIRInsts failures
that should fix this. Disable for now to get the bot back to green.


  Commit: 830236204ec56fe2e268ca3e386e69d8a2a1b114
      https://github.com/llvm/llvm-project/commit/830236204ec56fe2e268ca3e386e69d8a2a1b114
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    A offload/cmake/caches/FlangOffload.cmake
    M openmp/docs/Building.md

  Log Message:
  -----------
  [Offload] Provide a cache file for building OpenMP w/ Flang offloading (#178472)

Summary:
This build is more annoying, enables everything required for this
version of the runtime.


  Commit: ea251669ba3ff16ad459358287f7c273c28e0f8d
      https://github.com/llvm/llvm-project/commit/ea251669ba3ff16ad459358287f7c273c28e0f8d
  Author: Wei Xiao <wei3.xiao at intel.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/test/CodeGen/X86/masked_expandload_isel.ll

  Log Message:
  -----------
  [CodeGen] Fix MachineMemOperand Size of MaskedLoad (#156398)

Fix MIR printing unknown-size issue of MaskedLoad.


  Commit: cba7dcd10724b348a673e472560f4cdcbc337b8b
      https://github.com/llvm/llvm-project/commit/cba7dcd10724b348a673e472560f4cdcbc337b8b
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-29 (Thu, 29 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/buffer-load-store-pointers.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-schedule.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-phis-no-lane-mask-merging.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-value-addrspaces.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.store.format.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.buffer.store.format.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.i8.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.ptr.tbuffer.store.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.i8.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.tbuffer.store.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.store.format.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.ptr.buffer.store.format.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/merge-buffer-stores.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.struct.ptr.buffer.store.ll
    M llvm/test/CodeGen/AMDGPU/buffer-rsrc-ptr-ops.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.tbuffer.store.ll
    M llvm/test/CodeGen/AMDGPU/ptr-buffer-alias-scheduling.ll
    M llvm/test/CodeGen/AMDGPU/unaligned-buffer.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize rules for buffer store variants (#178488)

Add rules for G_AMDGPU_BUFFER_STORE, G_AMDGPU_BUFFER_STORE_FORMAT,
G_AMDGPU_BUFFER_STORE_FORMAT_D16, and G_AMDGPU_TBUFFER_STORE_FORMAT.


  Commit: 9eb797ee3599c1ac6c20a7e86533de20226277cd
      https://github.com/llvm/llvm-project/commit/9eb797ee3599c1ac6c20a7e86533de20226277cd
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/TargetPassConfig.cpp

  Log Message:
  -----------
  [CodeGen] Remove -gc-empty-basic-blocks alias flag (#178716)

This was deprecated earlier and switched to an alias so we would have
some time to update things through our internal compiler release
process. That has completed, so we can now remove the flag upstream.


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

  Changed paths:
    M mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp

  Log Message:
  -----------
  [mlir][xegpu] Remove unused headers added in #177492 (#178719)

Remove unused headers added in #177492


  Commit: ddaf107e266f0539253b7d8173101eecef97a855
      https://github.com/llvm/llvm-project/commit/ddaf107e266f0539253b7d8173101eecef97a855
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make log10, exp2, sinh overload tests stricter NFC (#177495)

This patch updates log10, exp2, sinh overload tests to use -O1 instead
of -disable-llvm-passes; also, the checks are updated to match the
change accordingly.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: 312d798f12e5c5c14ba07018a00f84bbe2efcf22
      https://github.com/llvm/llvm-project/commit/312d798f12e5c5c14ba07018a00f84bbe2efcf22
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w32.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.tr-w64.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize rules for global_load_tr_b* (#178545)


  Commit: c31e13a7123737e9b41adc5e6e3aeab64d8f729c
      https://github.com/llvm/llvm-project/commit/c31e13a7123737e9b41adc5e6e3aeab64d8f729c
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.groupstaticsize.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.groupstaticsize.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize rules for groupstaticsize (#178618)


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

  Changed paths:
    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/FIROpenACCUtils.h
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCUtils.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCOptimizeFirstprivateMap.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    A flang/test/Transforms/OpenACC/acc-optimize-firstprivate-map.fir
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [flang][acc] Add ACCOptimizeFirstprivateMap pass (#178546)

This pass optimizes acc.firstprivate_map operations generated during
OpenACC recipe materialization when acc.firstprivate is materialized
into the mapping and a private allocation inside region. The
optimization applies to scalar variables of trivial types (integers,
reals, logicals) as long as they are not optional.

The pass hoists loads from the firstprivate variable to before the
compute region, converting the firstprivate copy to a pass-by-value
pattern. This eliminates the need for runtime copying the firstprivate
variable since only its value is needed for initializing private copies.


  Commit: db6b186e47e57536d5f9f3a0bf0772c32e1f9743
      https://github.com/llvm/llvm-project/commit/db6b186e47e57536d5f9f3a0bf0772c32e1f9743
  Author: Walter Lee <49250218+googlewalt at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [bazel][[mlir][xegpu] Fix build for #177492 (#178728)

Fix d9c65f94b11f2fed7b78af3a8e7bec6c84bdf219.


  Commit: 58f623c504d14743e465f988848f9c16dc220a3b
      https://github.com/llvm/llvm-project/commit/58f623c504d14743e465f988848f9c16dc220a3b
  Author: Aman LaChapelle <aman.lachapelle at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/source/API/SBValue.cpp
    M lldb/source/ValueObject/ValueObject.cpp

  Log Message:
  -----------
  [lldb] Move ValueImpl and ValueLocker to ValueObject, NFC. (#178573)


This patch moves ValueImpl and ValueLocker to ValueObject.{h,cpp}. This follows the example set in TypeImpl/SBType, where we have something that SBType uses internally that needs to be exposed in the layer below. In this case, SBValue uses ValueImpl, which wraps ValueObject. The wrapper helps avoid bugs, so we want to keep it, but the script interpreter needs to use it and said interpreter is conceptually *below* the SB layer...which means we can't use methods on SBValue.

This patch is purely the code motion part of that, future patches will actually make use of this moved code.


  Commit: c92e24b7d34f20f41a8cd4f8728d608339778b21
      https://github.com/llvm/llvm-project/commit/c92e24b7d34f20f41a8cd4f8728d608339778b21
  Author: Jacob Lalonde <jalalonde at fb.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/source/Target/Statistics.cpp
    M lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
    A lldb/test/API/functionalities/stats_api/minidump.yaml

  Log Message:
  -----------
  [LLDB][Statistics] Add coreFile to Target stats (#161448)

This patch adds the coreFilePath, if applicable, to the target
statistics for LLDB. My primary motivation here is sanity check user
reports when they say I had an issue with a specific corefile and then
validating it was in fact that specifies corefile, as right now there is
no guaruntee the filename and the process/target name will be the same.


  Commit: 75f03a62d1f9b0081fff57ceebb29a3ae1560a61
      https://github.com/llvm/llvm-project/commit/75f03a62d1f9b0081fff57ceebb29a3ae1560a61
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir
    A llvm/test/CodeGen/RISCV/pr176001.ll

  Log Message:
  -----------
  [InlineSpiller] Hoist spills only when all of its subranges are available (#177703)

Context:
https://github.com/llvm/llvm-project/issues/176001#issuecomment-3793846479

When we're hoisting a spill to another block, and storing one of its
sibling values there instead, we need to make sure all sub ranges of
that sibling value is alive at the insertion point. Otherwise, we might
accidentally store compromised subranges values back to the spill slot.


  Commit: 8122d0e4bc8b536e0bb6bb5fae97e8216986ee28
      https://github.com/llvm/llvm-project/commit/8122d0e4bc8b536e0bb6bb5fae97e8216986ee28
  Author: Aman LaChapelle <aman.lachapelle at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/bindings/python/python-wrapper.swig
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h

  Log Message:
  -----------
  [lldb] Add conversions for SBValueList and SBValue to the python bridge. (#178574)


This patch adds support for:
- PyObject -> SBValueList (which was surprisingly not there before!)
- PyObject -> SBValue
- SBValue -> ValueObjectSP using the ScriptInterpreter

These three are the main remaining plumbing changes necessary before we can get to the meat of actually using ScriptedFrame to provide values to the printer/etc. Future patches build off this change in order to allow ScriptedFrames to provide variables and get values for variable expressions.


  Commit: a617b901cdbb4abfd4e4513546945846389f078d
      https://github.com/llvm/llvm-project/commit/a617b901cdbb4abfd4e4513546945846389f078d
  Author: n2h9 <13541181+n2h9 at users.noreply.github.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M lldb/bindings/interface/SBInstructionExtensions.i
    M lldb/include/lldb/API/SBInstruction.h
    M lldb/include/lldb/API/SBStructuredData.h
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/source/API/SBInstruction.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py

  Log Message:
  -----------
  [lldb] [disassembler] chore: add GetVariableAnnotations to SBInstruction api (#177676)

## Description
Contribution to this topic [Rich Disassembler for
LLDB](https://discourse.llvm.org/t/rich-disassembler-for-lldb/76952),
this part.
```
The rich disassembler output should be exposed as structured data and made available through LLDB’s scripting API so more tooling could be built on top of this
```

----

This pr replaces #174847

As was suggested in [this
comment](https://github.com/llvm/llvm-project/pull/174847#issuecomment-3757015552),
implement access to variable annotations from `SBInstruction` class
itself.

Notes:
- :white_check_mark:  did run black formatter on the python file;

## Testing
Run test with
```sh
./build/bin/lldb-dotest -v -p TestVariableAnnotationsDisassembler.py lldb/test/API/functionalities/disassembler-variables
```

all tests (9 existing + 1 newly added) are passing

<details>
<summary>screenshot 2026-01-23</summary>

build from the latest commit  08f00730b5768a8e3f7039d810084fabaaa24470

<img width="1506" height="562" alt="image"
src="https://github.com/user-attachments/assets/69516353-3432-47df-ae45-c40b51ec14c4"
/>

</details>

<details>
<summary>screenshot 2026-01-29</summary>

build from the latest commit  f48a1a2c10f96a457ca6844be2ccc9406d3d57a0

<img width="1232" height="740" alt="image"
src="https://github.com/user-attachments/assets/9d104ce6-36c3-430b-98fe-f028f83a6b6d"
/>


</details>

---------

Signed-off-by: Nikita B <n2h9z4 at gmail.com>


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

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/test/CodeGen/AMDGPU/release-vgprs-spill.ll

  Log Message:
  -----------
  [AMDGPU] Fix DEALLOC_VGPRS in the presence of spills to scratch (#178461)


  Commit: ac5dc54d509169d387fcfd495d71853d81c46484
      https://github.com/llvm/llvm-project/commit/ac5dc54d509169d387fcfd495d71853d81c46484
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/SLPVectorizer/X86/bad-reduction.ll

  Log Message:
  -----------
  [SLP][NFC]Add disjoint or forms of tests, which actually should lead to scalar identity/bswap, NFC


  Commit: 3c45148e9266bbd9830c2b977c497795d9307c72
      https://github.com/llvm/llvm-project/commit/3c45148e9266bbd9830c2b977c497795d9307c72
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make  cosh, exp, normalize overload tests stricter. NFC (#177507)

This patch changes the run lines for cosh, exp, normalize overload test
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.

---------

Co-authored-by: Joao Saffran <jderezende at microsoft.com>


  Commit: 695d72a1c9ecd9144b43a607bb36150e59c19ecb
      https://github.com/llvm/llvm-project/commit/695d72a1c9ecd9144b43a607bb36150e59c19ecb
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make  frac, tanh, degrees overload tests stricter. NFC (#177657)

This patch changes the run lines for frac, tanh, degrees overload test
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: ff502209f0e2210d66384db08f2097eb4b0312dc
      https://github.com/llvm/llvm-project/commit/ff502209f0e2210d66384db08f2097eb4b0312dc
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make log, asin, acos overload tests stricter. NFC (#177664)

This patch changes the run lines for log, asin, acos overload test to
use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: e2e7c127c1ed4dded6404965b8cfcf7168752e4f
      https://github.com/llvm/llvm-project/commit/e2e7c127c1ed4dded6404965b8cfcf7168752e4f
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make  step, isinf, rsqrt overload tests stricter. NFC  (#177697)

This patch changes the run lines for step, isinf, rsqrt overload test to
use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: d32a18bed5a1adf609f6490250b0f71f15f70733
      https://github.com/llvm/llvm-project/commit/d32a18bed5a1adf609f6490250b0f71f15f70733
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make log2, tan overload tests stricter. NFC  (#177700)

This patch changes the run lines for log2, tan overload test to use -O1
instead of -disable-llvm-passes and rewrite the tests to actually look
at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: 289ebd87a845fdd267208f096a0e707be9ad5d72
      https://github.com/llvm/llvm-project/commit/289ebd87a845fdd267208f096a0e707be9ad5d72
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make atan, sin, sqrt overload tests stricter. NFC (#177702)

This patch changes the run lines for atan, sin, sqrt overload test to
use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: d3ed8f95d66662008f8c7d869cbec7d64d505d57
      https://github.com/llvm/llvm-project/commit/d3ed8f95d66662008f8c7d869cbec7d64d505d57
  Author: joaosaffran <joaosaffranllvm at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl

  Log Message:
  -----------
  [HLSL] Make round, trunc, floor overload tests stricter. NFC (#178508)

This patch changes the run lines for round, trunc, floor overload test
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.


  Commit: 293a668329624459ac07c65104cbf697dfbe0da7
      https://github.com/llvm/llvm-project/commit/293a668329624459ac07c65104cbf697dfbe0da7
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [HLSL] Add wave prefix count bits function (#178059)

This PR adds the WavePrefixCountBits function to HLSL, including spirv
and DXIL code generation.
Fixes https://github.com/llvm/llvm-project/issues/99171


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

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    A clang/test/Analysis/suppress-namespace-redecl-core.cpp
    A clang/test/Analysis/suppress-namespace-redecl-webkit.cpp

  Log Message:
  -----------
  [analyzer] Fix [[clang::suppress]] for tricky template specializations (#178441)

The code assumed that taking the lexical parent decl context of a node
and traversing it will eventually visit the node itself. While this is
certeanly true for most AST constructs, template specializations (aka.
instantiations) might inject their AST to surprising lexical parents,
depending on when they get instantiated.

This means that just taking the lexical parent of a template
specialization might land us on some AST node that won't contain (thus
visit) the definition, and consequently, miss the Suppress attribute...

To fix this, we must take special care for template specializations. For
a regular instantiation select the primary template (that has the definition).
For an instantiation coming from a partial specialization, pretend if it
was the partial specialization instead.

Once we canonicalize to the primary template/partial specialization
definition, the usual "walk the lexical parents" logic covers the rest
as usual.

Assisted-by: claude

rdar://168941095


  Commit: 34b2fc603c53d2690ae691bad28bc40b6658ffbb
      https://github.com/llvm/llvm-project/commit/34b2fc603c53d2690ae691bad28bc40b6658ffbb
  Author: Andrei Elovikov <a.elovikov at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/DominanceFrontierImpl.h

  Log Message:
  -----------
  [NFC][DominanceFrontier] Remove unused return value (#178708)


  Commit: c1ab08e29cbc7c537da19becc480637faae2a023
      https://github.com/llvm/llvm-project/commit/c1ab08e29cbc7c537da19becc480637faae2a023
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/avx512-select-builtins.c

  Log Message:
  -----------
  [CIR][X86]Implement handling for Select/Selectsh builtins in CIR (#174003)

Related to: #167765


  Commit: f1928b9f1e80a8907a22da866347f42114613f17
      https://github.com/llvm/llvm-project/commit/f1928b9f1e80a8907a22da866347f42114613f17
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-29 (Thu, 29 Jan 2026)

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

  Log Message:
  -----------
  [lldb-dap] Improve DetectReplMode (#178740)

When DetectReplMode is called without a valid frame, we cannot check if
an expression refers to a variable in scope.
This avoids unnecessary checks when completing expressions.


  Commit: 0893b70ecfc4f4aca0a20a078476d191edc1e623
      https://github.com/llvm/llvm-project/commit/0893b70ecfc4f4aca0a20a078476d191edc1e623
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-01-29 (Thu, 29 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/CODEOWNERS
    M .github/new-prs-labeler.yml
    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/libcxx-build-and-test.yaml
    M .github/workflows/libcxx-check-generated-files.yml
    A .github/workflows/prune-branches.yml
    A .github/workflows/prune-unused-branches.py
    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 SECURITY.md
    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/lib/Target/RISCV/RISCVMCPlusBuilder.cpp
    M bolt/test/AArch64/epilogue-determination.s
    M bolt/test/X86/lit.local.cfg
    M bolt/test/lit.local.cfg
    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/.clang-format
    M clang-tools-extra/clang-tidy/.clang-tidy
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
    M clang-tools-extra/clang-tidy/GlobList.h
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/doc8.ini
    M clang-tools-extra/clang-tidy/llvm/CMakeLists.txt
    M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
    A clang-tools-extra/clang-tidy/llvm/TypeSwitchCaseTypesCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/TypeSwitchCaseTypesCheck.h
    M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/UseVectorUtilsCheck.cpp
    A clang-tools-extra/clang-tidy/llvm/UseVectorUtilsCheck.h
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.h
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/UseStringViewCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
    M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
    A clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.cpp
    A clang-tools-extra/clang-tidy/performance/StringViewConversionsCheck.h
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.h
    M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantTypenameCheck.cpp
    M clang-tools-extra/clang-tidy/rename_check.py
    M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clangd/FindSymbols.cpp
    M clang-tools-extra/clangd/FindSymbols.h
    M clang-tools-extra/clangd/Protocol.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/SemanticHighlighting.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/Background.cpp
    M clang-tools-extra/clangd/index/IndexAction.cpp
    M clang-tools-extra/clangd/index/IndexAction.h
    M clang-tools-extra/clangd/indexer/IndexerMain.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    A clang-tools-extra/clangd/test/symbol-tags.test
    M clang-tools-extra/clangd/test/symbols.test
    M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang-tools-extra/clangd/unittests/IndexActionTests.cpp
    M clang-tools-extra/clangd/unittests/SelectionTests.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-reorder-fields.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/list.rst
    A clang-tools-extra/docs/clang-tidy/checks/llvm/type-switch-case-types.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
    A clang-tools-extra/docs/clang-tidy/checks/llvm/use-vector-utils.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/use-string-view.rst
    A clang-tools-extra/docs/clang-tidy/checks/performance/string-view-conversions.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/docs/index.rst
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
    M clang-tools-extra/include-cleaner/lib/Record.cpp
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/string
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/invalid-enum-default-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses-cmdline.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    A clang-tools-extra/test/clang-tidy/checkers/llvm/type-switch-case-types.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-ranges.cpp
    A clang-tools-extra/test/clang-tidy/checkers/llvm/use-vector-utils.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/modernize/use-std-format.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-custom-view.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view-ignored.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-string-view.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/enum-size.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/move-const-arg.cpp
    A clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions-cxx20.cpp
    A clang-tools-extra/test/clang-tidy/checkers/performance/string-view-conversions.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/non-const-parameter.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/CMakeLists.txt
    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/cmake/caches/hexagon-unknown-linux-musl-clang-cross.cmake
    A clang/cmake/caches/hexagon-unknown-linux-musl-clang-dylib.cmake
    M clang/docs/AddressSanitizer.rst
    M clang/docs/BoundsSafety.rst
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/MSVCCompatibility.rst
    M clang/docs/MemorySanitizer.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/ThreadSanitizer.rst
    M clang/docs/UndefinedBehaviorSanitizer.rst
    M clang/docs/UsersManual.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/TypeLoc.h
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    A clang/include/clang/Analysis/AnnexKDetection.h
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Analysis/CloneDetection.h
    A clang/include/clang/Analysis/Scalable/Serialization/SerializationFormat.h
    A clang/include/clang/Analysis/Scalable/TUSummary/EntitySummary.h
    A clang/include/clang/Analysis/Scalable/TUSummary/ExtractorRegistry.h
    A clang/include/clang/Analysis/Scalable/TUSummary/TUSummary.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
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/Builtins.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/BuiltinsX86.td
    M clang/include/clang/Basic/BuiltinsX86_64.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/DarwinSDKInfo.h
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.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/OffloadArch.h
    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/TargetInfo.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/CIRDialect.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/Driver/CommonArgs.h
    M clang/include/clang/Driver/ToolChain.h
    M clang/include/clang/Format/Format.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/ModuleMap.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/Overload.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    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/Context.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/InitMap.cpp
    M clang/lib/AST/ByteCode/InitMap.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/State.h
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConcepts.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/FormatString.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/Stmt.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    A clang/lib/Analysis/AnnexKDetection.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/CMakeLists.txt
    M clang/lib/Analysis/CloneDetection.cpp
    M clang/lib/Analysis/FlowSensitive/AdornedCFG.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/Facts.cpp
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    M clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/Serialization/SerializationFormat.cpp
    A clang/lib/Analysis/Scalable/TUSummary/ExtractorRegistry.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    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/Targets/Mips.cpp
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/WebAssembly.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/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    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/CIRGenDecl.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/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenFunctionInfo.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypes.h
    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/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    R clang/lib/CIR/Dialect/Transforms/LoweringPrepareCXXABI.h
    R clang/lib/CIR/Dialect/Transforms/LoweringPrepareItaniumCXXABI.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/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CodeGenFunction.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/TargetBuiltins/RISCV.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.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/Arch/Mips.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Linux.h
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/MSVC.h
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/TokenAnnotator.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/crc32intrin.h
    M clang/lib/Headers/gpuintrin.h
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.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/ModuleMap.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/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/OpenCLBuiltins.td
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaConcept.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.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/SemaStmt.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/ASTWriterDecl.cpp
    M clang/lib/Serialization/ModuleManager.cpp
    M clang/lib/Serialization/TemplateArgumentHasher.cpp
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdLibraryFunctionsChecker.cpp
    A clang/lib/StaticAnalyzer/Checkers/WebKit/NoDeleteChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/StaticAnalyzer/Core/CallEvent.cpp
    M clang/lib/Tooling/InterpolatingCompilationDatabase.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-functions.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/complex.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/cxx26.cpp
    M clang/test/AST/ByteCode/floats.cpp
    M clang/test/AST/ByteCode/functions.cpp
    A clang/test/AST/ByteCode/libcxx/end-primitive-array-root-lifetime.cpp
    M clang/test/AST/ByteCode/lifetimes.cpp
    M clang/test/AST/ByteCode/lifetimes26.cpp
    M clang/test/AST/ByteCode/shifts.cpp
    M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    M clang/test/AST/ast-dump-decl-stmts.cpp
    M clang/test/AST/ms-constexpr-new.cpp
    A clang/test/Analysis/Checkers/WebKit/nodelete-annotation.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/Inputs/system-header-simulator.h
    M clang/test/Analysis/LifetimeSafety/benchmark.py
    M clang/test/Analysis/analyzer-config.c
    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
    M clang/test/Analysis/lifetime-cfg-output.cpp
    M clang/test/Analysis/scopes-cfg-output.cpp
    A clang/test/Analysis/security-deprecated-buffer-handling-report-modes.c
    A clang/test/Analysis/std-c-library-functions-char-uchar-conv.c
    A clang/test/Analysis/suppress-namespace-redecl-core.cpp
    A clang/test/Analysis/suppress-namespace-redecl-webkit.cpp
    M clang/test/C/C23/n3037.c
    A clang/test/CIR/CodeGen/address-of.cpp
    M clang/test/CIR/CodeGen/atomic-scoped.c
    M clang/test/CIR/CodeGen/atomic.c
    M clang/test/CIR/CodeGen/binassign.c
    A clang/test/CIR/CodeGen/builtin-bit-cast.cpp
    M clang/test/CIR/CodeGen/cleanup.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    M clang/test/CIR/CodeGen/dynamic-cast.cpp
    A clang/test/CIR/CodeGen/fold-during-cg.c
    M clang/test/CIR/CodeGen/inline-asm.c
    A clang/test/CIR/CodeGen/misc-attrs.cpp
    M clang/test/CIR/CodeGen/new.cpp
    A clang/test/CIR/CodeGen/no-odr-use.cpp
    A clang/test/CIR/CodeGen/noreturn.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
    A clang/test/CIR/CodeGen/side-effect.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/CodeGen/vtt.cpp
    A clang/test/CIR/CodeGenBuiltins/AArch64/neon/fullfp16.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
    A clang/test/CIR/CodeGenBuiltins/X86/avx512-select-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/prefetchw-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/rdrand-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/sse41-builtins.c
    M clang/test/CIR/CodeGenBuiltins/builtin_bit.cpp
    M clang/test/CIR/CodeGenBuiltins/builtin_call.cpp
    A clang/test/CIR/IR/invalid-cast.cir
    M clang/test/CIR/IR/invalid-complex.cir
    A clang/test/CIR/IR/invalid-memcpy.cir
    M clang/test/CIR/IR/invalid-struct.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/libc-memcpy.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
    A clang/test/CIR/Lowering/libc.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/CXX/special/class.temporary/p6.cpp
    M clang/test/ClangScanDeps/P1689.cppm
    A clang/test/ClangScanDeps/build-session-validation-outdated-module.c
    M clang/test/ClangScanDeps/header_stat_before_open.m
    M clang/test/ClangScanDeps/headerwithdirname.cpp
    M clang/test/ClangScanDeps/headerwithdirnamefollowedbyinclude.cpp
    M clang/test/ClangScanDeps/macro-expansions.cpp
    M clang/test/ClangScanDeps/modules-context-hash-module-map-path.c
    M clang/test/ClangScanDeps/modules-context-hash-outputs.c
    M clang/test/ClangScanDeps/modules.cpp
    M clang/test/ClangScanDeps/regular_cdb.cpp
    M clang/test/ClangScanDeps/relative_directory.cpp
    M clang/test/ClangScanDeps/subframework_header_dir_symlink.m
    M clang/test/ClangScanDeps/target-filename.cpp
    M clang/test/ClangScanDeps/vfsoverlay.cpp
    M clang/test/CodeGen/AArch64/args.cpp
    M clang/test/CodeGen/AArch64/byval-temp.c
    M clang/test/CodeGen/AArch64/pure-scalable-args-empty-union.c
    M clang/test/CodeGen/AArch64/pure-scalable-args.c
    M clang/test/CodeGen/AArch64/struct-coerce-using-ptr.cpp
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.c
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.cpp
    M clang/test/CodeGen/LoongArch/bitint.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate-alias.c
    M clang/test/CodeGen/LoongArch/lasx/builtin-approximate.c
    M clang/test/CodeGen/LoongArch/lasx/builtin.c
    A clang/test/CodeGen/LoongArch/targetattr-la32.c
    A clang/test/CodeGen/LoongArch/targetattr-la64.c
    R clang/test/CodeGen/LoongArch/targetattr.c
    A clang/test/CodeGen/Mips/musttail-forward-declaration.c
    A clang/test/CodeGen/Mips/musttail-pic.c
    A clang/test/CodeGen/Mips/musttail-visibility.c
    A clang/test/CodeGen/Mips/musttail-weak.c
    A clang/test/CodeGen/Mips/musttail.c
    M clang/test/CodeGen/PowerPC/builtins-amo-err.c
    M clang/test/CodeGen/PowerPC/builtins-bcd-format-conversion.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/ppc-amo-header.c
    M clang/test/CodeGen/PowerPC/ppc64-vector.c
    M clang/test/CodeGen/RISCV/attr-rvv-vector-bits-cast.c
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/RISCV/riscv-abi.cpp
    M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.c
    M clang/test/CodeGen/RISCV/riscv-vector-callingconv-llvm-ir.cpp
    M clang/test/CodeGen/RISCV/riscv32-abi.c
    M clang/test/CodeGen/RISCV/riscv32-vararg.c
    M clang/test/CodeGen/RISCV/riscv64-abi.c
    M clang/test/CodeGen/RISCV/riscv64-vararg.c
    M clang/test/CodeGen/RISCV/rvb-intrinsics/zbc.c
    M clang/test/CodeGen/RISCV/rvb-intrinsics/zbkc.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/Sparc/sparcv9-abi.c
    M clang/test/CodeGen/SystemZ/fp16.c
    M clang/test/CodeGen/SystemZ/sync-builtins-i128-16Al.c
    M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
    M clang/test/CodeGen/SystemZ/systemz-inline-asm.c
    M clang/test/CodeGen/X86/cx-complex-range.c
    M clang/test/CodeGen/X86/sse42-builtins.c
    M clang/test/CodeGen/X86/x86_32-arguments-win32.c
    M clang/test/CodeGen/X86/x86_64-arguments-win32.c
    M clang/test/CodeGen/aapcs64-align.cpp
    M clang/test/CodeGen/arm-aapcs-vfp.c
    M clang/test/CodeGen/arm-abi-vector.c
    M clang/test/CodeGen/arm64-abi-vector.c
    M clang/test/CodeGen/arm64-arguments.c
    M clang/test/CodeGen/arm64-microsoft-arguments.cpp
    M clang/test/CodeGen/arm64ec-varargs.c
    M clang/test/CodeGen/armv7k-abi.c
    M clang/test/CodeGen/atomic-arm64.c
    M clang/test/CodeGen/atomic-ops.c
    M clang/test/CodeGen/attr-arm-sve-vector-bits-cast.c
    M clang/test/CodeGen/attr-noundef.cpp
    M clang/test/CodeGen/builtin-rotate.c
    M clang/test/CodeGen/builtin_float_strictfp.c
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/cx-complex-range.c
    M clang/test/CodeGen/ext-int-cc.c
    M clang/test/CodeGen/fp16-ops-strictfp.c
    M clang/test/CodeGen/hexagon-linux-vararg.c
    M clang/test/CodeGen/isfpclass.c
    M clang/test/CodeGen/lifetime-sanitizer.c
    M clang/test/CodeGen/link-builtin-bitcode.c
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/mingw-long-double.c
    M clang/test/CodeGen/ms_abi.c
    M clang/test/CodeGen/pass-by-value-noalias.c
    A clang/test/CodeGen/pragma-export.c
    A clang/test/CodeGen/pragma-export.cpp
    M clang/test/CodeGen/prefalign.c
    M clang/test/CodeGen/ptrauth-in-c-struct.c
    M clang/test/CodeGen/regcall.c
    M clang/test/CodeGen/regcall2.c
    M clang/test/CodeGen/regcall4.c
    M clang/test/CodeGen/scoped-atomic-ops.c
    A clang/test/CodeGen/stack-protector-vars.cpp
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/varargs-with-nonzero-default-address-space.c
    M clang/test/CodeGen/vectorcall.c
    A clang/test/CodeGen/wasm-fp16.c
    M clang/test/CodeGen/win-fp128.c
    M clang/test/CodeGen/win64-i128.c
    M clang/test/CodeGen/windows-swiftcall.c
    A clang/test/CodeGen/zos-pragmas.c
    A clang/test/CodeGen/zos-pragmas.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sve-vectors.cpp
    M clang/test/CodeGenCXX/arm-cc.cpp
    M clang/test/CodeGenCXX/attr-target-mv-inalloca.cpp
    M clang/test/CodeGenCXX/copy-initialization.cpp
    M clang/test/CodeGenCXX/empty-nontrivially-copyable.cpp
    M clang/test/CodeGenCXX/fastcall.cpp
    M clang/test/CodeGenCXX/homogeneous-aggregates.cpp
    M clang/test/CodeGenCXX/inalloca-lambda.cpp
    M clang/test/CodeGenCXX/inalloca-overaligned.cpp
    M clang/test/CodeGenCXX/inalloca-vector.cpp
    M clang/test/CodeGenCXX/inheriting-constructor.cpp
    M clang/test/CodeGenCXX/lifetime-sanitizer.cpp
    M clang/test/CodeGenCXX/member-alignment.cpp
    M clang/test/CodeGenCXX/member-function-pointer-calls.cpp
    M clang/test/CodeGenCXX/microsoft-abi-arg-order.cpp
    M clang/test/CodeGenCXX/microsoft-abi-byval-thunks.cpp
    M clang/test/CodeGenCXX/microsoft-abi-member-pointers.cpp
    M clang/test/CodeGenCXX/microsoft-abi-sret-and-byval.cpp
    M clang/test/CodeGenCXX/microsoft-abi-unknown-arch.cpp
    M clang/test/CodeGenCXX/ms-property.cpp
    M clang/test/CodeGenCXX/pass-by-value-noalias.cpp
    M clang/test/CodeGenCXX/pragma-gcc-unroll.cpp
    M clang/test/CodeGenCXX/pragma-unroll.cpp
    M clang/test/CodeGenCXX/ptrauth-qualifier-struct.cpp
    M clang/test/CodeGenCXX/regparm.cpp
    M clang/test/CodeGenCXX/trivial_abi.cpp
    M clang/test/CodeGenCXX/uncopyable-args.cpp
    M clang/test/CodeGenCXX/vtt-address-space.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    M clang/test/CodeGenCXX/wasm-reftypes-mangle.cpp
    M clang/test/CodeGenCXX/windows-x86-swiftcall.cpp
    A clang/test/CodeGenHIP/device-function-huge-arg-ret.hip
    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
    A clang/test/CodeGenHLSL/builtins/WavePrefixCountBits.hlsl
    M clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/atan2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/ceil-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cos-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/exp2-overloads.hlsl
    A clang/test/CodeGenHLSL/builtins/f32tof16-builtin.hlsl
    A clang/test/CodeGenHLSL/builtins/f32tof16.hlsl
    M clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/hlsl_resource_t.hlsl
    M clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log10-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/radians-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sinh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
    M clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.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/CodeGenObjC/pass-by-value-noalias.m
    M clang/test/CodeGenObjC/weak-in-c-struct.m
    M clang/test/CodeGenObjCXX/mrc-weak.mm
    M clang/test/CodeGenObjCXX/objc-struct-cxx-abi.mm
    M clang/test/CodeGenObjCXX/property-objects.mm
    M clang/test/CodeGenObjCXX/ptrauth-struct-cxx-abi.mm
    M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    A clang/test/CodeGenOpenCL/amdgpu-features-default-delta.cl
    M clang/test/CodeGenOpenCL/amdgpu-features-illegal.cl
    R clang/test/CodeGenOpenCL/amdgpu-features.cl
    M clang/test/CodeGenOpenCL/amdgpu-readonly-features-written-with-no-target.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn.cl
    A clang/test/CodeGenOpenCL/local-scope.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/CoverageMapping/single-byte-counters.cpp
    M clang/test/DebugInfo/CXX/debug-info.cpp
    M clang/test/DebugInfo/CXX/simple-template-names.cpp
    M clang/test/DebugInfo/ObjC/nontrivial-c-struct-exception.m
    R clang/test/Driver/Inputs/DriverKit19.0.sdk/SDKSettings.plist
    A clang/test/Driver/Inputs/DriverKit19.0.sdk/SDKSettings.txt
    M clang/test/Driver/Inputs/DriverKit21.0.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/DriverKit23.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/FakeOS1.0.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX10.14.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/MacOSX10.15.sdk/SDKSettings.json
    R clang/test/Driver/Inputs/MacOSX10.15.versioned.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/MacOSX15.1.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/WatchOS6.0.sdk/SDKSettings.json
    M clang/test/Driver/Inputs/iPhoneOS13.0.sdk/SDKSettings.json
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/gfx90a/libclc.bc
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libclc.bc
    M clang/test/Driver/aarch64-mcpu-native.c
    M clang/test/Driver/amdgpu-macros.cl
    M clang/test/Driver/amdgpu-mcpu.cl
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/clang-cc1as-target-variant.s
    M clang/test/Driver/cuda-arch-list.cu
    M clang/test/Driver/darwin-builtin-modules.c
    A clang/test/Driver/darwin-depfile-sdksettings-maccatalyst.m
    M clang/test/Driver/darwin-invalid-version-range.c
    M clang/test/Driver/darwin-ld-platform-version-driverkit.c
    M clang/test/Driver/darwin-ld-platform-version-maccatalyst.c
    M clang/test/Driver/darwin-ld-platform-version-macos.c
    M clang/test/Driver/darwin-ld-platform-version-target-version.c
    M clang/test/Driver/darwin-objc-runtime-maccatalyst-target-variant.m
    M clang/test/Driver/darwin-objc-runtime-maccatalyst.m
    M clang/test/Driver/darwin-sdk-version-maccatalyst.c
    M clang/test/Driver/darwin-sdk-version.c
    M clang/test/Driver/darwin-target-variant-sdk-version.c
    M clang/test/Driver/hip-runtime-libs-linux.hip
    M clang/test/Driver/hipstdpar.c
    M clang/test/Driver/loongarch-march.c
    M clang/test/Driver/loongarch-mtune.c
    M clang/test/Driver/modulemap-allow-subdirectory-search.c
    M clang/test/Driver/opencl-libclc.cl
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/prefalign.c
    M clang/test/Driver/print-enabled-extensions/aarch64-grace.c
    A clang/test/Driver/print-enabled-extensions/riscv-spacemit-x100.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Driver/riscv-arch.c
    M clang/test/Driver/riscv-cpus.c
    M clang/test/Driver/rocm-detect.hip
    R clang/test/Driver/sycl.c
    A clang/test/Driver/sycl.cpp
    M clang/test/Frontend/dependency-gen-phony.c
    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/Headers/stdarg.cpp
    M clang/test/Index/pch-from-libclang.c
    M clang/test/InstallAPI/Inputs/MacOSX13.0.sdk/SDKSettings.json
    A clang/test/Lexer/cxx20-module-directive.cpp
    M clang/test/Misc/amdgcn.languageOptsOpenCL.cl
    M clang/test/Misc/pragma-attribute-supported-attributes-list.test
    M clang/test/Misc/target-invalid-cpu-note/amdgcn.c
    M clang/test/Misc/target-invalid-cpu-note/mips.c
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    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
    A clang/test/Modules/modulemap-with-named-module.cppm
    R clang/test/Modules/pch-config-macros.c
    M clang/test/Modules/pr121066.cpp
    A clang/test/Modules/pr171769.cpp
    A clang/test/Modules/pr177385.cppm
    M clang/test/Modules/preprocess-named-modules.cppm
    M clang/test/Modules/sdk-settings-json-dep.m
    M clang/test/OpenMP/amdgcn-attributes.cpp
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_ast_print.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_codegen.cpp
    A clang/test/OpenMP/target_data_use_device_ptr_fallback_messages.cpp
    M clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
    M clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.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
    A clang/test/Parser/pragma-export.c
    A clang/test/Parser/pragma-export.cpp
    A clang/test/PlatformSpecific/xrOS/Sema/Inputs/XROS1.0.sdk/SDKSettings.json
    A clang/test/PlatformSpecific/xrOS/Sema/infer-ios-availability.c
    A clang/test/PlatformSpecific/xrOS/Sema/infer-unavailable-from-missing-ios-availability-mapping.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Preprocessor/embed___has_embed_parsing_errors.c
    M clang/test/Preprocessor/has_attribute_errors.cpp
    A clang/test/Preprocessor/has_c_attribute_errors.c
    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/AppleTVOS15.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/MacOSX11.0.sdk/SDKSettings.json
    R clang/test/Sema/Inputs/WatchOS7.0.sdk/SDKSettings.json
    A clang/test/Sema/Inputs/WatchOS8.0.sdk/SDKSettings.json
    R clang/test/Sema/Inputs/XROS.sdk/SDKSettings.json
    A clang/test/Sema/Inputs/XROS26.0.sdk/SDKSettings.json
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/attr-availability-ios-fallback-aligned-versions.c
    M clang/test/Sema/attr-availability-iosmac-infer-from-macos.c
    M clang/test/Sema/attr-availability-watchos.c
    M clang/test/Sema/attr-modular-format.c
    A clang/test/Sema/builtin-stdc-rotate.c
    A clang/test/Sema/builtins-bcd-format-conversion.c
    M clang/test/Sema/const-ptr-int-ptr-cast.c
    M clang/test/Sema/constexpr.c
    M clang/test/Sema/format-strings.c
    A clang/test/Sema/pragma-export-failing.c
    A clang/test/Sema/pragma-export-failing.cpp
    M clang/test/Sema/scope-check.c
    M clang/test/Sema/scoped-atomic-ops.c
    A clang/test/Sema/stack_protector_ignore.c
    M clang/test/Sema/unroll-template-value-crash.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    A clang/test/Sema/warn-lifetime-safety-dangling-field.cpp
    M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
    M clang/test/Sema/warn-lifetime-safety-missing-origin-stats.cpp
    A clang/test/Sema/warn-lifetime-safety-noescape.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
    A clang/test/SemaCXX/constexpr-builtin-stdc-rotate.cpp
    A clang/test/SemaCXX/crash-GH170433.cpp
    M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp
    M clang/test/SemaCXX/cxx2c-fold-exprs.cpp
    M clang/test/SemaCXX/enable_if.cpp
    M clang/test/SemaCXX/ms-constexpr-invalid.cpp
    M clang/test/SemaCXX/ms-constexpr-new.cpp
    M clang/test/SemaCXX/ms-constexpr.cpp
    M clang/test/SemaCXX/underlying_type.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/BuiltIns/WavePrefixCountBits-errors.hlsl
    A clang/test/SemaHLSL/BuiltIns/f32tof16-errors.hlsl
    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/SemaOpenCL/storageclass.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/ASTMatchersNarrowingTest.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/Basic/DarwinSDKInfoTest.cpp
    M clang/unittests/DirectoryWatcher/CMakeLists.txt
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestJava.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp
    M clang/unittests/Lex/DependencyDirectivesScannerTest.cpp
    M clang/unittests/Lex/ModuleDeclStateTest.cpp
    M clang/unittests/Serialization/CMakeLists.txt
    A clang/unittests/Serialization/NamespaceLookupTest.cpp
    M clang/utils/TableGen/CIRLoweringEmitter.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/reduce-clang-crash.py
    M clang/www/builtins.py
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M clang/www/get_started.html
    M clang/www/hacking.html
    A cmake/Modules/HandleDoxygen.cmake
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/lib/asan/asan_descriptions.cpp
    M compiler-rt/lib/asan/asan_fake_stack.cpp
    M compiler-rt/lib/asan/asan_rtl.cpp
    M compiler-rt/lib/builtins/CMakeLists.txt
    A compiler-rt/lib/builtins/aarch64/sme-libc-opt-memcpy-memmove-sve.S
    M compiler-rt/lib/builtins/aarch64/sme-libc-opt-memcpy-memmove.S
    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/hwasan/hwasan.h
    M compiler-rt/lib/hwasan/hwasan_linux.cpp
    M compiler-rt/lib/orc/elfnix_platform.cpp
    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/sanitizer_common/tests/sanitizer_procmaps_mac_test.cpp
    M compiler-rt/lib/scudo/standalone/secondary.h
    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
    A compiler-rt/test/orc/TestCases/Linux/Generic/ctor-dtor.cpp
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_allowlist_ignorelist.cpp
    M cross-project-tests/dtlto/archive.test
    M cross-project-tests/dtlto/archives-mixed-lto-modes-test.test
    M cross-project-tests/dtlto/archives-same-module-id.test
    A cross-project-tests/dtlto/fat-lto-objects.test
    M cross-project-tests/dtlto/link-archive-thin.test
    A cross-project-tests/dtlto/link-savetemps.test
    A cross-project-tests/dtlto/local_codegen_and_wait.py
    A cross-project-tests/dtlto/multimodule.test
    A cross-project-tests/dtlto/savetemps-lock.test
    A cross-project-tests/dtlto/savetemps.test
    M cross-project-tests/dtlto/signal.test
    A cross-project-tests/dtlto/test_temps.py
    M flang-rt/cmake/modules/GetToolchainDirs.cmake
    M flang-rt/include/flang-rt/runtime/terminator.h
    M flang-rt/include/flang-rt/runtime/type-info.h
    M flang-rt/lib/runtime/assign.cpp
    M flang-rt/lib/runtime/copy.cpp
    M flang-rt/lib/runtime/derived.cpp
    M flang-rt/lib/runtime/main.cpp
    M flang-rt/lib/runtime/stop.cpp
    M flang-rt/lib/runtime/terminator.cpp
    M flang-rt/lib/runtime/time-intrinsic.cpp
    M flang-rt/lib/runtime/type-info.cpp
    M flang-rt/unittests/Runtime/Reduction.cpp
    M flang/docs/CMakeLists.txt
    M flang/docs/Directives.md
    M flang/docs/Extensions.md
    M flang/docs/FortranStandardsSupport.md
    M flang/docs/OpenACC.md
    M flang/docs/ParallelMultiImageFortranRuntime.md
    M flang/include/flang/Evaluate/initial-image.h
    M flang/include/flang/Evaluate/real.h
    M flang/include/flang/Frontend/CodeGenOptions.def
    M flang/include/flang/Lower/ConvertCall.h
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Lower/MultiImageFortran.h
    M flang/include/flang/Lower/OpenACC.h
    M flang/include/flang/Optimizer/Analysis/AliasAnalysis.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    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/FIROpsSupport.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.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/OpenACC/Support/FIROpenACCUtils.h
    M flang/include/flang/Optimizer/OpenMP/Passes.td
    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/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Runtime/stop.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/Evaluate/fold.cpp
    M flang/lib/Evaluate/initial-image.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.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/Clauses.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/PFTBuilder.cpp
    M flang/lib/Lower/Runtime.cpp
    M flang/lib/Lower/Support/ReductionProcessor.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Analysis/CMakeLists.txt
    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/Builder/PPCIntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Main.cpp
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/CodeGen/Target.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/Dialect/CMakeLists.txt
    M flang/lib/Optimizer/Dialect/CUF/Attributes/CUFAttr.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFOps.cpp
    A flang/lib/Optimizer/Dialect/FIROperationMoveOpInterface.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/Dialect/MIF/MIFOps.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIRDialect.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/InlineHLFIRAssign.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIROrderedAssignments.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.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/ACCOptimizeFirstprivateMap.cpp
    A flang/lib/Optimizer/OpenACC/Transforms/ACCUseDeviceCanonicalizer.cpp
    M flang/lib/Optimizer/OpenACC/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/DoConcurrentConversion.cpp
    M flang/lib/Optimizer/OpenMP/FunctionFiltering.cpp
    M flang/lib/Optimizer/OpenMP/LowerNontemporal.cpp
    M flang/lib/Optimizer/OpenMP/LowerWorkdistribute.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/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/AddAliasTags.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/CUDA/CUFComputeSharedMemoryOffsetsAndSize.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    M flang/lib/Optimizer/Transforms/CUDA/CUFOpConversion.cpp
    A flang/lib/Optimizer/Transforms/CUDA/CUFOpConversionLate.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    A flang/lib/Optimizer/Transforms/FIRToMemRef.cpp
    M flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/lib/Optimizer/Transforms/MIFOpConversion.cpp
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/message.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-coarray.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-declarations.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/data-to-inits.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/openmp-modifiers.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/runtime-type-info.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/module/__fortran_type_info.f90
    M flang/module/iso_c_binding.f90
    M flang/test/Analysis/AliasAnalysis/load-ptr-alloca.fir
    A flang/test/Analysis/AliasAnalysis/modref-alloc-free-effects.fir
    M flang/test/Driver/bbc-mlir-pass-pipeline.f90
    M flang/test/Driver/fast-math.f90
    A flang/test/Driver/global-isel.f90
    A flang/test/Driver/input-from-stdin/debug-info-filename.f90
    A flang/test/Driver/lto-global-isel.f90
    M flang/test/Driver/mlir-debug-pass-pipeline.f90
    M flang/test/Driver/mlir-pass-pipeline.f90
    A flang/test/Driver/protect-parens.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
    A flang/test/Fir/CUDA/cuda-alias-analysis.fir
    M flang/test/Fir/CUDA/cuda-alloc-free.fir
    M flang/test/Fir/CUDA/cuda-allocate.fir
    M flang/test/Fir/CUDA/cuda-data-transfer.fir
    A flang/test/Fir/CUDA/cuda-device-address.mlir
    M flang/test/Fir/CUDA/cuda-global-addr.mlir
    M flang/test/Fir/CUDA/cuda-launch.fir
    M flang/test/Fir/CUDA/cuda-shared-offset.mlir
    A flang/test/Fir/FirToSCF/any.fir
    A flang/test/Fir/FirToSCF/do-extra.fir
    A flang/test/Fir/FirToSCF/if-extra.fir
    A flang/test/Fir/FirToSCF/iterate-while-extra.fir
    A flang/test/Fir/FirToSCF/nested-unregistered.fir
    A flang/test/Fir/FirToSCF/normalize.fir
    A flang/test/Fir/FirToSCF/sum.fir
    M flang/test/Fir/MIF/init.mlir
    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/basic-program.fir
    M flang/test/Fir/convert-memref-codegen.mlir
    A flang/test/Integration/OpenMP/target-nesting-in-host-ops.f90
    A flang/test/Integration/OpenMP/target-use-device-nested.f90
    A flang/test/Integration/OpenMP/task-target-device.f90
    A flang/test/Integration/OpenMP/threadprivate-target-device.f90
    M flang/test/Integration/complex-div-to-llvm.f90
    A flang/test/Integration/debug-use-stmt.f90
    M flang/test/Lower/CUDA/cuda-allocatable-device.cuf
    M flang/test/Lower/CUDA/cuda-synchronization.cuf
    M flang/test/Lower/HLFIR/calls-f77.f90
    M flang/test/Lower/HLFIR/elemental-array-ops.f90
    A flang/test/Lower/HLFIR/ignore-tkr-c-descriptor.f90
    A flang/test/Lower/HLFIR/ivdep-elemental.f90
    A flang/test/Lower/HLFIR/ivdep-where.f90
    A flang/test/Lower/HLFIR/protect-parens-arrays.f90
    A flang/test/Lower/HLFIR/protect-parens.f90
    M flang/test/Lower/HLFIR/where.f90
    M flang/test/Lower/Intrinsics/storage_size-2.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
    A flang/test/Lower/OpenACC/acc-deviceptr.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/OpenMP/declare-target-link-tarop-cap.f90
    M flang/test/Lower/OpenMP/defaultmap.f90
    M flang/test/Lower/OpenMP/host-eval.f90
    A flang/test/Lower/OpenMP/num-teams-dims.f90
    A flang/test/Lower/OpenMP/num-threads-dims.f90
    M flang/test/Lower/OpenMP/omp-declare-reduction-derivedtype.f90
    M flang/test/Lower/OpenMP/real10.f90
    A flang/test/Lower/OpenMP/target-parameter-array.f90
    A flang/test/Lower/OpenMP/thread-limit-dims.f90
    M flang/test/Lower/array-elemental-calls-2.f90
    M flang/test/Lower/array-elemental-calls-char-dynamic.f90
    M flang/test/Lower/array-elemental-calls-char.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/assigned-goto.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/c-interoperability-c-pointer.f90
    M flang/test/Lower/c-interoperability.f90
    M flang/test/Lower/c_ptr-constant-init.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
    M flang/test/Lower/character-elemental.f90
    M flang/test/Lower/character-local-variables.f90
    M flang/test/Lower/complex-operations.f90
    M flang/test/Lower/complex-real.f90
    M flang/test/Lower/computed-goto.f90
    A flang/test/Lower/const-arg-glob.f90
    M flang/test/Lower/constant-literal-mangling.f90
    M flang/test/Lower/control-flow.f90
    A flang/test/Lower/do-while-to-scf-while.f90
    M flang/test/Lower/io-statement-clean-ups.f90
    A flang/test/Lower/ivdep-array.f90
    A flang/test/Lower/rank-clause02.f90
    M flang/test/Lower/volatile-openmp.f90
    A flang/test/Parser/bug135964.f90
    A flang/test/Parser/keyword-optional-spaces.f90
    A flang/test/Parser/unparse-rank-clause.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
    A flang/test/Semantics/OpenMP/linear-clause03.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
    A flang/test/Semantics/bug177502.f90
    A flang/test/Semantics/bug177601.f90
    A flang/test/Semantics/bug2098.f90
    M flang/test/Semantics/c7108.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/cuf03.cuf
    M flang/test/Semantics/cuf23.cuf
    M flang/test/Semantics/data07.f90
    M flang/test/Semantics/data12.f90
    M flang/test/Semantics/data23.f90
    M flang/test/Semantics/declarations06.f90
    M flang/test/Semantics/equivalence02.f90
    M flang/test/Semantics/generic09.f90
    M flang/test/Semantics/misc-intrinsics.f90
    A flang/test/Semantics/rank-clause01.f90
    M flang/test/Semantics/resolve11.f90
    M flang/test/Semantics/resolve17.f90
    M flang/test/Semantics/resolve18.f90
    M flang/test/Semantics/symbol03.f90
    M flang/test/Semantics/typeinfo01.f90
    M flang/test/Semantics/typeinfo08.f90
    A flang/test/Transforms/CUF/cuf-kernel-licm.fir
    M flang/test/Transforms/DoConcurrent/locally_destroyed_temp.f90
    M flang/test/Transforms/DoConcurrent/multiple_iteration_ranges.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/acc-optimize-firstprivate-map.fir
    A flang/test/Transforms/OpenACC/offload-target-verifier.fir
    A flang/test/Transforms/OpenMP/conversion-declare-mapper.mlir
    A flang/test/Transforms/OpenMP/function-filtering-host-ops.mlir
    A flang/test/Transforms/OpenMP/function-filtering.mlir
    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
    A flang/test/Transforms/omp-function-filtering-todo.mlir
    R flang/test/Transforms/omp-function-filtering.mlir
    R flang/test/Transforms/tbaa-for-local-vars.fir
    M flang/test/Transforms/tbaa-target-inlined-results.fir
    M flang/test/Transforms/tbaa-with-dummy-scope2.fir
    M flang/unittests/Common/FortranFeaturesTest.cpp
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/config/config.json
    M libc/config/gpu/config.json
    M libc/config/linux/app.h
    A libc/config/windows/config.json
    M libc/docs/configure.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/fuzzing/__support/CMakeLists.txt
    A libc/fuzzing/__support/weak_avl_fuzz.cpp
    M libc/hdr/CMakeLists.txt
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/Elf32_Xword.h
    M libc/include/CMakeLists.txt
    M libc/include/elf.yaml
    M libc/include/llvm-libc-macros/link-macros.h
    M libc/include/llvm-libc-macros/pthread-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/Elf32_Xword.h
    R libc/include/pthread.h.def
    M libc/include/pthread.yaml
    M libc/shared/math.h
    A libc/shared/math/dfmaf128.h
    A libc/shared/math/dfmal.h
    A libc/shared/math/f16fma.h
    A libc/shared/math/f16fmal.h
    A libc/shared/math/f16sqrtl.h
    A libc/shared/math/fsqrt.h
    A libc/shared/math/fsqrtf128.h
    A libc/shared/math/fsqrtl.h
    A libc/shared/math/hypotf.h
    A libc/shared/math/ilogb.h
    A libc/shared/math/ilogbf.h
    A libc/shared/math/ilogbf128.h
    A libc/shared/math/ilogbl.h
    A libc/shared/math/llogb.h
    A libc/shared/math/llogbf.h
    A libc/shared/math/llogbf128.h
    A libc/shared/math/llogbf16.h
    A libc/shared/math/log10.h
    A libc/shared/math/log1p.h
    A libc/shared/math/log2.h
    A libc/shared/math/logbf.h
    A libc/shared/math/logbf128.h
    A libc/shared/math/logbf16.h
    A libc/shared/math/logf.h
    A libc/shared/math/logf16.h
    A libc/shared/math/sinf.h
    A libc/shared/math/sinf16.h
    A libc/shared/math/sinhf.h
    A libc/shared/math/sinhf16.h
    A libc/shared/math/sinpif.h
    A libc/shared/math/sqrt.h
    A libc/shared/math/sqrtf16.h
    A libc/shared/math/tan.h
    A libc/shared/math/tanf.h
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/limits.h
    M libc/src/__support/CPP/type_traits/is_integral.h
    M libc/src/__support/CPP/type_traits/is_unsigned.h
    M libc/src/__support/GPU/allocator.cpp
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/asin.h
    M libc/src/__support/math/atan2f_float.h
    M libc/src/__support/math/atanf_float.h
    M libc/src/__support/math/cbrt.h
    M libc/src/__support/math/cbrtf.h
    M libc/src/__support/math/cos.h
    M libc/src/__support/math/cosf.h
    A libc/src/__support/math/dfmaf128.h
    A libc/src/__support/math/dfmal.h
    A libc/src/__support/math/f16fma.h
    A libc/src/__support/math/f16fmal.h
    A libc/src/__support/math/f16sqrtl.h
    A libc/src/__support/math/fsqrt.h
    A libc/src/__support/math/fsqrtf128.h
    A libc/src/__support/math/fsqrtl.h
    A libc/src/__support/math/hypotf.h
    A libc/src/__support/math/ilogb.h
    A libc/src/__support/math/ilogbf.h
    A libc/src/__support/math/ilogbf128.h
    A libc/src/__support/math/ilogbl.h
    A libc/src/__support/math/llogb.h
    A libc/src/__support/math/llogbf.h
    A libc/src/__support/math/llogbf128.h
    A libc/src/__support/math/llogbf16.h
    A libc/src/__support/math/log10.h
    A libc/src/__support/math/log1p.h
    A libc/src/__support/math/log2.h
    A libc/src/__support/math/logbf.h
    A libc/src/__support/math/logbf128.h
    A libc/src/__support/math/logbf16.h
    A libc/src/__support/math/logf.h
    A libc/src/__support/math/logf16.h
    M libc/src/__support/math/range_reduction.h
    M libc/src/__support/math/range_reduction_fma.h
    M libc/src/__support/math/sin.h
    M libc/src/__support/math/sincosf_utils.h
    A libc/src/__support/math/sinf.h
    A libc/src/__support/math/sinf16.h
    A libc/src/__support/math/sinhf.h
    A libc/src/__support/math/sinhf16.h
    A libc/src/__support/math/sinpif.h
    A libc/src/__support/math/sqrt.h
    A libc/src/__support/math/sqrtf16.h
    A libc/src/__support/math/tan.h
    A libc/src/__support/math/tanf.h
    M libc/src/__support/threads/fork_callbacks.cpp
    M libc/src/__support/wchar/CMakeLists.txt
    R libc/src/__support/wchar/character_converter.cpp
    M libc/src/__support/wchar/character_converter.h
    R libc/src/__support/wchar/wcrtomb.cpp
    M libc/src/__support/wchar/wcrtomb.h
    A libc/src/__support/weak_avl.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/asin.cpp
    M libc/src/math/generic/dfmaf128.cpp
    M libc/src/math/generic/dfmal.cpp
    M libc/src/math/generic/f16fma.cpp
    M libc/src/math/generic/f16fmal.cpp
    M libc/src/math/generic/f16sqrtl.cpp
    M libc/src/math/generic/fsqrt.cpp
    M libc/src/math/generic/fsqrtf128.cpp
    M libc/src/math/generic/fsqrtl.cpp
    M libc/src/math/generic/hypotf.cpp
    M libc/src/math/generic/ilogb.cpp
    M libc/src/math/generic/ilogbf.cpp
    M libc/src/math/generic/ilogbf128.cpp
    M libc/src/math/generic/ilogbl.cpp
    M libc/src/math/generic/llogb.cpp
    M libc/src/math/generic/llogbf.cpp
    M libc/src/math/generic/llogbf128.cpp
    M libc/src/math/generic/llogbf16.cpp
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log1p.cpp
    M libc/src/math/generic/log2.cpp
    M libc/src/math/generic/logbf.cpp
    M libc/src/math/generic/logbf128.cpp
    M libc/src/math/generic/logbf16.cpp
    M libc/src/math/generic/logf.cpp
    M libc/src/math/generic/logf16.cpp
    M libc/src/math/generic/sinf.cpp
    M libc/src/math/generic/sinf16.cpp
    M libc/src/math/generic/sinhf.cpp
    M libc/src/math/generic/sinhf16.cpp
    M libc/src/math/generic/sinpif.cpp
    M libc/src/math/generic/sqrt.cpp
    M libc/src/math/generic/sqrtf16.cpp
    M libc/src/math/generic/tan.cpp
    M libc/src/math/generic/tanf.cpp
    A libc/src/pthread/pthread_getattr_np.h
    M libc/src/spawn/linux/posix_spawn.cpp
    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/src/string/memory_utils/inline_memcpy.h
    M libc/src/string/memory_utils/inline_memmove.h
    M libc/src/string/memory_utils/inline_memset.h
    M libc/startup/gpu/amdgpu/start.cpp
    M libc/startup/gpu/nvptx/start.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp
    A libc/startup/linux/gnu_property_section.cpp
    A libc/startup/linux/gnu_property_section.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M libc/test/src/__support/CMakeLists.txt
    A libc/test/src/__support/weak_avl_test.cpp
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/strings/CMakeLists.txt
    A libc/test/src/strings/wide_read_memory_test.cpp
    M libclc/CMakeLists.txt
    R libclc/clc/include/clc/clctypes.h
    M libclc/clc/include/clc/float/definitions.h
    M libclc/clc/include/clc/integer/clc_upsample.h
    M libclc/clc/include/clc/integer/definitions.h
    M libclc/clc/include/clc/integer/gentype.inc
    M libclc/clc/include/clc/integer/gentype24.inc
    M libclc/clc/include/clc/internal/clc.h
    M libclc/clc/include/clc/math/gentype.inc
    M libclc/clc/include/clc/math/tables.h
    M libclc/clc/include/clc/relational/clc_all.h
    M libclc/clc/include/clc/relational/clc_any.h
    M libclc/clc/include/clc/relational/clc_isequal.h
    M libclc/clc/include/clc/relational/clc_isinf.h
    M libclc/clc/include/clc/relational/clc_isnan.h
    M libclc/clc/lib/generic/atomic/clc_atomic_dec.cl
    M libclc/clc/lib/generic/atomic/clc_atomic_inc.cl
    M libclc/clc/lib/generic/math/clc_remquo.cl
    M libclc/clc/lib/generic/math/clc_remquo.inc
    M libclc/cmake/modules/AddLibclc.cmake
    M libclc/opencl/include/clc/opencl/opencl-base.h
    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
    A libcxx/cmake/caches/Generic-asan-in-tests-only.cmake
    M libcxx/docs/CodingGuidelines.rst
    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/Cxx23Issues.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/pstl.h
    M libcxx/include/__algorithm/ranges_equal.h
    A libcxx/include/__algorithm/ranges_shift_left.h
    M libcxx/include/__algorithm/ranges_swap_ranges.h
    M libcxx/include/__algorithm/shift_left.h
    M libcxx/include/__algorithm/specialized_algorithms.h
    M libcxx/include/__algorithm/swap_ranges.h
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/atomic_sync.h
    A libcxx/include/__atomic/atomic_sync_timed.h
    M libcxx/include/__atomic/atomic_waitable_traits.h
    M libcxx/include/__bit/byteswap.h
    M libcxx/include/__bit_reference
    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
    A libcxx/include/__configuration/attributes.h
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__configuration/language.h
    M libcxx/include/__cxx03/__config
    M libcxx/include/__cxx03/cfloat
    M libcxx/include/__cxx03/module.modulemap
    M libcxx/include/__debug_utils/sanitizers.h
    M libcxx/include/__exception/exception_ptr.h
    M libcxx/include/__iterator/wrap_iter.h
    M libcxx/include/__memory/inout_ptr.h
    M libcxx/include/__memory/out_ptr.h
    M libcxx/include/__memory/valid_range.h
    M libcxx/include/__pstl/backend_fwd.h
    M libcxx/include/__pstl/backends/default.h
    M libcxx/include/__random/binomial_distribution.h
    M libcxx/include/__ranges/join_with_view.h
    M libcxx/include/__ranges/subrange.h
    M libcxx/include/__split_buffer
    M libcxx/include/__tree
    M libcxx/include/__vector/vector.h
    M libcxx/include/algorithm
    M libcxx/include/atomic
    M libcxx/include/cfloat
    M libcxx/include/deque
    R libcxx/include/float.h
    M libcxx/include/fstream
    M libcxx/include/module.modulemap.in
    M libcxx/include/semaphore
    M libcxx/include/string
    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/modules/std/algorithm.inc
    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/CMakeLists.txt
    R libcxx/test/benchmarks/algorithms/lower_bound.bench.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
    A libcxx/test/benchmarks/algorithms/nonmodifying/lower_upper_bound.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
    M libcxx/test/benchmarks/spec.gen.py
    A libcxx/test/extensions/libcxx/asan/diagnose_container_overflow_checks_disablement.verify.cpp
    A libcxx/test/extensions/libcxx/asan/disable_container_overflow_checks.pass.cpp
    R libcxx/test/libcxx-03/libcpp_freestanding.sh.cpp
    A libcxx/test/libcxx/algorithms/alg.modifying.operations/alg.shift/assert.shift_left.pass.cpp
    M libcxx/test/libcxx/algorithms/pstl.nodiscard.verify.cpp
    A libcxx/test/libcxx/algorithms/specialized_algorithms.compile.pass.cpp
    M libcxx/test/libcxx/containers/strings/basic.string/asan.pass.cpp
    M libcxx/test/libcxx/containers/strings/basic.string/asan_short.pass.cpp
    R libcxx/test/libcxx/libcpp_freestanding.sh.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
    A libcxx/test/libcxx/ranges/range.utility/range.subrange/nodiscard.verify.cpp
    M libcxx/test/libcxx/strings/basic.string/nonnull.verify.cpp
    M libcxx/test/libcxx/time/nodiscard.verify.cpp
    M libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
    A libcxx/test/libcxx/utilities/optional/optional.object/optional.iterator/assert.bounded_iterator.pass.cpp
    A libcxx/test/std/algorithms/alg.modifying.operations/alg.shift/ranges.shift_left.pass.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
    A libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted.pass.cpp
    A libcxx/test/std/algorithms/alg.sorting/alg.sort/is.sorted/pstl.is_sorted_comp.pass.cpp
    M libcxx/test/std/algorithms/pstl.exception_handling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_dangling.pass.cpp
    M libcxx/test/std/algorithms/ranges_robust_against_proxy_iterators.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
    M libcxx/test/std/library/description/conventions/customization.point.object/niebloid.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/optional/optional.object/optional.object.observe/dereference.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const_rvalue.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const.compile.fail.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const_rvalue.pass.cpp
    R libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_rvalue.pass.cpp
    M libcxx/test/std/utilities/tuple/tuple.tuple/tuple.cnstr/PR31384.pass.cpp
    R libcxx/test/std/utilities/utility/mem.res/mem.res.monotonic.buffer/mem.res.monotonic.buffer.mem/allocate_in_geometric_progression.pass.cpp
    A libcxx/test/std/utilities/utility/mem.res/mem.res.monotonic.buffer/mem.res.monotonic.buffer.mem/allocate_mem.pass.cpp
    M libcxx/test/support/asan_testing.h
    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/ci/run-buildbot
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/libcxx/test/features/libcxx_macros.py
    M libcxx/utils/libcxx/test/features/localization.py
    M libcxx/utils/libcxx/test/params.py
    A libcxx/utils/parse-time-output
    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/Maintainers.md
    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 libunwind/include/libunwind.h
    M libunwind/include/mach-o/compact_unwind_encoding.h
    M libunwind/include/unwind_itanium.h
    M libunwind/src/FrameHeaderCache.hpp
    M libunwind/src/Registers.hpp
    M libunwind/src/UnwindCursor.hpp
    M libunwind/src/UnwindLevel1-gcc-ext.c
    M libunwind/src/UnwindLevel1.c
    M libunwind/src/libunwind.cpp
    M libunwind/src/libunwind_ext.h
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/InputFiles.cpp
    M lld/COFF/LTO.cpp
    M lld/COFF/MinGW.cpp
    M lld/COFF/SymbolTable.cpp
    M lld/COFF/Writer.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/Arch/LoongArch.cpp
    M lld/ELF/Arch/Mips.cpp
    M lld/ELF/Arch/PPC64.cpp
    M lld/ELF/Arch/RISCV.cpp
    M lld/ELF/Driver.cpp
    M lld/ELF/InputFiles.h
    M lld/ELF/InputSection.cpp
    M lld/ELF/LTO.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/MarkLive.cpp
    M lld/ELF/RelocScan.h
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    M lld/ELF/ScriptParser.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/ObjC.cpp
    M lld/MachO/SymbolTable.cpp
    M lld/include/lld/Common/BPSectionOrdererBase.inc
    A lld/test/ELF/dtlto/timetrace.test
    M lld/test/ELF/fill-trap.s
    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
    M lld/test/ELF/riscv-vendor-relocations.s
    R lld/test/ELF/verneed-as-needed-weak.s
    A lld/test/ELF/verneed-weak.s
    M lld/test/ELF/why-live.test
    A lld/test/wasm/debug-weak-unused.s
    A lld/test/wasm/merge-undefined-symbols.s
    R lld/test/wasm/pic-static.ll
    A lld/test/wasm/pic-static.s
    M lld/wasm/Driver.cpp
    M lld/wasm/InputFiles.cpp
    M lld/wasm/Relocations.cpp
    M lld/wasm/SymbolTable.cpp
    M lld/wasm/SyntheticSections.h
    M lld/wasm/Writer.cpp
    M lldb/bindings/interface/SBInstructionExtensions.i
    M lldb/bindings/python/python-wrapper.swig
    M lldb/docs/dil-expr-lang.ebnf
    M lldb/docs/use/mcp.md
    M lldb/include/lldb/API/SBDebugger.h
    M lldb/include/lldb/API/SBInstruction.h
    M lldb/include/lldb/API/SBStructuredData.h
    M lldb/include/lldb/API/SBValue.h
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/include/lldb/Core/ModuleList.h
    M lldb/include/lldb/Core/ModuleSpec.h
    M lldb/include/lldb/DataFormatters/TypeSynthetic.h
    M lldb/include/lldb/Host/FileSystem.h
    M lldb/include/lldb/Host/JSONTransport.h
    M lldb/include/lldb/Host/MemoryMonitor.h
    M lldb/include/lldb/Host/ProcessLaunchInfo.h
    M lldb/include/lldb/Host/windows/PseudoConsole.h
    M lldb/include/lldb/Interpreter/ScriptInterpreter.h
    M lldb/include/lldb/Symbol/ObjectFile.h
    M lldb/include/lldb/Symbol/SymbolFile.h
    M lldb/include/lldb/Symbol/SymbolFileOnDemand.h
    M lldb/include/lldb/Target/DynamicLoader.h
    M lldb/include/lldb/Target/ProcessStructReader.h
    M lldb/include/lldb/Target/StackFrameList.h
    M lldb/include/lldb/Target/Thread.h
    M lldb/include/lldb/Utility/DataExtractor.h
    M lldb/include/lldb/Utility/UserID.h
    M lldb/include/lldb/Utility/VirtualDataExtractor.h
    M lldb/include/lldb/ValueObject/DILLexer.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/packages/Python/lldbsuite/test/configuration.py
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/packages/Python/lldbsuite/test/dotest.py
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/lldbdap_testcase.py
    M lldb/source/API/CMakeLists.txt
    M lldb/source/API/SBInstruction.cpp
    M lldb/source/API/SBValue.cpp
    M lldb/source/Breakpoint/BreakpointLocation.cpp
    M lldb/source/Commands/CommandObjectApropos.cpp
    M lldb/source/Commands/CommandObjectMemory.cpp
    M lldb/source/Commands/CommandObjectProcess.cpp
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/CommandObjectType.cpp
    M lldb/source/Core/Address.cpp
    M lldb/source/Core/CoreProperties.td
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/Module.cpp
    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/Expression/UserExpression.cpp
    M lldb/source/Host/common/FileSystem.cpp
    M lldb/source/Host/common/MemoryMonitor.cpp
    M lldb/source/Host/macosx/objcxx/PosixSpawnResponsible.h
    M lldb/source/Host/windows/MainLoopWindows.cpp
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp
    M lldb/source/Host/windows/PseudoConsole.cpp
    M lldb/source/Interpreter/CommandInterpreter.cpp
    M lldb/source/Interpreter/Options.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.h
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangModulesDeclVendor.cpp
    M lldb/source/Plugins/Instruction/RISCV/EmulateInstructionRISCV.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
    M lldb/source/Plugins/ObjectContainer/BSD-Archive/ObjectContainerBSDArchive.cpp
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp
    M lldb/source/Plugins/ObjectFile/wasm/ObjectFileWasm.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/Platform/Windows/PlatformWindows.cpp
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.cpp
    M lldb/source/Plugins/Process/FreeBSD/NativeProcessFreeBSD.h
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_arm64.h
    M lldb/source/Plugins/Process/FreeBSD/NativeRegisterContextFreeBSD_x86_64.h
    M lldb/source/Plugins/Process/FreeBSDKernel/ProcessFreeBSDKernel.h
    M lldb/source/Plugins/Process/FreeBSDKernel/RegisterContextFreeBSDKernel_i386.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.h
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.cpp
    M lldb/source/Plugins/Process/elf-core/ProcessElfCore.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/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
    M lldb/source/Plugins/ScriptInterpreter/Python/SWIGPythonBridge.h
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.cpp
    M lldb/source/Plugins/SymbolFile/Breakpad/SymbolFileBreakpad.h
    M lldb/source/Plugins/SymbolFile/CTF/SymbolFileCTF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFFormValue.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Plugins/SymbolFile/JSON/SymbolFileJSON.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/ObjectFile.cpp
    M lldb/source/Symbol/SymbolFileOnDemand.cpp
    M lldb/source/Symbol/Symtab.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/source/Target/ModuleCache.cpp
    M lldb/source/Target/Platform.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/StackFrameList.cpp
    M lldb/source/Target/StackFrameRecognizer.cpp
    M lldb/source/Target/Statistics.cpp
    M lldb/source/Target/TargetList.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/source/Target/ThreadPlanShouldStopHere.cpp
    M lldb/source/Utility/DataExtractor.cpp
    M lldb/source/Utility/VirtualDataExtractor.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILLexer.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/source/ValueObject/ValueObject.cpp
    A lldb/test/API/commands/apropos/formatting/TestAproposFormatting.py
    M lldb/test/API/commands/expression/diagnostics/TestExprDiagnostics.py
    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/commands/help/TestHelp.py
    M lldb/test/API/commands/settings/TestSettings.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/ordering/TestDataFormatterStdOrdering.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libcxx-simulators/optional/TestDataFormatterLibcxxOptionalSimulator.py
    M lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py
    M lldb/test/API/functionalities/gdb_remote_client/TestXMLRegisterFlags.py
    M lldb/test/API/functionalities/memory-region/TestMemoryRegion.py
    M lldb/test/API/functionalities/plugins/command_plugin/TestPluginCommands.py
    M lldb/test/API/functionalities/postmortem/elf-core/TestLinuxCore.py
    A lldb/test/API/functionalities/postmortem/elf-core/linux-x86_64-no-exe.core
    M lldb/test/API/functionalities/process_save_core/TestProcessSaveCore.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/functionalities/stats_api/TestStatisticsAPI.py
    A lldb/test/API/functionalities/stats_api/minidump.yaml
    M lldb/test/API/functionalities/ubsan/basic/Makefile
    M lldb/test/API/functionalities/ubsan/basic/TestUbsanBasic.py
    M lldb/test/API/functionalities/ubsan/basic/main.c
    M lldb/test/API/lang/cpp/function-template-parameter-pack/TestFunctionTemplateParameterPack.py
    M lldb/test/API/lang/cpp/template-alias/TestTemplateAlias.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/python_api/file_handle/TestFileHandle.py
    M lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py
    M lldb/test/API/tools/lldb-dap/breakpoint-events/TestDAP_breakpointEvents.py
    M lldb/test/API/tools/lldb-dap/breakpoint/TestDAP_setExceptionBreakpoints.py
    M lldb/test/API/tools/lldb-dap/commands/TestDAP_commands.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/coreFile/TestDAP_coreFile.py
    M lldb/test/API/tools/lldb-dap/exception/TestDAP_exception.py
    M lldb/test/API/tools/lldb-dap/exception/cpp/TestDAP_exception_cpp.py
    M lldb/test/API/tools/lldb-dap/exception/objc/TestDAP_exception_objc.py
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/Makefile
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/TestDAP_runtime_instruments.py
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/categories
    A lldb/test/API/tools/lldb-dap/exception/runtime-instruments/main.c
    R lldb/test/API/tools/lldb-dap/launch/TestDAP_launch.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_args.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_basic.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_cwd.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_debuggerRoot.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_disableSTDIO.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_array.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_environment_with_object.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_failing_console.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_failing_launch_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_invalid_launch_commands_and_console.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_invalid_program.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_no_lldbinit_flag.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_disabled.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_shellExpandArguments_enabled.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_sourcePath.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stdio_redirection_and_console.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_stopOnEntry.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_terminate_commands.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_termination.py
    A lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_version.py
    M lldb/test/API/tools/lldb-dap/launch/io/TestDAP_launch_io.py
    M lldb/test/API/tools/lldb-dap/module-event/TestDAP_module_event.py
    M lldb/test/API/tools/lldb-dap/module/TestDAP_module.py
    M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart.py
    M lldb/test/API/tools/lldb-dap/restart/TestDAP_restart_console.py
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py
    M lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
    M lldb/test/API/tools/lldb-dap/terminated-event/TestDAP_terminatedEvent.py
    M lldb/test/CMakeLists.txt
    A lldb/test/Shell/Commands/command-memory-region.test
    A lldb/test/Shell/DAP/TestSTDINConsole.test
    A lldb/test/Shell/Expr/TestObjCIncompleteSuperclass.test
    M lldb/test/Shell/ScriptInterpreter/Python/io.test
    A lldb/test/Shell/SymbolFile/DWARF/Inputs/gnu-ref-strp-alt.yaml
    A lldb/test/Shell/SymbolFile/DWARF/gnu-ref-strp-alt.test
    A lldb/test/Shell/SymbolFile/NativePDB/invalid-inlinee-not-in-ipi.yaml
    M lldb/test/Shell/SymbolFile/NativePDB/lit.local.cfg
    M lldb/tools/lldb-dap/CMakeLists.txt
    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/EventHelper.h
    M lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
    R lldb/tools/lldb-dap/Handler/BreakpointLocationsHandler.cpp
    A lldb/tools/lldb-dap/Handler/BreakpointLocationsRequestHandler.cpp
    R lldb/tools/lldb-dap/Handler/CompletionsHandler.cpp
    A lldb/tools/lldb-dap/Handler/CompletionsRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/ExceptionInfoRequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.cpp
    M lldb/tools/lldb-dap/LLDBUtils.h
    M lldb/tools/lldb-dap/ProgressEvent.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.h
    M lldb/tools/lldb-dap/Protocol/ProtocolTypes.h
    A lldb/tools/lldb-dap/SBAPIExtras.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 lldb/unittests/ObjectFile/MachO/TestObjectFileMachO.cpp
    M lldb/unittests/Symbol/SymtabTest.cpp
    M lldb/unittests/Target/LocateModuleCallbackTest.cpp
    M lldb/unittests/Utility/VirtualDataExtractorTest.cpp
    M llvm/.clang-format
    M llvm/CMakeLists.txt
    M llvm/Maintainers.md
    M llvm/cmake/config-ix.cmake
    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/FileCheck.rst
    M llvm/docs/CommandGuide/llvm-cov.rst
    M llvm/docs/CommandGuide/llvm-dwarfdump.rst
    M llvm/docs/CommandGuide/llvm-objdump.rst
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    M llvm/docs/DeveloperPolicy.rst
    M llvm/docs/GettingInvolved.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/PostOrderIterator.h
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/ADT/STLForwardCompat.h
    M llvm/include/llvm/ADT/StringExtras.h
    M llvm/include/llvm/Analysis/CallGraphSCCPass.h
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/DominanceFrontierImpl.h
    M llvm/include/llvm/Analysis/IR2Vec.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/Analysis/ValueTracking.h
    M llvm/include/llvm/AsmParser/AsmParserContext.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/BinaryFormat/MachO.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CAS/BuiltinUnifiedCASDatabases.h
    A llvm/include/llvm/CAS/CASNodeSchema.h
    M llvm/include/llvm/CAS/MappedFileRegionArena.h
    A llvm/include/llvm/CAS/NamedValuesSchema.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
    A llvm/include/llvm/CAS/ValidationResult.h
    M llvm/include/llvm/CGData/CGDataPatchItem.h
    M llvm/include/llvm/CodeGen/AsmPrinter.h
    M llvm/include/llvm/CodeGen/BasicBlockSectionsProfileReader.h
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/CFIFixup.h
    M llvm/include/llvm/CodeGen/FastISel.h
    M llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
    M llvm/include/llvm/CodeGen/GlobalISel/GIMatchTableExecutorImpl.h
    M llvm/include/llvm/CodeGen/GlobalISel/GISelValueTracking.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/LiveIntervalUnion.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/LiveRegMatrix.h
    M llvm/include/llvm/CodeGen/LiveStacks.h
    M llvm/include/llvm/CodeGen/LiveVariables.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/MachinePipeliner.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/RegisterUsageInfo.h
    M llvm/include/llvm/CodeGen/ReplaceWithVeclib.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/TargetInstrInfo.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/CodeGen/TargetLoweringObjectFileImpl.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/DebugInfo/CodeView/LazyRandomTypeCollection.h
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/include/llvm/ExecutionEngine/Orc/ELFNixPlatform.h
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/ObjectFormats.h
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPConstants.h
    M llvm/include/llvm/IR/Argument.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    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/IntrinsicInst.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/IntrinsicsRISCV.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/include/llvm/IR/Metadata.h
    M llvm/include/llvm/IR/Module.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/include/llvm/IR/OptBisect.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/IR/ProfDataUtils.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/InitializePasses.h
    M llvm/include/llvm/LTO/LTO.h
    M llvm/include/llvm/MC/MCGOFFAttributes.h
    M llvm/include/llvm/MC/MCRegisterInfo.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/BranchProbability.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/SourceMgr.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/Target/Target.td
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.def
    M llvm/include/llvm/TargetParser/LoongArchTargetParser.h
    M llvm/include/llvm/TargetParser/TargetParser.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/LoopPeel.h
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/include/llvm/Transforms/Utils/PredicateInfo.h
    M llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h
    M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
    M llvm/lib/Analysis/CallGraphSCCPass.cpp
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Analysis/ConstraintSystem.cpp
    M llvm/lib/Analysis/Delinearization.cpp
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
    M llvm/lib/Analysis/IR2Vec.cpp
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/lib/Analysis/InlineCost.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LazyBranchProbabilityInfo.cpp
    M llvm/lib/Analysis/LazyValueInfo.cpp
    M llvm/lib/Analysis/Lint.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/MemoryBuiltins.cpp
    M llvm/lib/Analysis/ModuleSummaryAnalysis.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/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/Bitcode/Writer/ValueEnumerator.cpp
    M llvm/lib/CAS/ActionCaches.cpp
    M llvm/lib/CAS/BuiltinCAS.cpp
    M llvm/lib/CAS/BuiltinCAS.h
    M llvm/lib/CAS/BuiltinUnifiedCASDatabases.cpp
    A llvm/lib/CAS/CASNodeSchema.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
    A llvm/lib/CAS/NamedValuesSchema.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/CodeViewDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
    M llvm/lib/CodeGen/AssignmentTrackingAnalysis.cpp
    M llvm/lib/CodeGen/AtomicExpandPass.cpp
    M llvm/lib/CodeGen/BasicBlockMatchingAndInference.cpp
    M llvm/lib/CodeGen/BasicBlockPathCloning.cpp
    M llvm/lib/CodeGen/BasicBlockSections.cpp
    M llvm/lib/CodeGen/BranchFolding.cpp
    M llvm/lib/CodeGen/BranchRelaxation.cpp
    M llvm/lib/CodeGen/BreakFalseDeps.cpp
    M llvm/lib/CodeGen/CFGuardLongjmp.cpp
    M llvm/lib/CodeGen/CFIInstrInserter.cpp
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/ComplexDeinterleavingPass.cpp
    M llvm/lib/CodeGen/DeadMachineInstructionElim.cpp
    M llvm/lib/CodeGen/DwarfEHPrepare.cpp
    M llvm/lib/CodeGen/EHContGuardTargets.cpp
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/lib/CodeGen/ExpandIRInsts.cpp
    M llvm/lib/CodeGen/ExpandMemCmp.cpp
    M llvm/lib/CodeGen/ExpandPostRAPseudos.cpp
    M llvm/lib/CodeGen/ExpandReductions.cpp
    M llvm/lib/CodeGen/FEntryInserter.cpp
    M llvm/lib/CodeGen/FixupStatepointCallerSaved.cpp
    M llvm/lib/CodeGen/FuncletLayout.cpp
    M llvm/lib/CodeGen/GCEmptyBasicBlocks.cpp
    M llvm/lib/CodeGen/GCMetadata.cpp
    M llvm/lib/CodeGen/GCRootLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/CSEInfo.cpp
    M llvm/lib/CodeGen/GlobalISel/CallLowering.cpp
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    M llvm/lib/CodeGen/GlobalISel/GISelValueTracking.cpp
    M llvm/lib/CodeGen/GlobalISel/GlobalISel.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/LoadStoreOpt.cpp
    M llvm/lib/CodeGen/GlobalISel/Utils.cpp
    M llvm/lib/CodeGen/GlobalMerge.cpp
    M llvm/lib/CodeGen/HardwareLoops.cpp
    M llvm/lib/CodeGen/IfConversion.cpp
    M llvm/lib/CodeGen/ImplicitNullChecks.cpp
    M llvm/lib/CodeGen/IndirectBrExpandPass.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/InterleavedAccessPass.cpp
    M llvm/lib/CodeGen/InterleavedLoadCombinePass.cpp
    M llvm/lib/CodeGen/JMCInstrumenter.cpp
    M llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp
    M llvm/lib/CodeGen/LibcallLoweringInfo.cpp
    M llvm/lib/CodeGen/LiveDebugValues/LiveDebugValues.cpp
    M llvm/lib/CodeGen/LiveDebugValues/VarLocBasedImpl.cpp
    M llvm/lib/CodeGen/LiveDebugVariables.cpp
    M llvm/lib/CodeGen/LiveIntervalUnion.cpp
    M llvm/lib/CodeGen/LiveIntervals.cpp
    M llvm/lib/CodeGen/LiveRangeShrink.cpp
    M llvm/lib/CodeGen/LiveRegMatrix.cpp
    M llvm/lib/CodeGen/LiveVariables.cpp
    M llvm/lib/CodeGen/LocalStackSlotAllocation.cpp
    M llvm/lib/CodeGen/LowerEmuTLS.cpp
    M llvm/lib/CodeGen/MIR2Vec.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MLRegAllocEvictAdvisor.cpp
    M llvm/lib/CodeGen/MachineBlockFrequencyInfo.cpp
    M llvm/lib/CodeGen/MachineBlockHashInfo.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp
    M llvm/lib/CodeGen/MachineCFGPrinter.cpp
    M llvm/lib/CodeGen/MachineCSE.cpp
    M llvm/lib/CodeGen/MachineCombiner.cpp
    M llvm/lib/CodeGen/MachineCycleAnalysis.cpp
    M llvm/lib/CodeGen/MachineDominanceFrontier.cpp
    M llvm/lib/CodeGen/MachineDominators.cpp
    M llvm/lib/CodeGen/MachineFunctionSplitter.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineInstrBundle.cpp
    M llvm/lib/CodeGen/MachineLICM.cpp
    M llvm/lib/CodeGen/MachineLateInstrsCleanup.cpp
    M llvm/lib/CodeGen/MachineLoopInfo.cpp
    M llvm/lib/CodeGen/MachineModuleInfo.cpp
    M llvm/lib/CodeGen/MachineOptimizationRemarkEmitter.cpp
    M llvm/lib/CodeGen/MachineOutliner.cpp
    M llvm/lib/CodeGen/MachinePipeliner.cpp
    M llvm/lib/CodeGen/MachinePostDominators.cpp
    M llvm/lib/CodeGen/MachineRegionInfo.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/MachineSink.cpp
    M llvm/lib/CodeGen/MachineUniformityAnalysis.cpp
    M llvm/lib/CodeGen/MachineVerifier.cpp
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/CodeGen/OptimizePHIs.cpp
    M llvm/lib/CodeGen/PHIElimination.cpp
    M llvm/lib/CodeGen/PatchableFunction.cpp
    M llvm/lib/CodeGen/PeepholeOptimizer.cpp
    M llvm/lib/CodeGen/PreISelIntrinsicLowering.cpp
    M llvm/lib/CodeGen/ProcessImplicitDefs.cpp
    M llvm/lib/CodeGen/PrologEpilogInserter.cpp
    M llvm/lib/CodeGen/PseudoProbeInserter.cpp
    M llvm/lib/CodeGen/ReachingDefAnalysis.cpp
    M llvm/lib/CodeGen/RegAllocBase.cpp
    M llvm/lib/CodeGen/RegAllocBasic.h
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegAllocPBQP.cpp
    M llvm/lib/CodeGen/RegUsageInfoCollector.cpp
    M llvm/lib/CodeGen/RegUsageInfoPropagate.cpp
    M llvm/lib/CodeGen/RegisterCoalescer.cpp
    M llvm/lib/CodeGen/RegisterUsageInfo.cpp
    M llvm/lib/CodeGen/RemoveLoadsIntoFakeUses.cpp
    M llvm/lib/CodeGen/RemoveRedundantDebugValues.cpp
    M llvm/lib/CodeGen/RenameIndependentSubregs.cpp
    M llvm/lib/CodeGen/ReplaceWithVeclib.cpp
    M llvm/lib/CodeGen/ResetMachineFunctionPass.cpp
    M llvm/lib/CodeGen/SafeStack.cpp
    M llvm/lib/CodeGen/SanitizerBinaryMetadata.cpp
    M llvm/lib/CodeGen/SelectOptimize.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/InstrEmitter.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.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypesGeneric.cpp
    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/ShadowStackGCLowering.cpp
    M llvm/lib/CodeGen/ShrinkWrap.cpp
    M llvm/lib/CodeGen/SlotIndexes.cpp
    M llvm/lib/CodeGen/SplitKit.cpp
    M llvm/lib/CodeGen/StackColoring.cpp
    M llvm/lib/CodeGen/StackMapLivenessAnalysis.cpp
    M llvm/lib/CodeGen/StackProtector.cpp
    M llvm/lib/CodeGen/StackSlotColoring.cpp
    M llvm/lib/CodeGen/StaticDataAnnotator.cpp
    M llvm/lib/CodeGen/StaticDataSplitter.cpp
    M llvm/lib/CodeGen/TailDuplication.cpp
    M llvm/lib/CodeGen/TailDuplicator.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.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/CodeGen/WindowsSecureHotPatching.cpp
    M llvm/lib/CodeGen/XRayInstrumentation.cpp
    M llvm/lib/DTLTO/DTLTO.cpp
    M llvm/lib/DebugInfo/BTF/BTFParser.cpp
    M llvm/lib/DebugInfo/CodeView/LazyRandomTypeCollection.cpp
    M llvm/lib/DebugInfo/GSYM/DwarfTransformer.cpp
    M llvm/lib/DebugInfo/Symbolize/MarkupFilter.cpp
    M llvm/lib/ExecutionEngine/ExecutionEngine.cpp
    M llvm/lib/ExecutionEngine/Interpreter/Execution.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/COFFVCRuntimeSupport.cpp
    M llvm/lib/ExecutionEngine/Orc/Debugging/ELFDebugObjectPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/ELFNixPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/IndirectionUtils.cpp
    M llvm/lib/ExecutionEngine/Orc/MachO.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/ObjectFormats.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/ExecutorResolver.cpp
    M llvm/lib/Extensions/Extensions.cpp
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/IR/ConstantFold.cpp
    M llvm/lib/IR/ConstantRangeList.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/ConstantsContext.h
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/IRBuilder.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/Intrinsics.cpp
    M llvm/lib/IR/Metadata.cpp
    M llvm/lib/IR/Module.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/IR/OptBisect.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/LTO/ThinLTOCodeGenerator.cpp
    M llvm/lib/Linker/IRMover.cpp
    M llvm/lib/Linker/LinkModules.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCAssembler.cpp
    M llvm/lib/MC/MCDwarf.cpp
    M llvm/lib/MC/MCObjectStreamer.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWin64EH.cpp
    M llvm/lib/MC/WasmObjectWriter.cpp
    M llvm/lib/MCA/Stages/InOrderIssueStage.cpp
    M llvm/lib/ObjCopy/DXContainer/DXContainerObjcopy.cpp
    M llvm/lib/ObjCopy/ELF/ELFObject.cpp
    M llvm/lib/Object/ELFObjectFile.cpp
    M llvm/lib/Object/GOFFObjectFile.cpp
    M llvm/lib/Object/IRSymtab.cpp
    M llvm/lib/Object/MachOObjectFile.cpp
    M llvm/lib/Object/OffloadBinary.cpp
    M llvm/lib/Object/OffloadBundle.cpp
    M llvm/lib/Object/WasmObjectFile.cpp
    M llvm/lib/ObjectYAML/CodeViewYAMLSymbols.cpp
    M llvm/lib/ObjectYAML/CodeViewYAMLTypes.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMappingWriter.cpp
    M llvm/lib/ProfileData/InstrProf.cpp
    M llvm/lib/SandboxIR/Context.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/lib/Support/APInt.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/KnownFPClass.cpp
    M llvm/lib/Support/LSP/Protocol.cpp
    M llvm/lib/Support/Mustache.cpp
    M llvm/lib/Support/Parallel.cpp
    M llvm/lib/Support/Path.cpp
    M llvm/lib/Support/Regex.cpp
    M llvm/lib/Support/ThreadPool.cpp
    M llvm/lib/Support/Threading.cpp
    M llvm/lib/Support/Unix/Threading.inc
    M llvm/lib/Support/Windows/Process.inc
    M llvm/lib/Support/Windows/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/AArch64ConditionOptimizer.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/AArch64MIPeepholeOpt.cpp
    M llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64PrologueEpilogue.cpp
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/lib/Target/AArch64/AArch64SIMDInstrOpt.cpp
    A llvm/lib/Target/AArch64/AArch64SRLTDefineSuperRegs.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedA57.td
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/lib/Target/AArch64/AArch64StackTagging.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/AArch64TargetMachine.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/CMakeLists.txt
    M llvm/lib/Target/AArch64/GISel/AArch64CallLowering.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64GlobalISelUtils.h
    M llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64O0PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64PreLegalizerCombiner.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AArch64/MachineSMEABIPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUAsmPrinter.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUBarrierLatency.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUCallingConv.td
    M llvm/lib/Target/AMDGPU/AMDGPUFeatures.td
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMachineFunction.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPrintfRuntimeBinding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeHelper.h
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSplitModule.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSubtarget.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/AMDGPUUniformIntrinsicCombine.cpp
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    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/GCNProcessors.td
    M llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
    M llvm/lib/Target/AMDGPU/GCNRegPressure.h
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/lib/Target/AMDGPU/GCNSubtarget.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/lib/Target/AMDGPU/R600ControlFlowFinalizer.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.cpp
    M llvm/lib/Target/AMDGPU/R600ISelLowering.h
    M llvm/lib/Target/AMDGPU/R600Instructions.td
    M llvm/lib/Target/AMDGPU/R600MachineCFGStructurizer.cpp
    M llvm/lib/Target/AMDGPU/R600Processors.td
    M llvm/lib/Target/AMDGPU/R600Subtarget.h
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.cpp
    M llvm/lib/Target/AMDGPU/R600TargetTransformInfo.h
    M llvm/lib/Target/AMDGPU/SIDefines.h
    M llvm/lib/Target/AMDGPU/SIFixSGPRCopies.cpp
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIFormMemoryClauses.cpp
    M llvm/lib/Target/AMDGPU/SIFrameLowering.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/SIInstrInfo.td
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SILateBranchLowering.cpp
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
    M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
    M llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeVGPRLiveRange.cpp
    M llvm/lib/Target/AMDGPU/SIPeepholeSDWA.cpp
    M llvm/lib/Target/AMDGPU/SIPreAllocateWWMRegs.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/SIShrinkInstructions.cpp
    M llvm/lib/Target/AMDGPU/SIWholeQuadMode.cpp
    M llvm/lib/Target/AMDGPU/SMInstructions.td
    M llvm/lib/Target/AMDGPU/SOPInstructions.td
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUAsmUtils.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    M llvm/lib/Target/ARC/ARCRegisterInfo.cpp
    M llvm/lib/Target/ARM/A15SDOptimizer.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.h
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.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/ARMFrameLowering.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/Thumb2InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb2SizeReduction.cpp
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.td
    M llvm/lib/Target/BPF/BPFISelLowering.cpp
    M llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
    M llvm/lib/Target/BPF/BTFDebug.cpp
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpBuilder.cpp
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
    M llvm/lib/Target/DirectX/DirectXTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    M llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp
    M llvm/lib/Target/Hexagon/HexagonEarlyIfConv.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
    M llvm/lib/Target/Hexagon/HexagonGenMemAbsolute.cpp
    M llvm/lib/Target/Hexagon/HexagonGenPredicate.cpp
    M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonQFPOptimizer.cpp
    M llvm/lib/Target/Hexagon/HexagonSelectionDAGInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonSplitDouble.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonTargetTransformInfo.h
    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/M68kAsmPrinter.cpp
    M llvm/lib/Target/M68k/M68kAsmPrinter.h
    M llvm/lib/Target/M68k/M68kCollapseMOVEMPass.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/AsmParser/MipsAsmParser.cpp
    M llvm/lib/Target/Mips/MCTargetDesc/MipsABIFlagsSection.h
    M llvm/lib/Target/Mips/MCTargetDesc/MipsTargetStreamer.cpp
    M llvm/lib/Target/Mips/Mips.td
    M llvm/lib/Target/Mips/Mips16InstrInfo.cpp
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    M llvm/lib/Target/Mips/MipsAsmPrinter.cpp
    M llvm/lib/Target/Mips/MipsAsmPrinter.h
    M llvm/lib/Target/Mips/MipsDelaySlotFiller.cpp
    M llvm/lib/Target/Mips/MipsFastISel.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/Mips/MipsInstrInfo.td
    M llvm/lib/Target/Mips/MipsSEFrameLowering.cpp
    M llvm/lib/Target/Mips/MipsSEISelDAGToDAG.cpp
    M llvm/lib/Target/Mips/MipsSEISelLowering.cpp
    M llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
    M llvm/lib/Target/Mips/MipsSubtarget.cpp
    M llvm/lib/Target/Mips/MipsSubtarget.h
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAssignValidGlobalNames.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/NVPTXTargetTransformInfo.h
    M llvm/lib/Target/NVPTX/NVPTXUtilities.h
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCCTRLoops.cpp
    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/PPCInstrAltivec.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCLoopInstrFormPrep.cpp
    M llvm/lib/Target/PowerPC/PPCMIPeephole.cpp
    M llvm/lib/Target/PowerPC/PPCReduceCRLogicals.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
    M llvm/lib/Target/PowerPC/PPCTLSDynamicCall.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
    M llvm/lib/Target/PowerPC/PPCTargetTransformInfo.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/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVLegalizerInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCAsmInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCExpr.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMachObjectWriter.cpp
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    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
    M llvm/lib/Target/RISCV/RISCVInstrFormatsC.td
    M llvm/lib/Target/RISCV/RISCVInstrFormatsV.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.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoC.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/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.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/RISCVInstrInfoXMips.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXSfmm.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqccmp.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6-beta.1

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/be02df1afc00...0893b70ecfc4

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