LLVM/project b033dcbclang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp, lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools libfbsdvmcore-hacks.patch

rebase

Created using spr 1.3.7
DeltaFile
+456-103llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+160-64llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+1,059-845180 files not shown
+4,264-1,909186 files

LLVM/project 77600cbmlir/lib/Dialect/XeGPU/Transforms XeGPULayoutImpl.cpp, mlir/test/Dialect/XeGPU propagate-layout-inst-data.mlir propagate-layout.mlir

[MLIR][XeGPU] XeGPU Layout adds support for fractional-subgroup-size vector  (#183434)

This PR enhances the layout assignment for XeGPU load/store operations
to handle vector size smaller than subgroup size.
Say for vector[4], in case of lane_data=[1], lane_layout=[4] and
inst_data=[4].
The fractional-subgroup-size vector support is required to support the
cross-subgroup reduction case. The number of participant subgroups in
reduction can be small, so it causes each subgroup needs to reduce a
small vector size, often a fraction of subgroup size.
Most layout-based subgroup distribution patterns support
fraction-subgroup-size without no change except a few: reduction,
insert/extract, constant. We don't expect ND operations (like
load_nd/store_nd/dpas) accept fractional-subgroup-size vector.
DeltaFile
+18-16mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
+15-1mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
+14-0mlir/test/Dialect/XeGPU/propagate-layout.mlir
+47-173 files

LLVM/project f30dfe7mlir/tools/mlir-tblgen OpDocGen.cpp

