LLVM/project 8fd566ellvm/lib/Target/RISCV RISCVISelLowering.cpp

fixup! Address review comments
DeltaFile
+20-20llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+20-201 files

LLVM/project bb9a57allvm/include/llvm/Analysis TargetTransformInfoImpl.h TargetTransformInfo.h, llvm/lib/Analysis TargetTransformInfo.cpp

[SLP] More accurately cost RISCV scalar splats (#213104)

Backends may have a fast path for splatting scalar operands (i.e. rather
than generating the splat vector, the vector instruction may be able to
take a scalar operand), for example RISCV `vfoo.vx` instructions. Pass a
hint to the TTI when costing the insert/shuffle sequence in such cases.

Fixes #212413.

Assisted By: Codex
DeltaFile
+133-55llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+42-6llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
+11-31llvm/test/Transforms/SLPVectorizer/RISCV/check-node-without-vector-user.ll
+29-2llvm/include/llvm/Analysis/TargetTransformInfo.h
+18-3llvm/lib/Analysis/TargetTransformInfo.cpp
+14-5llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
+247-10223 files not shown
+340-17629 files

LLVM/project e20824cllvm/test/CodeGen/RISCV/rvv vector-interleave-fixed.ll

fixup! Rebase
DeltaFile
+725-1,253llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
+725-1,2531 files

OpenZFS/src b6dde8amodule/zfs zio_crypt.c

zio_crypt: free the key unwrap uios when decryption fails

zio_crypt_key_unwrap() allocates a pair of iovec buffers through
zio_crypt_uios_init_os() and releases them with zio_crypt_uios_fini_os()
once the keys have been decrypted.  When zio_decrypt_os() fails it jumps
straight to the error label, which skips that release, so both buffers
are leaked.

The failure is reachable from userland: any key unwrap that does not
authenticate leaks 64 bytes twice, so a loop of "zfs load-key" calls
with the wrong passphrase grows kernel memory without bound.  It is not
Linux specific -- the FreeBSD implementation allocates these buffers as
well.

Release the uios as soon as the crypto operation returns and check the
result afterwards, matching zio_crypt_key_wrap(), which already frees
them unconditionally on both paths.  The buffers are then released
exactly once, and the error label continues to own nothing.


    [7 lines not shown]
DeltaFile
+3-2module/zfs/zio_crypt.c
+3-21 files

OpenZFS/src 5b6906atests/test-runner/bin test-runner.py.in

ZTS: fix test-runner crashing immediately under -m

sudo has no -c option, so it exits with a usage error and the run dies
before the first test case.

Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Alexander Moch <mail at alexmoch.com>
Closes #19117
DeltaFile
+1-1tests/test-runner/bin/test-runner.py.in
+1-11 files

OpenZFS/src e903655cmd/zinject translate.c, cmd/zpool zpool_main.c

zpool: Add zpool status -vv error ranges

Print the byte error ranges with 'zpool status -vv'.  This works
with the normal zpool status formatting flags (-p, -j, --json-int).

In addition:

- Modify ZFS_IOC_OBJ_TO_STATS ioctl to optionally return "extended"
  object stats.
- Let zinject corrupt zvol data.
- Add test case.
- Add DIOCGPHYSPATH geom attribute to FreeBSD zvols.  This works
  basically the same as Linux's BLKZNAME ioctl, and returns the
  dataset name for a zvol (like "tank/vol").  This is used by zinject.

This commit takes code from these PRs: #17502 #9781 #8902

Reviewed-by: Alek Pinchuk <Alek.Pinchuk at connectwise.com>
Reviewed-by: Akash B <akash-b at hpe.com>

    [5 lines not shown]
DeltaFile
+292-25lib/libzfs/libzfs_pool.c
+186-55cmd/zpool/zpool_main.c
+173-0tests/zfs-tests/tests/functional/cli_root/zpool_status/zpool_status_-v.ksh
+75-4cmd/zinject/translate.c
+46-3module/zfs/zfs_znode.c
+23-1module/zfs/zfs_ioctl.c
+795-8811 files not shown
+886-9817 files

LLVM/project 4aeec59llvm/include/llvm/ExecutionEngine/Orc/Shared ConnectionSpec.h, llvm/lib/ExecutionEngine/Orc/Shared CMakeLists.txt ConnectionSpec.cpp

[ORC] Add ConnectionSpec for connection string parsing (#224000)

A ConnectionSpec is the parsed form of a string describing one
connection a process should establish with its peer:

  <transport>[:<action>]=<descriptor>

E.g. "fd=3" or "tcp:connect=localhost:20000". The parser only checks
punctuation: transport and action names are opaque tokens, and the
descriptor's syntax is left to the transport, which lets a descriptor
contain ':' and '=' unescaped (e.g. "tcp:listen=[::1]:0").

This will be used by llvm-jitlink and llvm-jitlink-executor to
generalize out-of-process executor connection setup beyond the current
fd/TCP-only options.
DeltaFile
+106-0llvm/unittests/ExecutionEngine/Orc/ConnectionSpecTest.cpp
+74-0llvm/include/llvm/ExecutionEngine/Orc/Shared/ConnectionSpec.h
+38-0llvm/lib/ExecutionEngine/Orc/Shared/ConnectionSpec.cpp
+1-0llvm/unittests/ExecutionEngine/Orc/CMakeLists.txt
+1-0llvm/lib/ExecutionEngine/Orc/Shared/CMakeLists.txt
+220-05 files

LLVM/project d1ac09ellvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV/rvv vector-interleave.ll

[RISCV] Eliminate redundant VSLIDEDOWN_VL/VSLIDEUP_VL pairs
DeltaFile
+23-103llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
+55-3llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+78-1062 files

LLVM/project 8e2bf7bllvm/test/CodeGen/RISCV/rvv vector-deinterleave.ll

fixup! Update more tests
DeltaFile
+12-45llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
+12-451 files

NetBSD/src qhmf3Kssys/arch/i386/stand/lib biosdisk.c

   fix typos
VersionDeltaFile
1.62+2-2sys/arch/i386/stand/lib/biosdisk.c
+2-21 files

FreeBSD/ports e262e7fnet-mgmt/nagios-pf-plugin Makefile, net-mgmt/nagios-pf-plugin/files patch-Makefile patch-check_pf.c

net-mgmt/nagios-pf-plugin: fix build on FreeBSD 15+

PR:             294009
Approved by:    maintainer timeout (never replied)
MFH:            2026Q3

(cherry picked from commit 9eddf7dd87dfa63edde409b82273742b00b1344a)
DeltaFile
+149-0net-mgmt/nagios-pf-plugin/files/extra-patch-check_pf_15.c
+0-64net-mgmt/nagios-pf-plugin/files/patch-check_pf.c
+64-0net-mgmt/nagios-pf-plugin/files/extra-patch-check_pf.c
+14-5net-mgmt/nagios-pf-plugin/Makefile
+14-2net-mgmt/nagios-pf-plugin/files/patch-Makefile
+241-715 files

NetBSD/src SdGgXKLsys/arch/x86/isa clock.c

   x86/sysbeep(4): Don't detach at shutdown.

   This reverts sys/arch/x86/isa/clock.c rev. 1.32, which was the first
   of a spate of changes to sprinkle DVF_DETACH_SHUTDOWN for reasons
   that were unclear and apparently interfere with other functionality:

   > Module Name:    src
   > Committed By:   dyoung
   > Date:           Tue Apr  7 17:51:46 UTC 2009
   >
   > Modified Files:
   >         src/sys/arch/x86/isa: clock.c
   >
   > Log Message:
   > Detach sysbeep0 at shutdown.
   >
   >
   > To generate a diff of this commit:
   > cvs rdiff -u -r1.31 -r1.32 src/sys/arch/x86/isa/clock.c

    [18 lines not shown]
VersionDeltaFile
1.44+3-3sys/arch/x86/isa/clock.c
+3-31 files

NetBSD/src LRdQUrkshare/man/man4 clockctl.4

   clockctl.4: minor wording tweak
VersionDeltaFile
1.9+2-2share/man/man4/clockctl.4
+2-21 files

NetBSD/src SwCZkfolib/libc/sys gettimeofday.2 adjtime.2

   adjtime.2 & gettimeofday.2: minor wording and style tweaks

   (Various man pages can't decide between "super user", "super-user", and
   "superuser"; let's at least be consistent from line to line in one
   man page.)
VersionDeltaFile
1.31+4-4lib/libc/sys/gettimeofday.2
1.22+4-4lib/libc/sys/adjtime.2
+8-82 files

FreeBSD/ports 9eddf7dnet-mgmt/nagios-pf-plugin Makefile, net-mgmt/nagios-pf-plugin/files patch-Makefile patch-check_pf.c

net-mgmt/nagios-pf-plugin: fix build on FreeBSD 15+

PR:             294009
Approved by:    maintainer timeout (never replied)
MFH:            2026Q3
DeltaFile
+149-0net-mgmt/nagios-pf-plugin/files/extra-patch-check_pf_15.c
+0-64net-mgmt/nagios-pf-plugin/files/patch-check_pf.c
+64-0net-mgmt/nagios-pf-plugin/files/extra-patch-check_pf.c
+14-5net-mgmt/nagios-pf-plugin/Makefile
+14-2net-mgmt/nagios-pf-plugin/files/patch-Makefile
+241-715 files

NetBSD/src omAz2ansys/arch/i386/stand/efiboot efidisk.c

   Check part[i].guid for NULL to avoid derefrencing.

   Can happen if efiboot was loaded from a MBR_PTYPE_EFI in a MBR without a
   GPT.
VersionDeltaFile
1.12+3-2sys/arch/i386/stand/efiboot/efidisk.c
+3-21 files

LLVM/project a0a4f29clang/test/OpenMP declare_variant_scoring.c, flang/test/Lower/OpenMP metadirective-target-boundary.f90 declare-variant-construct.f90

[clang][flang][OpenMP] Correct OpenMP context selector matching and scoring

Context selector ranking is shared by DECLARE VARIANT and metadirective
lowering. Incorrect construct matches, context-dependent device weights, or
overflowing scores can select a different variant and cause Flang to skip
required loop diagnostics.

Preserve the highest-scoring ordered construct matches and derive device
weights from the enclosing context. Widen score arithmetic as needed, and
retain selector identity and scores for unknown properties so MATCH_ANY and
MATCH_NONE handle dynamic conditions and implicit NOTHING correctly. Bound
lowering contexts at TARGET and include SIMD traits so Clang and Flang use
the same context for selection.

Assisted with codex.
DeltaFile
+311-1llvm/unittests/Frontend/OpenMPContextTest.cpp
+115-94llvm/lib/Frontend/OpenMP/OMPContext.cpp
+185-6flang/test/Lower/OpenMP/metadirective-user.f90
+119-2flang/test/Lower/OpenMP/declare-variant-construct.f90
+92-0clang/test/OpenMP/declare_variant_scoring.c
+62-0flang/test/Lower/OpenMP/metadirective-target-boundary.f90
+884-1036 files not shown
+972-13012 files

FreeBSD/ports 45a47e1audio/shairport-sync Makefile distinfo

audio/shairport-sync: Update to 5.5.2
DeltaFile
+3-3audio/shairport-sync/distinfo
+1-1audio/shairport-sync/Makefile
+4-42 files

FreeNAS/freenas ff90702tests/sharing_protocols/s3 test_s3_buckets.py test_s3_bucket_lifecycle.py

NAS-143880 / 27.0.0-BETA.1 / Add S3 protocol tests under tests/sharing_protocols/s3 (#19776)

A bucket's stored options are almost all unobservable through the API:
what object_ownership means, what a DENY grant does, whether a
manage_buckets key can create a bucket. Provision through the API,
observe over the protocol.

Assets split in two. The middleware half is assets/s3.py -- accounts,
access keys, buckets, grants, the service -- and imports no client
library, so it stays usable on a runner without one. The client half is
s3_client.py in the test directory rather than tests/protocols/, whose
`__init__` imports every client it re-exports and would make an S3 case
need samba and pynfs to reach boto3.

The session stands up two principals and nine buckets, one per thing
that is only answerable per bucket, and skips rather than proving
something weaker where it could not make one.

Beside the bucket plane: the object surfaces. Metadata and the content

    [20 lines not shown]
DeltaFile
+693-0tests/sharing_protocols/s3/test_s3_multipart.py
+657-0tests/sharing_protocols/s3/test_s3_acl.py
+534-0tests/sharing_protocols/s3/test_s3_list_objects.py
+449-0tests/sharing_protocols/s3/test_s3_snapshot_versions.py
+419-0tests/sharing_protocols/s3/test_s3_bucket_lifecycle.py
+418-0tests/sharing_protocols/s3/test_s3_buckets.py
+3,170-026 files not shown
+8,077-34632 files

FreeBSD/src 0380d01lib/libbsdconf bsdconf.h bsdconf.c, usr.sbin/sysconf sysconf_priv.h sysconf.c

libbsdconf: independent version macros

sysconf(8) --version now prints the library version alongside its
own so each can move on its own clock.  Assigning a bitmask to
bool already converts zero/nonzero; drop the redundant != 0 (fuz).

Reviewed by:    fuz, kfv
Differential Revision:  https://reviews.freebsd.org/D59720
DeltaFile
+11-11lib/libbsdconf/bsdconf_put.c
+6-6lib/libbsdconf/bsdconf.c
+6-2usr.sbin/sysconf/sysconf.8
+8-0lib/libbsdconf/bsdconf.h
+3-2usr.sbin/sysconf/sysconf.c
+1-1usr.sbin/sysconf/sysconf_priv.h
+35-226 files

FreeBSD/ports 2fab821audio/noctavox Makefile Makefile.crates, audio/noctavox/files patch-cargo-crates_cpal-0.18.1_src_host_mod.rs patch-cargo-crates_cpal-0.18.1_src_host_alsa_mod.rs

audio/noctavox: Update to 0.3.5

ChangeLog:

1. https://github.com/Jaxx497/NoctaVox/releases/tag/v0.3.5

Reported by:    "github-actions[bot]" <notifications at github.com>
DeltaFile
+103-105audio/noctavox/distinfo
+50-51audio/noctavox/Makefile.crates
+0-50audio/noctavox/files/patch-cargo-crates_cpal-0.18.1_src_host_alsa_mod.rs
+0-10audio/noctavox/files/patch-cargo-crates_cpal-0.18.1_src_host_mod.rs
+2-2audio/noctavox/Makefile
+155-2185 files

FreeBSD/ports ba0bd56multimedia/mkvtoolnix Makefile pkg-plist

multimedia/mkvtoolnix: Update to upstream release 102.0

Details:
Bug- and security fixes, see
https://mkvtoolnix.download/doc/NEWS.md

MFH:            2026Q3
Security:       CVE-2026-90783
DeltaFile
+3-3multimedia/mkvtoolnix/distinfo
+5-0multimedia/mkvtoolnix/pkg-plist
+1-1multimedia/mkvtoolnix/Makefile
+9-43 files

FreeBSD/ports 8fb2c0fnet/traefik distinfo Makefile

net/traefik: Update to upstream release 3.7.13

Details:
* Bug- and security fixes, see
  https://github.com/traefik/traefik/releases/tag/v3.7.13
* Changes may require updating the configuration, see
  https://doc.traefik.io/traefik/v3.7/migrate/v3/#v3713

MFH:            2026Q3
Security:       https://github.com/traefik/traefik/security/advisories/GHSA-qqjf-53cj-pwvv
                https://github.com/traefik/traefik/security/advisories/GHSA-f52w-8j3h-j724
                https://github.com/traefik/traefik/security/advisories/GHSA-v67p-phpq-fc8x
                https://github.com/traefik/traefik/security/advisories/GHSA-w4v4-9rw7-5326
                https://github.com/traefik/traefik/security/advisories/GHSA-8fcf-v89g-xpg6
DeltaFile
+3-3net/traefik/Makefile
+3-1net/traefik/distinfo
+6-42 files

LLVM/project ba019b7llvm/lib/Target/Sparc SparcISelDAGToDAG.cpp, llvm/test/CodeGen/SPARC bswap.ll

[SPARC] Fix SelectForceADDRrr for global addresses and non-reg operands (#220013)

When lowering byte-swapped memory operations on SPARC V9, LLVM emits
ASI-tagged memory instructions (such as STHArr, STArr, LDArr, etc.) that
require register+register addressing modes matched via ForceADDRrr.

SelectForceADDRrr previously forwarded 2-operand address nodes directly
to SelectADDRrr. However, SelectADDRrr explicitly returns false when
encountering SPISD::Lo (used in %hi/%lo global address calculations) or
small constant offsets in order to allow standard ADDRri patterns to
match. Because SelectForceADDRrr returned the result of SelectADDRrr
directly instead of falling back to Base = Addr, Disp = %g0, any
endian-adjusted load or store targeting a global variable failed to
select and caused a backend compiler crash:
  "Cannot select: SPISD::STORE_LITTLE ..."

Fix SelectForceADDRrr so that if SelectADDRrr fails to match, it falls
back to evaluating the full address into a base register and using %g0
as the offset register. Also add tests for global variable byte-swapped

    [7 lines not shown]
DeltaFile
+201-0llvm/test/CodeGen/SPARC/bswap.ll
+2-5llvm/lib/Target/Sparc/SparcISelDAGToDAG.cpp
+203-52 files

LLVM/project 82fc843libcxx/include/__algorithm find_if.h, libcxx/test/libcxx/algorithms unaligned_empty_range.pass.cpp

[libc++] Don't assume a valid range in find_if for empty inputs (#213752)

Iterators for empty ranges are sometimes implemented using a
non-aligned sentinel value. Requiring proper alignment in that
case (which is part of the valid range assumption) causes a
hardening failure. Instead, don't make the assumption of a
valid range when the input range is empty in find_if.

(cherry picked from commit 83290d61f6ead40a5c38297a0442b63291ce7a48)
DeltaFile
+83-0libcxx/test/libcxx/algorithms/unaligned_empty_range.pass.cpp
+8-1libcxx/include/__algorithm/find_if.h
+91-12 files

LLVM/project 2eabe80libcxx/include __hash_table __tree, libcxx/include/__utility try_key_extraction.h

[libc++] Opt `std::*set` out of map key extraction optimization (#220452)

PR #154512 (relanded by #155565) removed `__can_extract_map_key`, which
had a blanket opt-out for `std::*set`s. The new logic does not have that
opt-out, leading to `std::set`s being incorrectly constructed.

The new regression tests demonstrate this, but essentially the idea is:
1. Have `std::set<T> foo;`
2. Call `foo.emplace(some_t,
arg_that_influences_comparisons_or_hashes);`
3. The emplace will internally search using `some_t` as the key, *not*
`T(some_t, arg_that_influences_comparisons_or_hashes);`

This opts out `std::*set` from this optimization to match previous
behavior.

Tests and fix were produced by an LLM. I reviewed them and they seem
reasonable to me, though I don't have a strong background in libc++
testing conventions.

    [7 lines not shown]
DeltaFile
+10-6libcxx/include/__utility/try_key_extraction.h
+16-0libcxx/test/std/containers/associative/set/emplace.pass.cpp
+10-0libcxx/test/std/containers/unord/unord.set/emplace.pass.cpp
+3-3libcxx/include/__tree
+1-1libcxx/include/__hash_table
+40-105 files

LLVM/project 3936f33llvm/lib/Target/DirectX DXILOpLowering.cpp, llvm/test/CodeGen/DirectX Sample.ll SampleBias.ll

[DirectX] Make DXILOpLowering split vector coordinates, offsets, and gradient operands (#223091)

Fixes https://github.com/llvm/llvm-project/issues/217777

DXILOpLowering didn't split vector coordinates, offsets, and gradient
operands into scalars for textureLoad, textureStore, and sample
intrinsics like it did for store data. This PR fixes that.

This PR also removes inconsistencies where the DXILOpLowering pass
emitted a mix of i64 and i32 indices for `extractelement`. It now just
emits i32 indices.

Assisted by: Claude Opus 5
DeltaFile
+96-53llvm/test/CodeGen/DirectX/SampleGrad.ll
+74-41llvm/lib/Target/DirectX/DXILOpLowering.cpp
+80-18llvm/test/CodeGen/DirectX/TextureStore.ll
+55-31llvm/test/CodeGen/DirectX/TextureLoad.ll
+55-19llvm/test/CodeGen/DirectX/SampleBias.ll
+54-19llvm/test/CodeGen/DirectX/Sample.ll
+414-1813 files not shown
+560-2099 files

LLVM/project 1fbc28allvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV/rvv vector-interleave-fixed.ll

fixup! Simplify the combine conditions
DeltaFile
+1,792-4,579llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
+19-53llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+1,811-4,6322 files

FreeBSD/src 3fe5961lib/libbsdconf bsdconf_stmt.c bsdconf_format.3, usr.sbin/sysconf sysconf.8 sysconf.c

Add sysconf(8) and libbsdconf(3)

Complete the native configuration trinity: sysctl(8) for live kernel
state, sysrc(8) for rc.conf(5), and sysconf(8) for the remaining base
configuration -- loader.conf(5), sysctl.conf(5), and the make.conf(5)
family -- atop libbsdconf(3).

libbsdconf resurrects figpar as a unified reader/writer.  Callbacks own
semantics; statements may span multiple lines via backslash continuation;
non-seekable input is spooled; writes are atomic (mkstemp, fsync, rename)
with mode/owner preservation.  Format descriptors name each target, its
files, and quoting rules without private parsers.  Multi-file targets
follow boot sourcing order; loader chases loader_conf_files as the boot
loader does.

sysconf(8) is the operator-facing tool: name / name=value on a required
target, sysrc-style list edits, make append and list-strike where they
belong, jail/altroot, and a capsicum sandbox for read-only use.


    [21 lines not shown]
DeltaFile
+761-0usr.sbin/sysconf/sysconf.c
+733-0lib/libbsdconf/bsdconf.c
+704-0usr.sbin/sysconf/sysconf.8
+693-0lib/libbsdconf/bsdconf_format.c
+560-0lib/libbsdconf/bsdconf_format.3
+547-0lib/libbsdconf/bsdconf_stmt.c
+3,998-041 files not shown
+10,120-047 files

LLVM/project e8bdb0eutils/bazel/llvm-project-overlay/libc/test libc_test_rules.bzl, utils/bazel/llvm-project-overlay/libc/test/UnitTest BUILD.bazel

[bazel][test][libc] Use clock LLVM-libc entrypoint in overlay tests
DeltaFile
+2-6utils/bazel/llvm-project-overlay/libc/test/libc_test_rules.bzl
+1-1utils/bazel/llvm-project-overlay/libc/test/UnitTest/BUILD.bazel
+3-72 files