LLVM/project db5b43f — llvm/lib/Analysis BasicAliasAnalysis.cpp, llvm/test/Analysis/BasicAA separate_storage.ll

[BasicAA] Restrict cross-iteration separate_storage hints (#241381)

A `separate_storage` assumption applies to its operand values when it
executes. If the operands change across loop iterations, it does not
imply that an operand from one iteration is separate from the other
operand in another iteration. BasicAA can nevertheless use it to return
`NoAlias` in cross-iteration queries, causing GVN and loop-vectorization
miscompiles.

After finding a matching assumption that is valid in the query context,
require both underlying objects to be invariant according to
`isValueEqualInPotentialCycles()` before using it. Queries without a
usable assumption skip these checks. Same-iteration queries and
hints about loop-invariant objects remain supported.

Fixes #241378.

Assisted-by: Claude Code
Assisted-by: OpenAI Codex
DeltaFile
+99-0llvm/test/Analysis/BasicAA/separate_storage.ll
+79-0llvm/test/Analysis/LoopAccessAnalysis/separate-storage-cross-iteration.ll
+5-0llvm/lib/Analysis/BasicAliasAnalysis.cpp
+183-03 files

LLVM/project c09479a — llvm/lib/Target/LoongArch LoongArchMergeBaseOffset.cpp

[LoongArch] Cast to unsigned before LSHing in LoongArchMergeBaseOffsetOpt::detectAndFoldOffset() (#242656)

Make one step ahead of #242761 to fix a latent, similar problem in
`LoongArchMergeBaseOffsetOpt::detectAndFoldOffset`, as suggested by
@heiher.
DeltaFile
+1-1llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
+1-11 files

LLVM/project 914d0bb — llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV rvp-scalar.ll

[RISCV][P-ext] Restrict P widening shift legalization to left shifts (#242773)

The RV32 P-extension custom legalization for i64 shifts shares a path
for `SHL`, `SRL`, and `SRA`. Its known-bits checks select `WSLL` or
`WSLA` when the input fits in an unsigned or signed 32-bit value, but
both instructions perform a left shift.

This commit restricts this selection to `SHL` so right shifts use the
existing legalization paths.

Closes https://github.com/llvm/llvm-project/issues/242771
DeltaFile
+96-0llvm/test/CodeGen/RISCV/rvp-scalar.ll
+7-5llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+103-52 files

FreeBSD/ports 3b5add4 — astro/mepo Makefile

astro/mepo: Fix WWW to correct page

PR:             300764
Approved by:    arrowd (co-mentor)
DeltaFile
+2-1astro/mepo/Makefile
+2-11 files

LLVM/project 5856115 — lld/ELF Driver.cpp, lld/MachO Driver.cpp

[LLD] Disable bitcode verification in release builds (#242663)

Similar to the plugin for other linkers, disable running the IR verifier
on bitcode input files. This improves ThinLTO link times by 1.5-1.8% and
stage2-clang build times by 0.57%.
DeltaFile
+4-0lld/wasm/Driver.cpp
+4-0lld/MachO/Driver.cpp
+4-0lld/ELF/Driver.cpp
+12-03 files

FreeBSD/src e23c13a — sys/dev/pci pci_dw.h pci_dw.c

pci_dw: Honor the max-link-speed property

The root port reports in LNKCAP the highest link speed the core was
synthesized for, which can be more than the PHY behind it supports.  On
the RK3568 pcie2x1 the root port advertises 8GT/s while the PHY only
does 5GT/s.  The link stays at 2.5GT/s after the directed speed change.

Read max-link-speed from the device tree and write it to the Max Link
Speed field of LNKCAP and to the Target Link Speed field of LNKCTL2
before requesting the speed change.  Nothing changes when the property
is absent.

Tested on a Quartz64 Model A with a Samsung 970 EVO Plus NVMe drive: the
link now trains at 5GT/s and the sequential throughput goes from 200MB/s
to 400MB/s.

Differential Revision:  https://reviews.freebsd.org/D61014
DeltaFile
+54-0sys/dev/pci/pci_dw.c
+1-0sys/dev/pci/pci_dw.h
+55-02 files

FreeBSD/src 495c899 — sys/dev/mii mcommphy.c

mcommphy: Set the 10/100 TX delay of the YT8511

The TX clock delay of the YT8511 is split in two registers.  The delay
used in gigabit mode is in the clock gating page and was already set
from the RGMII mode, but the one used in the 10/100 modes is in the next
page and was left at its reset value of 2ns.  With a phy-mode that does
not ask for a TX delay in the PHY, the MAC provides it and the PHY adds
another 2ns in the 10/100 modes.

Set it like the gigabit one, like Linux does.

Tested on a Quartz64 Model A, gigabit and 100Mbit links.

Reviewed by:    oh
Differential Revision:  https://reviews.freebsd.org/D61015
DeltaFile
+13-0sys/dev/mii/mcommphy.c
+13-01 files

FreeBSD/src 3dcd4a2 — usr.bin/top machine.h display.h

top: implement pid highlighting

Implement PID highlighting. This can be activated by pressing
'L' and entering a PID to highlight. Highlighting can be cleared
by entering '+' as a PID to highlight. This feature is inspired by
the OpenBSD top, which uses 'P' key for that. We have to use 'L'
because 'P' is already used for toggling per-CPU statistics.

Reviewed by:    kib
Obtained from:  OpenBSD (partially)
MFC after:      2 weeks
Differential Revision:  https://reviews.freebsd.org/D61090
DeltaFile
+47-11usr.bin/top/top.c
+40-4usr.bin/top/display.c
+8-1usr.bin/top/top.1
+4-1usr.bin/top/machine.c
+2-2usr.bin/top/machine.h
+2-2usr.bin/top/display.h
+103-212 files not shown
+105-228 files

LLVM/project 2bf7876 — llvm/lib/Target/Hexagon HexagonTargetMachine.h HexagonTargetMachine.cpp

Hexagon: Use LastSubtargetCache in getSubtargetImpl

Migrate to the new common target pattern

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+14-5llvm/lib/Target/Hexagon/HexagonTargetMachine.cpp
+13-0llvm/lib/Target/Hexagon/HexagonTargetMachine.h
+27-52 files

FreeBSD/src cd7a2cf — share/man/man4 ip.4

ip.4: Fix markup typos

At least INADDR_ANY and IP_MULTICAST_IF are definitely Dv's.

MFC after:      3 days
DeltaFile
+2-2share/man/man4/ip.4
+2-21 files

FreeBSD/src 22a4f5d — share/man/man4 ip.4

ip.4: Fix ip_mreqn imr_address field name

This manual used imr_interface when describing the second field of
struct ip_mreqn, but sys/netinet/in.h names that field imr_address.
Note that ip_mreq below does have imr_interface which is unchanged.

PR:             300680
MFC after:      3 days
Reviewed by:    ziaee
Closes:         https://github.com/freebsd/freebsd-src/pull/2553
DeltaFile
+4-4share/man/man4/ip.4
+4-41 files

NetBSD/pkgsrc LaGF3Sl — lang/rust Makefile

   rust: restore SunOS fix lost in 1.99.1 update
VersionDeltaFile
1.372+4-1lang/rust/Makefile
+4-11 files

NetBSD/pkgsrc j4uUaIG — devel/php-xdebug Makefile

   php-xdebug: reset MAINTAINER (retired)
VersionDeltaFile
1.64+2-2devel/php-xdebug/Makefile
+2-21 files

LLVM/project a071fd2 — mlir/docs/Dialects SPIR-V.md, mlir/lib/Target/SPIRV/Deserialization Deserializer.cpp

[mlir][SPIR-V] Deserialize null array and struct constants (#231626)

Deserialize OpConstantNull for arrays and literal structs by recursively
building the ArrayAttr representation used by spirv.Constant. Preserve
rejection of unsupported constituent types and report the nested type
when a null value cannot be represented.

Allow OpConstantComposite with no constituents for empty structs so that
imported null empty structs can round-trip. Diagnose OpUndef
constituents explicitly instead of reporting them as missing normal
constants.

Document the supported representations and add binary deserialization,
round-trip, and negative tests for aggregate constants.

---------

Co-authored-by: Claude Fable 5.2 <noreply at anthropic.com>
DeltaFile
+91-3mlir/unittests/Dialect/SPIRV/DeserializationTest.cpp
+35-0mlir/test/Target/SPIRV/constant.mlir
+35-0mlir/test/Target/SPIRV/constant-null.mlir
+20-9mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
+5-0mlir/docs/Dialects/SPIR-V.md
+186-125 files

NetBSD/pkgsrc VRj2CEX — doc CHANGES-2026

   doc: Updated x11/xmag to 1.0.9
VersionDeltaFile
1.8021+2-1doc/CHANGES-2026
+2-11 files

NetBSD/pkgsrc 3Wl6VTB — x11/xmag distinfo Makefile

   xmag: update to 1.0.9.

   Alan Coopersmith (6):
         Improve man page formatting
         man page: fix warnings from `mandoc -T lint` and `groff -rCHECKSTYLE=10`
         gitlab CI: drop the ci-fairy check-mr job
         Strip trailing whitespace from source files
         meson: Add option to build with meson
         xmag 1.0.9
VersionDeltaFile
1.16+4-5x11/xmag/Makefile
1.12+4-4x11/xmag/distinfo
+8-92 files

LLVM/project bdc06cd — llvm/lib/Target/AMDGPU SIOptimizeExecMaskingPreRA.cpp, llvm/test/CodeGen/AMDGPU optimize-exec-masking-pre-ra.mir

AMDGPU: Fix double interval removal in SIOptimizeExecMaskingPreRA

An exec copy folded after its use was erased from an s_endpgm block
had its interval removed twice. Fixes an assert after 6a483810f0da.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+47-0llvm/test/CodeGen/AMDGPU/optimize-exec-masking-pre-ra.mir
+1-0llvm/lib/Target/AMDGPU/SIOptimizeExecMaskingPreRA.cpp
+48-02 files

LLVM/project 7e5ae23 — llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV rvp-widening-sub-acc.ll rvp-widening-add-acc.ll

[RISCV][P-ext] Use EVT in `combinePExtWidening*Acc` (#242687)

Fixes https://github.com/llvm/llvm-project/issues/242679.
The previous implementation assumes a simple value type, which is wrong
for weird-sized integers.
Assisted-by: Codex
DeltaFile
+14-0llvm/test/CodeGen/RISCV/rvp-widening-sub-acc.ll
+14-0llvm/test/CodeGen/RISCV/rvp-widening-add-acc.ll
+2-2llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+30-23 files

LLVM/project ef6087d — llvm/lib/Target/AArch64/GISel AArch64PostLegalizerCombiner.cpp AArch64InstructionSelector.cpp, llvm/test/CodeGen/AArch64/GlobalISel direct-hasoneuse-select-debug.mir direct-hasoneuse-postlegalizer-debug.mir

[AArch64][GlobalISel] Ignore debug uses in direct single-use combines (#237644)
DeltaFile
+61-0llvm/test/CodeGen/AArch64/GlobalISel/direct-hasoneuse-postlegalizer-debug.mir
+50-0llvm/test/CodeGen/AArch64/GlobalISel/direct-hasoneuse-select-debug.mir
+2-2llvm/lib/Target/AArch64/GISel/AArch64PostLegalizerCombiner.cpp
+2-2llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp
+115-44 files

OpenBSD/ports jnZ335l — devel/py-qt-builder distinfo Makefile, devel/py-qt-builder/pkg PLIST

   devel/py-qt-builder: update to 1.21, adds support for qt 6.12.

   see https://pyqt-builder.readthedocs.io/en/stable/releases.html#v1-21-0
   switches RDEP from qtbase to qt6base, probably because it just has the
   right magic to find our suffixed qmake..

   built all the direct consumers without issues (py-qt5, py-qt6,
   py-qscintilla, py-qtwebengine, py-qt6webengine, qgis...)
VersionDeltaFile
1.14+25-0devel/py-qt-builder/pkg/PLIST
1.11+2-2devel/py-qt-builder/distinfo
1.19+2-2devel/py-qt-builder/Makefile
+29-43 files

OpenBSD/ports 129izZf — devel/py-sip Makefile distinfo

   devel/py-sip: update to 6.17.3.

   see https://python-sip.readthedocs.io/en/stable/releases.html#v6-17-3
VersionDeltaFile
1.33+2-2devel/py-sip/distinfo
1.74+1-1devel/py-sip/Makefile
+3-32 files

OpenBSD/src e3hK67T — sys/net if_veb.c

   let veb_ports_insert fail if there's no memory
VersionDeltaFile
1.77+12-3sys/net/if_veb.c
+12-31 files

FreeBSD/ports 03e0697 — graphics/qgis-ltr pkg-plist

graphics/qgis-ltr: Fix once more pkg-plist

During the correction process in the previous commit, the entry for
qgis_mapserv.fcgi was accidentally updated to newer versions of QGIS.

MFH:            2026Q4
(cherry picked from commit 16fb65e819caab5ca63e82029ac232c22e512f68)
DeltaFile
+1-1graphics/qgis-ltr/pkg-plist
+1-11 files

LLVM/project 89b9876 — llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/CodeGen/AMDGPU int_to_fp_narrow_i64.ll

DAG: Allow narrowing sint_to_fp source to the sext source type

Same as 241c94e3919e for uint_to_fp. The narrowing fold skipped
sint_to_fp (sext x) when the narrow type matched x, so sitofp (sext i32
to i64) was expanded as a 64-bit conversion on AMDGPU.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+10-257llvm/test/CodeGen/AMDGPU/int_to_fp_narrow_i64.ll
+0-5llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+10-2622 files

LLVM/project cf1893e — llvm/test/CodeGen/AMDGPU int_to_fp_narrow_i64.ll

AMDGPU: Add more sitofp of sext from i32 tests

These currently get the full i64 conversion expansion.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+543-0llvm/test/CodeGen/AMDGPU/int_to_fp_narrow_i64.ll
+543-01 files

LLVM/project 90a9cc6 — llvm/lib/Target/M68k M68kTargetMachine.h M68kTargetMachine.cpp

M68k: Use LastSubtargetCache in getSubtargetImpl

Migrate to the new common target pattern.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+15-4llvm/lib/Target/M68k/M68kTargetMachine.cpp
+13-0llvm/lib/Target/M68k/M68kTargetMachine.h
+28-42 files

LLVM/project d8cd686 — llvm/lib/Target/CSKY CSKYTargetMachine.h CSKYTargetMachine.cpp

CSKY: Use LastSubtargetCache in getSubtargetImpl

Migrate to the new common pattern for targets to cache the last
result.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+20-10llvm/lib/Target/CSKY/CSKYTargetMachine.cpp
+15-0llvm/lib/Target/CSKY/CSKYTargetMachine.h
+35-102 files

FreeBSD/ports 16fb65e — graphics/qgis-ltr pkg-plist

graphics/qgis-ltr: Fix once more pkg-plist

During the correction process in the previous commit, the entry for
qgis_mapserv.fcgi was accidentally updated to newer versions of QGIS.

MFH:            2026Q4
DeltaFile
+1-1graphics/qgis-ltr/pkg-plist
+1-11 files

LLVM/project 4b6e6e9 — llvm/lib/Target/SystemZ SystemZTargetMachine.h SystemZTargetMachine.cpp

SystemZ: Use LastSubtargetCache in getSubtargetImpl

Migrate to the new common pattern and infrastructure.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+20-8llvm/lib/Target/SystemZ/SystemZTargetMachine.cpp
+14-0llvm/lib/Target/SystemZ/SystemZTargetMachine.h
+34-82 files

LLVM/project 457d241 — llvm/lib/Target/WebAssembly WebAssemblyTargetMachine.h WebAssemblyTargetMachine.cpp

WebAssembly: Use LastSubtargetCache in getSubtargetImpl

Cache the last subtarget and use the new common pattern for targets.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+18-5llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+15-0llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.h
+33-52 files