LLVM/project 2f4a2d5clang/include/clang/ScalableStaticAnalysis BuiltinAnchorSources.def, clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformations CppBoundedBuffers.h

[clang][ssaf] Add cpp-bounded-buffers source transformation (#210457)

Adds the first built-in transformation, `cpp-bounded-buffers`, which
rewrites buffers -- raw pointers and arrays -- into bounded types
(`bounded_ptr<T>`, `bounded_array<T, N>`) using the reachability
computed by `UnsafeBufferReachableAnalysis`.

The transformation collects every reachable pointer/array declarator and
function return declared in the translation unit, then either rewrites
it or records a SARIF note explaining why it did not. Shapes that are
not yet handled -- multi-level pointers, pointer to array, references to
pointers, multi-dimensional and unbounded arrays, multi-declarator
groups, macro-spelled declarators, and trailing return types -- are
reported rather than rewritten, and a final pass reports any reachable
entity that was neither rewritten nor otherwise accounted for. Edits are
validated and committed atomically, so a declarator whose edit cannot be
formed (such as a raw array of function pointers) is reported instead of
mangled.


    [4 lines not shown]
DeltaFile
+672-0clang/unittests/ScalableStaticAnalysis/SourceTransformation/CppBoundedBuffersTest.cpp
+611-0clang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations/CppBoundedBuffers.cpp
+83-0clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformations/CppBoundedBuffers.h
+2-0clang/lib/ScalableStaticAnalysis/SourceTransformation/CMakeLists.txt
+1-0clang/unittests/ScalableStaticAnalysis/CMakeLists.txt
+1-0clang/include/clang/ScalableStaticAnalysis/BuiltinAnchorSources.def
+1,370-06 files

LLVM/project f75f48e.github/workflows release-binaries.yml

workflows/release-binaries: Install Wix on Windows ARM64 (#217707)

Wix is used for generating the installer and is not installed by default
on Windows ARM64.
DeltaFile
+8-0.github/workflows/release-binaries.yml
+8-01 files

LLVM/project 232b40cmlir/include/mlir/Bindings/Python IRAttributes.h

[MLIR][Python] Don't throw in PyDenseArrayIterator dunderNext

Signal iterator exhaustion via PyErr_SetNone(PyExc_StopIteration) instead
of throwing nanobind::stop_iteration(), matching the pattern used by the
other iterators in the Python bindings (see #175377). Raising a C++
exception to signal StopIteration incurs stack-unwinding cost on every
loop, which PyDenseArrayIterator was still paying. The return type changes
to nanobind::typed<nanobind::object, EltTy> so the method can return a null
object after setting the Python error indicator.
DeltaFile
+10-5mlir/include/mlir/Bindings/Python/IRAttributes.h
+10-51 files

FreeBSD/ports 41a6e5dwww/elgg distinfo Makefile

www/elgg: Update to 7.0.5
DeltaFile
+0-54,792www/elgg/pkg-plist
+16-1www/elgg/Makefile
+3-3www/elgg/distinfo
+19-54,7963 files

FreeBSD/ports a707329www/groupoffice distinfo Makefile

www/groupoffice: Update to 26.0.42
DeltaFile
+0-14,907www/groupoffice/pkg-plist
+9-4www/groupoffice/Makefile
+3-3www/groupoffice/distinfo
+12-14,9143 files

FreeBSD/doc 6d7c5dedocumentation/static/pgpkeys gshapiro.key

Renew public key (extend expiration date)
DeltaFile
+276-421documentation/static/pgpkeys/gshapiro.key
+276-4211 files

LLVM/project 2678a67llvm/lib/Target/RISCV RISCVISelLowering.cpp RISCVInstrInfoP.td

[RISCV] Merge RISCVISD::PMUL_H_B01 and RISCVISD::PMUL_W_H01. (#218046)

Same for RISCVISD::PMULU_H_B01/PMULU_W_H01 and
RISCVISD::PMULSU_H_B00/PMULSU_W_H00.

We can distquish by types, we don't need different nodes for each type.
DeltaFile
+13-18llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+3-4llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+16-222 files

FreeBSD/src 27f0491sys/dev/ixgbe if_ix.c

ixgbe: Probe additional controller variants

The shared base code already selects and configures the 82598 BX,
82599 KR, 82599 SFP Express Module, X552 XFI, X553 QSFP, and X553 N
QSFP device IDs, but the FreeBSD probe table omits them while DPDK lists
them.

MFC after:      2 weeks
Sponsored by:   BBOX.io
DeltaFile
+12-0sys/dev/ixgbe/if_ix.c
+12-01 files

FreeBSD/src 915c628sys/dev/e1000 if_em.h e1000_defines.h

igb: Report 82580 memory ECC errors

82580 exposes clear-on-read, saturating corrected error counters for
the receive and transmit packet buffers.  Its two PCIe command memories
expose RW1C indications for uncorrectable ECC errors.

Sample the packet buffer counters and PCIe indications from the regular
hardware statistics update.  Fatal recovery samples the PCIe indications
from the serialized admin path rather than the interrupt filter.  Thus,
either the regular statistics pass or recovery reads and clears each
indication, but they cannot both account it.  Also preserve indications
observed while initialization is completing.

Expose the exact packet buffer error total and observed PCIe command
memory indications under the memory_errors sysctl node.  Multiple PCIe
errors between samples can collapse into one indication per memory.

Validated on an Intel I340-T2 (82580, revision 1).  A clean boot and
three down/up cycles left the packet-buffer, PCIe, and region-specific

    [10 lines not shown]
DeltaFile
+56-12sys/dev/e1000/if_em.c
+1-0sys/dev/e1000/if_em.h
+1-0sys/dev/e1000/e1000_defines.h
+58-123 files

FreeBSD/src 5e56a1fsys/dev/e1000 if_em.h e1000_regs.h

e1000: Recover from 82580 memory errors

82580 reports fatal parity and uncorrectable ECC errors through ICR.FER
and its four region PEIND hierarchy.  Region specific status registers
identify PCIe, DMA transmit, DMA receive, DMA host, and LAN port
memories that can leave traffic stopped.

Enable the documented DMA, PCIe, packet-buffer, and host-owned LAN
parity and ECC checks only after initializing queue and filter tables.
Leave the flexible filter parity controls under management firmware
ownership.  Capture read-clear and RW1C status in the interrupt filter
and keep FER masked until the admin task resolves the event.

Reset for a host-owned region or an unknown FER source.  Leave
management-only recovery to firmware.  Use CTRL.RST before master
disable because fatal 82580 memory errors can stop PCIe traffic.  Do not
use CTRL.DEV_RST: specification update item 9 declares that bit reserved
and says it must always be written as zero.  Wait for EEPROM auto read
completion; STATUS bit 21 is reserved on 82580, not PF_RST_DONE.

    [21 lines not shown]
DeltaFile
+184-21sys/dev/e1000/if_em.c
+12-0sys/dev/e1000/e1000_defines.h
+9-0sys/dev/e1000/e1000_regs.h
+2-0sys/dev/e1000/if_em.h
+207-214 files

LLVM/project 7e3217cclang/docs ReleaseNotes.md, llvm/lib/Target/RISCV RISCVISelLowering.cpp

[RISCV]  Avoid fatal error for SiFive CLIC preemptible frame pointers (#217949)

SiFive CLIC `preemptible` interrupt handlers currently use `s0` to
preserve `mcause` and cannot be generated with a frame pointer. At
`-O0`, Clang enables frame pointers by default, causing the fatal error
to produce a backend crash report.

This commit switches to `DiagnosticInfoUnsupported` to emit a regular
source-located error and suggest considering `-fomit-frame-pointer`.

This does not change the existing code generation restriction.

Fixes https://github.com/llvm/llvm-project/issues/217936
DeltaFile
+4-2llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+2-2llvm/test/CodeGen/RISCV/sifive-interrupt-attr-err.ll
+3-0clang/docs/ReleaseNotes.md
+9-43 files

OpenBSD/ports XOoSBDQsecurity/cyberchef distinfo Makefile, security/cyberchef/pkg PLIST

   Update to cyberchef-11.4.0.
VersionDeltaFile
1.4+5-1security/cyberchef/pkg/PLIST
1.5+3-2security/cyberchef/Makefile
1.5+2-2security/cyberchef/distinfo
+10-53 files

OpenBSD/ports qKC6tDBdevel/rgbds distinfo Makefile, devel/rgbds/patches patch-CMakeLists_txt patch-src_gfx_main_cpp

   Update to rgbds-1.0.3.
VersionDeltaFile
1.20+3-3devel/rgbds/Makefile
1.5+2-2devel/rgbds/patches/patch-src_link_main_cpp
1.14+2-2devel/rgbds/distinfo
1.6+1-1devel/rgbds/patches/patch-src_gfx_main_cpp
1.5+1-1devel/rgbds/patches/patch-src_asm_main_cpp
1.2+0-0devel/rgbds/patches/patch-CMakeLists_txt
+9-96 files

OpenBSD/ports E0CiNUDtextproc/html-xml-utils distinfo Makefile, textproc/html-xml-utils/patches patch-Makefile_in

   Update to html-xml-utils-8.8.
VersionDeltaFile
1.15+2-2textproc/html-xml-utils/distinfo
1.24+2-2textproc/html-xml-utils/Makefile
1.10+1-1textproc/html-xml-utils/patches/patch-Makefile_in
+5-53 files

GhostBSD/ports 06bc2bax11/ghostbsd-mate-settings Makefile distinfo

x11/ghostbsd-mate-settings: update to 26.08.0
DeltaFile
+3-3x11/ghostbsd-mate-settings/distinfo
+1-1x11/ghostbsd-mate-settings/Makefile
+4-42 files

FreeBSD/ports 931c4d2x11/quickshell distinfo Makefile, x11/quickshell/files extra-patch-src_wayland_buffer_dmabuf.cpp

x11/quickshell: Update to 0.3.1

Changelog: https://git.outfoxxed.me/quickshell/quickshell/src/tag/v0.3.1/changelog/v0.3.1.md

Reported by:    GitHub (watch releases)
DeltaFile
+3-3x11/quickshell/files/extra-patch-src_wayland_buffer_dmabuf.cpp
+3-3x11/quickshell/distinfo
+3-3x11/quickshell/Makefile
+9-93 files

LLVM/project 9df49aellvm/include/llvm InitializePasses.h, llvm/include/llvm/CodeGen LiveRangeShrink.h

[NewPM] Port LiveRangeShrink to the new pass manager

Follow the same pattern used for EHContGuardTargets and
CFGuardLongjmp: extract the pass body into a free function, rename
the legacy pass to LiveRangeShrinkLegacy, and add a
LiveRangeShrinkPass for the new pass manager. Register it in
MachinePassRegistry.def, replacing the DUMMY_MACHINE_FUNCTION_PASS
stub, and add the missing include to X86CodeGenPassBuilder.cpp,
which already called addMachineFunctionPass(LiveRangeShrinkPass(),
PMW) in its addPreRegAlloc.

Unlike EHContGuardTargets/CFGuardLongjmp, this pass is skippable
(runOnMachineFunction calls skipFunction), so the new-PM pass uses
OptionalPassInfoMixin rather than RequiredPassInfoMixin, matching
BreakFalseDepsPass.

Update llc-pipeline-npm.ll: the pass now prints its registered
"lrshrink" name instead of falling back to the raw C++ type name.
Add -enable-new-pm RUN lines to the three existing lrshrink tests;

    [4 lines not shown]
DeltaFile
+24-10llvm/lib/CodeGen/LiveRangeShrink.cpp
+24-0llvm/include/llvm/CodeGen/LiveRangeShrink.h
+2-2llvm/test/CodeGen/X86/llc-pipeline-npm.ll
+1-1llvm/lib/CodeGen/CodeGen.cpp
+1-1llvm/include/llvm/Passes/MachinePassRegistry.def
+1-1llvm/include/llvm/InitializePasses.h
+53-155 files not shown
+58-1511 files

LLVM/project dd8afceclang/lib/CodeGen CGObjC.cpp, clang/test/CodeGenObjC property-aggregate.m

[Clang] Remove dead code related to atomics (NFC) (#216614)

This PR cleans up dead code in `CGObjC.cpp` related to unaligned
atomics.

Because the synchronization strategy (native vs. objc_copyStruct) is
baked into the ABI for compiled frameworks, it can essentially never be
changed for existing architectures like x86 without breaking backwards
compatibility.
DeltaFile
+3-16clang/lib/CodeGen/CGObjC.cpp
+2-5clang/test/CodeGenObjC/property-aggregate.m
+5-212 files

FreeBSD/ports 9b8503efinance/fava distinfo Makefile

finance/fava: update to 1.30.16

Switch build system from setuptools to pep517.

Update dependencies: markdown2 replaced by markdown-it-py, remove
spurious pytest and requests runtime deps.
DeltaFile
+12-16finance/fava/Makefile
+3-3finance/fava/distinfo
+15-192 files

FreeBSD/ports 8c9e974finance/beanquery Makefile

finance/beanquery: switch TatSu dependency to tatsu-lts

This port requires the LTS variant of TatSu.
DeltaFile
+2-2finance/beanquery/Makefile
+2-21 files

FreeBSD/ports 67e6474devel Makefile, devel/py-tatsu-lts distinfo pkg-descr

devel/py-tatsu-lts: add new port 5.16.0

TatSu-LTS is a long-term support fork of TatSu, needed by
finance/beanquery which requires the older API.
DeltaFile
+26-0devel/py-tatsu-lts/Makefile
+11-0devel/py-tatsu-lts/pkg-descr
+3-0devel/py-tatsu-lts/distinfo
+1-0devel/Makefile
+41-04 files

LLVM/project 4c14735llvm/lib/Transforms/Vectorize LoopVectorize.cpp

[LoopVectorize] Verify the function once per pass, not once per loop (#216448)

processLoop verifies the whole function once per vectorized loop, making
LoopVectorize quadratic in the number of loops per function on assertion
builds. In an `opt -O3` run the verifier accounts for 59% of the
instructions for a function with 800 vectorizable loops, and 5.6% for
SingleSource/Benchmarks/Linpack/linpack-pc.c.

Move the call to the end of runImpl. Assertion builds still verify what
LoopVectorize produces, but once per function instead of once per
vectorized loop, which costs 0.1-0.7% of the O3 run.

The call was added under DEBUG() in 2012 and became unconditional on
assertion builds in c9f63297e24a. 0aa75fb12faa hit the same problem in
SLPVectorizer and fixed it with EXPENSIVE_CHECKS (#48033).
DeltaFile
+5-1llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+5-11 files

LLVM/project 8a6ebe4llvm/include/llvm/CodeGen CFGuardLongjmp.h, llvm/lib/CodeGen CFGuardLongjmp.cpp

[NewPM] Port CFGuardLongjmp to the new pass manager

Follow the same pattern used for EHContGuardTargets: extract the pass
body into a free function, rename the legacy pass to
CFGuardLongjmpLegacy, and add a CFGuardLongjmpPass for the new pass
manager. Register it in MachinePassRegistry.def and wire it into
X86's NewPM CodeGenPassBuilder pipeline (AArch64 and ARM do not yet
have a NewPM CodeGenPassBuilder).

The pass only adds post-instruction symbols and never modifies the
CFG, so mark it CFG-preserving in both the legacy getAnalysisUsage
override and the new-PM run() return value, matching the fix applied
to EHContGuardTargets in #217843.

Assisted-by: Claude Sonnet 5
DeltaFile
+46-28llvm/lib/CodeGen/CFGuardLongjmp.cpp
+44-0llvm/test/CodeGen/X86/cfguard-longjmp.ll
+24-0llvm/include/llvm/CodeGen/CFGuardLongjmp.h
+2-2llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
+1-1llvm/lib/Target/X86/X86TargetMachine.cpp
+2-0llvm/test/CodeGen/X86/llc-pipeline-npm.ll
+119-317 files not shown
+126-3713 files

LLVM/project ada2299llvm/lib/Target/RISCV RISCVInstrInfoP.td

[RISCV] Fix size of PseudoMERGE (#218171)

This can expand to two 4-byte instructions, so mark it as size 8.
Usually it will expand to just one 4-byte instruction.

This was found in #218170.
DeltaFile
+1-0llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+1-01 files

LLVM/project 6e967f6llvm/include/llvm/CodeGen EHContGuardTargets.h, llvm/lib/CodeGen EHContGuardTargets.cpp

[NewPM] Port EHContGuardTargets to the new pass manager (#217843)

Adds a newPM pass for EHContGuardTargets (eh-cont-guard-targets).

- Extracts the pass's logic (which has no per-instance state) into a
shared runEHContGuardTargets free function, called by both the legacy
pass and the new pass manager pass.
- Renames the old pass with the "Legacy" suffix, and (matching the same
convention already applied to CFIInstrInserter) renames
createEHContGuardTargetsPass() to createEHContGuardTargetsLegacy() at
all three legacy call sites (X86, AArch64, ARM).
- Adds the new pass manager pass EHContGuardTargetsPass, using
RequiredPassInfoMixin: the legacy pass's runOnMachineFunction never
calls skipFunction, so it always runs unconditionally and should not be
skippable in the new PM either.
- Updates MachinePassRegistry.def and PassBuilder.
- Wires the pass into X86's newPM pipeline, replacing an existing TODO
inside the already-correct TT.isOSWindows() conditional in
X86CodeGenPassBuilder.cpp. AArch64 and ARM have no newPM

    [7 lines not shown]
DeltaFile
+46-30llvm/lib/CodeGen/EHContGuardTargets.cpp
+25-0llvm/include/llvm/CodeGen/EHContGuardTargets.h
+2-2llvm/lib/Target/X86/X86CodeGenPassBuilder.cpp
+1-1llvm/lib/Target/X86/X86TargetMachine.cpp
+1-1llvm/lib/Target/ARM/ARMTargetMachine.cpp
+2-0llvm/test/CodeGen/X86/llc-pipeline-npm.ll
+77-347 files not shown
+84-3913 files

LLVM/project a0dba47llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/AArch64 narrowed-reduction-chain-use.ll

[SLP]Fix erasing scalars used by narrowed reduction chain instructions

Narrowed reduction chain instructions may use non-root tree scalars;
clear such uses before erasing the scalars.

Fixes https://github.com/llvm/llvm-project/pull/216062#issuecomment-5381262165

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/218174
DeltaFile
+60-0llvm/test/Transforms/SLPVectorizer/AArch64/narrowed-reduction-chain-use.ll
+20-3llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+80-32 files

OpenBSD/ports gskqyVHsecurity/vaultwarden Makefile crates.inc

   Update to vaultwarden-1.37.2

   Changes: https://github.com/dani-garcia/vaultwarden/releases/tag/1.37.2

   This update is required for support with clients with version 2026.8.0+
VersionDeltaFile
1.35.2.3+88-84security/vaultwarden/distinfo
1.32.2.3+43-41security/vaultwarden/crates.inc
1.55.2.3+1-1security/vaultwarden/Makefile
+132-1263 files

OpenBSD/ports uNnTFzAwww/vaultwarden-web Makefile distinfo, www/vaultwarden-web/pkg PLIST

   Update to vaultwarden-web-2026.7.0

   Changes:
   https://github.com/dani-garcia/bw_web_builds/compare/v2026.6.4...v2026.7.0
VersionDeltaFile
1.23.2.3+35-35www/vaultwarden-web/pkg/PLIST
1.23.2.3+2-2www/vaultwarden-web/distinfo
1.25.2.3+1-1www/vaultwarden-web/Makefile
+38-383 files

LLVM/project 2d47daa.github/workflows release-tasks.yml release-documentation.yml

workflows: Merge release-doxygen into release-documenation (#214366)

These two workflows use the same script and have the same structure,
so it's easier just to have one job that builds both.
DeltaFile
+0-130.github/workflows/release-doxygen.yml
+40-13.github/workflows/release-documentation.yml
+0-16.github/workflows/release-tasks.yml
+40-1593 files

NetBSD/pkgsrc SRL7UO8doc TODO

   TODO: Add LumoSQL
VersionDeltaFile
1.27790+5-1doc/TODO
+5-11 files