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

LLVM/project 15bf707llvm/lib/Transforms/Vectorize VPlanUtils.cpp

[VPlan] Support truncated IVs in getSCEVExprForVPValue. (NFCI)

Handle truncated inductions in getSCEVExprForVPValue. This means we are
able to compute SCEV expressions for more inductions used in the
VPlan-based cost model, which should produce costs matching the legacy
cost model.
DeltaFile
+5-1llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
+5-11 files

LLVM/project fc70729mlir/cmake/modules AddMLIRPython.cmake

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

LLVM/project 7b2c5damlir/cmake/modules AddMLIRPython.cmake

remove undefs
DeltaFile
+2-1mlir/cmake/modules/AddMLIRPython.cmake
+2-11 files

LLVM/project 31c3bd1mlir/cmake/modules AddMLIRPython.cmake

remove undefs
DeltaFile
+0-3mlir/cmake/modules/AddMLIRPython.cmake
+0-31 files

LLVM/project f49fb1amlir/examples/standalone/test lit.cfg.py, mlir/examples/standalone/test/python smoketest.py

check standalone
DeltaFile
+5-7mlir/examples/standalone/test/lit.cfg.py
+4-4mlir/examples/standalone/test/python/smoketest.py
+3-1mlir/test/Examples/standalone/test.wheel.toy
+1-0mlir/test/Examples/standalone/test.toy
+13-124 files

LLVM/project 02c82e3mlir/examples/standalone/test/python smoketest.py, mlir/test/Examples/standalone test.wheel.toy test.toy

check standalone
DeltaFile
+4-4mlir/examples/standalone/test/python/smoketest.py
+3-1mlir/test/Examples/standalone/test.wheel.toy
+1-0mlir/test/Examples/standalone/test.toy
+8-53 files

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

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

Patch enables support for float point math operations as base
instructions for copyable elements. It also fixes some scheduling
issues, found during testing

Reviewers: hiraditya, RKSimon

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

Recommit after revert in 9008922707915a6632fb74ed301bce11d8775e2a
DeltaFile
+92-46llvm/test/Transforms/SLPVectorizer/crash_exceed_scheduling.ll
+26-102llvm/test/Transforms/SLPVectorizer/X86/vect_copyable_in_binops.ll
+67-23llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+34-38llvm/test/Transforms/SLPVectorizer/extract-many-users-buildvector.ll
+18-26llvm/test/Transforms/SLPVectorizer/X86/user-with-multi-copyable-ops.ll
+20-20llvm/test/Transforms/SLPVectorizer/insertelement-postpone.ll
+257-25515 files not shown
+351-34421 files

LLVM/project 0ba7790mlir/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 3016679mlir/include/mlir/Dialect/OpenACC/Transforms Passes.td, mlir/lib/Dialect/OpenACC/Transforms ACCIfClauseLowering.cpp CMakeLists.txt

