LLVM/project a08cc6ellvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/X86 non-schedulable-recalculate-deps.ll

Revert "[SLP]Recalculate dependencies for all cleared entries"

This reverts commit 2568ec6cb29da3db5bd7c848ec53a673c1431aea to
investigate crashes reported in https://github.com/llvm/llvm-project/commit/2568ec6cb29da3db5bd7c848ec53a673c1431aea#commitcomment-173523022.
DeltaFile
+0-61llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-recalculate-deps.ll
+3-1llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+3-622 files

LLVM/project c244168llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer crash_exceed_scheduling.ll extract-many-users-buildvector.ll

Revert "[SLP]Enable float point math ops as copyables elements."

This reverts commit 48be4d07c3ca045fe831cbdf216631202c55cd62
to investigate crashes reported in https://github.com/llvm/llvm-project/commit/2568ec6cb29da3db5bd7c848ec53a673c1431aea#commitcomment-173523022.
DeltaFile
+46-92llvm/test/Transforms/SLPVectorizer/crash_exceed_scheduling.ll
+102-26llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll
+23-67llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+38-34llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
+26-18llvm/test/Transforms/SLPVectorizer/X86/user-with-multi-copyable-ops.ll
+20-20llvm/test/Transforms/SLPVectorizer/insertelement-postpone.ll
+255-25715 files not shown
+344-35121 files

LLVM/project 3b31f8clibcxx/include/__ranges filter_view.h, libcxx/test/libcxx/ranges/range.adaptors/range.filter nodiscard.verify.cpp

