LLVM/project e1cdff9 — llvm/lib/Target/AMDGPU SIISelLowering.cpp, llvm/test/CodeGen/AMDGPU idot4s.ll idot4-test.ll

[AMDGPU] Extract byte lanes of a split vector from the 32-bit source

After a <4 x i8> is split into i16 halves, a byte lane is extended
from an i16 shift of a truncate. Rewrite it on the 32-bit source as an
and of srl or a sign_extend_inreg of srl, which select to a single bit
field extract.

Uniform zero and any extends are left alone, their i16 shift is already
promoted to i32.
DeltaFile
+154-227llvm/test/CodeGen/AMDGPU/v4i8-byte-lane-ext.ll
+108-134llvm/test/CodeGen/AMDGPU/idot4u.ll
+79-87llvm/test/CodeGen/AMDGPU/min.ll
+47-62llvm/test/CodeGen/AMDGPU/idot4-test.ll
+33-48llvm/test/CodeGen/AMDGPU/idot4s.ll
+64-0llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+485-5584 files not shown
+515-59210 files

LLVM/project 3105aff — llvm/test/CodeGen/AMDGPU v4i8-byte-lane-ext.ll

[AMDGPU] Precommit test for byte lane extension after vector split
DeltaFile
+747-0llvm/test/CodeGen/AMDGPU/v4i8-byte-lane-ext.ll
+747-01 files

LLVM/project 8ab3862 — llvm/lib/Target/PowerPC/GISel PPCInstructionSelector.cpp

PowerPC/GlobalISel: Stop setting kill flags on selected instructions

There is no point in maintaining these before register allocation
anymore.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+18-18llvm/lib/Target/PowerPC/GISel/PPCInstructionSelector.cpp
+18-181 files

OPNSense/ports 30a9ad2 — opnsense/ndp-proxy-go Makefile distinfo, opnsense/ndp-proxy-go/files ndp-proxy-go.8

opnsense/ndp-proxy-go: new version 1.1.0
DeltaFile
+15-6opnsense/ndp-proxy-go/files/ndp-proxy-go.8
+5-5opnsense/ndp-proxy-go/distinfo
+1-1opnsense/ndp-proxy-go/Makefile
+21-123 files

LLVM/project 12888ae — llvm/lib/Target/RISCV RISCVISelLowering.cpp

RISCV: Stop setting kill flags on virtual registers before FinalizeISel

Kill flags have no remaining use before register allocation and are
stripped by LiveIntervals.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+2-2llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+2-21 files

LLVM/project 0283f49 — llvm/lib/Analysis InstructionSimplify.cpp, llvm/lib/Transforms/InstCombine InstCombineCalls.cpp