Revert "[mlir-tblgen] Remove `namespace {}` around OpDocGroup (#182721)" (#183458)

Reverts #182721, it's not needed after #183457.

It was a work around for #182720.

This reverts commit a0f344f69d7eb5d87dd78c628a196a3a7440e792.
DeltaFile
+2-4mlir/tools/mlir-tblgen/OpDocGen.cpp
+2-41 files

LLVM/project b354b20clang/lib/Driver SanitizerArgs.cpp, clang/test/Driver fsanitize-minimal-runtime.c

[SafeStack] Allow -fsanitize-minimal-runtime with -fsanitize=safestack (#183644)

SafeStack does not require a full sanitizer runtime, so it should be
compatible
with the minimal runtime flag.
DeltaFile
+3-3clang/lib/Driver/SanitizerArgs.cpp
+6-0compiler-rt/test/safestack/overflow.c
+4-0clang/test/Driver/fsanitize-minimal-runtime.c
+13-33 files

LLVM/project 5929c90mlir/lib/Dialect/Vector/IR VectorOps.cpp

[mlir][vector] Fix fold result for empty vector.mask with no results (#180345)

This PR fixes `foldEmptyMaskOp` to return `failure` when folding an
empty vector.mask whose terminatorhas no operands. Previously this case
returned success without producing any folded results, which violates
the folding contract. Fixes #177825.
DeltaFile
+2-4mlir/lib/Dialect/Vector/IR/VectorOps.cpp
+2-41 files

LLVM/project a54df46

rebase

Created using spr 1.3.7
DeltaFile
+0-00 files

LLVM/project df77f2b

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-00 files

LLVM/project 5d78c8cllvm/include/llvm/ADT DenseMap.h

[DenseMap] Add memory barrier for sanitizers in getInlineBuckets/getLargeRep (#183457)

Add a compiler memory barrier to prevent optimizations from triggering
false positives on partially poisoned buckets in (HW)ASan.

Fixes #182720.
DeltaFile
+9-0llvm/include/llvm/ADT/DenseMap.h
+9-01 files

LLVM/project aeba098clang/lib/CIR/CodeGen CIRGenCleanup.cpp, llvm/test/CodeGen/AMDGPU load-saddr-offset-imm.ll

rebase

Created using spr 1.3.7
DeltaFile
+456-103llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
+160-64llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll
+8-91clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
+88-3utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+89-0llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
+0-64llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll
+801-32567 files not shown
+1,634-57873 files

LLVM/project 682add2clang/lib/CIR/CodeGen CIRGenCleanup.cpp, llvm/test/CodeGen/AMDGPU load-saddr-offset-imm.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+456-103llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
+160-64llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll
+8-91clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
+88-3utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+89-0llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
+0-64llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll
+801-32567 files not shown
+1,634-57873 files

LLVM/project 7169c91clang/lib/CIR/CodeGen CIRGenCleanup.cpp, llvm/test/CodeGen/AMDGPU load-saddr-offset-imm.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+456-103llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
+160-64llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll
+8-91clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
+88-3utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+89-0llvm/test/CodeGen/AMDGPU/load-saddr-offset-imm.ll
+0-64llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll
+801-32567 files not shown
+1,634-57873 files

LLVM/project 8d5b74dllvm/include/llvm/ADT DenseMap.h

[DenseMap] Add memory barrier for sanitizers in getInlineBuckets/getLargeRep

Add a compiler memory barrier to prevent optimizations from triggering
false positives on partially poisoned buckets in (HW)ASan.

Fixes #182720.

Pull Request: https://github.com/llvm/llvm-project/pull/183457
DeltaFile
+9-0llvm/include/llvm/ADT/DenseMap.h
+9-01 files

LLVM/project 46aca68clang/test/CIR/Transforms flatten-cleanup-scope-eh.cir, clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+312-0clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+200-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
+955-680134 files not shown
+3,651-1,385140 files

LLVM/project 732afafclang/test/CIR/Transforms flatten-cleanup-scope-eh.cir, clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp

rebase

Created using spr 1.3.7
DeltaFile
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+312-0clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+200-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
+955-680134 files not shown
+3,651-1,385140 files

LLVM/project 481edd1clang/test/CIR/Transforms flatten-cleanup-scope-eh.cir, clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+312-0clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+200-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
+955-680134 files not shown
+3,651-1,385140 files

LLVM/project ff64ed1clang/test/CIR/Transforms flatten-cleanup-scope-eh.cir, clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp

rebase

Created using spr 1.3.7
DeltaFile
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+312-0clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+200-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
+955-680135 files not shown
+3,650-1,394141 files

LLVM/project 146f796clang/test/CIR/Transforms flatten-cleanup-scope-eh.cir, clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+312-0clang/test/CIR/Transforms/flatten-cleanup-scope-eh.cir
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+200-2mlir/lib/Dialect/XeGPU/Transforms/XeGPUSgToWiDistributeExperimental.cpp
+955-680135 files not shown
+3,650-1,394141 files

LLVM/project 53f4046clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest TUSummaryTest.cpp, lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools libfbsdvmcore-hacks.patch

Merge branch 'main' into users/vitalybuka/spr/safestack-allow-fsanitize-minimal-runtime-with-safestack
DeltaFile
+456-103llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
+0-323lldb/test/API/functionalities/postmortem/FreeBSD-Kernel-Core/tools/libfbsdvmcore-hacks.patch
+301-0llvm/test/CodeGen/AArch64/faddv.ll
+140-134clang/unittests/Analysis/Scalable/Serialization/JSONFormatTest/TUSummaryTest.cpp
+160-64llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll
+2-221llvm/test/CodeGen/PowerPC/fmf-propagation.ll
+1,059-845175 files not shown
+4,204-1,884181 files

LLVM/project 8f9c926llvm/lib/Target/AMDGPU AMDGPUTargetTransformInfo.cpp, llvm/test/Transforms/LoopUnroll/AMDGPU unroll-runtime.ll

Revert "AMDGPU: Fix runtime unrolling when cascaded GEPs present (#14… (#183641)

…7700)"

slows down llama.cpp

This reverts commit cff4a00d3f7d91c0dd3a93eb81db66be178273d3.
DeltaFile
+0-64llvm/test/Transforms/LoopUnroll/AMDGPU/unroll-runtime.ll
+3-6llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+3-702 files

LLVM/project c056d7cclang/docs ReleaseNotes.rst, clang/lib/Sema SemaDecl.cpp

[Sema] Fix crash on invalid operator template-id (#181404)

Add checks in GetNameFromUnqualifiedId to handle invalid TemplateId
cases safely. This avoids a crash when handling an invalid template-id
during error recovery and allows normal error reporting to continue.

Fixes #177549
DeltaFile
+7-0clang/test/SemaCXX/crash-invalid-operator-template.cpp
+4-0clang/lib/Sema/SemaDecl.cpp
+1-0clang/docs/ReleaseNotes.rst
+12-03 files

LLVM/project 46b6c97llvm/test/Transforms/LoopUnrollAndJam unroll-and-jam.ll

[LoopUnrollAndJam] Update test unroll-and-jam.ll (NFC) (#183520)

The test `unroll-and-jam.ll` has the following issues:

- Some functions use `%i` and `%I` as variable names, which UTC fails to
distinguish, causing it to update the assertions incorrectly.
- Some tests use parameters for loop bounds, which means they will start
failing in the near future due to the ongoing changes in DA.

To address these issues, this patch updates the test as follows:

- Renames certain variables to avoid the naming conflict.
- For the tests that will be affected by the DA changes, adds variants
with constant loop bounds.
DeltaFile
+456-103llvm/test/Transforms/LoopUnrollAndJam/unroll-and-jam.ll
+456-1031 files

LLVM/project b847b64mlir/lib/Analysis/Presburger PWMAFunction.cpp

Revert "[MLIR][Presburger][NFC] Don't add empty regions when unioning PWMA fu…"

This reverts commit c1d33452468d2728005ced20be550e617f24e6dd.
DeltaFile
+0-3mlir/lib/Analysis/Presburger/PWMAFunction.cpp
+0-31 files

LLVM/project c1d3345mlir/lib/Analysis/Presburger PWMAFunction.cpp

[MLIR][Presburger][NFC] Don't add empty regions when unioning PWMA functions (#182468)

This will prevent exponential behaviour in lexicographic maximum
computation, where the `tiebreak` predicate is very likely to return
empty regions.
DeltaFile
+3-0mlir/lib/Analysis/Presburger/PWMAFunction.cpp
+3-01 files

LLVM/project b28ad9cllvm/tools/llvm-dwp Opts.td

[llvm-dwp] Fix typo in --help
DeltaFile
+1-1llvm/tools/llvm-dwp/Opts.td
+1-11 files

LLVM/project ed9e8e6clang/lib/CodeGen/TargetBuiltins ARM.cpp, clang/lib/Headers arm_acle.h

fixup! More small fixes
DeltaFile
+15-37clang/lib/Sema/SemaARM.cpp
+11-0clang/test/Sema/AArch64/pcdphint-atomic-store.c
+5-3clang/lib/CodeGen/TargetBuiltins/ARM.cpp
+2-2clang/lib/Headers/arm_acle.h
+0-1clang/test/CodeGen/arm_acle.c
+33-435 files

LLVM/project 4082092llvm/test/Transforms/LoopUnrollAndJam dependencies.ll

[LoopUnrollAndJam] Update test dependencies.ll (NFC) (#183509)

Recent on-going works to fix the correctness issues in DA will affect
some existing regression tests for passes that rely on it. As a result,
the original intent of several tests will be lost.
This patch updates `dependencies.ll` to avoid such issues and preserve
its intent. Specifically, this patch changes the loop bounds from
parameters to constants, which allows SCEV to infer no-wrap flags for
the addrecs. Also this patch updates other minor issues in the test,
such as adding pseudo codes and removing some `nuw` to avoid UB.
DeltaFile
+160-64llvm/test/Transforms/LoopUnrollAndJam/dependencies.ll
+160-641 files

LLVM/project decb5d3clang/lib/CIR/CodeGen CIRGenCleanup.cpp EHScopeStack.h, clang/test/CIR/CodeGen label-values.c nrvo.cpp

[CIR] Remove branch through cleanup fixups (#182953)

Because we are using a structured representation of cleanups in CIR, we
don't need to handle branching through cleanups during codegen. These
branches are created during CFG flattening instead. However, we had
already committed some code that copied the classic codegen behavior for
branching through cleanups. This change deletes that unneeded code.

The most significant change here is that when we encounter a return
statement we emit the return directly in the current location.

The coroutine implementation still creates a return block in the current
lexical scope and branches to that block. Cleaning up that
representation is left as future work.

The popCleanupBlock handling still has a significant amount of logic
that is carried over from the classic codegen implementation. It is left
in place until we can be sure we won't need it.
DeltaFile
+8-91clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
+0-62clang/lib/CIR/CodeGen/EHScopeStack.h
+32-14clang/lib/CIR/CodeGen/CIRGenStmt.cpp
+0-42clang/lib/CIR/CodeGen/CIRGenFunction.h
+12-16clang/test/CIR/CodeGen/label-values.c
+17-11clang/test/CIR/CodeGen/nrvo.cpp
+69-2366 files not shown
+107-27012 files

LLVM/project 361e235mlir/python/mlir/dialects ext.py, mlir/test/python/dialects ext.py

[MLIR][Python] Support op adaptor for Python-defined operations (#183528)

Previously, in #177782, we added support for dialect conversion and
generated an `OpAdaptor` subtype for every ODS-defined operation. In
this PR, we will also generate `OpAdaptor` subtypes for Python-defined
operations, so that they can be applied in dialect conversion as well.
DeltaFile
+49-1mlir/python/mlir/dialects/ext.py
+10-0mlir/test/python/dialects/ext.py
+59-12 files

LLVM/project 9b708b0mlir/lib/Conversion/ArithToSPIRV ArithToSPIRV.cpp, mlir/test/Conversion/ArithToSPIRV arith-to-spirv-unsupported.mlir

[mlir][arith-to-spirv] Fix null dereference when converting trunci/extui with tensor types (#183654)

`getScalarOrVectorConstInt` only handles `VectorType` and `IntegerType`,
returning `nullptr` for any other type (e.g., a `RankedTensorType` that
slips through after type emulation maps `tensor<Nxi16>` to
`tensor<Nxi32>` with the same destination type). The callers in
`TruncIPattern` and `ExtUIPattern` passed this null value directly to
`spirv::BitwiseAndOp::create`, causing a null-pointer dereference in
`OperandStorage`.

Similarly, the signed-extension pattern passes the result of
`getScalarOrVectorConstInt` as a shift amount to
`ShiftLeftLogicalOp::create` without a null check.

Add `if (\!mask)` / `if (\!shiftSize)` guards that return a match
failure in all three cases, converting the crash into a proper
legalization failure.

Fixes #178214
DeltaFile
+10-0mlir/test/Conversion/ArithToSPIRV/arith-to-spirv-unsupported.mlir
+6-0mlir/lib/Conversion/ArithToSPIRV/ArithToSPIRV.cpp
+16-02 files

LLVM/project ba7fc2fllvm/lib/Transforms/Vectorize VPlanTransforms.cpp LoopVectorize.cpp, llvm/test/Transforms/LoopVectorize vplan-based-stride-mv.ll

[VPlan] Implement VPlan-based stride speculation
DeltaFile
+928-1,076llvm/test/Transforms/LoopVectorize/vplan-based-stride-mv.ll
+273-150llvm/test/Transforms/LoopVectorize/VPlan/vplan-based-stride-mv.ll
+235-3llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+49-3llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+43-0llvm/lib/Transforms/Vectorize/VPlan.h
+5-5llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
+1,533-1,2377 files not shown
+1,563-1,24213 files