[mlir][acc] Add ACCIfClauseLowering pass (#173573)

This pass lowers OpenACC compute constructs with `if` clauses into
`scf.if` with separate device and host paths.

Before:
```
  %d = acc.copyin varPtr(%a : memref<10xf32>) -> memref<10xf32>
  acc.parallel dataOperands(%d) if(%cond) {
    acc.loop control(%i : i32) = (%c0 : i32) to (%c10 : i32) step (%c1 :
i32) {
      // loop body
      acc.yield
    }
    acc.yield
  }
  acc.copyout accPtr(%d) to varPtr(%a)
```


    [20 lines not shown]
DeltaFile
+245-0mlir/lib/Dialect/OpenACC/Transforms/ACCIfClauseLowering.cpp
+224-0mlir/test/Dialect/OpenACC/acc-if-clause-lowering.mlir
+35-0mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
+1-0mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
+505-04 files

LLVM/project 16ed5ec.ci generate_test_report_lib.py premerge_advisor_explain.py

[CI] Finish Python Version TODOs

There were a couple TODOs in .ci related to Python typing changes after
v3.10. Now that Windows is python version matched to Linux at Python
3.12, we do not need to keep using the old syntax.
DeltaFile
+2-4.ci/generate_test_report_lib.py
+1-5.ci/premerge_advisor_explain.py
+3-92 files

LLVM/project 88039f8llvm/include/llvm/IR PassManager.h

[PassManager] Use ListSeparator. NFC (#173462)

Change-Id: I40fa748d2c188171caccff7cb418c6be74c22fb8
DeltaFile
+4-4llvm/include/llvm/IR/PassManager.h
+4-41 files

LLVM/project 30c6bbellvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/X86 alternate-op-constant.ll

[SLP]Check if the value has uselist before asking for uses

Need to check if the value has uselist before asking for uses to fix
a compiler crash

Fixes #173569
DeltaFile
+17-0llvm/test/Transforms/SLPVectorizer/X86/alternate-op-constant.ll
+2-0llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+19-02 files

LLVM/project 966ae44llvm/lib/Target/AMDGPU SIRegisterInfo.td

[NFC][AMDGPU] Improve the alignment of some TableGen code (#173524)

DeltaFile
+75-75llvm/lib/Target/AMDGPU/SIRegisterInfo.td
+75-751 files

LLVM/project 6c9ca02mlir/include/mlir/Dialect/OpenACC/Transforms ACCSpecializePatterns.h, mlir/lib/Dialect/OpenACC/Transforms ACCSpecializeForHost.cpp ACCSpecializeForDevice.cpp

[mlir][acc] Add ACCSpecializeForDevice and ACCSpecializeForHost passe… (#173527)

[mlir][acc] Add ACCSpecializeForDevice and ACCSpecializeForHost passes

Add two new transformation passes for specializing OpenACC IR for
different execution contexts:

ACCSpecializeForDevice:
- Strips OpenACC constructs that are invalid in device code
- Replaces data entry ops with their var operands
- Unwraps regions from compute/data constructs
- Erases runtime operations (init, shutdown, wait, etc.)

This pass is applicable in two contexts:
1. Functions marked with `acc.specialized_routine` attribute, where the
entire function body is device code
2. Non-specialized functions, where patterns are applied only to `acc`
operations nested inside compute constructs (parallel, serial, kernels),
not to the constructs themselves

    [25 lines not shown]
DeltaFile
+471-0mlir/lib/Dialect/OpenACC/Transforms/ACCSpecializeForHost.cpp
+404-0mlir/test/Dialect/OpenACC/acc-specialize-for-host.mlir
+204-0mlir/test/Dialect/OpenACC/acc-specialize-for-device.mlir
+172-0mlir/lib/Dialect/OpenACC/Transforms/ACCSpecializeForDevice.cpp
+157-0mlir/test/Dialect/OpenACC/acc-specialize-for-host-fallback.mlir
+122-0mlir/include/mlir/Dialect/OpenACC/Transforms/ACCSpecializePatterns.h
+1,530-06 files not shown
+1,705-7512 files

LLVM/project 07a9daelibcxx/include future, libcxx/test/std/thread/futures/futures.async async.verify.cpp async.pass.cpp

[libc++] Implement LWG3476: Remove incorrect decay-copy in std::async and add QoI static_assert improvements (#173363)

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

This patch implements LWG3476 by removing the incorrect decay-copy in
std::async. The decay-copy was being applied twice, once explicitly via
_LIBCPP_AUTO_CAST and once in __async_func's tuple constructor.
(https://github.com/llvm/llvm-project/issues/143828)

It also adds static_assert mandates to std::thread and std::async (which
were already implicitly enforced) and expands test coverage.
DeltaFile
+96-0libcxx/test/std/thread/thread.jthread/cons.verify.cpp
+94-0libcxx/test/std/thread/thread.threads/thread.thread.class/thread.thread.constr/F.verify.cpp
+71-0libcxx/test/std/thread/futures/futures.async/async.verify.cpp
+25-0libcxx/test/std/thread/futures/futures.async/async.pass.cpp
+25-0libcxx/test/std/thread/thread.jthread/cons.func.token.pass.cpp
+10-6libcxx/include/future
+321-63 files not shown
+342-79 files

LLVM/project 46d235dllvm/test/CodeGen/AArch64 atomic-ops-lse.ll trampoline.ll

[AArch64] Consider MOVaddr* as cheap if fuse-adrp-add

These pseudo-instructions usually translate into a pair of adrp+add and
have a single cycle latency on some micro-architectures.
DeltaFile
+88-88llvm/test/CodeGen/AArch64/atomic-ops-lse.ll
+43-34llvm/test/CodeGen/AArch64/trampoline.ll
+55-0llvm/test/CodeGen/AArch64/cheap-as-a-move-MOVaddr.ll
+34-19llvm/test/CodeGen/AArch64/machine-outliner-loh.ll
+14-12llvm/test/CodeGen/AArch64/cfguard-checks.ll
+12-10llvm/test/CodeGen/AArch64/atomic-ops.ll
+246-16310 files not shown
+291-19416 files

LLVM/project cdcc5d4llvm/lib/Target/AVR AVRInstrInfo.td AVRExpandPseudoInsts.cpp

[AVR] Set mayLoad/mayStore flags of some load/store instructions (#172986)

fixes https://github.com/llvm/llvm-project/issues/156782
DeltaFile
+75-57llvm/lib/Target/AVR/AVRInstrInfo.td
+3-3llvm/lib/Target/AVR/AVRExpandPseudoInsts.cpp
+78-602 files