[InstCombine] Ensure i1 smulh(x,1) fold to zero (#229004)

Alive2: https://alive2.llvm.org/ce/z/ZEDAx8
DeltaFile
+16-0llvm/test/Transforms/InstCombine/umulh.ll
+16-0llvm/test/Transforms/InstCombine/smulh.ll
+4-4llvm/lib/Analysis/InstructionSimplify.cpp
+1-1llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+37-54 files

LLVM/project 0859c3c — mlir/lib/Conversion/TosaToLinalg TosaToLinalgNamed.cpp, mlir/test/Conversion/TosaToLinalg tosa-to-linalg-named.mlir

[mlir][tosa] Preserve all-NaN max-pool windows (#225744)

Initialize IGNORE-mode floating-point max pooling with NaN and select
the first finite input. This keeps an all-NaN window NaN instead of
returning the lowest finite value.

Assited-by: Codex
DeltaFile
+82-0mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
+23-11mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
+105-112 files

LLVM/project c638eb8 — clang/include/clang/CodeGenUtils FunctionUtils.h CodeGenUtils.h, clang/lib/CodeGenUtils ModuleUtils.cpp ClassUtils.cpp

[CIR][CodeGen][NFC] Retire the CodeGenUtils.h catch-all header

Moves the last helpers out of `CodeGenUtils.h` into `ClassUtils.h`,
`ModuleUtils.h`, `TargetUtils.h` and `FunctionUtils.h` (`checkTargetFeatures`,
since it came from CodeGenFunction.cpp) and deletes the header. Only moves code
already on main, so it can be dropped on its own.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+0-254clang/lib/CodeGenUtils/CodeGenUtils.cpp
+120-0clang/lib/CodeGenUtils/FunctionUtils.cpp
+78-0clang/lib/CodeGenUtils/ClassUtils.cpp
+0-73clang/include/clang/CodeGenUtils/CodeGenUtils.h
+37-0clang/lib/CodeGenUtils/ModuleUtils.cpp
+24-2clang/include/clang/CodeGenUtils/FunctionUtils.h
+259-32916 files not shown
+307-34122 files

LLVM/project f6905dd — clang/include/clang/CodeGenUtils TargetUtils.h, clang/lib/CIR/CodeGen TargetInfo.h TargetInfo.cpp

[CIR][CodeGen][NFC] Share requiresAMDGPUProtectedVisibility

Deduplicates `requiresAMDGPUProtectedVisibility` between CIR and classic CodeGen
into `TargetUtils.h`. The shared version takes a bool for "currently hidden" in
place of the `llvm::GlobalValue` and `cir::VisibilityKind` the two callers
passed.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+3-15clang/lib/CodeGen/Targets/AMDGPU.cpp
+0-14clang/lib/CIR/CodeGen/Targets/AMDGPU.cpp
+14-0clang/lib/CodeGenUtils/TargetUtils.cpp
+6-2clang/lib/CIR/CodeGen/TargetInfo.cpp
+6-0clang/include/clang/CodeGenUtils/TargetUtils.h
+0-4clang/lib/CIR/CodeGen/TargetInfo.h
+29-356 files

LLVM/project ef9b67d — clang/include/clang/CodeGenUtils RecordLayoutUtils.h, clang/lib/CIR/CodeGen CIRGenRecordLayoutBuilder.cpp

[CIR][CodeGen][NFC] Share hasOwnStorage

Deduplicates `hasOwnStorage` between CIR and classic CodeGen into
`RecordLayoutUtils.h`.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+4-17clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
+1-16clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
+12-0clang/lib/CodeGenUtils/RecordLayoutUtils.cpp
+5-0clang/include/clang/CodeGenUtils/RecordLayoutUtils.h
+22-334 files

LLVM/project 0938711 — clang/include/clang/CodeGenUtils TargetUtils.h, clang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp

[CIR][CodeGen][NFC] Share hasExtraNeonArgument

Deduplicates `hasExtraNeonArgument` between CIR and classic CodeGen into
`TargetUtils.h`.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+2-38clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+3-34clang/lib/CodeGen/TargetBuiltins/ARM.cpp
+25-0clang/lib/CodeGenUtils/TargetUtils.cpp
+6-0clang/include/clang/CodeGenUtils/TargetUtils.h
+36-724 files

LLVM/project bb0a638 — clang/include/clang/CodeGenUtils RecordLayoutUtils.h, clang/lib/CIR/CodeGen CIRGenRecordLayoutBuilder.cpp

[CIR][CodeGen][NFC] Share the bit-field and vbase layout ABI predicates

Deduplicates `isDiscreteBitFieldABI` and `isOverlappingVBaseABI` between CIR and
classic CodeGen into `RecordLayoutUtils.h`, as free functions taking the
`ASTContext`.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+6-24clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
+3-19clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
+12-0clang/include/clang/CodeGenUtils/RecordLayoutUtils.h
+9-0clang/lib/CodeGenUtils/RecordLayoutUtils.cpp
+30-434 files

LLVM/project 0346761 — clang/include/clang/CodeGenUtils TargetUtils.h, clang/lib/CIR/CodeGen/Targets AArch64.cpp

[CIR][CodeGen][NFC] Share the Arm SME inlinability check

Deduplicates `ArmSMEInlinability` and `getArmSMEInlinability` between CIR and
classic CodeGen into a new `TargetUtils.h`.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+18-60clang/lib/CodeGen/Targets/AArch64.cpp
+3-52clang/lib/CIR/CodeGen/Targets/AArch64.cpp
+51-0clang/include/clang/CodeGenUtils/TargetUtils.h
+50-0clang/lib/CodeGenUtils/TargetUtils.cpp
+1-0clang/lib/CodeGenUtils/CMakeLists.txt
+123-1125 files

LLVM/project e234ef8 — clang/include/clang/CodeGenUtils RecordLayoutUtils.h, clang/lib/CIR/CodeGen TargetInfo.cpp

[CIR][CodeGen][NFC] Share isEmptyFieldForLayout and isEmptyRecordForLayout

Deduplicates `isEmptyFieldForLayout` and `isEmptyRecordForLayout` between CIR
and classic CodeGen into a new `RecordLayoutUtils.h`. The 25 callers now name
them as `CodeGenUtils::isEmptyFieldForLayout` and
`CodeGenUtils::isEmptyRecordForLayout`, like the other shared helpers.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+45-0clang/lib/CodeGenUtils/RecordLayoutUtils.cpp
+0-34clang/lib/CIR/CodeGen/TargetInfo.cpp
+34-0clang/include/clang/CodeGenUtils/RecordLayoutUtils.h
+0-33clang/lib/CodeGen/ABIInfoImpl.cpp
+7-6clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
+6-5clang/lib/CodeGen/CGExprConstant.cpp
+92-7811 files not shown
+116-11017 files

LLVM/project c850dd8 — llvm/lib/Target/VE VEISelLowering.cpp

VE: Stop setting kill flags on virtual registers before FinalizeISel

There is no point in maintaining kill flags before register allocation
anymore.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+30-30llvm/lib/Target/VE/VEISelLowering.cpp
+30-301 files

LLVM/project df323e0 — clang/lib/CodeGen CGDebugInfo.cpp, clang/test/DebugInfo/CXX fwd-decl-for-call-site.cpp

[clang][DebugInfo] Make fwd decl call site debug info consistent for methods (#222263)

Prior to this patch, using `EmitFunctionDecl` for methods results in
different fields and flags than if `getFunctionDeclaration` (which calls
`CreateCXXMemberFunction`) is used. This can arbitrarily result in
differences depending on the shape of the source code (missing
`scopeLine` or access flags in some cases which are present in others).
DeltaFile
+13-3clang/lib/CodeGen/CGDebugInfo.cpp
+15-0clang/test/DebugInfo/CXX/fwd-decl-for-call-site.cpp
+28-32 files

LLVM/project a803686 — mlir/lib/Dialect/Affine/IR MemorySlot.cpp, mlir/lib/Dialect/LLVMIR/IR LLVMMemorySlot.cpp

[mlir][MemorySlotInterfaces] Rename `elemType` to `valueType` (NFC) (#228466)

The name `elemType` is potentially confusing, as "element type" already
has a well-defined meaning for types such as MemRef and Vector.

As of #211880, `MemorySlotInterfaces` also supports vector ops, and the
type represented by `elemType` can itself be a Vector type. In that case, the
Vector is the value stored in the memory slot, while its element type is
a different type.

This PR renames `elemType` to `valueType` to make this distinction
explicit.
DeltaFile
+26-22mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
+11-11mlir/test/lib/Dialect/Test/TestOpDefs.cpp
+8-8mlir/lib/Dialect/SCF/IR/MemorySlot.cpp
+3-3mlir/lib/Dialect/Vector/Transforms/MemorySlotOpInterfaceImpl.cpp
+3-3mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
+2-2mlir/lib/Dialect/Affine/IR/MemorySlot.cpp
+53-494 files not shown
+57-5310 files

LLVM/project 1ba2792 — llvm/lib/Target/VE VEISelLowering.cpp, llvm/test/CodeGen/VE/Scalar alloca_aligned.ll alloca.ll

VE: Remove broken nested call frame around dynamic stack allocation

lowerDYNAMIC_STACKALLOC wrapped the __ve_grow_stack call and the
GETSTACKTOP stack-pointer read in a zero-sized CALLSEQ_START/CALLSEQ_END
pair. The call it contains emits its own CALLSEQ, so the outer bracket
only produced a nested ADJCALLSTACKDOWN 0 / ADJCALLSTACKUP 0 around the
inner ADJCALLSTACKDOWN / ADJCALLSTACKUP which is illegal.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+0-7llvm/lib/Target/VE/VEISelLowering.cpp
+1-1llvm/test/CodeGen/VE/Scalar/alloca_aligned.ll
+1-1llvm/test/CodeGen/VE/Scalar/alloca.ll
+2-93 files

LLVM/project b5f31db — clang/include/clang/Interpreter Interpreter.h, clang/lib/Interpreter Interpreter.cpp

Revert "[clang-repl] Initialized HIP environment for clang-repl (#217582) (#228976)

This reverts commit d220d5e8239db918bd68f404dae589385a8029e8.

The change landed without review from the clang-repl code owners and its
test fails in some build configurations (see the post-commit discussion
on #217582). Revert so the work can go through a proper review, as
agreed with the author.

This is not a pure revert: DeviceOffloadTest.cpp, added in #226975 and
extended in #226977 on top of the reverted commit, is ported back to the
CUDA-specific API (CreateCudaHost, CreateCudaDevice, createWithCUDA).
The CUDA fixes from those two commits are kept.

Supersedes #228088.
DeltaFile
+20-45clang/tools/clang-repl/ClangRepl.cpp
+22-35clang/lib/Interpreter/Interpreter.cpp
+1-53clang/test/lit.cfg.py
+7-32clang/include/clang/Interpreter/Interpreter.h
+8-8clang/unittests/Interpreter/DeviceOffloadTest.cpp
+0-11clang/test/Interpreter/HIP/hip-environment.hip
+58-1841 files not shown
+58-1867 files

LLVM/project bf067ea — llvm/test/CodeGen/VE/Scalar store_stk.ll stackframe_align.ll, llvm/test/CodeGen/VE/Vector store_stk_stvm.ll load_stk_ldvm.ll

VE: Use splitAt in expandExtendStackPseudo

Replace the manual block-splitting in expandExtendStackPseudo with
MachineBasicBlock::splitAt. Reduces boilerplate, but there's some
block renumbering churn in the output.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+57-57llvm/test/CodeGen/VE/Scalar/atomic_swap.ll
+57-57llvm/test/CodeGen/VE/Scalar/atomic_cmp_swap.ll
+48-48llvm/test/CodeGen/VE/Vector/store_stk_stvm.ll
+48-48llvm/test/CodeGen/VE/Vector/load_stk_ldvm.ll
+42-42llvm/test/CodeGen/VE/Scalar/store_stk.ll
+42-42llvm/test/CodeGen/VE/Scalar/stackframe_align.ll
+294-29460 files not shown
+753-75666 files

LLVM/project ff30b67 — llvm/lib/Target/VE VEInstrInfo.cpp, llvm/test/CodeGen/VE/Scalar builtin_sjlj.ll

VE: Compute live-ins after splitting for EXTEND_STACK expansion

expandExtendStackPseudo splits its block but left the new blocks without
live-in lists, so their uses of registers live across the split are
rejected by -verify-machineinstrs.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+5-0llvm/lib/Target/VE/VEInstrInfo.cpp
+2-2llvm/test/CodeGen/VE/Scalar/builtin_sjlj.ll
+7-22 files

LLVM/project b741f5f — lldb/docs/resources build.md

[lldb][docs] Fix the Windows Python build options (#225465)

The Windows section of `build.md` incorrectly marks `PYTHON_HOME` as
required, and the example value `C:\Python35` is below the 3.11 minimum
on Windows.

Furthermore, nothing said that `LLDB_EMBED_PYTHON_HOME` (which is `ON`
by default on Windows) suppresses `LLDB_ENABLE_PYTHON_LIMITED_API`, and
that setting both is a configure error.
DeltaFile
+44-12lldb/docs/resources/build.md
+44-121 files

LLVM/project 253db65 — llvm/lib/Target/VE VEISelLowering.cpp

VE: Fix ill-typed setjmp result in emitEHSjLjSetJmp (#221549)

Partially fixes machine verifier failures in existing tests;
they still fail due to other issues.

emitEHSjLjSetJmp materialized the 0/1 return values with LEAzii, which
defines an i64 register, into vregs with the i32 result register class.
This ill-typed MIR is rejected by -verify-machineinstrs.

Materialize the values in i64 and copy the low 32 bits (sub_i32) into
the i32 result. NFC on the emitted code.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+13-4llvm/lib/Target/VE/VEISelLowering.cpp
+13-41 files

LLVM/project 7c68efa — bolt/lib/Core DIEBuilder.cpp, bolt/test/X86 dwarf5-form-ref-udata.s

[BOLT][DWARF] Fix unit layout with forward DW_FORM_ref_udata references (#226076)

finalizeDIEs() sizes a DW_FORM_ref_udata reference from the referenced
DIE's current offset. For a forward reference, that is still the input
section offset set by allocDIE(), not the unit-relative offset that is
emitted later. If their ULEB128 sizes differ, the unit length and all
following DIE offsets are wrong.

GNU as emits such references in DWARF 5 units for assembly files, e.g.
libgcc's AArch64 outline-atomics helpers.

Emit these references as DW_FORM_ref4 instead, as BOLT already does for
type references in location expressions.

We hit this in Julia's CI, which BOLTs `libLLVM.so` and
`libjulia-internal.so` on aarch64-linux. Those link in libgcc's `lse.S`
units, and symbolizing a backtrace printed

```

    [7 lines not shown]
DeltaFile
+59-17bolt/test/X86/dwarf5-form-ref-udata.s
+6-2bolt/lib/Core/DIEBuilder.cpp
+65-192 files

LLVM/project 3b5f2e7 — mlir/lib/Conversion/TosaToLinalg TosaToLinalg.cpp, mlir/test/Conversion/TosaToLinalg tosa-to-linalg.mlir

[mlir][tosa] Honor input_unsigned when lowering tosa.cast to linalg (#228233)

The TosaToLinalg lowering ignored the `input_unsigned` attribute of
`tosa.cast` (added in #215838), so unsigned inputs were converted as
signed: an i8 0xFF cast to i32 gave -1 instead of 255.

When the attribute is set, use `arith.uitofp` for int -> float and
`arith.extui` for widening int -> int, since the TOSA 1.1 CAST
pseudocode zero-extends the input. Narrowing and int -> bool are
unchanged.

AI disclosure: I found this bug with a testing harness built with Claude
(Claude Code). The bug were reviewed by me . The fix and the test were
built and tested by me



Assisted-by: Claude
DeltaFile
+23-0mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
+14-0mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
+37-02 files

LLVM/project 1a2f7bc — mlir/lib/Dialect/Tosa/Transforms TosaDecomposeTransposeConv.cpp, mlir/test/Dialect/Tosa tosa-decompose-transpose-conv.mlir

[mlir][tosa] Fix copy-paste error (#228402)

Assisted-by: Codex
DeltaFile
+15-0mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
+1-1mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
+16-12 files

LLVM/project e31aed1 — mlir/include/mlir/Dialect/Tosa/IR TosaOps.td, mlir/test/Dialect/Tosa ops.mlir

[mlir][tosa] Allow i64 accumulators (#228427)

This can be helpful for incremental lowerings to/from TOSA.
DeltaFile
+9-0mlir/test/Dialect/Tosa/ops.mlir
+1-1mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
+10-12 files

NetBSD/pkgsrc uNCHHe7 — doc pkg-vulnerabilities

   pkg-vulnerabilities: add recent tnef entries

   No further details available except the Red Hat Bugzilla references.
   Assume not fixed.
VersionDeltaFile
1.800+4-1doc/pkg-vulnerabilities
+4-11 files

LLVM/project a4075b3 — clang/include/clang/CodeGenUtils FunctionUtils.h CodeGenUtils.h, clang/lib/CodeGenUtils ModuleUtils.cpp ClassUtils.cpp

[CIR][CodeGen][NFC] Retire the CodeGenUtils.h catch-all header

Moves the last helpers out of `CodeGenUtils.h` into `ClassUtils.h`,
`ModuleUtils.h`, `TargetUtils.h` and `FunctionUtils.h` (`checkTargetFeatures`,
since it came from CodeGenFunction.cpp) and deletes the header. Only moves code
already on main, so it can be dropped on its own.

Assisted-by: Claude Code (Claude Fable 5.1).
DeltaFile
+0-254clang/lib/CodeGenUtils/CodeGenUtils.cpp
+120-0clang/lib/CodeGenUtils/FunctionUtils.cpp
+78-0clang/lib/CodeGenUtils/ClassUtils.cpp
+0-73clang/include/clang/CodeGenUtils/CodeGenUtils.h
+37-0clang/lib/CodeGenUtils/ModuleUtils.cpp
+24-2clang/include/clang/CodeGenUtils/FunctionUtils.h
+259-32916 files not shown
+307-34122 files

LLVM/project ace8fe6 — llvm/test/CodeGen/AMDGPU legalize-amdgcn.raw.ptr.buffer.store.ll legalize-amdgcn.raw.buffer.load.ll, llvm/test/CodeGen/AMDGPU/GlobalISel inst-select-load-flat.mir inst-select-load-global.mir

AMDGPU: Stop setting kill flags before FinalizeISel

Work on removing all pre-RA flag management. Kill flags should eventually be
removed. Pre-regalloc passes no longer depend on them, LiveIntervals strips them
and VirtRegRewriter re-introduces them.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+108-108llvm/test/CodeGen/AMDGPU/legalize-amdgcn.raw.ptr.buffer.load.ll
+81-81llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global.mir
+81-81llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-global-old-legalization.mir
+76-76llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-load-flat.mir
+70-70llvm/test/CodeGen/AMDGPU/legalize-amdgcn.raw.buffer.load.ll
+66-66llvm/test/CodeGen/AMDGPU/legalize-amdgcn.raw.ptr.buffer.store.ll
+482-482114 files not shown
+1,577-1,580120 files