LLVM/project 762aa86llvm/lib/Target/AArch64 AArch64InstrInfo.td AArch64ISelDAGToDAG.cpp, llvm/test/CodeGen/AArch64 partial-reduction-add-predicated.ll arm64-build-vector.ll

[AArch64] Canonicalize NVCAST to bitcast under LE (#223388)

A NVCAST is equivalent to a BITCAST under LE. This canonicalises the
NVCAST to BITCAST under LE like we do for ARM, so there is only one
representation, then fixes up the places that were assuming nvcast.
DeltaFile
+23-33llvm/test/CodeGen/AArch64/zext-shuffle.ll
+27-13llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+12-9llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+9-6llvm/lib/Target/AArch64/AArch64InstrInfo.td
+2-2llvm/test/CodeGen/AArch64/arm64-build-vector.ll
+1-2llvm/test/CodeGen/AArch64/partial-reduction-add-predicated.ll
+74-651 files not shown
+74-677 files

FreeNAS/freenas cba03d9src/middlewared/middlewared/plugins/container __init__.py migrate.py, src/middlewared/middlewared/pytest/unit/alert/inventory applicability.txt

NAS-143385 / 27.0.0-BETA.1 / Create `IncusVirtualMachinesWereNotMigratedAlert` if there still are some Incus VM datasets (#19680)

Additionally, `maybe_migrate_legacy` was removed from the private API
because no one calls it.
DeltaFile
+57-3src/middlewared/middlewared/plugins/container/migrate.py
+1-5src/middlewared/middlewared/plugins/container/__init__.py
+2-0src/middlewared/middlewared/pytest/unit/alert/inventory/applicability.txt
+60-83 files

NetBSD/src vGOUa7ksys/arch/aarch64/aarch64 fpu.c

   arm64: don't consult mvfr1_el1 for AArch64 fp capabilities

   The MVFR1_EL1 register describes features for the AArch32 AdvSIMD and FP
   implementation and the contents of this register are UNKNOWN when FEAT_AA32
   is not implemented.

   So let's ignore this register and just set FPCR defaults for IEEE 754
   compatibility.

   Before this change, 7 tests in lib/libm failed on a VMware Fusion VM
   (Apple M4 Pro) where MVFR1_EL1 reads as zero. With this change, all
   tests pass.
VersionDeltaFile
1.15+8-56sys/arch/aarch64/aarch64/fpu.c
+8-561 files

LLVM/project 0a8eb54openmp/runtime/test/ompt callback.h

[OpenMP][OMPT] Fixes current_address printing on RV64GC (#223681)

A previous commit increased the number of arguments passed to printf in
print_possible_return_addresses(addr) but forgot to change the format in
order to include the new argument.

Fixes: 4e19543b1a85 (FIX some OMPT tests that fail on RISC-V (#156914),
2026-07-24)
DeltaFile
+1-1openmp/runtime/test/ompt/callback.h
+1-11 files

NetBSD/pkgsrc zqosBzVlang/llvm/patches patch-lib_ObjCopy_MachO_MachOWriter.cpp patch-lib_ObjCopy_MachO_MachOLayoutBuilder.cpp, lang/rust Makefile distinfo

   llvm,rust: backport fix for macOS 27 dyld __LINKEDIT alignment issue
VersionDeltaFile
1.1+169-0lang/rust/patches/patch-src_llvm-project_llvm_lib_ObjCopy_MachO_MachOLayoutBuilder.cpp
1.1+169-0lang/llvm/patches/patch-lib_ObjCopy_MachO_MachOLayoutBuilder.cpp
1.1+131-0lang/rust/patches/patch-src_llvm-project_llvm_lib_ObjCopy_MachO_MachOWriter.cpp
1.1+131-0lang/llvm/patches/patch-lib_ObjCopy_MachO_MachOWriter.cpp
1.364+2-2lang/rust/Makefile
1.202+3-1lang/rust/distinfo
+605-32 files not shown
+610-58 files

LLVM/project c7d4c00bolt/include/bolt/Core BinaryContext.h BinarySection.h, bolt/lib/Core BinaryContext.cpp

[BOLT] Prevent rela.plt reordering (#219447)

[BOLT]  Preserve the original order of DT_JMPREL relocations.

BOLT reorders .rela.plt entries without also updating the corresponding
PLT stub relocation indices. This patch preserves the original order of
DT_JMPREL relocations by recording their original indices and using
those indices when emitting them. We store the original `DT_JMPREL`
index directly on each relocation.

AI tools (codex) were used to assist with implementation.

Related to https://github.com/llvm/llvm-project/issues/207222
DeltaFile
+87-63bolt/lib/Rewrite/RewriteInstance.cpp
+36-19bolt/include/bolt/Core/Relocation.h
+37-0bolt/test/runtime/X86/rela-plt-order.c
+6-5bolt/include/bolt/Core/BinarySection.h
+4-3bolt/include/bolt/Core/BinaryContext.h
+3-2bolt/lib/Core/BinaryContext.cpp
+173-921 files not shown
+175-947 files

LLVM/project cc44b5bflang/lib/Evaluate tools.cpp fold-integer.cpp, flang/lib/Semantics expression.cpp

Fix regressions as my review comments

One more is_same_v instance

clang-format
DeltaFile
+12-0flang/test/Semantics/cmp-relational-char.f90
+6-0flang/test/Evaluate/fold-unsigned-maxval.f90
+2-2flang/lib/Evaluate/fold-integer.cpp
+2-1flang/lib/Semantics/expression.cpp
+2-1flang/lib/Evaluate/tools.cpp
+24-45 files

LLVM/project 7e960a8offload/plugins-nextgen/amdgpu/src rtl.cpp, offload/plugins-nextgen/common/include MemoryManager.h

[offload] add handling of memory alignment to MemoryManagerTy (#218418)

Previously, memory alignment was handled internally by the device. The
`MemoryManagerTy` either redirected large allocation requests directly
to the device or stored pointers to the smaller memory chunks in pools.
The information about the alignment expected by the user was just passed
by the `MemoryManagerTy` to the device allocators. However, most vendors
do not provide an API for specifying the alignment of the memory
allocation (except for the Level Zero plugin), allowing only for
verification of whether the returned pointer is correctly aligned. In
this patch, `MemoryManagerTy` allocates excess memory and performs
pointer arithmetic on the pointer returned by the device allocator, so
that the final pointer is aligned accordingly regardless of the plugin.

NodeTy has two new fields:
- `BasePtr`: the pointer to the originally allocated memory
- `Ptr`: the pointer returned to the caller, possibly after pointer
arithmetic operations on `BasePtr` for ensuring the requested alignment.


    [13 lines not shown]
DeltaFile
+63-21offload/plugins-nextgen/common/include/MemoryManager.h
+1-1offload/plugins-nextgen/cuda/src/rtl.cpp
+1-1offload/plugins-nextgen/amdgpu/src/rtl.cpp
+65-233 files

FreeNAS/freenas d3ff7f6tests run_unit_tests.py

Run the unit tests against a single middlewared tree

## Problem
`tests/run_unit_tests.py` copied the checkout's `middlewared/pytest` into the installed package so that dotted imports like `middlewared.pytest.unit.entitlements` would resolve, then collected the tests from the checkout anyway. Test modules were loaded by path from the checkout while everything they imported came from `/usr/lib/python3/dist-packages`. The alert applicability tests decide whether an alert class is product code or a test fixture by where its file lives, so the three fixtures in `test_lifecycle.py` were counted as product declarations and the frozen inventory no longer described the tree, failing the `unit_tests` pipeline (http://jenkins-eng-ci.cmb1.ixsystems.net:8080/job/master/job/unit_tests/355/). The copy was also removed afterwards, and since the deb ships `middlewared/pytest`, every run left the installed package missing files it is supposed to have.

## Solution
Drop the copy and prepend the checkout's `src/middlewared` to `sys.path`, so the tests and the `middlewared` they import are one tree. That is the layout the GitHub Actions run and the documented inventory-regeneration command already use, and it makes the earlier two-tree tolerance in `test_applicability_matrix.py` unnecessary, so that goes back to a single prefix.

Worth noting on review: the job now exercises the checkout's Python rather than the installed deb's. It was never a clean artefact test -- it already ran the checkout's test modules against whatever product code was installed -- and the frozen inventory is generated from the checkout, so the checkout is the only tree it can meaningfully be compared against.
DeltaFile
+9-26tests/run_unit_tests.py
+9-261 files

FreeNAS/freenas 4a24369src/middlewared/middlewared/plugins disk.py, src/middlewared/middlewared/plugins/pool_ replace_disk.py pool.py

NAS-143333 / 27.0.0-BETA.1 / Gate SED on TrueNAS hardware with a licensed feature key (#19684)

This PR adds changes to restrict SED to TrueNAS hardware carrying a
license with the SED feature key, and to have that enforced.

The SED vector becomes `ce=0, hw=0, hw_l=0, hw_k=1, ce_l=0, ce_k=0` and
SED is injected into legacy licenses so the existing installed base
keeps it. Those two have to land together: narrowing the vector on its
own would deny every legacy licensee whose bitmask never carried the SED
bit, and their pools would stop unlocking on upgrade. The injection is
unconditional because the hardware conjunct lives in the vector, not in
the license parser, which stays a pure function of the blob it is
handed. This supersedes the earlier decision that allowed the keyless
grants.

Enforcement goes through a new `validate_sed_license` shaped after the
existing `validate_dedup_license`, wired into pool create, update,
attach and replace. Setting a global or per-disk SED password is gated
too, though clearing one always works so a system that lost the

    [15 lines not shown]
DeltaFile
+27-0src/middlewared/middlewared/utils/service/entitlement.py
+14-0src/middlewared/middlewared/plugins/system_advanced/config.py
+8-2src/middlewared/middlewared/plugins/pool_/attach_disk.py
+8-1src/middlewared/middlewared/plugins/disk.py
+5-1src/middlewared/middlewared/plugins/pool_/replace_disk.py
+6-0src/middlewared/middlewared/plugins/pool_/pool.py
+68-43 files not shown
+71-119 files

LLVM/project e73aff9clang/lib/AST ASTContext.cpp

Add citation to the Itanium C++ ABI
DeltaFile
+4-3clang/lib/AST/ASTContext.cpp
+4-31 files

LLVM/project f7c2ac8llvm/include/llvm/Transforms/Vectorize LoopVectorizationLegality.h, llvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPlan.h

Rename MonotonicPHI (and related) to ConditionalInduction*
DeltaFile
+168-166llvm/test/Transforms/LoopVectorize/compress-idioms.ll
+42-42llvm/test/Transforms/LoopVectorize/AArch64/compress-idioms.ll
+22-19llvm/lib/Transforms/Vectorize/LoopVectorizationLegality.cpp
+24-17llvm/include/llvm/Transforms/Vectorize/LoopVectorizationLegality.h
+19-18llvm/lib/Transforms/Vectorize/VPlan.h
+20-16llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+295-27813 files not shown
+371-34519 files

LLVM/project 150eb1fllvm/lib/Target/AArch64 AArch64ISelLowering.cpp

[NFC][AArch64ISelLowering] Use get{Extract/Insert}VectorElt helpers. (#222979)
DeltaFile
+73-142llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+73-1421 files

FreeNAS/freenas facd6f2src/middlewared/middlewared/pytest/unit/utils test_license_info_wire.py test_license_legacy_utils.py, src/middlewared/middlewared/utils/entitlements matrix.py

Require a SED feature key on TrueNAS hardware

This commit adds changes to narrow the SED entitlement so it only resolves on TrueNAS hardware carrying a license with the SED feature key, and to inject that key into legacy licenses so the existing installed base keeps working. Both halves have to land together: narrowing the vector on its own would deny every legacy licensee whose bitmask never carried the SED bit, and their pools would stop unlocking on upgrade. The injection is unconditional because the hardware conjunct lives in the vector, not in the license parser, which stays a pure function of the blob it is handed. This supersedes the earlier decision that allowed the keyless grants.

(cherry picked from commit 3dcdeb8181a66d8e578d1232773d0135c6350f8e)
DeltaFile
+3-10src/middlewared/middlewared/pytest/unit/utils/test_entitlements.py
+6-4src/middlewared/middlewared/pytest/unit/utils/test_license_legacy_utils.py
+1-1src/middlewared/middlewared/utils/entitlements/matrix.py
+1-0src/middlewared/middlewared/utils/license/legacy.py
+1-0src/middlewared/middlewared/pytest/unit/utils/test_license_info_wire.py
+12-155 files

FreeNAS/freenas d614a39src/middlewared/middlewared/pytest/unit/utils test_license_info_wire.py test_license_legacy_utils.py, src/middlewared/middlewared/utils/entitlements matrix.py

Require a SED feature key on TrueNAS hardware

This commit adds changes to narrow the SED entitlement so it only resolves on TrueNAS hardware carrying a license with the SED feature key, and to inject that key into legacy licenses so the existing installed base keeps working. Both halves have to land together: narrowing the vector on its own would deny every legacy licensee whose bitmask never carried the SED bit, and their pools would stop unlocking on upgrade. The injection is unconditional because the hardware conjunct lives in the vector, not in the license parser, which stays a pure function of the blob it is handed. This supersedes the earlier decision that allowed the keyless grants.

(cherry picked from commit 3dcdeb8181a66d8e578d1232773d0135c6350f8e)
DeltaFile
+3-10src/middlewared/middlewared/pytest/unit/utils/test_entitlements.py
+6-4src/middlewared/middlewared/pytest/unit/utils/test_license_legacy_utils.py
+1-1src/middlewared/middlewared/utils/entitlements/matrix.py
+1-0src/middlewared/middlewared/utils/license/legacy.py
+1-0src/middlewared/middlewared/pytest/unit/utils/test_license_info_wire.py
+12-155 files

FreeNAS/freenas e0a5064src/middlewared/middlewared/plugins disk.py, src/middlewared/middlewared/plugins/pool_ attach_disk.py

NAS-143333 / 27.0.0-BETA.1 / Gate SED on TrueNAS hardware with a licensed feature key (#19684)

This PR adds changes to restrict SED to TrueNAS hardware carrying a
license with the SED feature key, and to have that enforced.

The SED vector becomes `ce=0, hw=0, hw_l=0, hw_k=1, ce_l=0, ce_k=0` and
SED is injected into legacy licenses so the existing installed base
keeps it. Those two have to land together: narrowing the vector on its
own would deny every legacy licensee whose bitmask never carried the SED
bit, and their pools would stop unlocking on upgrade. The injection is
unconditional because the hardware conjunct lives in the vector, not in
the license parser, which stays a pure function of the blob it is
handed. This supersedes the earlier decision that allowed the keyless
grants.

Enforcement goes through a new `validate_sed_license` shaped after the
existing `validate_dedup_license`, wired into pool create, update,
attach and replace. Setting a global or per-disk SED password is gated
too, though clearing one always works so a system that lost the

    [12 lines not shown]
DeltaFile
+27-0src/middlewared/middlewared/utils/service/entitlement.py
+21-1src/middlewared/middlewared/plugins/system_advanced/config.py
+3-10src/middlewared/middlewared/pytest/unit/utils/test_entitlements.py
+6-4src/middlewared/middlewared/pytest/unit/utils/test_license_legacy_utils.py
+8-2src/middlewared/middlewared/plugins/pool_/attach_disk.py
+8-1src/middlewared/middlewared/plugins/disk.py
+73-1810 files not shown
+97-2816 files

NetBSD/pkgsrc UduMp0Vwww/nginx Makefile distinfo

   nginx: Update to 1.30.5

   Changes with nginx 1.30.5                                        15 Sep 2026

       *) Security: a heap memory buffer overflow might occur in a worker
          process under certain configurations when using HTTP/3 with OpenSSL
          3.5.0 and earlier (CVE-2026-90439).
          Thanks to Banny Liao.

       *) Change: now the QUIC transport parameters extension received in an
          SSL connection is always ignored.
VersionDeltaFile
1.145+4-4www/nginx/distinfo
1.197+2-3www/nginx/Makefile
+6-72 files

LLVM/project e5fa11flldb/source/Host/common Socket.cpp, lldb/tools/lldb-server lldb-platform.cpp

[lldb][Windows] Support AF_UNIX domain sockets (#205618)

Enable the Windows `AF_UNIX` domain-socket support added in #205864 by
flipping the `#if LLDB_ENABLE_POSIX` guards to `#if LLDB_ENABLE_POSIX ||
defined(_WIN32)`.

Also updates `SocketTest.cpp` to exercise `ProtocolUnixDomain` on
Windows (while still excluding ProtocolUnixAbstract, which has no
Windows equivalent).

This is part of a longer set of patches to fix tests on
`LLDB_USE_LLDB_SERVER=1`.
DeltaFile
+10-3lldb/unittests/Host/SocketTest.cpp
+4-3lldb/unittests/TestingSupport/Host/SocketTestUtilities.cpp
+3-3lldb/unittests/TestingSupport/Host/SocketTestUtilities.h
+2-2lldb/source/Host/common/Socket.cpp
+1-1lldb/tools/lldb-server/lldb-platform.cpp
+20-125 files

LLVM/project 0aa2a2futils/bazel/llvm-project-overlay/libc BUILD.bazel

[Bazel] Fixes 2c930a5 (#223955)

This fixes 2c930a5f80d8c52e396b2bb53ba526729ca41796 (#220921).

Buildkite error link:
https://buildkite.com/llvm-project/upstream-bazel/builds?commit=2c930a5f80d8c52e396b2bb53ba526729ca41796

Co-authored-by: Google Bazel Bot <google-bazel-bot at google.com>
DeltaFile
+1-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+1-01 files

FreeNAS/freenas 8c7a219src/middlewared/middlewared/plugins disk.py, src/middlewared/middlewared/utils/license legacy.py

Remove extra comments
DeltaFile
+0-6src/middlewared/middlewared/utils/license/legacy.py
+0-2src/middlewared/middlewared/plugins/disk.py
+0-82 files

FreeNAS/freenas 4b756cesrc/middlewared/middlewared/plugins/pool_ replace_disk.py pool.py, src/middlewared/middlewared/plugins/system_advanced config.py

Share the SED entitlement check between its callers

This commit makes some changes where the SED entitlement check was written out by hand in a few places instead of going through one helper. `validate_sed_license` moves out of the pool utilities, since nothing about it is pool specific, and takes the key to report under as a single string so a settings field validator can pass a bare field name while the pool paths keep passing a full schema path.

The global SED password is now checked by a field validator like everything else in advanced settings, rather than inline ahead of them, so a denial no longer pre-empts the other errors in the same payload. That needed the password merged into the dicts the settings helper diffs, because it is not a field on the entry, and it lets the helper go back to its original signature.
DeltaFile
+16-14src/middlewared/middlewared/plugins/system_advanced/config.py
+27-0src/middlewared/middlewared/utils/service/entitlement.py
+2-11src/middlewared/middlewared/utils/service/settings.py
+0-12src/middlewared/middlewared/plugins/pool_/utils.py
+3-3src/middlewared/middlewared/plugins/pool_/pool.py
+2-3src/middlewared/middlewared/plugins/pool_/replace_disk.py
+50-432 files not shown
+53-498 files

FreeNAS/freenas 293df3csrc/middlewared/middlewared/plugins disk.py, src/middlewared/middlewared/plugins/pool_ attach_disk.py replace_disk.py

Enforce the SED entitlement on pool and password paths

This commit adds changes to actually enforce the SED rule, which until now was checked almost nowhere — creating a pool with the all_sed flag had no entitlement check at all. Pool create, update, attach and replace now go through a shared validate_sed_license, and setting a global or per-disk SED password is gated too, though clearing one always works so a system that lost the entitlement can still drop a secret it is no longer allowed to use.

Unlock is deliberately left ungated. A license daemon that errors with anything other than "no license" reads as unlicensed, so gating unlock would turn a daemon hiccup into a failed pool import at boot and a failed unlock on an HA master transition. The drives are already provisioned by that point, so unlocking them grants nothing new. What this enforces is no new SED usage, rather than no SED usage at all.
DeltaFile
+16-1src/middlewared/middlewared/plugins/system_advanced/config.py
+12-0src/middlewared/middlewared/plugins/pool_/utils.py
+10-1src/middlewared/middlewared/plugins/disk.py
+6-0src/middlewared/middlewared/plugins/pool_/pool.py
+4-1src/middlewared/middlewared/plugins/pool_/attach_disk.py
+5-0src/middlewared/middlewared/plugins/pool_/replace_disk.py
+53-31 files not shown
+57-37 files

FreeNAS/freenas 4d7fb8fsrc/middlewared/middlewared/plugins/disk_ sed.py, src/middlewared/middlewared/plugins/pool_ replace_disk.py attach_disk.py

Address reviews
DeltaFile
+2-2src/middlewared/middlewared/plugins/disk_/sed.py
+1-1src/middlewared/middlewared/plugins/pool_/replace_disk.py
+1-1src/middlewared/middlewared/plugins/pool_/attach_disk.py
+4-43 files

FreeNAS/freenas 2a7207fsrc/middlewared/middlewared/api/v26_0_0 disk.py, src/middlewared/middlewared/plugins/pool_ attach_disk.py

Report SED gate denials consistently and exclude sed in v26

This commit fixes a few problems found while reviewing the SED gates. `sed` is now excluded from the disk update model in v26 as well as v27, because stable/26 serves v26 as its current version and the two have to agree; a `from_previous` hook would not have helped, since the adapter validates a payload against the client's own model before it adapts anything.

The license denial in pool attach now raises before the disk lookup that can throw and discard it, and the global SED password denial accumulates into the same batch as the other advanced settings validators rather than pre-empting them, which needed an optional accumulator on the settings helper. The KMIP tests mock the SED entitlement because they set a global SED password to reach the escrow path.
DeltaFile
+11-2src/middlewared/middlewared/utils/service/settings.py
+6-3src/middlewared/middlewared/plugins/system_advanced/config.py
+4-3src/middlewared/middlewared/utils/license/legacy.py
+4-1tests/api2/test_kmip.py
+4-0src/middlewared/middlewared/plugins/pool_/attach_disk.py
+1-0src/middlewared/middlewared/api/v26_0_0/disk.py
+30-96 files

FreeNAS/freenas 784fa89src/middlewared/middlewared/api/v27_0_0 disk.py, src/middlewared/middlewared/plugins/disk_ sed.py

Reject undetermined disks from all-SED pools

This commit fixes an issue where the disk SED capability column is tri-state but every consumer compared it with `is False`, so a disk that had never been probed passed the "must be SED" check and could join an all-SED pool unnoticed. The comparisons now reject anything that is not definitively SED. It also excludes `sed` from the disk update model, since it is a hardware fact we probe rather than something a caller has any business writing.
DeltaFile
+2-2src/middlewared/middlewared/plugins/disk_/sed.py
+1-1src/middlewared/middlewared/plugins/pool_/replace_disk.py
+1-1src/middlewared/middlewared/plugins/pool_/attach_disk.py
+1-0src/middlewared/middlewared/api/v27_0_0/disk.py
+5-44 files

FreeNAS/freenas 3dcdeb8src/middlewared/middlewared/pytest/unit/utils test_license_info_wire.py test_license_legacy_utils.py, src/middlewared/middlewared/utils/entitlements matrix.py

Require a SED feature key on TrueNAS hardware

This commit adds changes to narrow the SED entitlement so it only resolves on TrueNAS hardware carrying a license with the SED feature key, and to inject that key into legacy licenses so the existing installed base keeps working. Both halves have to land together: narrowing the vector on its own would deny every legacy licensee whose bitmask never carried the SED bit, and their pools would stop unlocking on upgrade. The injection is unconditional because the hardware conjunct lives in the vector, not in the license parser, which stays a pure function of the blob it is handed. This supersedes the earlier decision that allowed the keyless grants.
DeltaFile
+3-10src/middlewared/middlewared/pytest/unit/utils/test_entitlements.py
+6-4src/middlewared/middlewared/pytest/unit/utils/test_license_legacy_utils.py
+1-1src/middlewared/middlewared/utils/entitlements/matrix.py
+1-0src/middlewared/middlewared/utils/license/legacy.py
+1-0src/middlewared/middlewared/pytest/unit/utils/test_license_info_wire.py
+12-155 files

LLVM/project cd22e69clang/lib/Driver/ToolChains WebAssembly.cpp, clang/test/CodeGen exception-model-flag.c

WebAssembly: Drive Emscripten EH from the exception model, drop the cl::opt

Remove the deprecated -enable-emscripten-cxx-exceptions flag. This should now
be driven by the generic exception-model mechanisms. There was also some special
case handling of the -mllvm flag in the clang driver which also needed removal.

Also reverts the test change in b6912258891caefffbf15edb1bceff3724b75af5 now that
the backend doesn't need to be built to test the flag behavior.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+1-25clang/test/Driver/wasm-toolchain.c
+0-16clang/test/CodeGen/WebAssembly/exception-model-flag.c
+2-14llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+3-13clang/lib/Driver/ToolChains/WebAssembly.cpp
+8-0clang/test/CodeGen/exception-model-flag.c
+5-2llvm/lib/Target/WebAssembly/WebAssemblyAsmPrinter.cpp
+19-703 files not shown
+21-789 files

LLVM/project 27ae246llvm/include/llvm/Analysis RuntimeLibcallInfo.h, llvm/include/llvm/IR RuntimeLibcalls.h

RuntimeLibcalls: Read exception model from the module flag

Source the exception model in the RuntimeLibcallsInfo(Module) constructor
from the "exception-model" module flag via Module::getExceptionModel(),
instead of forwarding it from TargetOptions. An absent flag resolves to
Default and then to the triple default; an explicit "none" disables
exceptions.

Since the model now comes from the module, drop the ExceptionModel that
RuntimeLibraryAnalysis carried and forwarded, and its argument at every
construction site.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+5-6llvm/include/llvm/IR/RuntimeLibcalls.h
+3-7llvm/include/llvm/Analysis/RuntimeLibcallInfo.h
+3-5llvm/lib/IR/RuntimeLibcalls.cpp
+4-4llvm/lib/Analysis/RuntimeLibcallInfo.cpp
+2-2llvm/lib/Passes/RunCodeGen.cpp
+2-2llvm/lib/CodeGen/CodeGenTargetMachineImpl.cpp
+19-265 files not shown
+25-3611 files

LLVM/project d80ac75llvm/lib/CodeGen RDFGraph.cpp MachineBasicBlock.cpp, llvm/lib/CodeGen/GlobalISel IRTranslator.cpp

CodeGen: Read the exception model from the module flag in EH lowering

Resolve the exception model as the exception-model module flag if
present, otherwise the TargetOptions default.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+12-8llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
+7-4llvm/lib/Target/XCore/XCoreFrameLowering.cpp
+7-4llvm/lib/CodeGen/MachineLICM.cpp
+6-4llvm/lib/CodeGen/RDFGraph.cpp
+6-4llvm/lib/CodeGen/MachineBasicBlock.cpp
+6-3llvm/test/CodeGen/WebAssembly/lower-em-exceptions.ll
+44-2712 files not shown
+84-4318 files

FreeBSD/ports 137a1ectextproc/libebml Makefile, textproc/libebml/files patch-src_EbmlUnicodeString.cpp

textproc/libebml: Clean up

Drop stale EXTRACT_AFTER_ARGS and unneeded workarounds for utf8cpp support.
DeltaFile
+0-11textproc/libebml/files/patch-src_EbmlUnicodeString.cpp
+1-3textproc/libebml/Makefile
+1-142 files