[all-commits] [llvm/llvm-project] 4df747: [MLIR][NVVM] Split nvvm.barrier into nvvm.barrier ...

Florian Mayer via All-commits all-commits at lists.llvm.org
Thu May 28 19:06:09 PDT 2026


  Branch: refs/heads/users/fmayer/spr/nfci-flowsensitive-statusor-add-test-for-absl_assign_or_return
  Home:   https://github.com/llvm/llvm-project
  Commit: 4df74706ab477798263cade8b742bba48d0b172f
      https://github.com/llvm/llvm-project/commit/4df74706ab477798263cade8b742bba48d0b172f
  Author: xys-syx <xuyuansui at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    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/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Target/LLVMIR/nvvm/barrier.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    M mlir/test/python/dialects/nvvm.py

  Log Message:
  -----------
  [MLIR][NVVM] Split nvvm.barrier into nvvm.barrier and nvvm.barrier.reduction (#199404)


  Commit: f089890d5e200a1811d69842aa71fa39e7c33482
      https://github.com/llvm/llvm-project/commit/f089890d5e200a1811d69842aa71fa39e7c33482
  Author: Berkay Sahin <berkaysahindev at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [clang-tidy] Fixes false positive with a non-const method on a pointer (#188844)

Fixes

#56777
#58098
#64955

Non-const member functions don't mutate the pointer but the pointee.
Pointee mutations follow different path within the analyzer, so should
not be effected.

Edit to old tests were needed. Adds a dedicated tests besides those.


  Commit: 3769bd61d0b3e555c45a9b5de919f0f166355fe8
      https://github.com/llvm/llvm-project/commit/3769bd61d0b3e555c45a9b5de919f0f166355fe8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp

  Log Message:
  -----------
  [RISCV] Use std::optional::operator* instead of value(). NFC (#200235)


  Commit: 3df7e3707c2a3673a25e2fa8147d3cb9ba0aad0e
      https://github.com/llvm/llvm-project/commit/3df7e3707c2a3673a25e2fa8147d3cb9ba0aad0e
  Author: vporpo <vasileios.porpodas at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Implement missing API for successors (#195301)

This patch implements the missing API for accessing the DAG successors.
This includes the successor iterators and DAG Node member functions like
succs(). These are mirroring the existing predecessor API.


  Commit: e7ea47d98e7e1b38496846d37ca06d1f1562f54b
      https://github.com/llvm/llvm-project/commit/e7ea47d98e7e1b38496846d37ca06d1f1562f54b
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  worflows/premerge: Remove template expansion (#200068)

https://github.com/llvm/llvm-project/security/code-scanning/1686
https://github.com/llvm/llvm-project/security/code-scanning/1687
https://github.com/llvm/llvm-project/security/code-scanning/1688
https://github.com/llvm/llvm-project/security/code-scanning/1689


  Commit: 46c8c1e1320e5524700f09998490a5fd7216917b
      https://github.com/llvm/llvm-project/commit/46c8c1e1320e5524700f09998490a5fd7216917b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [AggressiveInstCombine] Factor common code out of tryToRecognizePopCount and tryToRecognizePopCount2n3. (#199440)

Both of these patterns end with code to compute the popcount of each
byte.

This isn't NFC because tryToRecognizePopCount2n3 handled an alternate
pattern for one of the steps and tryToRecognizePopCount used
MaskedValueIsZero. The shared code applies these differences to both
cases. New tests have been added.

Assisted-by: Claude Sonnet 4.6

---------

Co-authored-by: Min-Yih Hsu <min at myhsu.dev>


  Commit: 63da2695b1a3c8e4f42d2e1d63faa1eb412886ec
      https://github.com/llvm/llvm-project/commit/63da2695b1a3c8e4f42d2e1d63faa1eb412886ec
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [VPlan] Strip IR-PatternMatch include in VPlanAnalysis (NFC) (#200186)

To reduce confusion.


  Commit: 42010078e75053f09e46a8d58033fa768c57961f
      https://github.com/llvm/llvm-project/commit/42010078e75053f09e46a8d58033fa768c57961f
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll

  Log Message:
  -----------
  [MemCpyOpt] Keep volatile memset before memcpy (#200100)


  Commit: 810e67f50d8f149c0c88cbda1707b52b7ae9936f
      https://github.com/llvm/llvm-project/commit/810e67f50d8f149c0c88cbda1707b52b7ae9936f
  Author: Carlos Seo <carlos.seo at linaro.org>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/Clauses.cpp
    A flang/test/Lower/OpenMP/Todo/ordered-depend.f90
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h

  Log Message:
  -----------
  [flang][OpenMP] Fix crash on standalone ordered with depend(source|sink:) (#200193)

A standalone ordered construct using the pre-OpenMP 5.2 depend(source) /
depend(sink:) spelling crashed flang with an assertion failure in
buildConstructQueue ("Construct decomposition failed"), or emitted a
TODO when assertions were disabled.

These dependence types are valid on ordered since OpenMP 4.5, but flang
represents them internally as a doacross clause, which construct
decomposition only accepts from OpenMP 5.2. As a result, decomposition
produced an empty output and tripped the assertion at every OpenMP
version below 5.2 (including the default 3.1).

Lowering of the standalone ordered directive is not implemented yet
(genOrderedOp only emits a "not yet implemented" message and ignores the
construct queue). Build the construct queue only for the
block-associated variant and emit the TODO directly for the standalone
directive, so the decomposition that would otherwise assert is no longer
reached.

Note: at versions below 4.5 the construct is technically invalid, but
flang's semantics accepts it silently. Making semantics emit a "requires
OpenMP 4.5" error/warning is probably a good idea.

Fixes #198972


  Commit: b2edcf9fb336b06f624d7c58a04c6dcf3cf74a54
      https://github.com/llvm/llvm-project/commit/b2edcf9fb336b06f624d7c58a04c6dcf3cf74a54
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/test/Instrumentation/Instrumentor/alloca_and_function.ll
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll

  Log Message:
  -----------
  [Instrumentor] Introduce BasePointerIO to communicate base pointer information (#197607)

Loads, stores, and later probably calls, can request a base pointer info
object from the user runtime. This object is queried right after the
base pointer of the operation is defined, and then passed to the
pre/post runtime calls of the loads and stores. This allows users to
inspect pointers early and once, but provide the analysis results to all
operations that might be executed in loops. A potential use case is to
lookup the size and start of the underlying object and then provide
those to the access runtime calls for in-bounds checking.


  Commit: cdb606c37c8f08783aad6d4cc73adbc7d199b1e2
      https://github.com/llvm/llvm-project/commit/cdb606c37c8f08783aad6d4cc73adbc7d199b1e2
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [VPlan] Predicate SCEVs in getSCEVExprForVPValue (NFC) (#199994)

Although the change could be functional in theory, it is very difficult
to find a test case.


  Commit: b41aef8b809c255814801d658138b98e828012b1
      https://github.com/llvm/llvm-project/commit/b41aef8b809c255814801d658138b98e828012b1
  Author: adams381 <adams at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    A clang/test/CIR/CodeGen/vector-binop-overflow.cpp

  Log Message:
  -----------
  [CIR] Omit nsw/nuw on integer vector binops (#199123)

CIRGen was attaching `nsw` to `cir.add` on `!cir.vector` integer types
because the signed-overflow path keys off `compType` (the element type,
still `!s32i`), while the verifier only allows `nsw`/`nuw` on scalar
`!cir.int` results.  That mismatch showed up 144 times in the libcxx
CIR sweep on `std::experimental::simd` — `experimental/__simd/vec_ext.h`
increment/decrement (`__data + 1` / `__data - 1`).

Classic CodeGen never enters the signed-overflow block for vector
computation types; CIR now skips the scalar `nsw`/`nuw` path when the
MLIR operand is an integer vector, and uses `getAs<VectorType>()` for
`compType` so typedef-wrapped GCC vectors resolve the element type
correctly.

Regression test `vector-binop-overflow.cpp` checks scalar add still gets
`nsw` and vector add/sub/mul do not (CIR + LLVM + OGCG).


  Commit: 5c219c86b6ffb8adb284e6c439ad1f78f5c10803
      https://github.com/llvm/llvm-project/commit/5c219c86b6ffb8adb284e6c439ad1f78f5c10803
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    A llvm/test/Instrumentation/Instrumentor/cast.ll
    A llvm/test/Instrumentation/Instrumentor/cast_config.json
    A llvm/test/Instrumentation/Instrumentor/cast_crash.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter_config.json
    M llvm/test/Instrumentation/Instrumentor/default_config.json

  Log Message:
  -----------
  [Instrumentor] Add cast instruction instrumentation support (#198224)

We now allow to have instrumentation opportunities for many instructions
(=opcodes) to bundle common classes together. Users can use filters on
the opcode, type-id, and size to statically select what they are
interested in.

Coded with Claude.


  Commit: 23776bd325ec951781923a638ad632e4126b30ea
      https://github.com/llvm/llvm-project/commit/23776bd325ec951781923a638ad632e4126b30ea
  Author: Vedran Miletić <vedran at miletic.net>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt

  Log Message:
  -----------
  [llvm] Fix LLVMOrcTargetProcess symbol export with MinGW/Cygwin shared libs (#174266)

When any symbol in a DLL carries dllexport, the MinGW/Cygwin linker
switches to exclusive-export mode and omits all other symbols from the
export table. LLVMOrcTargetProcess uses LLVM_ALWAYS_EXPORT (__declspec(
dllexport)) so its symbols can be found via GetProcAddress from a
statically linked executable, which triggers this behaviour.

Add --export-all-symbols to LLVMOrcTargetProcess for MinGW/Cygwin
BUILD_SHARED_LIBS builds to restore full symbol export.


  Commit: 2f98f171c2983c2fe875e0f597128a5c1de2165f
      https://github.com/llvm/llvm-project/commit/2f98f171c2983c2fe875e0f597128a5c1de2165f
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp

  Log Message:
  -----------
  [PowerPC] Fix MSan failure in LowerBUILD_VECTOR (#200260)

Initialize SplatBitSize to fix use-of-uninitialized-value error detected
by MemorySanitizer in ba7d42b.


  Commit: 0d1e9a6177d9ae85d2822fd98bffe55f86e38875
      https://github.com/llvm/llvm-project/commit/0d1e9a6177d9ae85d2822fd98bffe55f86e38875
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll

  Log Message:
  -----------
  [X86][TTI] Retrieve address space from intrinsic info. (#200265)

Instead of using the passed Ptr argument to get the type, to retrieve
the address space, directly retrieve it from MICA.

This fixes a crash when Ptr is nullptr, as after #200049.

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


  Commit: 642bbbaf57ed1d0ce6b7871a8d3dc1386e95926b
      https://github.com/llvm/llvm-project/commit/642bbbaf57ed1d0ce6b7871a8d3dc1386e95926b
  Author: Dhruva Chakrabarti <Dhruva.Chakrabarti at amd.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp

  Log Message:
  -----------
  [2/3][RegAlloc][LiveRegMatrix] Fix inconsistency when fold creates a CopyMI (#197776)

When TargetInstrInfo::foldMemoryOperand produces a side-effect CopyMI,
the copy destination vreg's LiveInterval is extended via addSegment. If
that vreg is already assigned in LiveRegMatrix, the matrix becomes
inconsistent because it still holds the old (smaller) interval.

Fix this in two places:

- InlineSpiller::foldMemoryOperand: unassign the vreg from the matrix
before addSegment, reassign after, so the matrix reflects the updated
interval.

- LiveRangeEdit::foldAsLoad: notify the delegate via
LRE_WillShrinkVirtReg before addSegment.

LIT test exercised by this patch (i.e. if I introduce consistency
verification as in https://github.com/llvm/llvm-project/pull/197778 but
not this patch, the following test fails):
CodeGen/X86/apx/pr191368.ll

Assisted-by: Cursor/Claude Opus


  Commit: 01cfbaabef6cb59a1a6eb870bf5f48ac2e747118
      https://github.com/llvm/llvm-project/commit/01cfbaabef6cb59a1a6eb870bf5f48ac2e747118
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml

  Log Message:
  -----------
  workflows/upload-release-artifact: Use require-release-manager action (#195374)

This removes the final use of RELEASE_TASKS_USER_TOKEN secret. It
required plumbing the secrets in thrugh several levels of workflow
calls, which is not ideal, but I don't see a better way to do this.


  Commit: f7f3d9d0aea8588ed1aff033978370a5bdf97029
      https://github.com/llvm/llvm-project/commit/f7f3d9d0aea8588ed1aff033978370a5bdf97029
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/test/API/windows/thread/main.c

  Log Message:
  -----------
  [lldb][Windows] Move `processthreadsapi.h` include (#200278)

`processthreadsapi.h` needs to be included after `windows.h`.
clang-format needs to be disabled here to avoid sorting the includes.

Fixes the test failure from
https://github.com/llvm/llvm-project/pull/199983#issuecomment-4567633271.


  Commit: 075e16f74d7b265a22af73c4fcb5a6bd4b186543
      https://github.com/llvm/llvm-project/commit/075e16f74d7b265a22af73c4fcb5a6bd4b186543
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/test/CIR/CodeGen/vla.c

  Log Message:
  -----------
  [CIR] Correctly emit the size expr of a VLA with a 'bool' size. (#200066)

This came up in a test suite, the frontend considers 'bool' to be
integral enough to use as a bounds, so bool makes it through to the VLA
codegen. This patch adds a new cast function that takes a bool or int
type and casts it to an int (as this is a pretty useful task, that I
    believe I've seen before).


  Commit: 927c51d2434e9cb094742e77289b35dad88383c5
      https://github.com/llvm/llvm-project/commit/927c51d2434e9cb094742e77289b35dad88383c5
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py

  Log Message:
  -----------
  [lldb] Improve frame variable handling of recognizer arguments (#200084)

Fixes two bugs. The bug which prompted this change is that `frame
variable name` would
print all regcognizer arguments, even though only "name" was requested.

While making a test for the first bug, I found that `frame variable
recognizer_arg` will
both successfully print the variable, and also report a false positive
error:

```
error: <user expression>:1:1: use of undeclared identifier 'recognizer_arg'
      1 | recognizer_arg
```

This change fixes both bugs, including when using `--regex`.


  Commit: 58dff928280641f764fd08e421ee8a707f586f2d
      https://github.com/llvm/llvm-project/commit/58dff928280641f764fd08e421ee8a707f586f2d
  Author: Zibi Sarbinowski <zibi at ca.ibm.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary-malformed.ll
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll

  Log Message:
  -----------
  [llvm-offload-binary] Fix test failures on z/OS by splitting malformed tests (#200258)

## Summary
This PR fixes test failures in `llvm-offload-binary.ll` on z/OS (and
potentially other EBCDIC platforms) by splitting the malformed file
tests into a separate test file.

## Problem
The test was failing on z/OS because it uses `printf` with octal escape
sequences to create malformed binary test data:
```bash
printf "\020\377\020\255\012" > %t9
```

On z/OS, the shell's I/O redirection performs automatic EBCDIC-to-ASCII
translation on the output from `printf`. This means the binary data
written to the file gets translated, resulting in different bytes than
intended. The malformed test data is therefore not created correctly,
causing `llvm-offload-binary` to fail in unexpected ways or not produce
the expected error messages.

## Benefits of this solution
- Main test file now passes on all platforms including z/OS
- Malformed file error handling tests are preserved for ASCII-based
systems
- Clear separation of concerns between standard tests and
platform-specific tests
- No loss of test coverage on supported platforms


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

  Changed paths:
    M flang/lib/Optimizer/Analysis/ArraySectionAnalyzer.cpp
    A flang/test/HLFIR/order_assignments/where-allocatable-base.f90

  Log Message:
  -----------
  [flang] Fix WHERE self-updates on allocatable array sections (#200281)

Teach ArraySectionAnalyzer to use the scheduler's value-equivalence
callback
when comparing hlfir.designate base memrefs. This lets HLFIR ordered
assignment
lowering recognize allocatable WHERE self-updates as aligned even when
the LHS
and RHS use distinct descriptor loads.

This avoids generating full-sized RHS temporaries for these masked
self-updates, preventing device heap exhaustion while preserving
parallel
kernel generation. Add a regression test for allocatable WHERE section
scheduling.


  Commit: 7e200ebdd08cc5d95016c02636abe6e93bb581d4
      https://github.com/llvm/llvm-project/commit/7e200ebdd08cc5d95016c02636abe6e93bb581d4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

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

  Log Message:
  -----------
  [AggressiveInstCombine] Support Len==8 in tryToRecognizePopCount2n3. (#199551)

Len==8 can use matchPopCountBytes to do it's matching.


  Commit: f85729489de0289a24920fa931b0aa00fb095c56
      https://github.com/llvm/llvm-project/commit/f85729489de0289a24920fa931b0aa00fb095c56
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/docs/TestingGuide.rst

  Log Message:
  -----------
  [Docs] Improve Documentation on Writing IR Test Cases (#200259)

This adds documentation for a couple common review comments I've seen:
1. Extraneous target triples/data-layouts
2. Tests not getting put in the right folder (especially when they
require a target and are not put in the target-specific subfolder)
3. Extraneous FileCheck prefixes.


  Commit: 75fb8e47f6170d66c72311b9629b19c02e97841b
      https://github.com/llvm/llvm-project/commit/75fb8e47f6170d66c72311b9629b19c02e97841b
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M lld/ELF/Arch/X86_64.cpp

  Log Message:
  -----------
  [lld][nfc] Fix spelling (#200279)


  Commit: 8d8ebb1cb1b552423f6dff74a0887943d36dce08
      https://github.com/llvm/llvm-project/commit/8d8ebb1cb1b552423f6dff74a0887943d36dce08
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fma-vectorize.ll

  Log Message:
  -----------
  [SLP][REVEC][NFC]Add a test with the missed fma vectorization, NFC



Reviewers: 

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


  Commit: a853917bbf7b88e5b7e6cf61d0e724d68e0e1df1
      https://github.com/llvm/llvm-project/commit/a853917bbf7b88e5b7e6cf61d0e724d68e0e1df1
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/InstrumentorUtils.h

  Log Message:
  -----------
  [Instrumentor] Fix nondeterminism in indirect argument alloca usage  (#200289)

Co-authored-by: Kevin Sala Penades <salapenades1 at llnl.gov>


  Commit: 3f140498c2d7ad67226c14d9d2cf5caf1442cceb
      https://github.com/llvm/llvm-project/commit/3f140498c2d7ad67226c14d9d2cf5caf1442cceb
  Author: Johannes Doerfert <jdoerfert.llvm at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    R llvm/test/Instrumentation/Instrumentor/default_rt
    A llvm/test/Instrumentation/Instrumentor/default_rt.c
    A llvm/test/Instrumentation/Instrumentor/default_rt.h
    M llvm/test/Instrumentation/Instrumentor/generate_rt.ll
    A llvm/test/Instrumentation/Instrumentor/lit.local.cfg
    M llvm/test/Instrumentation/Instrumentor/rt_config.json

  Log Message:
  -----------
  [Instrumentor] Improve stub printer (for C/C++ and value packs) (#198366)

The stub printer now emits a helper header to deal with value packs (in
C and C++). We also make the files C/C++ compatible and use the proper
format strings for int32_t and int64_t.


  Commit: 843d4a6a27a06527122d3c5fa1a3f85fd8d5fd1b
      https://github.com/llvm/llvm-project/commit/843d4a6a27a06527122d3c5fa1a3f85fd8d5fd1b
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
    A llvm/test/Instrumentation/Instrumentor/operations.json
    A llvm/test/Instrumentation/Instrumentor/operations.ll

  Log Message:
  -----------
  [Instrumentor] Add numeric operation instruction instrumentation support (#199749)

This patch introduces a new instrumentation opportunity for numeric
operations.


  Commit: 4910eda2a04e8532e434acb140c692e1c4da319c
      https://github.com/llvm/llvm-project/commit/4910eda2a04e8532e434acb140c692e1c4da319c
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-05-29 (Fri, 29 May 2026)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/unittests/Analysis/FlowSensitive/MockHeaders.cpp
    M clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp

  Log Message:
  -----------
  [FlowSensitive] [StatusOr] Support ABSL_RETURN_IF_ERROR (#200287)

This was recently introduced in absl


  Commit: 7964b66bf55d53f7a528a8153c005bee0614a3d7
      https://github.com/llvm/llvm-project/commit/7964b66bf55d53f7a528a8153c005bee0614a3d7
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M llvm/include/llvm/CMakeLists.txt
    A llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorVariables.inc.in
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    M llvm/test/Instrumentation/Instrumentor/default_rt.h

  Log Message:
  -----------
  [Instrumentor] Move instrumentor stub library into its own header file (#199329)

This patch depends on #198366. It moves the instrumentor runtime helper
header into its own file and makes it accessible as a string value to
the instrumentor pass.


  Commit: 16ea8c7946237bc3fdb053a9b512702f1690a9e7
      https://github.com/llvm/llvm-project/commit/16ea8c7946237bc3fdb053a9b512702f1690a9e7
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/premerge.yaml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    A clang/test/CIR/CodeGen/vector-binop-overflow.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Optimizer/Analysis/ArraySectionAnalyzer.cpp
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    A flang/test/HLFIR/order_assignments/where-allocatable-base.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    A flang/test/Lower/OpenMP/Todo/ordered-depend.f90
    M lld/ELF/Arch/X86_64.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/windows/thread/main.c
    M llvm/docs/TestingGuide.rst
    M llvm/include/llvm/CMakeLists.txt
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorUtils.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorVariables.inc.in
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Instrumentation/Instrumentor/alloca_and_function.ll
    A llvm/test/Instrumentation/Instrumentor/cast.ll
    A llvm/test/Instrumentation/Instrumentor/cast_config.json
    A llvm/test/Instrumentation/Instrumentor/cast_crash.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter_config.json
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    R llvm/test/Instrumentation/Instrumentor/default_rt
    A llvm/test/Instrumentation/Instrumentor/default_rt.c
    A llvm/test/Instrumentation/Instrumentor/default_rt.h
    M llvm/test/Instrumentation/Instrumentor/generate_rt.ll
    A llvm/test/Instrumentation/Instrumentor/lit.local.cfg
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
    A llvm/test/Instrumentation/Instrumentor/operations.json
    A llvm/test/Instrumentation/Instrumentor/operations.ll
    M llvm/test/Instrumentation/Instrumentor/rt_config.json
    M llvm/test/Transforms/AggressiveInstCombine/popcount.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fma-vectorize.ll
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary-malformed.ll
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
    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/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Target/LLVMIR/nvvm/barrier.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    M mlir/test/python/dialects/nvvm.py

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]


  Commit: 77da6193a9225e47245e04b3bbcab510903898a8
      https://github.com/llvm/llvm-project/commit/77da6193a9225e47245e04b3bbcab510903898a8
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-05-28 (Thu, 28 May 2026)

  Changed paths:
    M .github/workflows/premerge.yaml
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/upload-release-artifact/action.yml
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    A clang/test/CIR/CodeGen/vector-binop-overflow.cpp
    M clang/test/CIR/CodeGen/vla.c
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Optimizer/Analysis/ArraySectionAnalyzer.cpp
    M flang/lib/Optimizer/Builder/CUDAIntrinsicCall.cpp
    A flang/test/HLFIR/order_assignments/where-allocatable-base.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    A flang/test/Lower/OpenMP/Todo/ordered-depend.f90
    M lld/ELF/Arch/X86_64.cpp
    M lldb/source/Commands/CommandObjectFrame.cpp
    M lldb/test/API/commands/frame/recognizer/TestFrameRecognizer.py
    M lldb/test/API/windows/thread/main.c
    M llvm/docs/TestingGuide.rst
    M llvm/include/llvm/CMakeLists.txt
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h
    M llvm/include/llvm/Transforms/IPO/Instrumentor.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorRuntimeHelper.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorStubPrinter.h
    M llvm/include/llvm/Transforms/IPO/InstrumentorUtils.h
    A llvm/include/llvm/Transforms/IPO/InstrumentorVariables.inc.in
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/LiveRangeEdit.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVMoveMerger.cpp
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
    M llvm/lib/Transforms/IPO/Instrumentor.cpp
    M llvm/lib/Transforms/IPO/InstrumentorStubPrinter.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Instrumentation/Instrumentor/alloca_and_function.ll
    A llvm/test/Instrumentation/Instrumentor/cast.ll
    A llvm/test/Instrumentation/Instrumentor/cast_config.json
    A llvm/test/Instrumentation/Instrumentor/cast_crash.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter.ll
    A llvm/test/Instrumentation/Instrumentor/cast_filter_config.json
    M llvm/test/Instrumentation/Instrumentor/default_config.json
    R llvm/test/Instrumentation/Instrumentor/default_rt
    A llvm/test/Instrumentation/Instrumentor/default_rt.c
    A llvm/test/Instrumentation/Instrumentor/default_rt.h
    M llvm/test/Instrumentation/Instrumentor/generate_rt.ll
    A llvm/test/Instrumentation/Instrumentor/lit.local.cfg
    M llvm/test/Instrumentation/Instrumentor/module_and_globals.ll
    A llvm/test/Instrumentation/Instrumentor/operations.json
    A llvm/test/Instrumentation/Instrumentor/operations.ll
    M llvm/test/Instrumentation/Instrumentor/rt_config.json
    M llvm/test/Transforms/AggressiveInstCombine/popcount.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/MemCpyOpt/memset-memcpy-redundant-memset.ll
    A llvm/test/Transforms/SLPVectorizer/X86/revec-fma-vectorize.ll
    A llvm/test/tools/llvm-offload-binary/llvm-offload-binary-malformed.ll
    M llvm/test/tools/llvm-offload-binary/llvm-offload-binary.ll
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
    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/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Target/LLVMIR/nvvm/barrier.mlir
    M mlir/test/Target/LLVMIR/nvvmir-invalid.mlir
    M mlir/test/python/dialects/nvvm.py

  Log Message:
  -----------
  reb

Created using spr 1.3.7


Compare: https://github.com/llvm/llvm-project/compare/ec470de38f40...77da6193a922

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