[libc++][ranges] Applied `[[nodiscard]]` to `filter_view` (#173460)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.filter

Towards #172124
DeltaFile
+78-0libcxx/test/libcxx/ranges/range.adaptors/range.filter/nodiscard.verify.cpp
+10-10libcxx/include/__ranges/filter_view.h
+88-102 files

LLVM/project e797616mlir/docs Canonicalization.md

[mlir][docs] Add more examples for the "canonical form"
DeltaFile
+27-21mlir/docs/Canonicalization.md
+27-211 files

LLVM/project d5d49b8mlir/lib/Dialect/Bufferization/Transforms OneShotModuleBufferize.cpp

[mlir][bufferization] Return early in aliasing analysis  (#173529)

Fix for [mlir-opt crashes in OneShotModuleBufferize.cpp:139
#173371](https://github.com/llvm/llvm-project/issues/173371#issue-3757290676).

It just returns `failure()` if there is no `func.return` op.
DeltaFile
+5-1mlir/lib/Dialect/Bufferization/Transforms/OneShotModuleBufferize.cpp
+5-11 files

LLVM/project 64496bemlir/include/mlir/Analysis/DataFlow DenseAnalysis.h, mlir/include/mlir/Dialect/Transform/Interfaces TransformInterfaces.h

[mlir] Fix typo s/opreations/operations (#163544)

DeltaFile
+1-1mlir/test/Examples/transform/ChH/full.mlir
+1-1mlir/include/mlir/Dialect/Transform/Interfaces/TransformInterfaces.h
+1-1mlir/include/mlir/Analysis/DataFlow/DenseAnalysis.h
+3-33 files

LLVM/project 19e6fabmlir/lib/Transforms RemoveDeadValues.cpp, mlir/test/Transforms remove-dead-values.mlir

tmp commit

simple test working

draft: do not erase IR, just replace uses
DeltaFile
+183-313mlir/lib/Transforms/RemoveDeadValues.cpp
+109-44mlir/test/Transforms/remove-dead-values.mlir
+292-3572 files

LLVM/project da738b4mlir/lib/Dialect/SCF/IR SCF.cpp, mlir/test/Dialect/SCF canonicalize.mlir

[mlir][SCF] Fold unused `index_switch` results
DeltaFile
+51-1mlir/lib/Dialect/SCF/IR/SCF.cpp
+31-0mlir/test/Dialect/SCF/canonicalize.mlir
+82-12 files

LLVM/project fea8332mlir/lib/Transforms RemoveDeadValues.cpp

[mlir][Transforms][NFC] `remove-dead-values`: Simplify dropped value handling
DeltaFile
+7-14mlir/lib/Transforms/RemoveDeadValues.cpp
+7-141 files

LLVM/project 7c2bbfamlir/lib/Transforms RemoveDeadValues.cpp

[mlir][Transforms][NFC] `remove-dead-values`: Split `OperationToCleanup` (#173542)

The `callee` field does not make sense for op results. Split
`OperationToCleanup` into `OperandsToCleanup` and `ResultsToCleanup`.
DeltaFile
+9-4mlir/lib/Transforms/RemoveDeadValues.cpp
+9-41 files

LLVM/project 3018e9fmlir/lib/Transforms RemoveDeadValues.cpp

[mlir][Transforms][NFC] `remove-dead-values`: Split `OperationToCleanup`
DeltaFile
+9-4mlir/lib/Transforms/RemoveDeadValues.cpp
+9-41 files

LLVM/project 352bf3dmlir/lib/Transforms RemoveDeadValues.cpp

[mlir][Transforms][NFC] `remove-dead-values`: Use proper rewriter API (#173539)

Use the rewriter API to inline regions.
DeltaFile
+5-9mlir/lib/Transforms/RemoveDeadValues.cpp
+5-91 files

LLVM/project eb3bfeellvm/lib/Target/Mips MipsRegisterBankInfo.cpp MipsInstructionSelector.cpp, llvm/test/CodeGen/Mips/GlobalISel/llvm-ir implicit_def.ll

[Mips] Add support for Mips::GPR64Idx in MipsRegisterBankInfo (#173534)

Fix #166002.
DeltaFile
+67-65llvm/lib/Target/Mips/MipsRegisterBankInfo.cpp
+53-12llvm/test/CodeGen/Mips/GlobalISel/llvm-ir/implicit_def.ll
+6-2llvm/lib/Target/Mips/MipsInstructionSelector.cpp
+4-0llvm/lib/Target/Mips/MipsRegisterBankInfo.h
+1-1llvm/lib/Target/Mips/MipsRegisterBanks.td
+131-805 files

LLVM/project 22c01f6llvm/lib/Target/Mips MipsSEInstrInfo.cpp Mips32r6InstrInfo.td, llvm/lib/Target/Mips/Disassembler MipsDisassembler.cpp

MIPSr6: Set FSELECT Legal for f64 (#173591)

FIX: #172459
Since SETCC returns i1 in IR level, and SEL_D needs f64, currently, we
expand FSELECT to:
   MTC1_D64
   SEL
which may generate needless mfc1 and mtc1.

In this patch, we add FGR64CC Register type, and support F32 to F64 in
MipsSEInstrInfo::copyPhysReg.
DeltaFile
+98-4llvm/lib/Target/Mips/MipsSEInstrInfo.cpp
+27-34llvm/lib/Target/Mips/Mips32r6InstrInfo.td
+5-44llvm/test/CodeGen/Mips/llvm-ir/select-dbl.ll
+23-21llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td
+15-4llvm/lib/Target/Mips/Disassembler/MipsDisassembler.cpp
+1-17llvm/test/CodeGen/Mips/select.ll
+169-1249 files not shown
+210-14915 files

LLVM/project a910b2ellvm/lib/Target/Mips MipsISelLowering.cpp MipsISelLowering.h, llvm/test/CodeGen/Mips strict-fp-func.ll

[Mips] Mark function calls as possibly changing FCSR (FCR31) (#170314)

This patch does the same changes as D143001 for AArch64 and #160699 for
ARM.
DeltaFile
+11-0llvm/test/CodeGen/Mips/strict-fp-func.ll
+5-0llvm/lib/Target/Mips/MipsISelLowering.cpp
+2-0llvm/lib/Target/Mips/MipsISelLowering.h
+18-03 files

LLVM/project 42f741cclang/include/clang/Basic BuiltinsAMDGPU.def, clang/test/CodeGenHIP amdgpu-global-atomic-fadd.hip

[Clang] Remove 't' from __builtin_amdgcn_global_atomic_fadd_f32/f64 (#173480)

Allows for type checking depending on the built-in signature.
DeltaFile
+65-0clang/test/CodeGenHIP/amdgpu-global-atomic-fadd.hip
+38-0clang/test/SemaHIP/amdgpu-global-atomic-fadd-err.hip
+2-2clang/include/clang/Basic/BuiltinsAMDGPU.def
+1-1clang/test/CodeGenOpenCL/builtins-amdgcn-fp-atomics-gfx908-err.cl
+106-34 files

LLVM/project 3ed1e9cmlir/include/mlir-c Rewrite.h, mlir/lib/Bindings/Python Rewrite.cpp

[MLIR][Python] Add support of the walk pattern rewrite driver (#173562)

MLIR currently has three main pattern rewrite drivers (see
[https://mlir.llvm.org/docs/PatternRewriter/#common-pattern-drivers](https://mlir.llvm.org/docs/PatternRewriter/#common-pattern-drivers)):

* Dialect Conversion Driver
* Walk Pattern Rewrite Driver
* Greedy Pattern Rewrite Driver

Right now, we already support the greedy pattern rewrite driver in the C
API and Python bindings. This PR adds support for the walk pattern
rewrite driver. This lightweight driver, unlike the greedy driver, does
not repeatedly apply patterns; instead, it walks the IR once. API-wise,
the main change is adding the `walk_and_apply_patterns` function.

Note that the listener parameter is not supported now.
DeltaFile
+16-0mlir/test/python/rewrite.py
+12-1mlir/lib/Bindings/Python/Rewrite.cpp
+6-0mlir/lib/CAPI/Transforms/Rewrite.cpp
+6-0mlir/include/mlir-c/Rewrite.h
+40-14 files

LLVM/project 32d5a2dclang/test/AST ast-dump-APValue-addrlabeldiff.c

[clang][test] Use __INTPTR_TYPE__ in ast-dump-APValue-addrlabeldiff test

It's otherwise broken on 32 bit builders:
https://lab.llvm.org/buildbot/#/builders/154/builds/25707

Also set the triple to i686 so we can test this on 32 bit targets.
DeltaFile
+2-2clang/test/AST/ast-dump-APValue-addrlabeldiff.c
+2-21 files

LLVM/project 41fb244clang/lib/AST ExprConstant.cpp, clang/test/AST ast-dump-APValue-addrlabeldiff.c

[clang][ExprConstant] Reject integral casts of addr-label-diffs... (#171437)

... if the result is narrower than 32 bits.

See the discussion in https://github.com/llvm/llvm-project/issues/136135
DeltaFile
+6-3clang/lib/AST/ExprConstant.cpp
+4-0clang/test/CodeGenCXX/const-init.cpp
+1-1clang/test/AST/ast-dump-APValue-addrlabeldiff.c
+11-43 files

LLVM/project dadb1f1mlir/lib/Bindings/Python Rewrite.cpp

address comments
DeltaFile
+0-31mlir/lib/Bindings/Python/Rewrite.cpp
+0-311 files

LLVM/project 7dcd698llvm/lib/Target/AMDGPU SIShrinkInstructions.cpp

[AMDGPU] Make SIShrinkInstructions pass return valid changed state (#168833)

The SIShrinkInstructions run() method currently returns "false"
unconditionally. This change makes it return the actual changed state.
DeltaFile
+65-38llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
+65-381 files

LLVM/project cd810fdlldb/source/API CMakeLists.txt

[lldb/cmake] create staging directory for headers (#173427)

copy_command can either become `cmake -E copy`, which handles target
directory creation automatically, or `unifdef >` which fails without
explicitly created directory and consequently so does
version-header-fix.py later on.
DeltaFile
+6-1lldb/source/API/CMakeLists.txt
+6-11 files

LLVM/project ae9f229clang-tools-extra/clang-tidy doc8.ini

[clang-tidy] Remove `allow-long-titles` option in doc8 config (#173519)

There is a bug in `doc8` where `allow-long-titles` option incorrectly
skipping non-title lines. So we have to disable it before they solve the
problem and make a new release.
DeltaFile
+2-3clang-tools-extra/clang-tidy/doc8.ini
+2-31 files

LLVM/project 15543b2mlir/lib/AsmParser AttributeParser.cpp, mlir/test/IR invalid-builtin-attributes.mlir

[mlir] Emit an error when dense i1 array values are not `true` or `false` (#173533)

Fixes #173373.
DeltaFile
+10-0mlir/test/IR/invalid-builtin-attributes.mlir
+2-0mlir/lib/AsmParser/AttributeParser.cpp
+12-02 files

LLVM/project 016c0b5llvm/lib/Target/Mips Mips32r6InstrInfo.td MipsSEISelLowering.cpp, llvm/test/CodeGen/Mips fcmp.ll

MIPSr6: Set SETCC CondCode not supported by hardware to Expand (#173541)

With the current custom match rules, we may generate code like
```
  cmp.ueq.s $f0, $f12, $f14
  mfc1 $1, $f0
  not $1, $1
  mtc1 $1, $f0
  sel.s $f0, $f14, $f12
  jrc $ra
```
With Expand, we can get:
```
  cmp.ueq.s $f0, $f12, $f14
  sel.s $f0, $f12, $f14
  jrc $ra
```
DeltaFile
+3-12llvm/test/CodeGen/Mips/llvm-ir/select-flt.ll
+3-11llvm/lib/Target/Mips/Mips32r6InstrInfo.td
+6-6llvm/test/CodeGen/Mips/fcmp.ll
+8-0llvm/lib/Target/Mips/MipsSEISelLowering.cpp
+3-3llvm/test/CodeGen/Mips/llvm-ir/select-dbl.ll
+2-2llvm/lib/Target/Mips/MicroMips32r6InstrInfo.td
+25-346 files

LLVM/project 617b446libcxx/include utility, libcxx/include/__utility integer_sequence.h

[libc++] Implement P1789R3: Library Support for Expansion Statements (#167184)

[P1789R3](https://isocpp.org/files/papers/P1789R3.pdf) was accepted for
C++26 through LWG motion 14 at the 2025 Kona meeting. This patch
implements it, along with tests and documentation changes.

Closes #167268

---------

Co-authored-by: Tsche <che at pydong.org>
DeltaFile
+58-0libcxx/test/std/utilities/intseq/intseq.binding/tuple_interface.compile.pass.cpp
+54-0libcxx/test/std/utilities/intseq/intseq.binding/structured_binding.pass.cpp
+34-0libcxx/test/std/utilities/intseq/intseq.binding/tuple_interface.verify.cpp
+26-0libcxx/include/__utility/integer_sequence.h
+12-0libcxx/include/utility
+4-1libcxx/utils/generate_feature_test_macro_components.py
+188-17 files not shown
+205-713 files

LLVM/project f4bd619llvm/lib/Target/PowerPC PPCInstrInfo.cpp

[PowerPC] Check isPhysical() before converting Register to MCRegister. NFC (#173531)

DeltaFile
+6-6llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
+6-61 files

LLVM/project 6c1db06mlir/cmake/modules AddMLIRPython.cmake

comments
DeltaFile
+13-6mlir/cmake/modules/AddMLIRPython.cmake
+13-61 files

LLVM/project 8518d2cllvm/cmake/modules HandleLLVMOptions.cmake

[cmake] Simplify LLVM_ON_WIN32 logic (#173525)

This is just a vestige of an old llvm-config.h configuration macro that
was removed long ago. LLVM_ON_UNIX remains, but its main purpose is to
enable targetting bare metal through -DCMAKE_SYSTEM_NAME=Generic (see
1422f1bf2b1).
DeltaFile
+6-14llvm/cmake/modules/HandleLLVMOptions.cmake
+6-141 files

LLVM/project af8ad58mlir/cmake/modules AddMLIRPython.cmake

comments
DeltaFile
+10-6mlir/cmake/modules/AddMLIRPython.cmake
+10-61 files