LLVM/project 58b1026 — llvm/lib/Analysis ScalarEvolution.cpp, llvm/test/Analysis/ScalarEvolution trip-count-variable-stride-predicate.ll

[SCEV] -  Add positive-stride predicate for backedge-taken count. (#222261)

When `howManyLessThans` encounters a loop with an unknown stride that
cannot be proven finite (no `mustprogress` or side-effect-free
guarantee), SCEV currently returns `CouldNotCompute` for the
backedge-taken count. This blocks downstream consumers like the loop
vectorizer from optimizing such loops.

This patch relaxes the requirement by allowing a predicated
backedge-taken count when `AllowPredicates` is true. Instead of
requiring `loopIsFiniteByAssumption(L)` unconditionally, we add a
`Compare predicate: stride sgt 0` when finiteness cannot be proven.

A positive stride guarantees forward progress, making the BTC formula
correct. The predicate is emitted as a runtime check by consumers
(e.g., the loop vectorizer generates a guard branch before the vector
loop).



    [17 lines not shown]
DeltaFile
+102-0llvm/test/Transforms/LoopVectorize/scev-variable-stride-predicate.ll
+31-0llvm/test/Analysis/ScalarEvolution/trip-count-variable-stride-predicate.ll
+18-4llvm/lib/Analysis/ScalarEvolution.cpp
+151-43 files

LLVM/project e0bd489 — clang/docs LibASTImporter.md UsersManual.md

[docs] Pass -c when generating a PCH file (#226850)

Without options like -fsyntax-only/-E/-S/-c, the driver runs in link
mode, and a header-only command line produces a PCH only incidentally: a
linker option such as -lm or -Wl,..., including one from a config file,
adds a link job. Use -c in the PCH examples.

Also fix two broken examples: -ignore-pch is a driver option (cc1
rejects -Xclang -ignore-pch), and the relocatable PCH example is
missing -o. In LibASTImporter.md, generate the C++ AST files with
-emit-ast instead of treating .cpp files as headers.

LLM-aided
DeltaFile
+9-10clang/docs/UsersManual.md
+2-2clang/docs/LibASTImporter.md
+11-122 files

OPNSense/core 417f7e5 — src/opnsense/mvc/app/controllers/OPNsense/IPsec/forms dialogChild.xml, src/opnsense/mvc/app/models/OPNsense/IPsec Swanctl.xml

VPN: IPsec: Add replay_window to children (#10938)

* VPN: IPsec: Add replay_window to children

Co-authored-by: Franco Fichtner <franco at opnsense.org>

---------

Co-authored-by: Franco Fichtner <franco at opnsense.org>
DeltaFile
+7-0src/opnsense/mvc/app/controllers/OPNsense/IPsec/forms/dialogChild.xml
+5-0src/opnsense/mvc/app/models/OPNsense/IPsec/Swanctl.xml
+12-02 files

OPNSense/core 410ebe4 — src/opnsense/mvc/app/library/OPNsense/Auth/Services WebGui.php

system: prevent installer user from loggin in

This works in testing, but opnsense-login doesn't agree
at first glance.  Need to see why.
DeltaFile
+10-0src/opnsense/mvc/app/library/OPNsense/Auth/Services/WebGui.php
+10-01 files

OPNSense/core 42f457e — src/etc/inc auth.inc, src/opnsense/mvc/app/models/OPNsense/Auth User.php

system: switch password hashing from bcrypt to argon2id

A bit unfortunate both spots exist, but maybe that can change later on.
DeltaFile
+1-1src/opnsense/mvc/app/models/OPNsense/Auth/User.php
+1-1src/etc/inc/auth.inc
+2-22 files

OPNSense/core 1fa5f7c — src/etc/inc config.inc, src/etc/rc.subr.d recover livemode

system: bring installer remove code closer together actually

livemode script is unconditional before login prompt so we can
do the proper cleanup at the last possible point in time.
DeltaFile
+9-0src/etc/rc.subr.d/livemode
+0-8src/etc/inc/config.inc
+0-2src/etc/rc.subr.d/recover
+9-103 files

OPNSense/core 8e3e77c — src/etc/rc.subr.d livemode

system: fix and reindent previous
DeltaFile
+20-22src/etc/rc.subr.d/livemode
+20-221 files

OPNSense/core b0b2df1 — src/etc/inc config.inc auth.inc, src/etc/rc.subr.d livemode

system: make the installer user a real user

This allows the installer to use authenticated integration
and SSH keys as a root overlay.
DeltaFile
+46-20src/etc/rc.subr.d/livemode
+24-17src/etc/inc/auth.inc
+11-6src/opnsense/mvc/app/models/OPNsense/Auth/FieldTypes/UidField.php
+8-0src/etc/inc/config.inc
+2-2src/opnsense/mvc/app/models/OPNsense/Auth/User.php
+1-1src/opnsense/scripts/auth/sync_user.php
+92-466 files

OPNSense/core a6a3685 — src/etc/rc.subr.d livemode

system: not sure if the lock is even necessary
DeltaFile
+2-3src/etc/rc.subr.d/livemode
+2-31 files

OPNSense/core c4ebe6d — . plist, src/opnsense/service/templates/OPNsense/Auth +TARGETS webgui.pam

system: add webgui PAM config to test with opnsense-login
DeltaFile
+2-0src/opnsense/service/templates/OPNsense/Auth/webgui.pam
+1-0src/opnsense/service/templates/OPNsense/Auth/+TARGETS
+1-0plist
+4-03 files

FreeBSD/ports e026d11 — net/samba424 Makefile, net/samba424/files patch-python_samba_join.py

net/samba424: fix swapped paths/targetdir args in join.py provision_fill call

patch-python_samba_provision_____init____.py extends provision_fill()'s
signature to provision_fill(..., paths, targetdir, schema=None, ...),
but the DCJoinContext call site in patch-python_samba_join.py passed
the two positional arguments in the opposite order (targetdir, paths).
This silently bound paths to a plain targetdir string and targetdir to
the ProvisionPaths object, which would raise AttributeError as soon as
provision_fill() accesses paths.netlogon/paths.sysvol.

Present identically since net/samba422 (join.py was not touched at all
in net/samba419) and carried forward unnoticed through samba423 and
samba424. Only reachable via the AD DC subdomain-join code path
(DCJoinContext), not via a fresh/root-domain provision.

PR:     298883
Co-Authored-By: Claude Sonnet 5 <noreply at anthropic.com>
Aproved by:     samba (kiwi)
DeltaFile
+1-1net/samba424/files/patch-python_samba_join.py
+1-1net/samba424/Makefile
+2-22 files

OPNSense/core 353a42b — src/opnsense/mvc/app/models/OPNsense/IPsec Swanctl.xml

Update src/opnsense/mvc/app/models/OPNsense/IPsec/Swanctl.xml

Co-authored-by: Franco Fichtner <franco at opnsense.org>
DeltaFile
+1-1src/opnsense/mvc/app/models/OPNsense/IPsec/Swanctl.xml
+1-11 files

LLVM/project 090b123 — lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix frame_provider.py TestFrameProviderPassThroughPrefix.py

[lldb][test] Handle None function name in frame provider tests (#226936)

Fixes #191859.

On Arm one of the functions has no name, which is a valid state.
```
Num frames: 7
0 frame #0: 0x092a151c a.out`baz at main.c:5:3 --name:  baz
1 frame #1: 0x092a1540 a.out`bar at main.c:10:10 --name:  bar
2 frame #2: 0x092a1560 a.out`foo at main.c:15:10 --name:  foo
3 frame #3: 0x092a158c a.out`main at main.c:20:10 --name:  main
4 frame #4: 0xf7ab939a libc.so.6` --name:  None
5 frame #5: 0xf7ab943e libc.so.6`__libc_start_main + 94 --name:  __libc_start_main
6 frame #6: 0x092a1434 a.out`_start + 40 --name:  _start
```
The prefix provider needs to handle that possibility.

Though the Python type annotations on ScriptedFrame say that the name
methods return string, in reality they can return None, which the C++
sides expect. I will fix that in another PR.
DeltaFile
+0-6lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix/TestFrameProviderPassThroughPrefix.py
+3-1lldb/test/API/functionalities/scripted_frame_provider/pass_through_prefix/frame_provider.py
+3-72 files

LLVM/project c68a4ca — mlir/lib/Target/LLVMIR/Dialect/LLVMIR LLVMToLLVMIRTranslation.cpp, mlir/test/Target/LLVMIR llvmir-invalid.mlir

[LLVMIR] Directly lower global initializer GEP to constant expression (#226904)

MLIR lowers global initializers in a very unusual way, by using an
IRBuilder without insertion point, and relying on the fact that for a
well-formed initializer, all the instructions will be converted to
constant expressions and no actual instructions that require insertion
will be produced.

This causes issues for https://github.com/llvm/llvm-project/pull/226425,
which requires an insertion point for CreateGEP to determine the data
layout.

To avoid this, make convertGEPOp() directly produce a constant
expression GEP if there is no insertion point, reusing the existing code
path for inrange GEPs.
DeltaFile
+14-8mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
+2-2mlir/test/Target/LLVMIR/llvmir-invalid.mlir
+16-102 files

FreeBSD/ports ccd0bb1 — math/openlibm pkg-plist Makefile, math/openlibm/files patch-CMakeLists.txt

math/openlibm: Update to 0.8.8

Also improve port artifacts versioning

Changes: https://github.com/JuliaMath/openlibm/releases/tag/v0.8.8

Approved by:    thierry (mentor, implicit)
DeltaFile
+19-9math/openlibm/files/patch-CMakeLists.txt
+3-3math/openlibm/distinfo
+4-1math/openlibm/Makefile
+1-1math/openlibm/pkg-plist
+27-144 files

LLVM/project bb9dd27 — clang/lib/AST ExprConstant.cpp, clang/lib/AST/ByteCode InterpState.h EvalEmitter.h

[clang][bytecode] Use bytecode interpreter in toplevel `Expr::Evaluate*` functions (#226217)

To avoid all the state setup we otherwise do. This also lets us remove
the `EvalInfo::EnableNewConstInterp` flag, which was previously checked
on every `::EvaluateAsRValue` call.
DeltaFile
+123-20clang/lib/AST/ExprConstant.cpp
+0-29clang/lib/AST/ByteCode/Context.cpp
+0-13clang/lib/AST/ByteCode/InterpState.cpp
+0-6clang/lib/AST/ByteCode/EvalEmitter.cpp
+0-3clang/lib/AST/ByteCode/InterpState.h
+0-3clang/lib/AST/ByteCode/EvalEmitter.h
+123-741 files not shown
+123-767 files

LLVM/project b20896c — llvm/lib/Target/DirectX DXILFlattenArrays.cpp DXILDataScalarization.cpp, llvm/test/CodeGen/DirectX scalarize-static-array-of-float-vectors.ll bugfix_150050_data_scalarize_const_gep.ll

[DirectX] Don't use IRBuilder to create GEPs (#227000)

This switches the DirectX backend to directly call
`GetElementPtrInst::Create()` instead of creating GEPs via IRBuilder.
IRBuilder will soon start canonicalizing GEPs to ptradd representation
(with the first change being
https://github.com/llvm/llvm-project/pull/226425, affecting constant
expressions only), while DirectX needs GEPs to have specific form.

The change implemented here is a minimal one to unblock further work. In
the future, it will become impossible to construct such GEPs through any
API. The DirectX backend needs to switch to using an intrinsic to
represent any non-canonical GEPs it needs. This followup work is tracked
in https://github.com/llvm/llvm-project/issues/227005.
DeltaFile
+50-25llvm/test/CodeGen/DirectX/llc-vector-load-scalarize.ll
+6-19llvm/lib/Target/DirectX/DXILFlattenArrays.cpp
+11-14llvm/lib/Target/DirectX/DXILDataScalarization.cpp
+16-8llvm/test/CodeGen/DirectX/scalar-store.ll
+14-7llvm/test/CodeGen/DirectX/bugfix_150050_data_scalarize_const_gep.ll
+12-6llvm/test/CodeGen/DirectX/scalarize-static-array-of-float-vectors.ll
+109-797 files not shown
+145-10213 files

OPNSense/core a2aeeaf — src/etc/inc/plugins.inc.d dpinger.inc

system: add latency_avg as sanity check for running dpinger; closes #10937

The check was introduced in 0df1c0d so there's no technical background
to take into account.  Indeed, latency_avg is probably the reading that
would least likely be 0 in this case.

Suggested by: @mbccd
DeltaFile
+1-1src/etc/inc/plugins.inc.d/dpinger.inc
+1-11 files

FreeBSD/ports 30c1b81 — . UPDATING, www/mod_wsgi pkg-descr distinfo

www/mod_wsgi: Update to 6.1.0

mod_wsgi has been upgraded to major version 6 with several potentially
breaking changes. Read the release notes very carefully:
https://modwsgi.readthedocs.io/en/latest/release-notes.html

PR:             298961
Approved by:    douglas at douglasthrift.net (maintainer)
DeltaFile
+5-4www/mod_wsgi/Makefile
+8-0UPDATING
+3-3www/mod_wsgi/distinfo
+3-2www/mod_wsgi/pkg-descr
+19-94 files

OPNSense/core 7eee576 — src/etc/inc/plugins.inc.d dpinger.inc

system: add latency_avg as sanity check for running dpinger; closes #10937

The check was introduced in 0df1c0d so there's no technical background
to take into account.  Indeed, latency_avg is probably the reading that
would least likely be 0 in this case.

Suggested by: @mbccd
DeltaFile
+1-1src/etc/inc/plugins.inc.d/dpinger.inc
+1-11 files

LLVM/project d7daf1d — llvm/tools/llvm-profgen PerfReader.cpp

[llvm][llvm-profgen] Fix printing bogus trace info on 32-bit (#226965)

And as a result, fix
llvm/test/tools/llvm-profgen/AArch64/cs-bogus-trace.test when run on Arm
32-bit:
https://lab.llvm.org/buildbot/#/builders/122/builds/59

Fixes #225569 / 28fec94991905d8dd8a08658e9590e13b7fe1af5.

`x` is for an unsigned integer but the argument given for it is a
uint64_t. This worked on 64-bit (maybe it's passed in a register), but
not on 32-bit where we got strange values printed.

Use format_hex instead, so we don't have to choose a format code.
DeltaFile
+2-2llvm/tools/llvm-profgen/PerfReader.cpp
+2-21 files

OPNSense/core 21dbcab — src/opnsense/mvc/app/controllers/OPNsense/IPsec/forms dialogChild.xml, src/opnsense/mvc/app/models/OPNsense/IPsec Swanctl.xml

VPN: IPsec: Add replay_window to children
DeltaFile
+7-0src/opnsense/mvc/app/controllers/OPNsense/IPsec/forms/dialogChild.xml
+5-0src/opnsense/mvc/app/models/OPNsense/IPsec/Swanctl.xml
+12-02 files

NetBSD/src NCEKBVP — sys/dev/wscons files.wscons

   Unbreak build.
VersionDeltaFile
1.57+3-3sys/dev/wscons/files.wscons
+3-31 files

LLVM/project 6aeadac — lldb/examples/python/templates scripted_process.py

[lldb] Correct types for ScriptedFrame get_function_name get_display_function_name (#226938)

These claimed to return str but the initial value for self.name is None,
and the C++ side returns optional<string>. So I think optional string is
correct here.
DeltaFile
+2-2lldb/examples/python/templates/scripted_process.py
+2-21 files

NetBSD/pkgsrc-wip d3ddf8a — chromium distinfo, chromium/patches patch-rollup_rust_bindings__napi_src_lib.rs patch-rollup_rust_bindings__napi_Cargo.toml

chromium: import fixes from www/chromium
DeltaFile
+2-2chromium/distinfo
+1-1chromium/patches/patch-rollup_rust_bindings__napi_src_lib.rs
+1-1chromium/patches/patch-rollup_rust_bindings__napi_Cargo.toml
+4-43 files

FreeBSD/ports 59c6916 — net/samba424 Makefile, net/samba424/files patch-buildtools_scripts_abi__gen.sh patch-dynconfig_wscript

net/samba424: fix dropped %%GDB_CMD%% and %%SAMBA4_CONFIG%% placeholders

patch-buildtools_scripts_abi__gen.sh hardcoded the abi_gen.sh gdb
invocation to "true" instead of the %%GDB_CMD%% placeholder that the
port's post-patch target substitutes via _GDB_CMD. This made the
Makefile's REINPLACE_CMD for %%GDB_CMD%% a dead no-op and silently
disabled real gdb-based ABI/symbol-version checking under the
DEVELOPER option, even though the devel/gdb dependency is still pulled
in for that option.

patch-dynconfig_wscript hardcoded the CONFIGFILE path to smb4.conf
instead of the %%SAMBA4_CONFIG%% placeholder, making the corresponding
REINPLACE_CMD for %%SAMBA4_CONFIG%% a dead no-op too. Harmless in
practice since _SAMBA_CONFIG already equals smb4.conf, but it silently
removes the ability to reconfigure the config file name through the
mechanism the Makefile provides for it.

Restore both placeholders so the existing substitution logic in the
Makefile actually takes effect again.

    [4 lines not shown]
DeltaFile
+2-2net/samba424/files/patch-dynconfig_wscript
+1-1net/samba424/files/patch-buildtools_scripts_abi__gen.sh
+1-1net/samba424/Makefile
+4-43 files

FreeBSD/src 34f9f56 — sys/contrib/openzfs/man/man8 zstream.8, sys/contrib/openzfs/module/os/freebsd/spl acl_common.c

zfs: merge openzfs/zfs at 1f380a4f3

Notable upstream pull request merges:
 #17864 e903655c5 zpool: Add zpool status -vv error ranges
 #18820 -multiple zdb: account pending DDT-log frees in leak detection
 #18884 -multiple zio_crypt: establish platform interface; rework common
                  code to use it
 #19010 -multiple zfs_namecheck: reject '.' and '..' before a snapshot or
                  bookmark
 #19031 994fb1703 Fix metaslab count assertion in metaslab_group_alloc()
                  for small vdevs
 #19093 f5b2fc8e2 zfs_ctldir: make .zfs/snapshot/<name> btime the snapshot
                  creation time
 #19097 2dece2a34 zstream: report invalid record context without assertions
 #19102 78f49e1dd vdev_disk: simplify alignment checks for linear ABDs
 #19108 -multiple Fix permanent errors misfiled into the scrub error log
 #19110 fa4bc4dec spa_errlog: don't let one unresolvable entry hide the
                  whole error log
 #19116 b6dde8a17 zio_crypt: free the key unwrap uios when decryption fails

    [13 lines not shown]
DeltaFile
+0-2,076sys/contrib/openzfs/module/os/linux/zfs/zio_crypt.c
+0-1,809sys/contrib/openzfs/module/os/freebsd/zfs/zio_crypt.c
+1,679-0sys/contrib/openzfs/module/zfs/zio_crypt.c
+0-1,307sys/contrib/openzfs/module/os/freebsd/spl/acl_common.c
+218-158sys/contrib/openzfs/man/man8/zstream.8
+0-363sys/contrib/openzfs/module/os/freebsd/zfs/zfs_ioctl_compat.c
+1,897-5,713234 files not shown
+7,659-7,353240 files

OPNSense/plugins 839e075 — . LICENSE README.md

LICENSE/README: sync
DeltaFile
+1-1README.md
+1-0LICENSE
+2-12 files

NetBSD/pkgsrc iINnRYo — doc CHANGES-2026

   Updated textproc/py-JWT, devel/py-filelock
VersionDeltaFile
1.6497+3-1doc/CHANGES-2026
+3-11 files

OPNSense/plugins 5f90cea — sysutils/puppet-agent Makefile pkg-descr, sysutils/puppet-agent/src/opnsense/mvc/app/views/OPNsense/PuppetAgent index.volt

sysutils/puppet-agent: sync with master
DeltaFile
+23-17sysutils/puppet-agent/src/opnsense/mvc/app/views/OPNsense/PuppetAgent/index.volt
+7-0sysutils/puppet-agent/pkg-descr
+3-3sysutils/puppet-agent/Makefile
+33-203 files