[all-commits] [llvm/llvm-project] 7ba877: [VPlan] Add matcher for canonical VPWidenIntOrFpIn...
Ryotaro Kasuga via All-commits
all-commits at lists.llvm.org
Mon May 25 17:49:27 PDT 2026
Branch: refs/heads/users/kasuga-fj/da-consolidate-acc-gcd
Home: https://github.com/llvm/llvm-project
Commit: 7ba877e9ce07572a2f6e0857e9083889d77a91fa
https://github.com/llvm/llvm-project/commit/7ba877e9ce07572a2f6e0857e9083889d77a91fa
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
Log Message:
-----------
[VPlan] Add matcher for canonical VPWidenIntOrFpInductionRecipe (NFC). (#199539)
Add matcher for canonical VPWidenIntOrFpInductionRecipe to simplify some
matching.
Commit: c10922a6ca6a2de54653cceafcd4fb276039ae26
https://github.com/llvm/llvm-project/commit/c10922a6ca6a2de54653cceafcd4fb276039ae26
Author: forking-google-bazel-bot[bot] <265904573+forking-google-bazel-bot[bot]@users.noreply.github.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
[Bazel] Fixes af92edf (#199515)
This fixes af92edf8b3aa4104992de9fe08ce2170d14bc28d.
Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
Commit: 5b93aeb21818cfdb142b14e70ef4eb0363ca9d88
https://github.com/llvm/llvm-project/commit/5b93aeb21818cfdb142b14e70ef4eb0363ca9d88
Author: David Salinas <dsalinas at amd.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M clang/lib/Driver/OffloadBundler.cpp
A clang/test/Driver/clang-offload-bundler-multi-compress.c
Log Message:
-----------
clang-offload-bundler incorrectly errors on multi-CCOB binaries (#182579)
Issue: https://github.com/ROCm/llvm-project/issues/448
Objects can have multiple Clang Compressed Offload Bundles (CCOB) in the
.hip_fatbin section. This happens when there are multiple
translation/compilation units built and then linked together into an
Archive or Shared Object. The resulting .hip_fatbin section will have
multiple offload bundles delimited by the magic string "CCOB" (on a 4k
alignment boundary). The Clang Offload bundler API, when a List of
bundle entries is requested, was not properly iterating (looping) over
each separate bundle.
REPRODUCTION
Test File: librocblas.so.5 from ROCm 6.x distribution
.hip_fatbin section: 8,163,887 bytes containing 64 concatenated CCOBs
Extract the .hip_fatbin section with:
objcopy --dump-section .hip_fatbin=fatbin.bin binary
Structure:
Offset 0x0: CCOB header + 1.16 MB compressed (→ 12.41 MB uncompressed)
Offset 0x129000: CCOB header + 1.01 MB compressed (→ 13.14 MB
uncompressed)
Offset 0x227000: CCOB header + 36.5 KB compressed (→ 1.21 MB
uncompressed)
... (61 more bundles)
Command:
$ clang-offload-bundler --type=o --input=librocblas.so.5 --list
Error:
clang-offload-bundler: error: Failed to decompress input: Could not
decompress embedded file contents: Src size is incorrect
Expected:
Should list all target triples in the bundle, or at minimum process
the first bundle without error.
Commit: d5f223da95da701f03cab10626d2a6d518e03737
https://github.com/llvm/llvm-project/commit/d5f223da95da701f03cab10626d2a6d518e03737
Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-strided-store.ll
Log Message:
-----------
[SLP] Enable widening strided revectorization of vector stores (#198920)
This commit adds support for re-vectorization of vector stores into
widened strided stores. That is:
```
%p1 = getelementptr i16, ptr %p0, i64 16
store <4 x i16> zeroinitializer, ptr %p1, align 2
store <4 x i16> zeroinitializer, ptr %p0, align 2
```
can be further vectorized to:
```
call void @llvm.experimental.vp.strided.store.v2i64.p0.i64(<2 x i64> zeroinitializer, ptr align 2 %p0, i64 32, <2 x i1> splat (i1 true), i32 2)
```
Commit: f6e4e71fcdbff98cb060f87695c75f00b43bf918
https://github.com/llvm/llvm-project/commit/f6e4e71fcdbff98cb060f87695c75f00b43bf918
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
A llvm/test/Transforms/LoopVectorize/select-cmp-blend-chain.ll
Log Message:
-----------
Reapply "[LV] Handle chained selects/blends when creating new rdx cha… (#199559)
This reverts commit ab1745439c7019d0753afc616c5fc5aef7b82fb6 & reapplies
#199443.
Recommit with additional additional fix to handle other select-like
recipes including VPWidenRecipe and VPReplicateRecipe.
Original message:
Make sure we recursively clone chains of selects/blends when re-creating
a reduction chain with new types.
Fixes https://github.com/llvm/llvm-project/issues/199406.
Commit: 192ea327028d1e8ad37413ebf26ee0da40a4b0fc
https://github.com/llvm/llvm-project/commit/192ea327028d1e8ad37413ebf26ee0da40a4b0fc
Author: Ilia Kuklin <ikuklin at accesssoftek.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
Log Message:
-----------
[ObjectYAML] Fix `DXContainerYAML::fromDXContainer` return value (#199534)
Commit: 9b4f7d1ae62db9c828ea6b676a295b1e70abed9c
https://github.com/llvm/llvm-project/commit/9b4f7d1ae62db9c828ea6b676a295b1e70abed9c
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
Log Message:
-----------
[VPlan] Collect unit-stride predicates for making vector decisions. (#199568)
Split-off from approved https://github.com/llvm/llvm-project/pull/197276
to land separately.
Collect all unit-stride predicates once, up-front, ensuring that cost
decisions have predicates available, independent of processing order.
Commit: 3c6fdba85b4f21b30b9cd9196b0e858204b3dff2
https://github.com/llvm/llvm-project/commit/3c6fdba85b4f21b30b9cd9196b0e858204b3dff2
Author: Florian Hahn <flo at fhahn.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
A llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
R llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
Log Message:
-----------
[LV] Move constant folding test to VPlan (NFC). (#198407)
Check VPlan print for constant folding test. This makes it more robust
w.r.t. to future cost-modeling changes.
Commit: 3aa9ae2da352db6f5822fdc91a170db5e496be32
https://github.com/llvm/llvm-project/commit/3aa9ae2da352db6f5822fdc91a170db5e496be32
Author: Elio <xiongzile at bytedance.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
A llvm/test/Transforms/LoopVectorize/VPlan/for-phi-ordering.ll
Log Message:
-----------
[VPlan] Collect FOR PHIs before sinking/hoisting recurrence users (#194671)
Avoid iterating over HeaderVPBB->phis() while potentially mutating the
underlying VPBasicBlock. Collect all VPFirstOrderRecurrencePHIRecipe
instances first, then process them in a separate loop.
This prevents iterator invalidation when sinking or hoisting recurrence
users, and makes the transformation more robust.
Fixes: https://github.com/llvm/llvm-project/issues/194618
Fixes https://github.com/llvm/llvm-project/issues/198589
---------
Co-authored-by: Zile Xiong <xiongzile99 at gmail.com>
Commit: d0646cbe307dd2bd10686f923061a7d981263e40
https://github.com/llvm/llvm-project/commit/d0646cbe307dd2bd10686f923061a7d981263e40
Author: Zhijie Wang <yesterda9 at gmail.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
M clang/test/Sema/warn-lifetime-safety.cpp
Log Message:
-----------
[LifetimeSafety] Fix false negative for GSL Owner methods inherited from a non-Owner base (#197864)
- Take the implicit object's actual type (e.g., the type before any
`DerivedToBase` cast) into account when checking for GSL Owner. Other
`isGslOwnerType` call sites with the same pattern (e.g.,
`isGslOwnerType(MCE->getImplicitObjectArgument()->getType())` in
`VisitCXXMemberCallExpr`) lack a real-world trigger today and are
deferred to a follow-up.
- Unify the GSL Owner checks inside `shouldTrackImplicitObjectArg` so
they share a single source of truth.
Fixes: #188832
Commit: 2cad228d3863f6a70b33625a1c967066207e34ab
https://github.com/llvm/llvm-project/commit/2cad228d3863f6a70b33625a1c967066207e34ab
Author: Fangrui Song <i at maskray.me>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M polly/lib/CodeGen/BlockGenerators.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
Log Message:
-----------
[polly] Simplify with DenseMap::remove_if. NFC (#199577)
In preparation for DenseMap change that relocates surviving entries on
erase.
Commit: a725adb96bf75764ad9043099935d1b5d16ef152
https://github.com/llvm/llvm-project/commit/a725adb96bf75764ad9043099935d1b5d16ef152
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/docs/CMake.rst
Log Message:
-----------
[Docs] Update LLVM_USE_SANITIZER list (#199580)
HWAddress and Leaks are valid options that were not present in the
documentation.
Commit: 1ed7260974d49760ec96ff224d2ff710764af8bf
https://github.com/llvm/llvm-project/commit/1ed7260974d49760ec96ff224d2ff710764af8bf
Author: Fangrui Song <i at maskray.me>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
Log Message:
-----------
[NVPTX] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#199575)
GenericToNVVM erases entries from GVMap while iterating it. In
preparation for DenseMap change that relocates surviving entries on
erase, snapshot the map and erase by key.
Commit: ff2eac10dbc1c1d888ac2dee4798bc54db672417
https://github.com/llvm/llvm-project/commit/ff2eac10dbc1c1d888ac2dee4798bc54db672417
Author: Fangrui Song <i at maskray.me>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
Log Message:
-----------
[Hexagon] Simplify with DenseMap::remove_if. NFC (#199576)
Commit: 884e828617bf512a992723bd70dc108deb775753
https://github.com/llvm/llvm-project/commit/884e828617bf512a992723bd70dc108deb775753
Author: Fangrui Song <i at maskray.me>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
Log Message:
-----------
[AMDGPU] Don't assume non-erased DenseMap entries remain valid after erase. NFC (#199578)
In preparation for DenseMap change that relocates surviving entries on
erase, replace erase-while-iterating with remove_if.
Commit: 01ce8d6763712261b9333855f10e9d2fe3342d86
https://github.com/llvm/llvm-project/commit/01ce8d6763712261b9333855f10e9d2fe3342d86
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/test/tools/llvm-profdata/sample-nametable.test
Log Message:
-----------
[ProfData] Remove HWAsan exclusion (#199582)
This passes locally for me with HWAsan enabled on a AArch64 machine, so
it seems like this might have been fixed since adding the opt-out.
Commit: 0b6a1ef4297bb839fe26041602d32411358e0032
https://github.com/llvm/llvm-project/commit/0b6a1ef4297bb839fe26041602d32411358e0032
Author: Miro Hrončok <miro at hroncok.cz>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
M llvm/utils/lit/tests/shtest-ulimit-nondarwin.py
Log Message:
-----------
[lit] Normalize RLIM_INFINITY to "infinity" in print_limits.py for Python 3.15+ (#190953)
Python 3.15 changed resource.getrlimit() to return the platform's
maximum value (e.g., 18446744073709551615 on 64-bit systems) instead of
-1 for RLIM_INFINITY. This breaks lit tests that expect -1 for unlimited
resource limits.
This patch normalizes the return value to "infinity" when it equals
RLIM_INFINITY to maintain compatibility with existing tests across all
Python versions.
Fixes test failure: shtest-ulimit-nondarwin.py
Expected: RLIMIT_FSIZE=-1
Got: RLIMIT_FSIZE=18446744073709551615
Reference:
https://github.com/python/cpython/commit/0324c726dea702282a0300225e989b19ae23b759
Reference: https://bugzilla.redhat.com/show_bug.cgi?id=2448969
Analysis and testing assisted by AI.
Assisted-by: Claude Sonnet 4.5
---------
Co-authored-by: Alexander Richardson <mail at alexrichardson.me>
Co-authored-by: Tulio Magno Quites Machado Filho <tuliom at quites.com.br>
Commit: 269719b1f63c68fffbca43f54cebaad23cf0246a
https://github.com/llvm/llvm-project/commit/269719b1f63c68fffbca43f54cebaad23cf0246a
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-05-25 (Mon, 25 May 2026)
Changed paths:
M compiler-rt/include/sanitizer/common_interface_defs.h
M compiler-rt/lib/asan/asan_errors.cpp
M compiler-rt/lib/asan/asan_errors.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/asan_report.cpp
M compiler-rt/lib/asan/asan_report.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
M compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h
R compiler-rt/test/asan/TestCases/copy_container_annotations.cpp
Log Message:
-----------
Revert "[compiler-rt][ASan] Add function copying annotations (#91702)" (#194204)
This reverts commit c76045d9bf3bd1c7a381dc85d1db63a38fd69aa4.
It does not look like this has been used anywhere since it was
implemented. I see no uses of it in LLVM, anywhere in our internal
monorepo, or across the entirety of Github outside of other copies of
LLVM tests. Given that, remove it. The intended use case around SSO ASan
string annotations is also likely to be significantly reworked soon.
Commit: 97e7ee26b2b3ea695c1966498ee572acd1e40418
https://github.com/llvm/llvm-project/commit/97e7ee26b2b3ea695c1966498ee572acd1e40418
Author: Aiden Grossman <aidengrossman at google.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M llvm/lib/ProfileData/InstrProf.cpp
A llvm/test/Transforms/PGOProfile/Inputs/indirect-call-vp-zeros.ll
A llvm/test/Transforms/PGOProfile/indirect-call-vp-zeros.ll
Log Message:
-----------
[InstrProf] Do not emit metadata for zero values with zero counts (#199380)
If we have a indirect call site with a profile that has VP information
for said callsite that only contains zero values with zero counts, we
would start to emit invalid profile information after
1d146967d51ba76b8379d9e12961aa23e5745701. VP metadata in this case is at
best redundant with BFI. So we restrict metadata emission to only if we
have a sufficient number of values for the VP metadata to be valid.
Commit: fb35b3e102cc11713cfc8d560a1da686c5052ce4
https://github.com/llvm/llvm-project/commit/fb35b3e102cc11713cfc8d560a1da686c5052ce4
Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
Date: 2026-05-26 (Tue, 26 May 2026)
Changed paths:
M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
M clang/lib/Driver/OffloadBundler.cpp
M clang/lib/Sema/CheckExprLifetime.cpp
A clang/test/Driver/clang-offload-bundler-multi-compress.c
M clang/test/Sema/warn-lifetime-safety.cpp
M compiler-rt/include/sanitizer/common_interface_defs.h
M compiler-rt/lib/asan/asan_errors.cpp
M compiler-rt/lib/asan/asan_errors.h
M compiler-rt/lib/asan/asan_poisoning.cpp
M compiler-rt/lib/asan/asan_report.cpp
M compiler-rt/lib/asan/asan_report.h
M compiler-rt/lib/sanitizer_common/sanitizer_common_interface.inc
M compiler-rt/lib/sanitizer_common/sanitizer_interface_internal.h
R compiler-rt/test/asan/TestCases/copy_container_annotations.cpp
M llvm/docs/CMake.rst
M llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
M llvm/lib/ObjectYAML/DXContainerYAML.cpp
M llvm/lib/ProfileData/InstrProf.cpp
M llvm/lib/Target/AMDGPU/AMDGPUInsertDelayAlu.cpp
M llvm/lib/Target/AMDGPU/AMDGPULowerExecSync.cpp
M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
M llvm/lib/Target/AMDGPU/SIMachineFunctionInfo.cpp
M llvm/lib/Target/Hexagon/HexagonGenInsert.cpp
M llvm/lib/Target/NVPTX/NVPTXGenericToNVVM.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/lib/Transforms/Vectorize/VPlan.h
M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
A llvm/test/Transforms/LoopVectorize/VPlan/constant-fold.ll
A llvm/test/Transforms/LoopVectorize/VPlan/for-phi-ordering.ll
R llvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
A llvm/test/Transforms/LoopVectorize/select-cmp-blend-chain.ll
M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
A llvm/test/Transforms/PGOProfile/Inputs/indirect-call-vp-zeros.ll
A llvm/test/Transforms/PGOProfile/indirect-call-vp-zeros.ll
M llvm/test/Transforms/SLPVectorizer/RISCV/revec-strided-store.ll
M llvm/test/tools/llvm-profdata/sample-nametable.test
M llvm/utils/lit/tests/Inputs/shtest-ulimit/print_limits.py
M llvm/utils/lit/tests/shtest-ulimit-nondarwin.py
M polly/lib/CodeGen/BlockGenerators.cpp
M polly/lib/CodeGen/IslNodeBuilder.cpp
M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
Log Message:
-----------
Merge branch 'main' into users/kasuga-fj/da-consolidate-acc-gcd
Compare: https://github.com/llvm/llvm-project/compare/9b64fa904de3...fb35b3e102cc
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