LLVM/project 1946745 — llvm/include/llvm/CodeGen IntrinsicLowering.h, llvm/lib/CodeGen IntrinsicLowering.cpp

[CodeGen] Remove unused IntrinsicLowering::LowerToByteSwap (NFC) (#230010)

The last use was removed on September 4, 2025 in commit
3f757a39f2855cd06c62a85b8e27fd56fa017e78.

Assisted-by: Antigravity
DeltaFile
+0-22llvm/lib/CodeGen/IntrinsicLowering.cpp
+0-4llvm/include/llvm/CodeGen/IntrinsicLowering.h
+0-262 files

LLVM/project 1514c1f — llvm/lib/IR AutoUpgrade.cpp, llvm/test/Bitcode upgrade-branch-protection.ll

[NFC][AutoUpgrade] Add logging for module flags upgrade (#226165)

Logging is useful to see how a module changes as it goes through
auto-upgrade. It also makes it easier to understand tests.
Note that tests that involve logging are only active for LLVM builds
with assertions.

For now, only changes in branch protection attributes are logged.
DeltaFile
+36-11llvm/lib/IR/AutoUpgrade.cpp
+34-0llvm/test/Bitcode/upgrade-branch-protection.ll
+70-112 files

FreeBSD/ports 28c725e — sysutils/py-mitogen Makefile distinfo

sysutils/py-mitogen: Update to 0.3.53

Adds Python 3.15 support, Ansible 14 support, sudo and dnf/dnf5 fixes

Changelog:      https://github.com/mitogen-hq/mitogen/blob/master/docs/changelog.rst#v0353-2026-09-02
Sponsored by:   SkunkWerks, GmbH

Reported by:    portscout
Sponsored by:   SkunkWerks, GmbH
DeltaFile
+3-3sysutils/py-mitogen/distinfo
+2-2sysutils/py-mitogen/Makefile
+5-52 files

FreeBSD/ports cf9288e — sysutils/py-ansible-runner distinfo Makefile

sysutils/py-ansible-runner: Update to 2.4.3

- use get_option API from callback plugins
- fix container TTY detection in subprocess mode

Changelog:    https://github.com/ansible/ansible-runner/releases/tag/2.4.3
Sponsored by: SkunkWerks, GmbH
DeltaFile
+4-5sysutils/py-ansible-runner/Makefile
+3-3sysutils/py-ansible-runner/distinfo
+7-82 files

FreeBSD/ports 9ac74d6 — net/amqpcat Makefile distinfo, net/amqpcat/files patch-deps_amq-protocol.cr_src_amq_protocol_table.cr

net/amqpcat: Update to 1.1.1

- bump amq-protocol.cr dependency to 1.3.1 for Crystal 1.21
- drop upstreamed IO::Memory writable patch
- report the correct version in tarball builds

Changelog:    https://github.com/cloudamqp/amqpcat/releases/tag/v1.1.1
Sponsored by: SkunkWerks, GmbH
DeltaFile
+0-37net/amqpcat/files/patch-deps_amq-protocol.cr_src_amq_protocol_table.cr
+5-5net/amqpcat/distinfo
+3-4net/amqpcat/Makefile
+8-463 files

FreeBSD/ports 4931237 — lang/gleam Makefile Makefile.crates, lang/gleam/files patch-gleam-bin_Cargo.toml patch-Cargo.lock

lang/gleam: Update to 1.19.0

- compiler now emits Erlang Abstract Format instead of Erlang source
- https://github.com/gleam-lang/gleam/blob/v1.19.0/CHANGELOG.md
- https://gleam.run/news/gleam-doesnt-compile-to-erlang-source-anymore/
DeltaFile
+601-521lang/gleam/distinfo
+299-259lang/gleam/Makefile.crates
+2-2lang/gleam/files/patch-gleam-bin_Cargo.toml
+2-2lang/gleam/files/patch-Cargo.lock
+1-2lang/gleam/Makefile
+905-7865 files

FreeBSD/ports 122de80 — dns/py-ns1-python Makefile distinfo

dns/py-ns1-python: Update to 0.29.0

- adds export=True support for zone export

Changelog:    https://github.com/ns1/ns1-python/releases/tag/v0.29.0
Sponsored by: SkunkWerks, GmbH
DeltaFile
+3-3dns/py-ns1-python/distinfo
+2-2dns/py-ns1-python/Makefile
+5-52 files

FreeBSD/ports d9d1981 — devel/git-cola distinfo Makefile, devel/git-cola/files patch-pyproject.toml

devel/git-cola: Update to 4.19.0

- Git DAG gains an inline graph viewer in the commit list
- reloads externally edited commit messages on refresh

Changelog:      https://github.com/git-cola/git-cola/blob/main/CHANGES.rst#v4190
Reported by:    portscout
Sponsored by:   SkunkWerks, GmbH
DeltaFile
+11-0devel/git-cola/files/patch-pyproject.toml
+4-6devel/git-cola/Makefile
+3-3devel/git-cola/distinfo
+18-93 files

FreeBSD/ports b1ec8f1 — devel/buildkite-cli Makefile distinfo

devel/buildkite-cli: Update to 3.59.1

- version variable moved from internal/version to cmd/version,
  adjust ldflags so `bk version` reports the port version

Changelog:    https://github.com/buildkite/cli/releases/tag/v3.59.1
Sponsored by: SkunkWerks, GmbH
DeltaFile
+7-7devel/buildkite-cli/distinfo
+2-3devel/buildkite-cli/Makefile
+9-102 files

FreeBSD/ports 6436c09 — devel/buildkite-agent Makefile distinfo

devel/buildkite-agent: Update to 3.138.0

- graceful agent shutdown reporting and systemd watchdog support
- upstream expects this to be the last v3 feature release

Changelog:    https://github.com/buildkite/agent/releases/tag/v3.138.0
Sponsored by: SkunkWerks, GmbH
DeltaFile
+5-5devel/buildkite-agent/distinfo
+2-4devel/buildkite-agent/Makefile
+7-92 files

FreeBSD/ports 54f354f — net/dpdk pkg-plist

net/dpdk: fix pkg-plist (+)

Eliminate oblivously writed %%PYTHON_SUFFIX%% in middle of filenames by 'make makeplist'
Fixes f3043231f5be18126aaf471f62382e2d04e0aa9f

PR:     299216
DeltaFile
+3-3net/dpdk/pkg-plist
+3-31 files

FreeBSD/ports 29c0491 — devel/lazygit Makefile distinfo

devel/lazygit: Update to 0.66.0

Changes:        https://github.com/jesseduffield/lazygit/releases/tag/v0.66.0
DeltaFile
+5-5devel/lazygit/distinfo
+1-1devel/lazygit/Makefile
+6-62 files

LLVM/project 66cc20a — clang-tools-extra/clang-tidy/performance PreferSingleCharOverloadsCheck.cpp, clang-tools-extra/docs ReleaseNotes.md

[clang-tidy] Fix invalid fix-it for macro expansions (#227984)

Do not offer a fix-it for one-character strings from macro expansions.

Fixes #222970
DeltaFile
+20-0clang-tools-extra/test/clang-tidy/checkers/performance/prefer-single-char-overloads.cpp
+10-5clang-tools-extra/clang-tidy/performance/PreferSingleCharOverloadsCheck.cpp
+5-0clang-tools-extra/docs/ReleaseNotes.md
+35-53 files

LLVM/project e85e545 — llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/test/CodeGen/X86 asm-constraints-rm-callbr-fold.ll asm-constraints-rm-isel.ll

[TargetLowering][X86] Prefer 'r' over 'm' for foldable "rm" inline asm operands

An "rm" (register-or-memory) inline asm operand has always resolved to
'm', because getConstraintPreferences() picks the most general
constraint present, and 'm' is more general than 'r'. That's safe, since
memory can't run out, but it forces a value that could stay in a
register through a stack slot even when there's no register pressure
(https://github.com/llvm/llvm-project/issues/20571).

Prefer 'r' instead where the register allocator can fold the register
back to a stack slot when it runs out of registers, and mark the
register operand foldable (InlineAsm::Flag::setRegMayBeFolded()) so it
does. Both allocators can: the greedy allocator folds an operand when it
spills its value, and the fast allocator folds operands up front when
the asm's register operands wouldn't fit.

ParseConstraints() sets AsmOperandInfo::MayFoldRegister for an operand
whose constraint codes are exactly {r, m}, above -O0, on a target that
opts in through the new supportsRegMemInlineAsmFolding() hook, which

    [20 lines not shown]
DeltaFile
+767-0llvm/test/CodeGen/X86/asm-constraints-torture.ll
+689-0llvm/test/CodeGen/X86/asm-constraints-rm-pressure.ll
+227-0llvm/test/CodeGen/X86/inline-asm-callbase.ll
+97-0llvm/test/CodeGen/X86/asm-constraints-rm-isel.ll
+74-0llvm/test/CodeGen/X86/asm-constraints-rm-callbr-fold.ll
+51-2llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+1,905-29 files not shown
+1,988-1615 files

LLVM/project d6a4edd — llvm/lib/CodeGen/GlobalISel InlineAsmLowering.cpp, llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp

[CodeGen] Report an error for a direct inline asm output in memory

An inline asm output returned by value has no memory to write to, yet a
constraint such as "=rm" picks memory, the most general constraint, as
does "=m". SelectionDAG asserted on that ("Can only indirectify direct
input operands!"), and GlobalISel dereferenced a null pointer. Clang
never emits such an output, since it passes the address of a memory
output, but other IR can. Report "cannot handle direct memory outputs
yet for constraint 'm'" instead, like the other inline asm errors there.

Assisted-by: Claude Opus 5.5
DeltaFile
+31-0llvm/test/CodeGen/X86/inline-asm-direct-mem-output-error.ll
+16-6llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+13-0llvm/test/CodeGen/AArch64/inline-asm-direct-mem-output-error.ll
+10-0llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
+70-64 files

LLVM/project dd9207e — llvm/lib/CodeGen RegAllocFast.cpp, llvm/test/CodeGen/X86 regallocfast-inline-asm-fold.mir regallocfast-inline-asm-fold-pressure.mir

[RegAllocFast] Fold foldable inline asm operands under register pressure

An inline asm register operand marked foldable (from an "rm" constraint)
may be replaced with a stack slot when the register allocator runs out
of registers. The greedy allocator does that when it spills the value.
The fast allocator can't: it assigns the operands of an instruction one
at a time, and folding replaces the instruction. So it reported
"inline assembly requires more registers than available" instead.

Before allocating a block, estimate from each inline asm's own operands
whether they fit in registers, and fold as many foldable registers as
needed to make them fit, so the common case without pressure still gets
a register. Values that only live across the asm don't count, since the
allocator spills them when it needs their registers. The estimate
follows allocateInstruction():

- First all defs get distinct registers, avoiding physreg defs; then all
  uses, along with the defs still occupied while the uses are read
  (early-clobber and tied defs, see isLiveThroughDef()), get distinct

    [26 lines not shown]
DeltaFile
+479-0llvm/test/CodeGen/X86/regallocfast-inline-asm-fold-pressure.mir
+320-0llvm/lib/CodeGen/RegAllocFast.cpp
+80-0llvm/test/CodeGen/X86/regallocfast-inline-asm-fold.mir
+879-03 files

LLVM/project 062ab39 — llvm/lib/CodeGen TargetInstrInfo.cpp, llvm/test/CodeGen/X86 greedy-inline-asm-fold.mir

[TargetInstrInfo] Fix folding inline asm operands next to tied operands

foldInlineAsmMemOperand() swapped a register operand for the target's
memory operands with MachineInstr::removeOperand(), which asserts when a
later operand is tied, because moving it would break the tie. Inline asm
lists every input after every output, so folding any operand that comes
before another tied pair asserted, e.g. an "rm" input followed by the
input of a "+r" operand, or one of two "+rm" operands. Without
assertions, the moved operands kept stale tie indices. Untie the
operands, rebuild the operand list, and re-tie the remaining pairs at
their new positions.

It also gave up when the register appears in more than one operand, e.g.
one value passed to two "rm" operands, which left the greedy allocator
unable to spill that value at all. Fold every such operand into the
stack slot.

Finally, take MayLoad from the folded operands rather than from every
read of the register: a folded def whose tied use is another virtual

    [9 lines not shown]
DeltaFile
+85-32llvm/lib/CodeGen/TargetInstrInfo.cpp
+108-0llvm/test/CodeGen/X86/greedy-inline-asm-fold.mir
+193-322 files

LLVM/project c40b87d — llvm/test/CodeGen/AMDGPU fract.ll fsub64.ll

AMDGPU: Stop relying on -amdgpu-scalarize-global-loads=false in more tests

Convert operation tests to functions taking their inputs as arguments,
and index loads by workitem id in kernels where the stores matter.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+59-131llvm/test/CodeGen/AMDGPU/fma.f64.ll
+67-104llvm/test/CodeGen/AMDGPU/llvm.amdgcn.sbfe.ll
+22-32llvm/test/CodeGen/AMDGPU/fract.f64.ll
+19-31llvm/test/CodeGen/AMDGPU/immv216.ll
+15-31llvm/test/CodeGen/AMDGPU/fsub64.ll
+16-23llvm/test/CodeGen/AMDGPU/fract.ll
+198-3524 files not shown
+228-40810 files

FreeNAS/freenas f6f3ce2 — src/middlewared/middlewared/plugins/pool_ dataset_encryption.py, src/middlewared/middlewared/plugins/zfs encryption_info.py encryption_service.py

Keep zettarepl's encrypted record call working on targets

## Problem
Replication sources call `pool.dataset.insert_or_update_encrypted_record` over midclt on the target to store the target dataset's key. That private method was removed when encryption moved to `zfs.resource.encryption`, so replicating to a target on this version would fail after the stream was received and leave the encrypted dataset without a stored key, meaning it would not unlock on reboot.

## Solution
Restored the private method on `pool.dataset` with its original payload, forwarding to `zfs.resource.encryption.store_key`. Also trimmed encryption docstrings that repeated the API model field descriptions and corrected which supplied keys get stored on unlock.
DeltaFile
+27-0src/middlewared/middlewared/plugins/pool_/dataset_encryption.py
+7-13src/middlewared/middlewared/plugins/zfs/encryption_service.py
+0-1src/middlewared/middlewared/plugins/zfs/encryption_info.py
+34-143 files

LLVM/project e0c5d71 — llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/test/CodeGen/X86 asm-constraints-rm-callbr-fold.ll asm-constraints-rm-isel.ll

[TargetLowering][X86] Prefer 'r' over 'm' for foldable "rm" inline asm operands

An "rm" (register-or-memory) inline asm operand has always resolved to
'm', because getConstraintPreferences() picks the most general
constraint present, and 'm' is more general than 'r'. That's safe, since
memory can't run out, but it forces a value that could stay in a
register through a stack slot even when there's no register pressure
(https://github.com/llvm/llvm-project/issues/20571).

Prefer 'r' instead where the register allocator can fold the register
back to a stack slot when it runs out of registers, and mark the
register operand foldable (InlineAsm::Flag::setRegMayBeFolded()) so it
does. Both allocators can: the greedy allocator folds an operand when it
spills its value, and the fast allocator folds operands up front when
the asm's register operands wouldn't fit.

ParseConstraints() sets AsmOperandInfo::MayFoldRegister for an operand
whose constraint codes are exactly {r, m}, above -O0, on a target that
opts in through the new supportsRegMemInlineAsmFolding() hook, which

    [20 lines not shown]
DeltaFile
+767-0llvm/test/CodeGen/X86/asm-constraints-torture.ll
+689-0llvm/test/CodeGen/X86/asm-constraints-rm-pressure.ll
+227-0llvm/test/CodeGen/X86/inline-asm-callbase.ll
+97-0llvm/test/CodeGen/X86/asm-constraints-rm-isel.ll
+74-0llvm/test/CodeGen/X86/asm-constraints-rm-callbr-fold.ll
+51-2llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+1,905-29 files not shown
+1,988-1615 files

LLVM/project 2db9429 — llvm/lib/CodeGen/GlobalISel InlineAsmLowering.cpp, llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp

[CodeGen] Report an error for a direct inline asm output in memory

An inline asm output returned by value has no memory to write to, yet a
constraint such as "=rm" picks memory, the most general constraint, as
does "=m". SelectionDAG asserted on that ("Can only indirectify direct
input operands!"), and GlobalISel dereferenced a null pointer. Clang
never emits such an output, since it passes the address of a memory
output, but other IR can. Report "cannot handle direct memory outputs
yet for constraint 'm'" instead, like the other inline asm errors there.

Assisted-by: Claude Opus 5.5
DeltaFile
+31-0llvm/test/CodeGen/X86/inline-asm-direct-mem-output-error.ll
+16-6llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+13-0llvm/test/CodeGen/AArch64/inline-asm-direct-mem-output-error.ll
+10-0llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
+70-64 files

LLVM/project e54c2bf — llvm/lib/CodeGen RegAllocFast.cpp, llvm/test/CodeGen/X86 regallocfast-inline-asm-fold.mir regallocfast-inline-asm-fold-pressure.mir

[RegAllocFast] Fold foldable inline asm operands under register pressure

An inline asm register operand marked foldable (from an "rm" constraint)
may be replaced with a stack slot when the register allocator runs out
of registers. The greedy allocator does that when it spills the value.
The fast allocator can't: it assigns the operands of an instruction one
at a time, and folding replaces the instruction. So it reported
"inline assembly requires more registers than available" instead.

Before allocating a block, estimate from each inline asm's own operands
whether they fit in registers, and fold as many foldable registers as
needed to make them fit, so the common case without pressure still gets
a register. Values that only live across the asm don't count, since the
allocator spills them when it needs their registers. The estimate
follows allocateInstruction():

- First all defs get distinct registers, avoiding physreg defs; then all
  uses, along with the defs still occupied while the uses are read
  (early-clobber and tied defs, see isLiveThroughDef()), get distinct

    [26 lines not shown]
DeltaFile
+479-0llvm/test/CodeGen/X86/regallocfast-inline-asm-fold-pressure.mir
+320-0llvm/lib/CodeGen/RegAllocFast.cpp
+80-0llvm/test/CodeGen/X86/regallocfast-inline-asm-fold.mir
+879-03 files

LLVM/project 5cce908 — llvm/lib/CodeGen TargetInstrInfo.cpp, llvm/test/CodeGen/X86 greedy-inline-asm-fold.mir

[TargetInstrInfo] Fix folding inline asm operands next to tied operands

foldInlineAsmMemOperand() swapped a register operand for the target's
memory operands with MachineInstr::removeOperand(), which asserts when a
later operand is tied, because moving it would break the tie. Inline asm
lists every input after every output, so folding any operand that comes
before another tied pair asserted, e.g. an "rm" input followed by the
input of a "+r" operand, or one of two "+rm" operands. Without
assertions, the moved operands kept stale tie indices. Untie the
operands, rebuild the operand list, and re-tie the remaining pairs at
their new positions.

It also gave up when the register appears in more than one operand, e.g.
one value passed to two "rm" operands, which left the greedy allocator
unable to spill that value at all. Fold every such operand into the
stack slot.

Finally, take MayLoad from the folded operands rather than from every
read of the register: a folded def whose tied use is another virtual

    [9 lines not shown]
DeltaFile
+85-32llvm/lib/CodeGen/TargetInstrInfo.cpp
+108-0llvm/test/CodeGen/X86/greedy-inline-asm-fold.mir
+193-322 files

LLVM/project 29178b7 — llvm/test/CodeGen/AMDGPU call-argument-types.ll

AMDGPU: Avoid null and poison pointers in call-argument-types

Cleanup these tests to avoid unnecessarily depending on undefined behavior
and -amdgpu-scalarize-global-loads=0.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+1,284-1,264llvm/test/CodeGen/AMDGPU/call-argument-types.ll
+1,284-1,2641 files

LLVM/project af57f24 — llvm/lib/CodeGen/GlobalISel InlineAsmLowering.cpp, llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp

[CodeGen] Report an error for a direct inline asm output in memory

An inline asm output returned by value has no memory to write to, yet a
constraint such as "=rm" picks memory, the most general constraint, as
does "=m". SelectionDAG asserted on that ("Can only indirectify direct
input operands!"), and GlobalISel dereferenced a null pointer. Clang
never emits such an output, since it passes the address of a memory
output, but other IR can. Report "cannot handle direct memory outputs
yet for constraint 'm'" instead, like the other inline asm errors there.

Assisted-by: Claude Opus 5.5
DeltaFile
+31-0llvm/test/CodeGen/X86/inline-asm-direct-mem-output-error.ll
+16-6llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+13-0llvm/test/CodeGen/AArch64/inline-asm-direct-mem-output-error.ll
+10-0llvm/lib/CodeGen/GlobalISel/InlineAsmLowering.cpp
+70-64 files

LLVM/project 2368102 — llvm/lib/CodeGen TargetInstrInfo.cpp, llvm/test/CodeGen/X86 greedy-inline-asm-fold.mir

[TargetInstrInfo] Fix folding inline asm operands next to tied operands

foldInlineAsmMemOperand() swapped a register operand for the target's
memory operands with MachineInstr::removeOperand(), which asserts when a
later operand is tied, because moving it would break the tie. Inline asm
lists every input after every output, so folding any operand that comes
before another tied pair asserted, e.g. an "rm" input followed by the
input of a "+r" operand, or one of two "+rm" operands. Without
assertions, the moved operands kept stale tie indices. Untie the
operands, rebuild the operand list, and re-tie the remaining pairs at
their new positions.

It also gave up when the register appears in more than one operand, e.g.
one value passed to two "rm" operands, which left the greedy allocator
unable to spill that value at all. Fold every such operand into the
stack slot.

Finally, take MayLoad from the folded operands rather than from every
read of the register: a folded def whose tied use is another virtual

    [8 lines not shown]
DeltaFile
+86-33llvm/lib/CodeGen/TargetInstrInfo.cpp
+80-0llvm/test/CodeGen/X86/greedy-inline-asm-fold.mir
+166-332 files

LLVM/project 8e7ec40 — llvm/test/CodeGen/X86 greedy-inline-asm-fold.mir

[TargetInstrInfo] Add C inline asm statements to greedy-inline-asm-fold.mir

Show the C source behind each test so it's clear which MIR operand
corresponds to which asm constraint. Also reword the first test's
comment per review.

Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+29-1llvm/test/CodeGen/X86/greedy-inline-asm-fold.mir
+29-11 files

LLVM/project cefb80a — llvm/lib/CodeGen TargetInstrInfo.cpp

[TargetInstrInfo] Untie inline asm operands while collecting ties

Use MachineInstr::isRegTiedToDefOperand to find the tied uses, and
untie each one as it's found. Untying a use also unties its def, so
the separate untie loop isn't needed.

Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+8-12llvm/lib/CodeGen/TargetInstrInfo.cpp
+8-121 files

LLVM/project 078b068 — llvm/lib/CodeGen TargetInstrInfo.cpp

[CodeGen] Add a sanity check that there are operands to fold
DeltaFile
+4-0llvm/lib/CodeGen/TargetInstrInfo.cpp
+4-01 files

LLVM/project 03e7bf1 — llvm/test/CodeGen/X86 greedy-inline-asm-fold.mir

Apply suggestion from @nickdesaulniers

Co-authored-by: Nick Desaulniers <ndesaulniers at google.com>
DeltaFile
+1-1llvm/test/CodeGen/X86/greedy-inline-asm-fold.mir
+1-11 files