LLVM/project 8efc412 — flang/lib/Lower Bridge.cpp, flang/lib/Optimizer/HLFIR/Transforms ConvertToFIR.cpp

[flang][debug] Place prologue_end on the first executable statement (#232025)

Consider this program:

  subroutine sub(a, n)
    integer :: n
    integer :: a(n)
    a(1) = 1
  end subroutine

  program main
    integer :: a(5)
    a = 7
    call sub(a, 5)
  end program

A breakpoint on 'sub' stops on the declaration of 'a', before the code
that computes its bounds has run. The variable is not merely described
with the wrong extent there, it cannot be read at all:

    [49 lines not shown]
DeltaFile
+65-0flang/test/Lower/specification-part-loc.f90
+46-0flang/test/Integration/debug-prologue-end.f90
+30-0flang/test/HLFIR/declare-codegen-loc.fir
+15-0flang/lib/Lower/Bridge.cpp
+5-0flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
+2-2flang/test/Lower/main_location.f90
+163-21 files not shown
+165-47 files

FreeNAS/freenas eb8f742 — src/middlewared/middlewared/plugins account.py, src/middlewared/middlewared/plugins/account_ privilege.py group_obj.py

Convert `group` plugin to new style
DeltaFile
+59-708src/middlewared/middlewared/plugins/account.py
+399-0src/middlewared/middlewared/plugins/account_/group_crud.py
+245-0src/middlewared/middlewared/plugins/account_/group_validate.py
+148-0src/middlewared/middlewared/plugins/account_/group.py
+123-0src/middlewared/middlewared/plugins/account_/group_obj.py
+37-32src/middlewared/middlewared/plugins/account_/privilege.py
+1,011-74030 files not shown
+1,317-96936 files

LLVM/project 29941ce — mlir/lib/Dialect/Arith/IR ArithOps.cpp, mlir/test/Dialect/Arith canonicalize.mlir

[mlir][arith] Fix integer-to-float comparison canonicalization

Reject conversions that can produce NaN or saturate, and formats
that cannot represent zero or signed inputs. Preserve safe rewrites
when the integer range fits the floating-point exponent range.

Handle unconditional cmpf predicates without reaching an unreachable
case. Add regression coverage for exotic formats and rounding limits.

Validation used existing binaries; no rebuild was performed.
DeltaFile
+193-0mlir/test/Dialect/Arith/canonicalize.mlir
+14-0mlir/lib/Dialect/Arith/IR/ArithOps.cpp
+207-02 files

LLVM/project a44b6b1 — lldb/test/API/commands/command/script_alias tcsacmd.py custom_command.py

[lldb][test] Don't invoke attach in TestCommandScriptAlias.py (#232709)

The TestCommandScriptAlias.py calls `attach noprocessexistswiththisname`
which will time out when running the test suite against a remote device.

This patch rewrites the test so call `bt` instead and cleans up some of
the related code.
DeltaFile
+9-8lldb/test/API/commands/command/script_alias/TestCommandScriptAlias.py
+0-10lldb/test/API/commands/command/script_alias/tcsacmd.py
+10-0lldb/test/API/commands/command/script_alias/custom_command.py
+19-183 files

LLVM/project e186d62 — lldb/test/API/functionalities/progress_reporting TestProgressReporting.py

[lldb][test] Don't invoke attach in TestProgressReporting.py (#232722)

Trying to attach to a process that doesn't exist hangs in a remote test
setup. This patch changes so we just call `Attach` with an invalid
`SBAttachInfo` which triggers the same event and should immediately
return.
DeltaFile
+3-7lldb/test/API/functionalities/progress_reporting/TestProgressReporting.py
+3-71 files

OPNSense/core 47fc153 — . plist, src/opnsense/scripts/kea setup.sh

Services: Kea DHCPv6: Add setup.sh that creates /var/log/kea so kea_prefix_watcher.py doesn't fail to daemonize on RAM disks during boot (#11053)
DeltaFile
+5-0src/opnsense/scripts/kea/setup.sh
+1-1src/opnsense/service/templates/OPNsense/Kea/rc.conf.d
+1-0plist
+7-13 files

LLVM/project 00a2b70 — clang/test/SemaTemplate alias-template-with-lambdas.cpp

[Clang][NFC] Re-enable alias-template lambda constraint test (#233203)

The T16 example in
`clang/test/SemaTemplate/alias-template-with-lambdas.cpp` was left under
`#if 0` in b412ec5d3924. That example no longer crashes, and the
static_assert passes without extra diagnostics.

Remove the FIXME and compile the example.

No compiler behavior changes.
Verified with an assertions `clang -cc1 -std=c++2c -fsyntax-only
-verify` on the patched file. The same example also passes on an
assertions build of 34ba34d7f9bd, which does not include the local
branch commits.

Assisted by Codex
DeltaFile
+0-4clang/test/SemaTemplate/alias-template-with-lambdas.cpp
+0-41 files

NetBSD/src t6oen1Z — distrib/sets/lists/base mi

   Remove "atto" line accidently commited in last
VersionDeltaFile
1.1392+1-2distrib/sets/lists/base/mi
+1-21 files

FreeBSD/ports e48e965 — databases/datui Makefile

databases/datui: Use USES=sqlite

Replace the hand-written LIB_DEPENDS on databases/sqlite3 with the
sqlite USES helper.

Reported by:    diizzy
DeltaFile
+2-3databases/datui/Makefile
+2-31 files

OPNSense/plugins a516b81 — net/frr/src/opnsense/scripts/frr carp_event_handler, net/frr/src/opnsense/scripts/frr/lib/events ospf6d.py

net/frr: refactor Ospf6dEventHandler to use json output from vtysh, closes https://github.com/opnsense/plugins/issues/5767
DeltaFile
+4-17net/frr/src/opnsense/scripts/frr/lib/events/ospf6d.py
+1-2net/frr/src/opnsense/scripts/frr/carp_event_handler
+5-192 files

LLVM/project 0d4d939 — llvm/lib/Transforms/Scalar SimpleLoopUnswitch.cpp, llvm/test/Transforms/LoopSimplifyCFG loop-not-in-simplify-form.ll

[SimpleLoopUnswitch] Form dedicated exits for after trivial unswitch. (#233310)

When unswitching a trivial branch whose exit block has other
predecessors,
the exit block is split and the new edge from the old preheader goes to
the
split-off block, which is also reached from the original exit block.

This can leave loop exit blocks with predecessors outside the loop,
breaking loop-simplify form, which in turns prevents outer loop
optimizations in the loop, e.g. missed extra unswitching.
Enables additional unswitching in a few more cases:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1747

PR: https://github.com/llvm/llvm-project/pull/233310
DeltaFile
+222-0llvm/test/Transforms/SimpleLoopUnswitch/trivial-unswitch-parent-dedicated-exits.ll
+10-4llvm/test/Transforms/LoopSimplifyCFG/loop-not-in-simplify-form.ll
+8-0llvm/lib/Transforms/Scalar/SimpleLoopUnswitch.cpp
+240-43 files

FreeBSD/ports 230591a — lang/swift6 Makefile pkg-plist, lang/swift6/files patch-swift-build_Sources_SWBUtil_Architecture.swift patch-swift_lib_IRGen_GenOpaque.cpp

lang/swift6: add powerpc64le support

Two bootstrap tarballs are needed because the long double ABI changed in
16.0: freebsd14 works on 14.x and on 15.x with misc/compat14x, freebsd16 is
for 16.0 and newer. Both were built with the port's own BOOTSTRAP_MODE.

PR:             299357
Approved by:    tagattie (maintainer)
DeltaFile
+60-60lang/swift6/pkg-plist
+103-0lang/swift6/files/patch-swift_lib_IRGen_IRGenSIL.cpp
+36-8lang/swift6/Makefile
+34-0lang/swift6/files/patch-swift-corelibs-libdispatch_src_queue.c
+31-0lang/swift6/files/patch-swift_lib_IRGen_GenOpaque.cpp
+22-0lang/swift6/files/patch-swift-build_Sources_SWBUtil_Architecture.swift
+286-6813 files not shown
+469-6819 files

FreeBSD/ports c0a54d5 — Mk/Uses fpc.mk

Mk/Uses/fpc.mk: use powerpc64 as FPC_ARCH on powerpc64le

fpc doesn't have a separate powerpc64le CPU, it's powerpc64 for both
endians. lang/fpc-devel already handles it, but ports using USES=fpc got
rtl/freebsd/powerpc64le and failed to patch.
DeltaFile
+1-1Mk/Uses/fpc.mk
+1-11 files

FreeBSD/ports 8837f44 — www/py-bokeh pkg-message distinfo, www/py-bokeh/files patch-pyproject.toml patch-setup.py

www/py-bokeh: Update 2.4.3 => 3.10.1

bokeh 2.4.3 uses np.bool8, which numpy 2 removed, so
"import bokeh.plotting" fails with the numpy 2.4 in the tree.  It is
also too old for its consumers: dask[diagnostics] and the distributed
dashboard need bokeh>=3.1, arviz-plots needs bokeh>=3.4 and hits needs
bokeh>=3.2.

- Switch to PEP 517; the sdist ships the prebuilt BokehJS, so no node
  is needed
- Add RUN_DEPENDS on narwhals and xyzservices; drop python-dateutil,
  six and typing-extensions; tornado>=6.2
- Patch pyproject.toml for setuptools 63 (requires, PEP 639 license)
  and do not install the stray top-level "typings" stub package
- Guard the setuptools>=64-only editable_wheel import in setup.py
- Requires Python 3.12+

Changelog:      https://docs.bokeh.org/en/latest/docs/releases.html
DeltaFile
+38-0www/py-bokeh/files/patch-setup.py
+33-0www/py-bokeh/files/patch-pyproject.toml
+14-12www/py-bokeh/Makefile
+3-3www/py-bokeh/distinfo
+3-0www/py-bokeh/pkg-message
+91-155 files

FreeBSD/ports 943322c — lang/nim distinfo Makefile, lang/nim/files patch-c__code_5__2__msemfold.nim.c patch-lib_pure_concurrency_cpuinfo.nim

lang/nim: fix on powerpc64

countProcessors() reads the 4-byte hw.ncpu into an 8-byte int, which puts
it in the high word on big-endian, so any nim c without --parallelBuild
tried to size its build state for 2^38 CPUs and got OOM-killed. That is
also why DOCS was turned off on powerpc64 in 2020, so enable it again.
Also take the upstream fix for the shr constant folding on big-endian and
apply it to the pre-generated bootstrap compiler too.
DeltaFile
+25-0lang/nim/files/patch-lib_pure_concurrency_cpuinfo.nim
+22-0lang/nim/files/patch-c__code_5__2__msemfold.nim.c
+4-1lang/nim/Makefile
+3-1lang/nim/distinfo
+54-24 files

NetBSD/pkgsrc CanHdio — doc CHANGES-2026

   Updated lang/nodejs[24]
VersionDeltaFile
1.7107+3-1doc/CHANGES-2026
+3-11 files

NetBSD/pkgsrc EJqRGm3 — lang/nodejs24 Makefile distinfo

   nodejs24: updated to 24.22.0

   24.22.0 'Krypton' (LTS)

   Notable Changes

   - (SEMVER-MINOR) crypto: add crypto.parsePKCS12() (Brian Muenzenmeyer)
   - (SEMVER-MINOR) crypto: add a generic MAC API (Filip Skokan)
   - (SEMVER-MINOR) crypto: discover ciphers from OpenSSL providers (Filip Skokan)
   - (SEMVER-MINOR) crypto: discover hashes from OpenSSL providers (Filip Skokan)
   - (SEMVER-MINOR) crypto: enable SIV and GCM-SIV modes in Cipher/Decipher APIs (Filip Skokan)
   - doc: add araujogui to collaborators (Guilherme Araújo)
   - doc: deprecate Server.prototype._listen2 in node:net (Antoine du Hamel)
   - (SEMVER-MINOR) net: support sending net.BoundSocket to threads and child processes (Guy Bedford)
   - (SEMVER-MINOR) perf_hooks: implement SlidingWindowHistogram (James M Snell)
   - (SEMVER-MINOR) perf_hooks: implement qrde analysis support in Histogram (James M Snell)
   - (SEMVER-MINOR) perf_hooks: implement Histogram meanCI API (James M Snell)
   - (SEMVER-MINOR) perf_hooks: add CBOR export/import for histogram exchange (James M Snell)
   - (SEMVER-MINOR) sqlite: add StatementSync.prototype.close() (Guilherme Araújo)

    [4 lines not shown]
VersionDeltaFile
1.19+4-4lang/nodejs24/distinfo
1.18+2-2lang/nodejs24/Makefile
+6-62 files

LLVM/project 03e570b — mlir/lib/Target/SPIRV/Deserialization Deserializer.cpp, mlir/test/Target/SPIRV selection.mlir loop.mlir

[mlir][spirv] Fix control of nested sibling constructs in the deserializer (#225920)

When the deserializer structurizes an outer loop or selection,
updateMergeInfo re-keys the blockMergeInfo entries of the nested
constructs from the old blocks to the cloned ones. It erases the old
entry first and then reads it->second.control through the erased
iterator. blockMergeInfo is a MapVector, so the erase shifts the next
entry into that slot and the nested construct is re-created with its
sibling's control.

With two sibling loops inside an outer loop, the first one marked
DontUnroll and the second Unroll, the round trip comes back with both
marked Unroll. Same thing for two sibling selections with Flatten and
DontFlatten. If the erased entry was the last one the read is past the
end of the vector.

Copy the control value out of the entry before erasing it, like loc
already is. Adds round-trip tests with two sibling loops and two sibling
selections.

Fixes #218853
DeltaFile
+76-0mlir/test/Target/SPIRV/loop.mlir
+56-0mlir/test/Target/SPIRV/selection.mlir
+4-3mlir/lib/Target/SPIRV/Deserialization/Deserializer.cpp
+136-33 files

NetBSD/pkgsrc XWixm5X — lang/nodejs Makefile distinfo, lang/nodejs/patches patch-deps_v8_src_base_memcopy.h patch-configure

   nodejs: updated to 26.12.0

   26.12.0 (Current)

   Notable Changes

   - (SEMVER-MINOR) doc,lib,src: throw on missing WebAssembly or RX support (Paolo Insogna)
   - (SEMVER-MINOR) http: add websocketMask() and websocketUnmask() (James M Snell)
VersionDeltaFile
1.335+4-6lang/nodejs/distinfo
1.363+2-2lang/nodejs/Makefile
1.2+1-1lang/nodejs/patches/patch-deps_v8_src_base_memcopy.h
1.7+1-1lang/nodejs/patches/patch-configure
+8-104 files

FreeBSD/ports a065499 — graphics/photocraft Makefile distinfo

graphics/photocraft: update to 0.10.0

Changelog:      https://github.com/storytold/photocraft/releases/tag/v0.10.0
DeltaFile
+7-5graphics/photocraft/distinfo
+4-3graphics/photocraft/Makefile
+11-82 files

FreeBSD/ports 834e8e1 — math/scs Makefile

math/scs: don't build with -march=native

Packages must not depend on the build host's CPU, and clang doesn't accept
-march on powerpc anyway.
DeltaFile
+4-1math/scs/Makefile
+4-11 files

FreeBSD/ports 7256f19 — textproc/redisearch2/files patch-deps_VectorSimilarity_src_VecSim_spaces_spaces.h

textproc/redisearch2: fix build on powerpc64*

VectorSimilarity falls back to the x86 cpu_features types on anything that
isn't aarch64. Add a generic fallback for everything else.
DeltaFile
+20-0textproc/redisearch2/files/patch-deps_VectorSimilarity_src_VecSim_spaces_spaces.h
+20-01 files

FreeBSD/ports 537561c — multimedia/vvenc Makefile

multimedia/vvenc: fix build on powerpc64

clang 19 crashes on v4f32 froundeven in the SIMDe x86 emulation
(llvm/llvm-project#121390), so turn the x86 SIMD code off here too.
DeltaFile
+2-1multimedia/vvenc/Makefile
+2-11 files

FreeBSD/ports cb8adc8 — net/dot1ag-utils/files patch-src_ieee8021ag.h

net/dot1ag-utils: fix build on powerpc64

IS_TAGGED() compared one byte of the frame with htons(0x8100), which only
works on little-endian by accident and makes clang's -Werror unhappy on
big-endian. Read the TPID through struct cfmencap instead.
DeltaFile
+11-0net/dot1ag-utils/files/patch-src_ieee8021ag.h
+11-01 files

OPNSense/plugins 150ff2a — net/frr Makefile, net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga OSPF.xml

net/frr: OSPF do not validate group interface for now to ease migrations
DeltaFile
+1-1net/frr/Makefile
+0-1net/frr/src/opnsense/mvc/app/models/OPNsense/Quagga/OSPF.xml
+1-22 files

LLVM/project 3ed771d — llvm/include/llvm/DebugInfo/DWARF DWARFVerifier.h, llvm/lib/DebugInfo/DWARF DWARFVerifier.cpp

[DWARFVerifier] Report subprogram DIEs that can't be identified (#231249)

DWARF doesn't require any attribute on DW_TAG_subprogram, but a consumer
can only use a subprogram DIE through its name, a reference to another
entry (DW_AT_abstract_origin or DW_AT_specification), or the code it
describes. A subprogram DIE with none of these can't be looked up by
name or mapped to an address, and neither can the entities it contains
(e.g. gdb skips bare DW_TAG_subprograms, including all thier children).

LLVM used to emit such DIEs as a side effect of misplacing
function-local entities (types, static variables, imported entities)
of subprograms that have an abstract instance. The entities ended up
in an attribute-less DW_TAG_subprogram created just to hold them.

This patch adds two checks to `llvm-dwarfdump --verify`:
* An error if a subprogram has no attributes at all (DW_AT_sibling is
  not counted).
* A warning if it has no name (DW_AT_name or a linkage name), no
  DW_AT_abstract_origin or DW_AT_specification, and no address
  (DW_AT_low_pc, DW_AT_ranges or DW_AT_entry_pc). This is only a
  warning, as such a DIE is still valid DWARF.
DeltaFile
+193-0llvm/test/tools/llvm-dwarfdump/X86/verify_empty_subprogram.yaml
+39-0llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
+11-0llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
+243-03 files

LLVM/project 4f708fc — llvm/tools/sancov sancov.cpp

[sancov][NFC] Reuse one symbolizer when reporting coverage (#232695)

This PR solves some memory issues I encountered while using `sancov
-symbolize`.

`sancov -symbolize` built two `LLVMSymbolizer`s, one for the covered
addresses and another for every instrumentation point. Both kept the
parsed debug info, so the two copies were live at the same time.

`getCoveragePoints()` now takes the symbolizer that `symbolize()`
already created. The file mapping used to hash the binary is released
before symbolizing. The `.symcov` report is unchanged.

These are the improvements measured on an instrumented `llc` with
SanitizerCoverage (743 MiB, 1.5M instrumentation points), three runs
each.

| | Peak RSS | Time |
|---|---|---|
| Before | 11.73 GiB | 33.0–33.2 s |
| After | 6.42–6.43 GiB | 27.9–28.2 s |
DeltaFile
+19-14llvm/tools/sancov/sancov.cpp
+19-141 files

LLVM/project f061e88 — llvm/lib/Transforms/InstCombine InstCombineAtomicRMW.cpp, llvm/test/Transforms/InstCombine atomicrmw-add-neg.ll

Support vector
DeltaFile
+4-3llvm/lib/Transforms/InstCombine/InstCombineAtomicRMW.cpp
+3-3llvm/test/Transforms/InstCombine/atomicrmw-add-neg.ll
+7-62 files

LLVM/project 2593636 — llvm/lib/Transforms/InstCombine InstCombineAtomicRMW.cpp, llvm/test/Transforms/InstCombine atomicrmw-add-neg.ll

[InstCombine] Canonicalize atomicrmw sub of a constant to add

Rewrite `atomicrmw sub ptr, C` as `atomicrmw add ptr, -C`. This
matches the canonical form InstCombine already uses for plain `sub`.
In wrapping arithmetic $old - C = old + (-C)$, so both the stored
value and the returned old value stay the same, including when C is
`INT_MIN`. Ordering, syncscope and metadata are kept.

```llvm
; before
%old = atomicrmw sub ptr %p, i32 1 syncscope("agent") monotonic
; after
%old = atomicrmw add ptr %p, i32 -1 syncscope("agent") monotonic
```
This benefits AMDGPU, for example: https://godbolt.org/z/39xsYro3o
DeltaFile
+7-0llvm/lib/Transforms/InstCombine/InstCombineAtomicRMW.cpp
+2-2llvm/test/Transforms/InstCombine/atomicrmw-add-neg.ll
+9-22 files

LLVM/project 43ce572 — clang/test/CodeGen ms-intrinsics-other.c ms-intrinsics.c

Fix clang lit test
DeltaFile
+12-12clang/test/CodeGen/ms-intrinsics.c
+4-4clang/test/CodeGen/ms-intrinsics-other.c
+16-162 files