LLVM/project 8632f54llvm/test/CodeGen/AMDGPU fadd.f16.ll strict_fsub.f16.ll, llvm/test/CodeGen/AMDGPU/GlobalISel llvm.amdgcn.div.fmas.ll

[AMDGPU] Testing cleanup in prep for true16 test upstreaming (#209888)

Some small cleanup of a few tests in preparation for True16 test
upstreaming, synchronizes with cleanups that already happened downstream
DeltaFile
+0-121llvm/test/CodeGen/AMDGPU/fadd.f16.ll
+0-106llvm/test/CodeGen/AMDGPU/strict_fsub.f16.ll
+2-2llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.div.fmas.ll
+2-2293 files

LLVM/project 55ff2d9llvm/lib/Target/AMDGPU SIFoldOperands.cpp

Apply suggestion from @arsenm

Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>
DeltaFile
+1-1llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+1-11 files

LLVM/project afb54ccllvm/include/llvm/Transforms Scalar.h, llvm/include/llvm/Transforms/Utils UnrollLoop.h

[LoopUnroll] Remove `Count` from `UnrollingPreferences` (NFC) (#203413)

`UnrollingPreferences` is a way for targets to specify their preferences
to the unroller. The unroller uses `UnrollingPreferences` to guide what
kinds of unrolling to consider while also co-opting it to encode the
specific kind of unrolling it's chosen to attempt.

One preference targets can set is the `Count`, or the number of times
the loop in question will be unrolled:
```
    /// A forced unrolling factor (the number of concatenated bodies of the
    /// original loop in the unrolled loop body). When set to 0, the unrolling
    /// transformation will select an unrolling factor based on the current cost
    /// threshold and other factors.
    unsigned Count;
```
However, there are no in-tree uses of this functionality, and it does
not work. [Loop
peeling](https://github.com/llvm/llvm-project/blob/112fb2f79d7983be203957cad6b148865182ed47/llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp#L1072)

    [21 lines not shown]
DeltaFile
+96-128llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp
+58-49llvm/lib/Transforms/Scalar/LoopUnrollAndJamPass.cpp
+6-7llvm/include/llvm/Transforms/Utils/UnrollLoop.h
+3-4llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+4-3llvm/test/Transforms/LoopUnroll/RISCV/runtime-unroll-max-trip-count.ll
+3-3llvm/include/llvm/Transforms/Scalar.h
+170-1941 files not shown
+170-1997 files

LLVM/project bad1a9dllvm/lib/Target/AMDGPU AMDGPUISelDAGToDAG.cpp, llvm/test/CodeGen/AMDGPU packed-fp64.ll

[AMDGPU] Relax SGPR splat selection for PK_*64

These instructions replicate SGPR operands into high 64-bit channel
w/o opsel.
DeltaFile
+33-43llvm/test/CodeGen/AMDGPU/packed-fp64.ll
+6-4llvm/lib/Target/AMDGPU/AMDGPUISelDAGToDAG.cpp
+39-472 files

LLVM/project 0fb9ea7llvm/lib/Target/AMDGPU SIFoldOperands.cpp, llvm/test/CodeGen/AMDGPU fold-imm-pk64.mir

[AMDGPU] Fold immediate from REQ_SEQUENCE (imm, IMPLICIT_DEF)
DeltaFile
+71-0llvm/test/CodeGen/AMDGPU/fold-imm-pk64.mir
+14-5llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
+85-52 files

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

[mlir][xegpu] Change inst-data of load/load_matrix to fit lane layout (#209661)

The consumer layout may have multiple distribution of lane data, but
load_gather/load_matrix only allow one single distribution, change their
inst_data according to the single distribution of lane data.
DeltaFile
+38-9mlir/test/Dialect/XeGPU/propagate-layout-inst-data.mlir
+3-12mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
+41-212 files

LLVM/project 6fcf3b3llvm/lib/Transforms/AggressiveInstCombine AggressiveInstCombine.cpp, llvm/test/Transforms/AggressiveInstCombine/X86 lower-table-based-log2-basics.ll

[AggressiveInstCombine] Emit branchless MSB index for de Bruijn ctlz tables (#210633)

When the de Bruijn table's zero element is the bit width minus one it
computes the most significant bit index. We can do that without a branch
using ~ctlz(X) & (InputBits - 1), so the select is no longer needed.

Alive: https://alive2.llvm.org/ce/z/9WsUXd

Fixes #208989
DeltaFile
+23-13llvm/lib/Transforms/AggressiveInstCombine/AggressiveInstCombine.cpp
+3-4llvm/test/Transforms/AggressiveInstCombine/X86/lower-table-based-log2-basics.ll
+26-172 files

LLVM/project 30c0454llvm/include/llvm/IR RuntimeLibcallsImpl.td, llvm/test/TableGen RuntimeLibcallEmitter-predicate-dag.td RuntimeLibcallEmitter-predicate-dag-errors.td

RuntimeLibcalls: Reuse AssemblerPredicate's operators for libcalls (#210651)

Allow specifying RuntimeLibcall's availability in terms of individual
triple properties composed with logical operators.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+60-0llvm/test/TableGen/RuntimeLibcallEmitter-predicate-dag.td
+24-35llvm/utils/TableGen/Common/SubtargetFeatureInfo.cpp
+56-0llvm/utils/TableGen/Basic/PredicateExpanderDag.cpp
+42-0llvm/test/TableGen/RuntimeLibcallEmitter-predicate-dag-errors.td
+41-0llvm/utils/TableGen/Basic/PredicateExpanderDag.h
+29-2llvm/include/llvm/IR/RuntimeLibcallsImpl.td
+252-373 files not shown
+291-409 files

NetBSD/src aBHvhrJlibexec/ld.elf_so tls.c xmalloc.c

   ld.elf_so: Fix static TLS alignment on variant II platforms.

   Only affects obscure architectures like x86, though.

   Sprinkle assertions to make sure this breaks in other ways on other
   architectures too, like variant I, or variant II with _lwp_gettcb().
   Fair's fair, right?

   XXX We should consider verifying that every Elf_Phdr::p_align is
   reasonable (i.e., is a power of two, or is zero but only if p_memsz
   is also zero), and that p_filesz <= p_memsz, in headers.c for the
   main object and in map_object.c for other objects.

   PR bin/60469: bin/60469: assertion "ALIGNED_P(q, obj->tlsalign)"
   failed: file "/usr/src/libexec/ld.elf_so/tls.c", line 333
VersionDeltaFile
1.30+80-9libexec/ld.elf_so/tls.c
1.28+4-2libexec/ld.elf_so/xmalloc.c
+84-112 files

NetBSD/src Zj8GSypdistrib/sets/lists/base shl.mi, distrib/sets/lists/comp mi

   bind: Conditionalize libraries on MKBIND.

   PR toolchain/60468: external/mpl/bind/lib: misuse of build_install,
   missing MKBIND conditionals
VersionDeltaFile
1.1047+17-17distrib/sets/lists/base/shl.mi
1.2527+11-11distrib/sets/lists/comp/mi
1.411+7-7distrib/sets/lists/debug/shl.mi
1.318+3-1lib/Makefile
+38-364 files

LLVM/project 9208fc3lldb/source/Protocol/MCP Server.cpp, lldb/tools/lldb-mcp lldb-mcp.cpp Multiplexer.cpp

[lldb-mcp] Host managed debug sessions in-process (#210450)

Let a client create and own debug sessions with session_create and
session_close. Rather than spawn a separate lldb per session, lldb-mcp
hosts them in its own process, communicating over a loopback socket to
keep things uniform with external lldb instances.

The benefits of this approach are:

- There is no child-process machinery, so nothing needs to be spawned
and cleaned up.
- It works without the need for an external lldb binary.
- It avoids the deadlock by reading stdin through a raw fd instead of
the FILE* stdio path that previously hung the Debugger constructor
contending on the REPL's stdin lock.
- The architecture stays uniform between in-process and external
sessions.

The trade-off is no isolation, so an LLDB crash takes down lldb-mcp

    [2 lines not shown]
DeltaFile
+94-125lldb/tools/lldb-mcp/lldb-mcp.cpp
+188-7lldb/unittests/tools/lldb-mcp/MultiplexerTest.cpp
+146-40lldb/tools/lldb-mcp/Multiplexer.cpp
+41-12lldb/tools/lldb-mcp/Multiplexer.h
+16-2lldb/source/Protocol/MCP/Server.cpp
+5-2lldb/tools/lldb-mcp/CMakeLists.txt
+490-1881 files not shown
+494-1887 files

LLVM/project d139c82mlir/include/mlir/Dialect/XeGPU/Transforms XeGPULayoutImpl.h, mlir/lib/Dialect/XeGPU/Transforms XeGPULayoutImpl.cpp XeGPUPropagateLayout.cpp

[MLIR][XeGPU] Add local forward layout propagation (#208932)

Backward layout propagation only assigns layouts to values that are
(transitively) consumed by an anchor op. A value whose only consumer is,
e.g., the next iteration of a loop is left without a layout.

Add a local forward-fill step, run after the backward materialization
walk in propagateLayouts(): it visits ops in producer-first order and,
for any un-laid-out vector result, infers the layout from the op's
already-known operand layouts via a new
inferResultLayoutFromSourceForNonAnchorOp dispatcher (covering
elementwise, transpose, and shape_cast; other ops are left as TODO),
then stamps it with setDistributeLayoutAttr.

---------

Co-authored-by: Claude Opus 4.8 <noreply at anthropic.com>
DeltaFile
+167-0mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
+50-86mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
+53-0mlir/include/mlir/Dialect/XeGPU/Transforms/XeGPULayoutImpl.h
+35-0mlir/test/Dialect/XeGPU/propagate-layout-subgroup.mlir
+305-864 files

LLVM/project e38b48bllvm/utils/gn/secondary/compiler-rt/test/hwasan BUILD.gn

Merge branch 'main' into users/jroelofs/spr/mcaarch64-add-cfi_llvm_set_ra_sign_state-for-pauth_lr
DeltaFile
+1-1llvm/utils/gn/secondary/compiler-rt/test/hwasan/BUILD.gn
+1-11 files

FreeBSD/src aa58821usr.bin/ministat ministat.c

ministat: revert "parse comma used as decimal delimiter"

This partially reverts commit 77a201b1705dbd97ea9ebe5b25b1d4ddac8a7d38.

Requested by:   des, fuz
DeltaFile
+2-3usr.bin/ministat/ministat.c
+2-31 files

LLVM/project b76df57clang/test/CodeGen arm-neon-vst.c, clang/test/CodeGen/AArch64 neon-intrinsics.c neon-ldst-one.c

rebase

Created using spr 1.3.7
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+63-91llvm/test/CodeGen/AMDGPU/udivrem24.ll
+1,906-2,1968 files not shown
+2,099-2,49314 files

LLVM/project 893767cclang/test/CodeGen arm-neon-vst.c, clang/test/CodeGen/AArch64 neon-intrinsics.c neon-ldst-one.c

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+63-91llvm/test/CodeGen/AMDGPU/udivrem24.ll
+1,906-2,1968 files not shown
+2,099-2,49314 files

LLVM/project df3c678clang/test/CodeGen arm-neon-vst.c, clang/test/CodeGen/AArch64 neon-intrinsics.c neon-ldst-one.c

rebase

Created using spr 1.3.7
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+63-91llvm/test/CodeGen/AMDGPU/udivrem24.ll
+1,906-2,1968 files not shown
+2,099-2,49314 files

LLVM/project 19aa2b3clang/test/CodeGen arm-neon-vst.c, clang/test/CodeGen/AArch64 neon-intrinsics.c neon-ldst-one.c

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+63-91llvm/test/CodeGen/AMDGPU/udivrem24.ll
+1,906-2,1968 files not shown
+2,099-2,49314 files

LLVM/project 95cabd6llvm/utils/gn/secondary/compiler-rt/test/hwasan BUILD.gn

[gn] hwasan follow-up to 1df8a2c9aac26211 (#210781)
DeltaFile
+1-1llvm/utils/gn/secondary/compiler-rt/test/hwasan/BUILD.gn
+1-11 files

LLVM/project 6e8a65aclang/test/CodeGen arm-neon-vst.c, clang/test/CodeGen/AArch64 neon-intrinsics.c neon-ldst-one.c

rebase

Created using spr 1.3.7
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+63-91llvm/test/CodeGen/AMDGPU/udivrem24.ll
+1,906-2,1968 files not shown
+2,099-2,49314 files

LLVM/project 8971fcbclang/test/CodeGen arm-neon-vst.c, clang/test/CodeGen/AArch64 neon-intrinsics.c neon-ldst-one.c

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+63-91llvm/test/CodeGen/AMDGPU/udivrem24.ll
+1,906-2,1968 files not shown
+2,099-2,49314 files

LLVM/project 365a64aclang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp, clang/test/CodeGen arm-neon-vst.c

[CIR][AArch64] Upstream store (vst1_*/vst1q_*) NEON builtins (#209347)

Related to https://github.com/llvm/llvm-project/issues/185382

CIR lowering for store intrinsics (`vst1_*`/`vst1q_*`)
(https://arm-software.github.io/acle/neon_intrinsics/advsimd.html#store)

Port tests:
- `clang/test/CodeGen/AArch64/neon-intrinsics.c`
-  `clang/test/CodeGen/AArch64/neon-ldst-one.c`
-  `clang/test/CodeGen/AArch64/poly64.c`
-  `clang/test/CodeGen/arm-neon-vst.c`

to `clang/test/CodeGen/AArch64/neon/store.c`
DeltaFile
+1,486-0clang/test/CodeGen/AArch64/neon/store.c
+4-1,011clang/test/CodeGen/arm-neon-vst.c
+0-660clang/test/CodeGen/AArch64/neon-intrinsics.c
+0-381clang/test/CodeGen/AArch64/neon-ldst-one.c
+61-13clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+0-24clang/test/CodeGen/AArch64/poly64.c
+1,551-2,0896 files

LLVM/project 59e6776llvm/lib/Target/AArch64 AArch64PointerAuth.cpp

[llvm][AArch64] Refactor emitPACCFI into decoratePACWithCFI/emitAUTCFI. NFC (#209948)
DeltaFile
+84-59llvm/lib/Target/AArch64/AArch64PointerAuth.cpp
+84-591 files

NetBSD/pkgsrc jEEfNj1doc TODO

   doc/TODO: + p5-Dancer2-2.1.0, rsyslog-8.2606.0.
VersionDeltaFile
1.27624+3-2doc/TODO
+3-21 files

LLVM/project a8fd451llvm/lib/Transforms/Vectorize LoadStoreVectorizer.cpp, llvm/test/Transforms/LoadStoreVectorizer/NVPTX merge-across-side-effects.ll

[LSV] Don't vectorize load chains across ordered atomics (#208631)

When the LoadStoreVectorizer finds a chain of loads to merge into a
single vectorized load, it hoists all of the constituent loads up to the
location of the first load in the chain.

This is obviously not safe if there are any may-alias stores in the
middle of the chain. But it's *also* not safe if there are `acquire`
*loads* in the middle of the chain.

There's a similar problem with stores. A chain of stores is vectorized
by merging them all into the final store in the chain. This is not safe
if there is an intervening `release` store.
DeltaFile
+353-53llvm/test/Transforms/LoadStoreVectorizer/NVPTX/merge-across-side-effects.ll
+4-2llvm/lib/Transforms/Vectorize/LoadStoreVectorizer.cpp
+357-552 files

LLVM/project 0bb0407flang/lib/Lower Bridge.cpp, llvm/test/CodeGen/AMDGPU lower-buffer-fat-pointers-contents-legalization.ll lower-buffer-fat-pointers-contents-legalization-alignment.ll

rebase

Created using spr 1.3.7
DeltaFile
+0-428flang/lib/Lower/Bridge.cpp
+176-176llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
+129-129llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
+241-0mlir/lib/Dialect/EmitC/Transforms/MLGOAddReflectionMap.cpp
+114-109llvm/tools/llvm-readobj/ELFDumper.cpp
+215-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+875-842300 files not shown
+2,988-2,259306 files

LLVM/project ccf3219flang/lib/Lower Bridge.cpp, llvm/test/CodeGen/AMDGPU lower-buffer-fat-pointers-contents-legalization.ll lower-buffer-fat-pointers-contents-legalization-alignment.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-428flang/lib/Lower/Bridge.cpp
+176-176llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
+129-129llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
+241-0mlir/lib/Dialect/EmitC/Transforms/MLGOAddReflectionMap.cpp
+114-109llvm/tools/llvm-readobj/ELFDumper.cpp
+215-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+875-842300 files not shown
+2,988-2,259306 files

LLVM/project acfea48flang/lib/Lower Bridge.cpp, llvm/test/CodeGen/AMDGPU lower-buffer-fat-pointers-contents-legalization.ll lower-buffer-fat-pointers-contents-legalization-alignment.ll

rebase

Created using spr 1.3.7
DeltaFile
+0-428flang/lib/Lower/Bridge.cpp
+176-176llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
+129-129llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
+241-0mlir/lib/Dialect/EmitC/Transforms/MLGOAddReflectionMap.cpp
+114-109llvm/tools/llvm-readobj/ELFDumper.cpp
+215-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+875-842300 files not shown
+2,988-2,259306 files

LLVM/project 932a9e5flang/lib/Lower Bridge.cpp, llvm/test/CodeGen/AMDGPU lower-buffer-fat-pointers-contents-legalization.ll lower-buffer-fat-pointers-contents-legalization-alignment.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+0-428flang/lib/Lower/Bridge.cpp
+176-176llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
+129-129llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
+241-0mlir/lib/Dialect/EmitC/Transforms/MLGOAddReflectionMap.cpp
+114-109llvm/tools/llvm-readobj/ELFDumper.cpp
+215-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+875-842300 files not shown
+2,988-2,259306 files

LLVM/project 406f2f9flang/lib/Lower Bridge.cpp, llvm/test/CodeGen/AMDGPU lower-buffer-fat-pointers-contents-legalization.ll lower-buffer-fat-pointers-contents-legalization-alignment.ll

rebase

Created using spr 1.3.7
DeltaFile
+0-428flang/lib/Lower/Bridge.cpp
+176-176llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization.ll
+129-129llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-contents-legalization-alignment.ll
+241-0mlir/lib/Dialect/EmitC/Transforms/MLGOAddReflectionMap.cpp
+114-109llvm/tools/llvm-readobj/ELFDumper.cpp
+215-0llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
+875-842300 files not shown
+2,988-2,259306 files