[all-commits] [llvm/llvm-project] 8066cc: [clang][builtins][modules] Add arm_bf16.h to the b...

Julius Alexandre via All-commits all-commits at lists.llvm.org
Wed Feb 11 16:41:44 PST 2026


  Branch: refs/heads/users/wizardengineer/ct-select-core
  Home:   https://github.com/llvm/llvm-project
  Commit: 8066cc9fc466ebbb7561ec854035d09f543885d1
      https://github.com/llvm/llvm-project/commit/8066cc9fc466ebbb7561ec854035d09f543885d1
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M clang/lib/Headers/module.modulemap

  Log Message:
  -----------
  [clang][builtins][modules] Add arm_bf16.h to the builtin module map (#180845)


  Commit: 26add8a27277f1495ef705d323fdee12975ab950
      https://github.com/llvm/llvm-project/commit/26add8a27277f1495ef705d323fdee12975ab950
  Author: zGoldthorpe <Zach.Goldthorpe at amd.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.bf.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/saddo.ll
    M llvm/test/CodeGen/AMDGPU/saddsat.ll
    A llvm/test/CodeGen/AMDGPU/setcc-select.ll
    M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
    M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll

  Log Message:
  -----------
  [AMDGPU][ISel] `setcc` peephole for comparisons with upper 32 bits of a 64-bit register pair (#177662)

This optimisation is motivated by [this minimal
example](https://godbolt.org/z/9o83GvGsM).

Particularly, if `mask` is a 64-bit integer, a select
```cpp
auto out = ((mask >> 32) != 0) ? a : b;
```
converts the null-check on the higher 32-bits of `mask` into a
`v_cmp_lt_u64` with the integer `1 << 32` stored in a pair of VGPRs
(effectively wasting two VGPRs).

More generally, if a 64-bit integer (whose lower 32 bits are known to be
irrelevant) is compared with a 64-bit constant, two VGPRs are wasted to
construct this constant.

This patch modifies ISel to take advantage of how 64-bit values are
stored in pairs of VGPRs (or SGPRs), and truncates the 64-bit constant
to its upper 32-bit constant where possible.

Alive2 proof for analogous middle-end transformation:
https://alive2.llvm.org/ce/z/zizKms


  Commit: d518d495315621bc751927069dbf609866f98b90
      https://github.com/llvm/llvm-project/commit/d518d495315621bc751927069dbf609866f98b90
  Author: Vy Nguyen <vyng at google.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M lldb/source/Target/Process.cpp

  Log Message:
  -----------
  [LLDB]Move clean up to dtor (#181010)

I attempted to cleanup the raw ptr in pr/180996. But the cleanup should
have been done in the dtor, not `StopPrivateStateThread` so moving it
there.


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

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp

  Log Message:
  -----------
  [NFC] [MemoryTagging] pass AllocaInfo to isStandardLifetime (#180311)


  Commit: 0215f6b6cf810d9ab6d02fc7bbec5c26ad4701ff
      https://github.com/llvm/llvm-project/commit/0215f6b6cf810d9ab6d02fc7bbec5c26ad4701ff
  Author: Andrei Elovikov <andrei.elovikov at sifive.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/DominanceFrontierImpl.h
    M llvm/include/llvm/CodeGen/MachineDominanceFrontier.h
    M llvm/lib/Analysis/DominanceFrontier.cpp
    M llvm/lib/CodeGen/MachineDominanceFrontier.cpp
    M llvm/unittests/Transforms/Vectorize/CMakeLists.txt
    A llvm/unittests/Transforms/Vectorize/VPPostDomFrontierTest.cpp

  Log Message:
  -----------
  [DominanceFrontier] Support post-dominators on graphs with single root (#179336)

I plan to use that to optimize mask creation in VPlan predicator by
`or`ing edge masks from the post-dominance frontier instead of all
predecessors in a subsequent patch. Note that it would require to use
the same unmodified post-dom tree for *all* the basic blocks in a VPlan
that is already limited to a particular loopnest so the algorithmic
complexity concerns behind the "deprecation" notice in the beggining of
`DominanceFrontier.h` (and also discussion in the
https://discourse.llvm.org/t/dominance-frontiers/21755 thread) don't
apply for my use case (at least to the best of my understanding).

The change here is to properly use graph-traits for children traversal
plus inline `ForwardDominanceFrontierBase` into `DominanceFrontierBase` now 
that it's used for post-dom-frontier.

Since the only planned use-case is in the vectorizer, I'm adding a
VPlan-base unittest along with this change.

Support for multiple root nodes via using virtual root node to seed the
worklist is left to a subsequent PR.


  Commit: d3afa171ee236dfef4b7cd4b4dd0b0fb165a48cc
      https://github.com/llvm/llvm-project/commit/d3afa171ee236dfef4b7cd4b4dd0b0fb165a48cc
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll

  Log Message:
  -----------
  [LV] Don't scalarize loads that need predication in legacy CM.

The legacy cost model tries to scalarize loads that are used as
pointers. Skip if the load would need predicating when scalarized,
because that would incur very high costs, see useEmulatedMaskMemRefHack.

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


  Commit: 612ddd8b6c671d5e4305c2dfaee8106945927575
      https://github.com/llvm/llvm-project/commit/612ddd8b6c671d5e4305c2dfaee8106945927575
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0215f6b6cf81


  Commit: 1919b3b0474583e703d9545d536caf72c05b4ad4
      https://github.com/llvm/llvm-project/commit/1919b3b0474583e703d9545d536caf72c05b4ad4
  Author: Dmitry Sidorov <Dmitry.Sidorov at amd.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    A llvm/test/CodeGen/SPIRV/single-element-vector.ll

  Log Message:
  -----------
  [SPIRV] Scalarize single-element vectors in type creation (#180735)

SPIR-V requires vectors to have at least 2 components. So treat <1 x T>
as T.

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


  Commit: 0deb1b6e05228b068fb54ca687e0c92a190351d1
      https://github.com/llvm/llvm-project/commit/0deb1b6e05228b068fb54ca687e0c92a190351d1
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

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

  Log Message:
  -----------
  [Offload] Try to load Level Zero loader with version suffix (#180042)

The default Level Zero loader `libze_loader.so` may not be available on
systems that don't have Level Zero development package. Level Zero
loaders with major version suffix are searched in that case.


  Commit: da6e3010365aa7af629ad61999b527012dbd8fb3
      https://github.com/llvm/llvm-project/commit/da6e3010365aa7af629ad61999b527012dbd8fb3
  Author: John Harrison <harjohn at google.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M lldb/tools/lldb-dap/EventHelper.cpp

  Log Message:
  -----------
  [lldb-dap] Adjusting multi-stopped event order. (#181001)

When multiple stopped events are detected we should send the
`"allThreadsStopped":true` last.

Currently, if there are multiple stopped threads and we attempt to step
around the 'allThreadsStopped' ends up with multiple stops highlighted
in the UI.

Reporting the focused thread last fixes this while still correctly
updating the thread state of all stopped threads.

This fixes an issue reported in
https://github.com/llvm/llvm-project/pull/176273#discussion_r2775979486


  Commit: fc648683cd751d66ead63e84cab828b6a92de7d7
      https://github.com/llvm/llvm-project/commit/fc648683cd751d66ead63e84cab828b6a92de7d7
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-loads-non-full-reg.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias_external_insert_shuffled.ll

  Log Message:
  -----------
  [SLP]Add external uses estimations into tree throttling

Added basic estimations for the external uses, when calculating the cost
of the non-profitable trees. Excluding stores/insertelement, as thay are
very good candidates for the vectorization. Also, tuned
buildvector/gather cost with minimum bitwidth analysis data.

Reviewers: hiraditya, RKSimon

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


  Commit: 524ae2f3477e5a2307abf404976630609f2ecd39
      https://github.com/llvm/llvm-project/commit/524ae2f3477e5a2307abf404976630609f2ecd39
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

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

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

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

---------

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


  Commit: 5710e418c335c99f1d1ea619a4622837553b53d5
      https://github.com/llvm/llvm-project/commit/5710e418c335c99f1d1ea619a4622837553b53d5
  Author: Ben Dunbobbin <Ben.Dunbobbin at sony.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    A cross-project-tests/dtlto/path.test
    M cross-project-tests/lit.site.cfg.py.in
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/lib/DTLTO/DTLTO.cpp

  Log Message:
  -----------
  [DTLTO][Windows] Expand short 8.3 form paths in ThinLTO module IDs (#178303)

Windows supports short 8.3 form filenames (e.g. `compile_commands.json`
-> `COMPIL~1.JSO`) for legacy reasons. See:
https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#short-vs-long-names.

Short 8.3 form paths are undesirable in distributed compilation
scenarios because they are local mappings tied to a specific directory
layout on a specific machine. As a result, they can break or defeat
sandboxing and path-based isolation mechanisms used by distributed build
systems.

We have observed such failures with DTLTO even in simple scenarios. For
example, on Windows, running:

```
clang.exe hello.c -flto=thin -fuse-ld=lld -fthinlto-distributor=fastbuild.exe -###
```

on my development machine reveals a short 8.3 form path being passed to
LLD (output paraphrased):

```
ld.lld -o a.out -plugin-opt=thinlto --thinlto-distributor=fastbuild.exe \
    --thinlto-remote-compiler=clang.exe C:\Users\DUNBOB~1\AppData\Local\Temp\hello-380d65.o
```

This behavior occurs because, on Windows, the system temporary directory
is commonly derived from the `TMP`/`TEMP` environment variables. For
historical compatibility reasons, these variables are often set to short
8.3 form paths, particularly on systems where user names exceed eight
characters.

Whilst it's possible for users to work around these issues, in practice,
especially in automated and CI environments, users often have limited
control over their environment.

DTLTO generally tries to avoid embedding distribution-specific logic in
the LLVM source tree, and this principle also applies to path
normalization. However, on Windows, such short 8.3 form paths are
undesirable for any distribution system. This normalization also cannot
be delegated to distributors, as the ThinLTO module ID must be finalized
early during LTO and cannot be modified later.

Given this, normalizing away short 8.3 paths on Windows is a pragmatic,
targeted improvement, even though path normalization is not something a
toolchain would typically perform in the general case.

SIE internal tracker: TOOLCHAIN-19185


  Commit: 1268e7630d3072c990d6d1cd9f84ef8c7041d0fa
      https://github.com/llvm/llvm-project/commit/1268e7630d3072c990d6d1cd9f84ef8c7041d0fa
  Author: Usama Hameed <u_hameed at apple.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M lldb/include/lldb/Symbol/Variable.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Symbol/Variable.cpp

  Log Message:
  -----------
  [LLDB][NFCI] Teach LLDB to read the DW_AT_LLVM_tag_offset attribute for variables (#181011)

LLVM added support for emitting the tagging offset of a variable for
hwasan/memtag-stack using the DW_AT_LLVM_tag_offset attribute in
dabd262. This patch teaches LLDB to read this attribute.


  Commit: 59238f6d7668c8e3fb0ac79f6c48d8ec26e83d1c
      https://github.com/llvm/llvm-project/commit/59238f6d7668c8e3fb0ac79f6c48d8ec26e83d1c
  Author: Lance Wang <lancewang at google.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

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

  Log Message:
  -----------
  [mlir] Fix #180988: Add GPUDialect and DataLayoutInterfaces to OpenACC related dependencies (#181027)


  Commit: 5c114d80f88ef418b5f3ba3c919d300e21c4e677
      https://github.com/llvm/llvm-project/commit/5c114d80f88ef418b5f3ba3c919d300e21c4e677
  Author: Dunbobbin <Ben.Dunbobbin at sony.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M cross-project-tests/dtlto/path.test

  Log Message:
  -----------
  [TEST][FIX] Fix typo in tool name: 'llvm-ar'


  Commit: a816f922fa73828b24008a8cdd0a28448eed68ef
      https://github.com/llvm/llvm-project/commit/a816f922fa73828b24008a8cdd0a28448eed68ef
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/common.h
    M compiler-rt/lib/scudo/standalone/include/scudo/interface.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc

  Log Message:
  -----------
  [scudo] Add new fast purge option. (#175266)

This adds a new option to do a faster of a purge.

When doing a release to OS due to a purge call, if another thread is
also doing a release, the call can be blocked while that operation
concludes. In some cases, code wants a fast version that releases as
fast as possible and the call will not block.

For example, on Android, when destroying a Bitmap a purge occurs to save
memory. But this can cause some jank if the purge takes too long.

In the future, I envision that this option will also do a calculation to
stop purging after some cutoff value to avoid being blocked in this call
for too long.


  Commit: c4f74a19940cbc551cca15a8b4ed0cb55785c297
      https://github.com/llvm/llvm-project/commit/c4f74a19940cbc551cca15a8b4ed0cb55785c297
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-02-12 (Thu, 12 Feb 2026)

  Changed paths:
    M lldb/source/Host/windows/PythonPathSetup/CMakeLists.txt

  Log Message:
  -----------
  [lldb][windows] fix link issue when building with dylibs (#180976)

Fix a link issue which was introduced by
https://github.com/llvm/llvm-project/pull/179306 when building with
dylibs (with MinGW).

LLVMSupport is not needed by `PythonPathSetup`. It's safe to remove it.


  Commit: e22db5cf61652dcde73f3f93dff1ee753dca8e15
      https://github.com/llvm/llvm-project/commit/e22db5cf61652dcde73f3f93dff1ee753dca8e15
  Author: Sergei Lebedev <185856+superbobry at users.noreply.github.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    A mlir/lib/Bindings/Python/stubgen_runner.py
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    R utils/bazel/llvm-project-overlay/mlir/stubgen_runner.py

  Log Message:
  -----------
  [MLIR] [Bazel] Moved stubgen_runner.py out of llvm-project-overlay (#181029)

It was checked into the overlay by accident.


  Commit: 0991d7b8fd01546aaf537a6238227100570f8236
      https://github.com/llvm/llvm-project/commit/0991d7b8fd01546aaf537a6238227100570f8236
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-02-12 (Thu, 12 Feb 2026)

  Changed paths:
    M libunwind/src/Unwind-seh.cpp

  Log Message:
  -----------
  [libunwind] Fix building with EXCEPTION_DISPOSITION as enum (#180513)

On Windows, libunwind is normally only built in mingw mode; it's not
relevant for MSVC targets. (Attempting to build it is entirely blocked
in CMake, see [1]).

In mingw headers, the type EXCEPTION_DISPOSITION is defined as an int
while it is an enum in the MSVC vcruntime headers.

However, in addition to the canonical enum members, we also use a value
which has no assigned enum member. In older mingw-w64 headers, there was
a define for this value, 4, with the name ExceptionExecuteHandler, but
that was removed in [2]. The libunwind code reference this value just by
the literal value 4, with a comment referencing it as
ExceptionExecuteHandler.

This extra enum value isn't passed to the outside Microsoft runtime, but
is only used to pass values from one part of libunwind to another; this
handling is necessary for the forced_unwind{1-3}.pass.cpp tests to
succeed.

If the mingw-w64 headers would define EXCEPTION_DISPOSITION as an enum,
just like the MSVC vcruntime headers, then we'd run into build errors
and warnings like this:

    llvm-project/libunwind/src/Unwind-seh.cpp:166:14: error: cannot initialize return object of type 'EXCEPTION_DISPOSITION' (aka 'enum _EXCEPTION_DISPOSITION') with an rvalue of type 'int'
          166 |       return 4 /* ExceptionExecuteHandler in mingw */;
              |              ^
    llvm-project/libunwind/src/Unwind-seh.cpp:185:14: error: cannot initialize return object of type 'EXCEPTION_DISPOSITION' (aka 'enum _EXCEPTION_DISPOSITION') with an rvalue of type 'int'
          185 |       return 4 /* ExceptionExecuteHandler in mingw */;
              |              ^
    llvm-project/libunwind/src/Unwind-seh.cpp:272:8: warning: case value not in enumerated type 'EXCEPTION_DISPOSITION' (aka 'enum _EXCEPTION_DISPOSITION') [-Wswitch]
          272 |   case 4 /*ExceptionExecuteHandler*/:
              |        ^

Fix these cases by adding explicit casts between EXCEPTION_DISPOSITION
and int.

A (partial) similar change was proposed in [3], but the author never
followed up on the discussion, and the PR was later closed.

[1] b0b546d44777eb1fa25995384876bd14a006a929
[2] https://github.com/mingw-w64/mingw-w64/commit/2de6703961c0d519046b841f7b392a040e1e5b55
[3] https://github.com/llvm/llvm-project/pull/159293


  Commit: 9f85fa2a529e9246f2cf16b092c68d9a2243d53a
      https://github.com/llvm/llvm-project/commit/9f85fa2a529e9246f2cf16b092c68d9a2243d53a
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libflang_rt.runtime.a
    A clang/test/Driver/offload.f90

  Log Message:
  -----------
  [Flang] Fix finding the Flang runtime for the GPU (#180971)

Summary:
We were looking for `flang_rt.builtins` instead of `flang_rt.runtime`.
Also adds a test so we know that it actually works.


  Commit: 39f2ce368593e05dfc7411a65cf6073dcea4da64
      https://github.com/llvm/llvm-project/commit/39f2ce368593e05dfc7411a65cf6073dcea4da64
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M libc/docs/configure.rst
    M libc/shared/rpc.h
    M libc/shared/rpc_dispatch.h
    M libc/shared/rpc_util.h

  Log Message:
  -----------
  [libc] Cleanup RPC helpers and comments

Summary:
Mostly NFC, replaced some inconsistent comments and replaces `class`
with `typename` to be consistent. Also fix incomplete type detection I
forgot to merge in the RPC helper PR.


  Commit: d4c7d5be340d1eb78b55bd86b6c041d123cba1b1
      https://github.com/llvm/llvm-project/commit/d4c7d5be340d1eb78b55bd86b6c041d123cba1b1
  Author: woruyu <1214539920 at qq.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c

  Log Message:
  -----------
  [CIR] X86 vector masked load builtins (#169464)

Add a new CIR masked load operation and use it to handle X86 masked load builtins.

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


  Commit: 9a496ddca3a23101d27531345901c42366d2ed45
      https://github.com/llvm/llvm-project/commit/9a496ddca3a23101d27531345901c42366d2ed45
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rv64p.ll

  Log Message:
  -----------
  [RISC] Rename the P extensions srx/slx tests and add fshl/fshr intrinsic tests. NFC (#180984)

I plan to change to the i64 shift lowering on RV32 to use nsrl/nsra
instead of srx. Only fshr will use srx.

We now have shift tests with constant shift amount < XLEN and >= XLEN,
and non-constant shift amount that is fully unknown, known < XLEN, and
known >= XLEN

Assisted-by: claude


  Commit: 716bd041fb1f244daad8860d8c613c9746a1e9b3
      https://github.com/llvm/llvm-project/commit/716bd041fb1f244daad8860d8c613c9746a1e9b3
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    A clang/test/CIR/CodeGen/builtins-x86.c
    A clang/test/CIR/CodeGenBuiltins/X86/rd-builtins.c

  Log Message:
  -----------
  [CIR]Upstream generic intrinsic emission path (#179098)

This PR upstreams the generic intrinsic emission path and tests it for
the rdpmc builtin. The incubator has llvm_unreachable("NYI") when the
intrinsic return type doesn't match. This PR adds the type coercion to
handle that case.


  Commit: b0dce9ef48b770d7223f300c7bb32b473f42d7dd
      https://github.com/llvm/llvm-project/commit/b0dce9ef48b770d7223f300c7bb32b473f42d7dd
  Author: Fedor Sergeev <fedor.v.sergeev at gmail.com>
  Date:   2026-02-12 (Thu, 12 Feb 2026)

  Changed paths:
    M llvm/include/llvm/ADT/SmallSet.h
    M llvm/unittests/ADT/SmallSetTest.cpp

  Log Message:
  -----------
  [ADT] use correct iterator_facade_base for SmallSetIterator (#180967)

SmallSetIterator is inherently constant. Now it is properly expressed
through passing const to PointerT/ReferenceT parameters of its base
class. This way wrappers like make_filter_range do not try to treat
SmallSetIterator as non-constant.

Fixes #179139


  Commit: 6503bdce13f48f62ab3dff235b3725b21c786f14
      https://github.com/llvm/llvm-project/commit/6503bdce13f48f62ab3dff235b3725b21c786f14
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/include/llvm/Support/JSON.h

  Log Message:
  -----------
  [Support][NFC] Use direct initialization for JSON deserialization result (#181034)

The previous initialization forces the struct to have non explicit
constructor


  Commit: 31f31dd9d0460834f2ae67247d3886fec4931d6d
      https://github.com/llvm/llvm-project/commit/31f31dd9d0460834f2ae67247d3886fec4931d6d
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M .github/workflows/issue-subscriber.yml
    M .github/workflows/new-issues.yml
    M .github/workflows/new-prs.yml
    M .github/workflows/pr-subscriber.yml
    M .github/workflows/release-asset-audit.yml

  Log Message:
  -----------
  workflows: Use main-branch-only environment when using ISSUE_SUBSCRIBER_TOKEN (#179990)

This way we can prevent the secret from being used in user branches.


  Commit: 79640967dd75739c097a928663fbcf726985d65e
      https://github.com/llvm/llvm-project/commit/79640967dd75739c097a928663fbcf726985d65e
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/test/Semantics/OpenMP/compiler-directive.f90
    M flang/test/Semantics/ignore_tkr01.f90

  Log Message:
  -----------
  [flang] Downgrade error to warning for IGNORE_TKR case (#180994)

The IGNORE_TKR directive has meaning only in the specification part of a
subroutine or function subprogram or interface. Presently, it is an
error when the directive appears elsewhere.

At user request, this patch softens the error to a warning for when this
directive appears in a program unit other than a subroutine or function,
and when it appears in a subroutine or function subprogram outside the
specification part of its top scope.


  Commit: dc2fc9e10bd6d8d93d91f18a60e6cd7d24ffadb9
      https://github.com/llvm/llvm-project/commit/dc2fc9e10bd6d8d93d91f18a60e6cd7d24ffadb9
  Author: Shunsuke Watanabe <watanabe.shu-06 at fujitsu.com>
  Date:   2026-02-12 (Thu, 12 Feb 2026)

  Changed paths:
    M clang/include/clang/Options/Options.td
    M flang/docs/FlangDriver.md

  Log Message:
  -----------
  [flang][docs] Update the `-Ofast` description in `FlangDriver.md` (#180138)

After #170505, `-fno-protect-parens` is now required for flang to behave
the same as `-Ofast`. This patch adds that information to the
description of `-Ofast` in `FlangDriver.md`.


  Commit: 6ffbb320d7578f0bed137a75e6d50ca0eb1e5ab4
      https://github.com/llvm/llvm-project/commit/6ffbb320d7578f0bed137a75e6d50ca0eb1e5ab4
  Author: cmtice <cmtice at google.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

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

  Log Message:
  -----------
  [LLDB] Add type casting to DIL, part 3 of 3 (#175061)

This PR updates type parsing in DIL to recognize user-defined types
(classes, namespaces, etc.), and allows this to be used in type casting.


  Commit: 0a966ff4e20396206c2f2e054961c2995dcbd7d4
      https://github.com/llvm/llvm-project/commit/0a966ff4e20396206c2f2e054961c2995dcbd7d4
  Author: Syadus Sefat <42645939+mssefat at users.noreply.github.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll

  Log Message:
  -----------
  [AMDGPU][NFC] Fix test by removing debug flag in llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll (#181044)

This patch is a NFC that removes debug flag from the test
llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll


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

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

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

To get the buildbot back to green. We have not started working on
LowerMatrixIntrinsic tests yet.


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

  Changed paths:
    M libcxx/utils/ci/lnt/run-benchmarks

  Log Message:
  -----------
  [libc++] Improve the logging story in run-benchmarks

This allows diagnosing issues when a command fails.


  Commit: d6656d04299479abe7d9a5e0a60fdce306aedfc6
      https://github.com/llvm/llvm-project/commit/d6656d04299479abe7d9a5e0a60fdce306aedfc6
  Author: Julius Alexandre <juliuswoosebert at gmail.com>
  Date:   2026-02-11 (Wed, 11 Feb 2026)

  Changed paths:
    M .github/workflows/issue-subscriber.yml
    M .github/workflows/new-issues.yml
    M .github/workflows/new-prs.yml
    M .github/workflows/pr-subscriber.yml
    M .github/workflows/release-asset-audit.yml
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/Options/Options.td
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Headers/module.modulemap
    A clang/test/CIR/CodeGen/builtins-x86.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/rd-builtins.c
    A clang/test/Driver/Inputs/resource_dir_with_per_target_subdir/lib/amdgcn-amd-amdhsa/libflang_rt.runtime.a
    A clang/test/Driver/offload.f90
    M compiler-rt/lib/scudo/standalone/common.h
    M compiler-rt/lib/scudo/standalone/include/scudo/interface.h
    M compiler-rt/lib/scudo/standalone/primary32.h
    M compiler-rt/lib/scudo/standalone/primary64.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/wrappers_c.inc
    A cross-project-tests/dtlto/path.test
    M cross-project-tests/lit.site.cfg.py.in
    M flang/docs/FlangDriver.md
    M flang/include/flang/Support/Fortran-features.h
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Support/Fortran-features.cpp
    M flang/test/Semantics/OpenMP/compiler-directive.f90
    M flang/test/Semantics/ignore_tkr01.f90
    M libc/docs/configure.rst
    M libc/shared/rpc.h
    M libc/shared/rpc_dispatch.h
    M libc/shared/rpc_util.h
    M libcxx/utils/ci/lnt/run-benchmarks
    M libunwind/src/Unwind-seh.cpp
    M lldb/include/lldb/Symbol/Variable.h
    M lldb/include/lldb/ValueObject/DILParser.h
    M lldb/source/Host/windows/PythonPathSetup/CMakeLists.txt
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARF.cpp
    M lldb/source/Symbol/Variable.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/source/ValueObject/DILParser.cpp
    M lldb/test/API/commands/frame/var-dil/expr/Casts/TestFrameVarDILCast.py
    M lldb/test/API/commands/frame/var-dil/expr/Casts/main.cpp
    M lldb/tools/lldb-dap/EventHelper.cpp
    M llvm/include/llvm/ADT/SmallSet.h
    M llvm/include/llvm/Analysis/DominanceFrontier.h
    M llvm/include/llvm/Analysis/DominanceFrontierImpl.h
    M llvm/include/llvm/CodeGen/MachineDominanceFrontier.h
    M llvm/include/llvm/DTLTO/DTLTO.h
    M llvm/include/llvm/Support/JSON.h
    M llvm/include/llvm/Transforms/Utils/MemoryTaggingSupport.h
    M llvm/lib/Analysis/DominanceFrontier.cpp
    M llvm/lib/CodeGen/MachineDominanceFrontier.cpp
    M llvm/lib/DTLTO/DTLTO.cpp
    M llvm/lib/Target/AArch64/AArch64StackTagging.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/SPIRV/SPIRVGlobalRegistry.cpp
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp
    M llvm/lib/Transforms/Utils/MemoryTaggingSupport.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.atomic.integer-minmax.ll
    M llvm/test/CodeGen/AMDGPU/agpr-copy-no-free-registers.ll
    M llvm/test/CodeGen/AMDGPU/commute-compares.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/divergence-driven-trunc-to-i1.ll
    M llvm/test/CodeGen/AMDGPU/extract-subvector.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.bf.ll
    M llvm/test/CodeGen/AMDGPU/itofp.i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll
    M llvm/test/CodeGen/AMDGPU/saddo.ll
    M llvm/test/CodeGen/AMDGPU/saddsat.ll
    A llvm/test/CodeGen/AMDGPU/setcc-select.ll
    M llvm/test/CodeGen/AMDGPU/v_cndmask.ll
    M llvm/test/CodeGen/AMDGPU/widen-vselect-and-mask.ll
    M llvm/test/CodeGen/RISCV/rv32p.ll
    M llvm/test/CodeGen/RISCV/rv64p.ll
    A llvm/test/CodeGen/SPIRV/single-element-vector.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/SLPVectorizer/X86/gathered-loads-non-full-reg.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias-inseltpoison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias.ll
    M llvm/test/Transforms/SLPVectorizer/X86/vec_list_bias_external_insert_shuffled.ll
    M llvm/unittests/ADT/SmallSetTest.cpp
    M llvm/unittests/Transforms/Vectorize/CMakeLists.txt
    A llvm/unittests/Transforms/Vectorize/VPPostDomFrontierTest.cpp
    M llvm/utils/gn/secondary/llvm/unittests/Transforms/Vectorize/BUILD.gn
    M llvm/utils/profcheck-xfail.txt
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.h
    A mlir/lib/Bindings/Python/stubgen_runner.py
    M mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp
    M mlir/unittests/Dialect/CMakeLists.txt
    A mlir/unittests/Dialect/Linalg/CMakeLists.txt
    A mlir/unittests/Dialect/Linalg/InferConvolutionDimsTest.cpp
    M offload/plugins-nextgen/level_zero/src/L0DynWrapper.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
    R utils/bazel/llvm-project-overlay/mlir/stubgen_runner.py

  Log Message:
  -----------
  Merge branch 'main' into users/wizardengineer/ct-select-core


Compare: https://github.com/llvm/llvm-project/compare/22a777262b1a...d6656d042994

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