LLVM/project 6262936 — llvm/lib/Target/Sparc SparcISelLowering.cpp, llvm/test/CodeGen/SPARC reserved-regs-named.ll

[SPARC] Accept rN register names in getRegisterByName (#237528)

Accept r0-r31 as names for the integer registers in llvm.read_register
and llvm.write_register, matching the %rN syntax of the assembler.

This completes #212838, which was reverted because reading %r31/%i7 in
a leaf procedure produced a use of an undefined physical register once
leaf remapping turned it into %o7. That is fixed by #236654, which adds
live-ins for reserved registers remapped in leaf procedures. The %
prefix
and the sp/fp aliases from #212838 have since been added by #234875.

Also run the test with -verify-machineinstrs, which catches that failure
without an expensive checks build.

Co-authored-by: Kirill A. Korinsky <kirill at korins.ky>
DeltaFile
+32-32llvm/lib/Target/Sparc/SparcISelLowering.cpp
+42-2llvm/test/CodeGen/SPARC/reserved-regs-named.ll
+74-342 files

FreeBSD/ports 430b6ca — www/nginx-module-passenger Makefile

www/nginx-module-passenger: Add CPE information

Passenger is listed in the NVD as phusion:passenger with 456 dictionary
entries.  The port name does not match the upstream product name, so
both CPE_VENDOR and CPE_PRODUCT need to be set explicitly.

Sponsored by:   Netzkommune GmbH
DeltaFile
+4-0www/nginx-module-passenger/Makefile
+4-01 files

FreeBSD/ports c898a9d — net-mgmt/semaphore Makefile

net-mgmt/semaphore: Add CPE information

The NVD lists this software as ansible-semaphore:ansible_semaphore with
136 dictionary entries, so the port can be matched against advisories
once they appear.  The cpe.mk defaults would have produced
semaphore:semaphore, which does not exist.

Sponsored by:   Netzkommune GmbH
DeltaFile
+3-1net-mgmt/semaphore/Makefile
+3-11 files

LLVM/project 5f72fd5 — llvm/test/CodeGen/AMDGPU memintrinsic-unroll.ll amdgcn.bitcast.832bit.ll

Merge branch 'main' into users/void/libclang-dependent-cursor-referenced
DeltaFile
+88,705-91,244llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+25,383-26,405llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+9,311-9,381llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
+8,998-9,209llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
+8,016-8,194llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
+7,335-7,432llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+147,748-151,8655,564 files not shown
+485,231-368,6705,570 files

LLVM/project 11eb8e7 — llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp, llvm/test/CodeGen/X86 callbr-asm-error.ll

[SelectionDAG] Don't crash after an error in a callbr's asm

When a callbr's asm has an error, such as a constraint it can't satisfy,
visitInlineAsm() reports it and returns before creating the INLINEASM_BR.
But the callbr's block still got edges to the indirect targets, which
BranchFolding rejects since nothing branches there, and a landing pad in
an indirect target looked for the registers that the INLINEASM_BR would
have defined.

Don't add the edges to the indirect targets, and make a landing pad's
value poison, since nothing reaches it.

Fixes #98379 and #172657. Part of #173609, whose asm is still rejected,
since LLVM picks the "k" alternative of "+kr", which needs AVX-512.

Assisted-by: Claude Opus 5.5
DeltaFile
+69-0llvm/test/CodeGen/X86/callbr-asm-error.ll
+11-2llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+80-22 files

LLVM/project 214aeb3 — llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp, llvm/test/CodeGen/X86 callbr-asm-indirect-output.ll

[SelectionDAG] Report an error for a callbr's indirect register output

An indirect output with a register constraint, e.g. "=*r", is stored to its
pointer after the asm. But a callbr's asm can branch to an indirect target
before then, so the store was silently skipped on the indirect paths. Clang
emits such an output for a _Complex lvalue with a register constraint:

  _Complex float c;
  asm goto("" : "=r"(c) : : : l);

Report an error instead. A callbr without indirect targets has no such
path, so it's still allowed.

Assisted-by: Claude Opus 5.5
DeltaFile
+47-0llvm/test/CodeGen/X86/callbr-asm-indirect-output.ll
+8-0llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+55-02 files

LLVM/project 8a301d8 — llvm/include/llvm/CodeGen FunctionLoweringInfo.h, llvm/lib/CodeGen/SelectionDAG FunctionLoweringInfo.cpp SelectionDAGBuilder.h

Replay each output's read in the indirect targets

The indirect targets re-parsed the constraints, recomputed each output's
registers and types, and paired them with the recorded registers in order,
so they were right only if both computations agreed. Record each output's
operand info and registers when lowering the callbr instead, and read them
in the indirect targets with the same code as visitInlineAsm().

This also marks a flag output's register (NZCV on AArch64, CC on SystemZ)
live into the indirect targets, as a register output's already was. And the
indirect targets no longer create virtual registers they don't use, which
renumbers some in the AArch64 test.

Assisted-by: Claude Opus 5.5
DeltaFile
+65-93llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+14-0llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.h
+0-7llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
+3-3llvm/test/CodeGen/AArch64/callbr-asm-outputs-indirect-isel.ll
+0-1llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
+82-1045 files

LLVM/project 6ab65c1 — llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp, llvm/test/CodeGen/X86 callbr-asm-error.ll

Move the asm error handling to its own PR

This PR now fixes only valid asm whose outputs crash the indirect targets.
Lowering a callbr whose asm has an error, which crashes after reporting
it, moves to its own PR stacked on this one.

Assisted-by: Claude Opus 5.5
DeltaFile
+0-37llvm/test/CodeGen/X86/callbr-asm-error.ll
+2-17llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+2-542 files

LLVM/project 3258808 — llvm/include/llvm/CodeGen FunctionLoweringInfo.h, llvm/lib/CodeGen/SelectionDAG FunctionLoweringInfo.cpp SelectionDAGBuilder.cpp

[SelectionDAG] Read callbr outputs from the INLINEASM_BR's registers

An indirect target of a callbr found the registers holding the asm's
outputs by walking back from the callbr's exported value through COPYs to
the INLINEASM_BR, and asserted that the chain held nothing else ("start of
copy chain MUST be COPY"). An output whose type differs from its register's,
such as a float in a general-purpose register, is converted, e.g. with
MOVDI2SSrr on x86, so the assertion fired. And the target didn't convert the
output to its result type, as visitInlineAsm() does.

After an error in the asm, nothing defines the exported value, so the walk
crashed, and the callbr block kept edges to the indirect targets with no
INLINEASM_BR to branch there, which later passes reject.

Record the registers that the INLINEASM_BR defines its outputs in when
lowering the callbr, and read the outputs from them in the indirect target,
converting each to its result type as visitInlineAsm() does. After an error,
give the indirect targets undefined outputs and no edges from the callbr.

Fixes #98379, #112914, #143795, #170100, #172657, and #173609.
DeltaFile
+122-110llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+76-0llvm/test/CodeGen/X86/callbr-asm-outputs-indirect-isel.ll
+37-0llvm/test/CodeGen/X86/callbr-asm-error.ll
+7-0llvm/include/llvm/CodeGen/FunctionLoweringInfo.h
+1-0llvm/lib/CodeGen/SelectionDAG/FunctionLoweringInfo.cpp
+243-1105 files

LLVM/project 3834fa6 — llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp

Remove the stale FollowCopyChain comment and unrelated comment changes

The comment that explained FollowCopyChain's walk was left above
visitCallBrLandingPad() when the walk was removed. Also put the BTI comment
in visitCallBr() back as it was, and fix a double space.

Assisted-by: Claude Opus 5.5
DeltaFile
+6-29llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+6-291 files

LLVM/project f80f324 — llvm/test/CodeGen/AArch64 callbr-asm-outputs-indirect-isel.ll, llvm/test/CodeGen/RISCV callbr-asm-outputs.ll

Test more outputs that the indirect targets convert

Add the RISC-V shape of #143795, where an i32 output is sign-extended on
each path, a float in a specific physical register on x86, a double in a
pair of registers on i686, and a flag output on AArch64, whose NZCV is now
live into the indirect target. Also check that a callbr with direct and
indirect register outputs now only reports the error.

Assisted-by: Claude Opus 5.5
DeltaFile
+87-0llvm/test/CodeGen/RISCV/callbr-asm-outputs.ll
+39-0llvm/test/CodeGen/X86/callbr-asm-outputs-indirect-isel.ll
+39-0llvm/test/CodeGen/X86/callbr-asm-outputs-indirect-isel-m32.ll
+36-0llvm/test/CodeGen/AArch64/callbr-asm-outputs-indirect-isel.ll
+13-0llvm/test/CodeGen/X86/callbr-asm-indirect-output.ll
+214-05 files

LLVM/project aaa5ddc — llvm/lib/CodeGen MachineCSE.cpp, llvm/test/CodeGen/X86 machine-cse-inlineasm-br.mir

[MachineCSE] Don't reuse an instruction after an INLINEASM_BR elsewhere

An INLINEASM_BR can branch to its indirect targets before the instructions
after it in its block run, but MachineCSE let those instructions replace
ones in any block that their block dominates, including the indirect
targets. E.g., when both paths out of a callbr sign-extend its output, the
indirect target reused the extension on the path to the default target and
read a register that its own path never wrote.

Reuse an instruction after an INLINEASM_BR only in its own block. MachineSink
already refuses to sink into an indirect target for the same reason.

Assisted-by: Claude Opus 5.5
DeltaFile
+83-0llvm/test/CodeGen/X86/machine-cse-inlineasm-br.mir
+22-0llvm/lib/CodeGen/MachineCSE.cpp
+105-02 files

LLVM/project 9d02ab7 — llvm/lib/CodeGen InlineAsmPrepare.cpp, llvm/test/CodeGen/AArch64 inline-asm-prepare.ll

[InlineAsmPrepare] Rewrite callbr result uses that indirect dests reach

updateSSA() left a use of a callbr's result alone if the callbr's default
dest dominated it. But an indirect dest can reach the default dest too,
e.g. when they're the same block or when the indirect dest branches to it,
so such a use still read the callbr's result on the indirect path.
SelectionDAG copies that result to a virtual register after the
INLINEASM_BR, on the path to the default dest only, so the indirect path
read a register that it never defined.

Leave a use alone only if the edge to the default dest dominates it, and
don't make the result the value at the end of the default dest, so that
SSAUpdater merges it with the landing pad's value there.

Assisted-by: Claude Opus 5.5
DeltaFile
+65-0llvm/test/CodeGen/AArch64/inline-asm-prepare.ll
+4-3llvm/lib/CodeGen/InlineAsmPrepare.cpp
+69-32 files

LLVM/project 075db14 — llvm/test/CodeGen/AMDGPU memintrinsic-unroll.ll amdgcn.bitcast.832bit.ll

Merge branch 'main' into users/void/interp-strip-mangling-escape
DeltaFile
+88,705-91,244llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+25,383-26,405llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+9,311-9,381llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
+8,998-9,209llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
+8,016-8,194llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
+7,335-7,432llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+147,748-151,8655,564 files not shown
+485,231-368,6705,570 files

LLVM/project 2df3cd1 — llvm/test/CodeGen/AMDGPU memintrinsic-unroll.ll amdgcn.bitcast.832bit.ll

Merge branch 'main' into users/void/arm-gisel-constant-fold-barrier
DeltaFile
+88,705-91,244llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+25,383-26,405llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+9,311-9,381llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
+8,998-9,209llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
+8,016-8,194llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
+7,335-7,432llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+147,748-151,8655,564 files not shown
+485,231-368,6705,570 files

LLVM/project 0587e82 — llvm/test/CodeGen/AMDGPU memintrinsic-unroll.ll amdgcn.bitcast.832bit.ll

Merge branch 'main' into users/void/asm-aggregate-mem-input-main
DeltaFile
+88,705-91,244llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+25,383-26,405llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+9,311-9,381llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.960bit.ll
+8,998-9,209llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.896bit.ll
+8,016-8,194llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.832bit.ll
+7,335-7,432llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+147,748-151,8654,386 files not shown
+404,304-339,7124,392 files

LLVM/project b1bef0b — flang/lib/Lower/Support ReductionProcessor.cpp, libcxx/test/std/numerics/numeric.ops/transform.inclusive.scan pstl.transform_inclusive_scan_bop_uop_init.pass.cpp

Merge branch 'main' into users/void/pbqp-inline-asm-error
DeltaFile
+405-387flang/lib/Lower/Support/ReductionProcessor.cpp
+379-392llvm/lib/Target/Sparc/DelaySlotFiller.cpp
+424-173llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+497-8llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
+335-0llvm/unittests/DWARFLinkerParallel/TypePoolTest.cpp
+323-0libcxx/test/std/numerics/numeric.ops/transform.inclusive.scan/pstl.transform_inclusive_scan_bop_uop_init.pass.cpp
+2,363-960510 files not shown
+16,565-4,151516 files

FreeBSD/ports a56438d — devel/libpru distinfo Makefile

devel/libpru: Update to 0.5

PR:             298565
Reported by:    rpaulo
Approved by:    jmg (maintainer timeout)
DeltaFile
+6-6devel/libpru/Makefile
+3-3devel/libpru/distinfo
+9-92 files

LLVM/project 3aefd97 — llvm/include/llvm/CodeGen TargetLowering.h, llvm/lib/CodeGen/SelectionDAG SelectionDAGBuilder.cpp

[SelectionDAG] Use the Func kind for inline asm operands only on x86 (#237504)

The only platform that currently uses the "Func" kind is x86. The other
targets aren't able to handle it. For instance, SystemZ asserts "This is
not a register operand!" and Hexagon hits an llvm_unreachable.

Gate the use of the Func kind behind a new hook
TargetLowering::supportsInlineAsmFuncOperands(), which only x86
overrides.

Assisted-by: Claude Opus 5.5
DeltaFile
+52-0llvm/test/CodeGen/SystemZ/inline-asm-addr.ll
+8-0llvm/include/llvm/CodeGen/TargetLowering.h
+4-0llvm/lib/Target/X86/X86ISelLowering.h
+1-1llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
+65-14 files

FreeBSD/ports 8fdf724 — sysutils/framework-tool-tui Makefile Makefile.crates

sysutils/framework-tool-tui: Update to 0.8.6

Changelog:  https://github.com/grouzen/framework-tool-tui/releases/tag/v0.8.6
DeltaFile
+31-27sysutils/framework-tool-tui/distinfo
+14-12sysutils/framework-tool-tui/Makefile.crates
+1-2sysutils/framework-tool-tui/Makefile
+46-413 files

LLVM/project 90f8a7b — .github CODEOWNERS

[OpenMP] Add code owners for OpenMP runtime (#236211)
DeltaFile
+3-0.github/CODEOWNERS
+3-01 files

LLVM/project 281f323 — clang/test/utils/update_cc_test_checks opt-pipeline.test, clang/test/utils/update_cc_test_checks/Inputs opt-pipeline.c opt-pipeline.c.expected

[UpdateTestChecks] Fix Windows error when piping outputs (#237636)

On Windows, `update_cc_test_checks` fails to update tests that pipe
outputs since opening an already open `NamedTemporaryFile` errors when
it's set to automatically delete. This PR fixes this by closing the file
after initially writing to it and then manually removing it.
DeltaFile
+8-0clang/test/utils/update_cc_test_checks/Inputs/opt-pipeline.c.expected
+4-2llvm/utils/update_cc_test_checks.py
+4-0clang/test/utils/update_cc_test_checks/opt-pipeline.test
+3-0clang/test/utils/update_cc_test_checks/Inputs/opt-pipeline.c
+19-24 files

FreeBSD/ports 5b8b840 — sysutils/blisp pkg-message Makefile

sysutils/blisp: update to latest commit

PR:             297902
DeltaFile
+5-5sysutils/blisp/distinfo
+4-4sysutils/blisp/Makefile
+1-1sysutils/blisp/pkg-message
+10-103 files

LLVM/project 474a958 — llvm/lib/Analysis InstructionSimplify.cpp, llvm/test/Transforms/InstSimplify ptrtoaddr.ll gep.ll

[InstSimplify] Only fold gep of a pointer difference when the division is exact (#237685)

The `ashr` and `sdiv` folds in simplifyGEPInst (`gep V, (ashr (sub P,
V), C) -> P` and its `sdiv` form) are only correct if the divisions are
exact.

Fixes #234269.

Assisted-by: Claude Opus 5.5
DeltaFile
+39-0llvm/test/Transforms/InstSimplify/gep.ll
+12-10llvm/lib/Analysis/InstructionSimplify.cpp
+2-2llvm/test/Transforms/InstSimplify/ptrtoaddr.ll
+53-123 files

FreeBSD/src 8df5184 — sbin/route route.8

route: remove reference to long-gone netiso protocol in route(8).
DeltaFile
+1-1sbin/route/route.8
+1-11 files

NetBSD/pkgsrc-wip 03b0017 — kubectl Makefile COMMIT_MSG

kubectl: update to 1.37.2

Dependency

* Kubernetes is now built with Go 1.26.10 [SIG Release]
DeltaFile
+3-3kubectl/distinfo
+1-1kubectl/Makefile
+1-1kubectl/COMMIT_MSG
+5-53 files

NetBSD/pkgsrc cP7jRbT — doc CHANGES-2026

   doc: Updated textproc/uriparser to 1.0.3
VersionDeltaFile
1.7512+2-1doc/CHANGES-2026
+2-11 files

NetBSD/pkgsrc Cj9PDKQ — textproc/uriparser PLIST Makefile

   uriparser: update to 1.0.3.

   2026-10-31 -- 1.0.3

   >>>>>>>>>>>>> SECURITY >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
     * Fixed: [CVE-2026-48841]
         Protect `ComposeQueryEngine` from integer overflow (GitHub #313)
         Thanks for the report to Joshua W. Windle!
   >>>>>>>>>>>>> SECURITY >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
     * Fixed: Protect `ToStringEngine` from integer overflow (GitHub #311)
         Thanks for the report to Joshua W. Windle!
     * Fixed: Protect `AppendQueryItem` from item count integer overflow
         (GitHub #312)
         Thanks for the report to Joshua W. Windle!
     * Fixed: Fix undefined behavior in `FilenameToUriString` (GitHub #310)
     * Fixed: Restore support for compilation with glibc <2.29
         (GitHub #315, GitHub #316, GitHub #289, GitHub #320)
     * Fixed: Fix support for GoogleTest >=1.17.0 (GitHub #325)
     * Fixed: Mark `uriIsWellFormedHost*` functions as `URI_PUBLIC`

    [19 lines not shown]
VersionDeltaFile
1.23+4-4textproc/uriparser/distinfo
1.14+2-2textproc/uriparser/PLIST
1.25+2-2textproc/uriparser/Makefile
+8-83 files

NetBSD/pkgsrc CVOr5Ow — doc CHANGES-2026

   doc: Updated time/p5-DateTime-TimeZone to 2.72
VersionDeltaFile
1.7511+2-1doc/CHANGES-2026
+2-11 files

NetBSD/pkgsrc-wip 3d5d6fd — mailsend-go Makefile COMMIT_MSG

mailsend-go: update to 1.0.14

* no code change. Rebuilt the binaries with go 1.27.3 to pick up the
  crypto/x509 fix for CVE-2026-111943. With -verifyCert, certificate chains
  containing the blocked intermediate CA keys are now rejected, so SMTP
  servers whose chain uses one of them will fail TLS verification.
* go.mod updated to require go 1.27.3 or later for building from source.
DeltaFile
+3-3mailsend-go/distinfo
+1-1mailsend-go/Makefile
+1-1mailsend-go/COMMIT_MSG
+5-53 files