LLVM/project 44ec16a — llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer VecUtils.h, llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes LoadStoreVec.h

[SandboxVec][LoadStoreVec][NFC] Tighten bundle element types

Use Instruction*/Constant* for LoadStoreVec APIs where that is what
callers hold, and template getCombinedVectorTypeFor so BndlRef is not
forced through a non-covariant Value* conversion.

Co-authored-by: Cursor <cursoragent at cursor.com>
DeltaFile
+52-46llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
+9-7llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp
+3-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+2-1llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
+66-574 files

NextBSD/src 775ee91 — tests iso-boot-test.sh img-boot-test.sh

tests: report a panic after login as a panic, and correct the last message

Correcting myself. The previous commit said the stale-prompt race was why
ROOT-NOATIME failed on arm64. It was not. Both arm64 lanes were dying on
the VirtIOGraphics takeover panic
(nextbsd-kernel-extensions#82): img-test (arm64) took the same
esr 0x96000047 data abort three seconds after the mount command went out,
so mount printed nothing because the kernel was gone.

The stale-prompt race is real -- I reproduced it locally, where a leftover
prompt satisfies `-re {[#%$] $}` before a slow command emits anything --
and the sentinel is what turned a misleading "/ is mounted without
noatime" into an accurate "mount printed no line", which is how the panic
was found. But it did not cause that failure and the commit message should
not have said it did.

The gap that hid this: only the stage-1 login block watched for a panic, so
a panic after login surfaced as absent output rather than as a crash. Both
post-login blocks now match it and say so.

    [2 lines not shown]
DeltaFile
+4-0tests/iso-boot-test.sh
+4-0tests/img-boot-test.sh
+8-02 files

LLVM/project b9123f7 — llvm/docs CommandLine.md, llvm/include/llvm/Support CommandLine.h

[Support] Remove cl::Grouping (#224958)

This feature emulates POSIX's grouped short options in a non-perfect
way. https://reviews.llvm.org/D61270 made every single-character
cl::option implicitly group, leading to weird error message for `opt
-foo=bar`: `opt: for the -o option: may not occur within a group!`

Every tool (primarily binutils-style tools) has since migrated to
OptTable,
with llvm-cov gcov the last (#224955).

Delete this feature, which would block TableGen based representation.

LLM-aided
DeltaFile
+15-193llvm/unittests/Support/CommandLineTest.cpp
+32-91llvm/lib/Support/CommandLine.cpp
+1-51llvm/docs/CommandLine.md
+1-11llvm/include/llvm/Support/CommandLine.h
+49-3464 files

NextBSD/src 1df19b6 — tests iso-boot-test.sh img-boot-test.sh

tests: read the mount output to a sentinel, not to a stale prompt

ROOT-NOATIME failed on arm64 while amd64 passed, on an image that was in
fact mounted correctly -- the serial log shows launchd's own
"root-rw: / remounted read-write,noatime" right there.

The cause is a race, not the image. The preceding block matches only the
text NB-SHELL-READY, which leaves that command's trailing shell prompt
sitting in expect's buffer. The mount block then offered `-re {[#%$] $}`
as an alternative, so the leftover prompt satisfied it immediately and
the block returned before `mount` had printed anything. The "on / (...)"
line therefore never reached the transcript that the verdict greps. On
amd64 the output usually won the race; on the slower arm64 guest the
stale prompt did.

Both mount blocks now bracket the output with a sentinel and read until
it arrives, and both fail loudly instead of warning -- a WARN here was
worse than useless, because the verdict then hard-failed anyway with a
misleading message about noatime.

    [6 lines not shown]
DeltaFile
+19-4tests/img-boot-test.sh
+15-4tests/iso-boot-test.sh
+34-82 files

FreeBSD/ports 5e8e484 — databases/py-sqlmodel Makefile distinfo

databases/py-sqlmodel: Update to 0.0.47

Changelog: https://github.com/fastapi/sqlmodel/blob/0.0.47/docs/release-notes.md

Reported by:    portscout
DeltaFile
+3-3databases/py-sqlmodel/distinfo
+3-1databases/py-sqlmodel/Makefile
+6-42 files

LLVM/project e9d20f0 — llvm/docs ConvergenceAndUniformity.rst MLGO.rst, llvm/test/CodeGen/RISCV machine-sink-jumptable-edge-split.ll sifive-interrupt-frame-pointer.ll

Merge branch 'main' into users/mssefat/anti-hints-pr3-amdgpu-apply
DeltaFile
+0-1,607llvm/docs/ConvergentOperations.rst
+1,569-0llvm/docs/ConvergentOperations.md
+951-0llvm/test/CodeGen/RISCV/sifive-interrupt-frame-pointer.ll
+0-745llvm/docs/MLGO.rst
+636-89llvm/test/CodeGen/RISCV/machine-sink-jumptable-edge-split.ll
+0-713llvm/docs/ConvergenceAndUniformity.rst
+3,156-3,154234 files not shown
+16,013-10,067240 files

NextBSD/src e75f946 — tests iso-boot-test.sh

tests: fix the third boot test the same way

iso-boot-test.sh had both bugs the other two had: it sent "root" with an
empty password, which root's "*" field rejects since nextbsd-overlays
f9dcd5b (#278), and it waited for "login:" in one block before deciding in
another -- so on an image where automatic login works there was no prompt,
the first block spent its eight minutes, and the second never ran.

Three copies of the same login sequence, fixed three times across three
commits, because each time I fixed the file that produced the error in front
of me instead of looking for the others. There are exactly three and this is
the last: boot-test.sh, img-boot-test.sh, iso-boot-test.sh, confirmed by
grepping every test for a login assumption rather than waiting for CI to
name the next one.

halt goes through sudo here too, since admin is not root.
DeltaFile
+33-12tests/iso-boot-test.sh
+33-121 files

LLVM/project f91a3b1 — bolt/test/X86 dwarf5-debug-names-skip-forward-decl.s

[BOLT,test] Add missing pipe in dwarf5-debug-names-skip-forward-decl.s (#226338)

With cl::Grouping, --check-prefix=POSTCHECK parses as -c -h..., so
llvm-dwarfdump prints --help and exits 0, and the checks never run.
DeltaFile
+1-1bolt/test/X86/dwarf5-debug-names-skip-forward-decl.s
+1-11 files

LLVM/project f119c93 — lldb/source/Interpreter CommandInterpreter.cpp, lldb/test/Shell/ScriptInterpreter/Python nested_command_selected_target.test

[lldb] Use the selected target when the override context is the dummy (#226332)
DeltaFile
+29-0lldb/test/Shell/ScriptInterpreter/Python/nested_command_selected_target.test
+4-1lldb/source/Interpreter/CommandInterpreter.cpp
+33-12 files

LLVM/project 8c237a2 — .github/workflows libcxx-benchmark-commit.yml libcxx-pr-benchmark.yml, .github/workflows/libcxx/build-at-commit action.yml

[libc++] Run the PR benchmarking tooling from main (#226278)

Previously, we'd use the workflow file and machines.json from the main
branch, but the rest of the tools (e.g. build-at-commit) would be taken
from the PR head. This patch switches to using the tools from main and
only using the PR head's content for the actual code and benchmarks.

This should make it easier to evolve the tools and the workflow files
without breaking PR benchmarking for people who submit PRs from slightly
outdated bases.
DeltaFile
+26-9.github/workflows/libcxx-pr-benchmark.yml
+14-4.github/workflows/libcxx/build-at-commit/action.yml
+1-0.github/workflows/libcxx-benchmark-commit.yml
+41-133 files

LLVM/project 4880e16 — llvm/lib/Target/RISCV RISCVISelLowering.cpp RISCVFrameLowering.cpp, llvm/test/CodeGen/RISCV sifive-interrupt-attr-err.ll sifive-interrupt-frame-flags.ll

[RISCV] Support frame pointers in SiFive CLIC preemptible handlers (#221318)

This commit adds frame-pointer support for SiFive CLIC preemptible
handlers by using t0 to save mcause and mepc to dedicated stack slots in
both cases.
DeltaFile
+951-0llvm/test/CodeGen/RISCV/sifive-interrupt-frame-pointer.ll
+386-167llvm/test/CodeGen/RISCV/sifive-interrupt-attr.ll
+93-54llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
+17-12llvm/test/CodeGen/RISCV/sifive-interrupt-frame-flags.ll
+0-12llvm/test/CodeGen/RISCV/sifive-interrupt-attr-err.ll
+0-6llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+1,447-2511 files not shown
+1,448-2537 files

NextBSD/src df98d94 — tests img-boot-test.sh boot-test.sh

tests: wait for a shell in one block, not two

The previous commit fixed the wrong half. Both tests had a stage that
waited for "login:" and then a stage that handled either a prompt or an
automatic login. I replaced the second -- the one that printed the error I
had seen -- and left the first demanding a prompt.

On an image where automatic login works there is no prompt, so the first
block waited out its full eight minutes and the second never ran. That is
why all four lanes failed on the run against fresh packages, with

    FAIL: 'login:' prompt not seen within 8 minutes

rather than the login rejection from before. The packages were the fix for
the earlier failure -- they carry autologin-user, so admin is now logged in
automatically -- and the test could not cope with its own success.

Splitting the wait from the decision was the mistake: an earlier block
could contradict a later one about what boot looks like. One block now does
both, and the panic check folds into it.
DeltaFile
+13-13tests/boot-test.sh
+10-10tests/img-boot-test.sh
+23-232 files

LLVM/project 138694b — clang/test/CIR/Lowering fastmath-contract.cir

[CIR] Update the fastmath contract lowering test

cir-to-llvm now requires a module triple, and the LLVM dialect prints
fastmath flags as fastmath<contract> rather than an attribute dictionary.

Co-authored-by: Cursor <cursoragent at cursor.com>
DeltaFile
+5-5clang/test/CIR/Lowering/fastmath-contract.cir
+5-51 files

LLVM/project 11612ad — llvm/lib/Target/AMDGPU AMDGPUInstCombineIntrinsic.cpp, llvm/test/Transforms/InstCombine/AMDGPU llvm.amdgcn.dot.ll

[AMDGPU][InstCombine] Fold zero dot operands to accumulator

Fold AMDGPU dot intrinsics when either operand is zero.

`dot(a, 0) = 0` and `dot(0, b) = 0`, so replace the intrinsic with its accumulator.
This avoids unrelated clamp and add/sub reassociation cases.
DeltaFile
+15-30llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.dot.ll
+3-0llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
+18-302 files

LLVM/project 3243453 — .github/workflows libcxx-pr-benchmark.yml, libcxx/utils test-at-commit

[libc++] Take the benchmark testing configuration from the test suite (#226267)

Previously, we'd use the testing configuration (the .cfg.in file) from
the checked out test suite for the PR benchmarking, but we'd use the one
from `main` for the historical benchmarking. Since the config file is
logically part of the test suite (just like the rest of the Lit setup),
it makes more sense to take it from the checked-out test suite version.
DeltaFile
+6-6libcxx/utils/ci/lnt/machines.json
+2-2.github/workflows/libcxx-pr-benchmark.yml
+1-2libcxx/utils/test-at-commit
+1-1libcxx/utils/ci/lnt/run-benchmarks
+10-114 files

LLVM/project 5ad5c0a — llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/lib/Target/AMDGPU AMDGPUISelLowering.cpp

[SelectionDAG][AMDGPU] Fold mul24 with an AND operand whose low bits are zero

Use SimplifyMultipleUseDemandedBits to simplify AND operands based on the
low 24 bits consumed by mul24.

Fold the multiply to zero when the simplified operand is zero.

This folds cases such as:

  mul24(x & 0xff000000, y) -> 0
DeltaFile
+8-8llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
+6-3llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mul.i24.ll
+5-0llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+19-113 files

LLVM/project 72dc9bc — llvm/lib/Target/AMDGPU AMDGPUISelLowering.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.mul.i24.ll

[AMDGPU] Fold 24 bit multiply with zero low bits

Fold `MUL_I24` and `MUL_U24` to zero when either operand has known zero
low 24 bits.

For example:
```
  llvm.amdgcn.mul.i24(x, 0x01000000) -> 0
```
DeltaFile
+21-33llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mul.i24.ll
+5-0llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
+26-332 files

LLVM/project 94d55b3 — llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.mul.i24.ll rotl.ll

[SelectionDAG] Handle constants in SimplifyMultipleUseDemandedBits

Replace a non-zero constant with zero when none of its set bits are
demanded.

This allows users of `SimplifyMultipleUseDemandedBits` to eliminate
irrelevant constant bits while preserving the convention that a null
SDValue indicates no simplification.
DeltaFile
+38-45llvm/test/CodeGen/AMDGPU/rotl.ll
+3-6llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mul.i24.ll
+3-4llvm/test/CodeGen/PowerPC/ppc-rotate-clear.ll
+2-4llvm/test/CodeGen/SystemZ/shift-08.ll
+2-4llvm/test/CodeGen/SystemZ/shift-04.ll
+6-0llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+54-634 files not shown
+58-7110 files

OpenBSD/ports M9c2idU — net/prosody Makefile distinfo, net/prosody/patches patch-core_certmanager_lua patch-util-src_pposix_c

   MFC: net/prosody: update to 13.0.7

   Changes:
   https://blog.prosody.im/prosody-13.0.6-released/
   https://blog.prosody.im/prosody-13.0.7-released/

   OK martijn
VersionDeltaFile
1.1.6.1+4-4net/prosody/patches/patch-util-src_crypto_c
1.4.6.2+2-2net/prosody/patches/patch-util-src_pposix_c
1.34.2.2+2-2net/prosody/distinfo
1.9.6.1+1-1net/prosody/patches/patch-core_certmanager_lua
1.82.2.2+1-1net/prosody/Makefile
1.24.6.1+1-0net/prosody/pkg/PLIST
+11-106 files

LLVM/project 35f073e — llvm/lib/Target/AMDGPU AMDGPUInstCombineIntrinsic.cpp, llvm/test/Transforms/InstCombine/AMDGPU llvm.amdgcn.sudot.ll

[AMDGPU] Fold a constant add/sub into the sudot4/sudot8 accumulator (#225322)

Fold a constant add into the accumulator operand of sudot4 and sudot8
when
clamping is disabled:
```
  sudot(a, b, C1, false) + C2 -> sudot(a, b, C1 + C2, false)
```
Subtraction by a constant is canonicalized to addition of its negation.
DeltaFile
+39-19llvm/lib/Target/AMDGPU/AMDGPUInstCombineIntrinsic.cpp
+10-20llvm/test/Transforms/InstCombine/AMDGPU/llvm.amdgcn.sudot.ll
+49-392 files

OpenBSD/ports 8wEom0t — net/prosody Makefile distinfo, net/prosody/patches patch-core_certmanager_lua patch-util-src_pposix_c

   net/prosody: update to 13.0.7

   Changes:
   https://blog.prosody.im/prosody-13.0.6-released/
   https://blog.prosody.im/prosody-13.0.7-released/

   OK martijn
VersionDeltaFile
1.2+4-4net/prosody/patches/patch-util-src_crypto_c
1.6+2-2net/prosody/patches/patch-util-src_pposix_c
1.36+2-2net/prosody/distinfo
1.10+1-1net/prosody/patches/patch-core_certmanager_lua
1.84+1-1net/prosody/Makefile
1.25+1-0net/prosody/pkg/PLIST
+11-106 files

LLVM/project 9fa7fc2 — llvm/lib/Target/AMDGPU SIInstrInfo.cpp SIInstrInfo.h, llvm/test/CodeGen/AMDGPU vperm-pk16-exec-hazard.mir llvm.amdgcn.perm.pk.ll

[AMDGPU] Ensure v_perm_pk16 hazard is applied to both gfx1250 and gfx1251.
DeltaFile
+12-14llvm/lib/Target/AMDGPU/SIInstrInfo.h
+4-2llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
+3-2llvm/test/CodeGen/AMDGPU/remove-short-exec-branches-vperm-pk16.mir
+2-1llvm/test/CodeGen/AMDGPU/vperm-pk16-exec-hazard.ll
+2-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.perm.pk.ll
+1-0llvm/test/CodeGen/AMDGPU/vperm-pk16-exec-hazard.mir
+24-196 files

LLVM/project 7ee53cc — clang/docs/HLSL DynamicResources.md, clang/lib/Sema HLSLExternalSemaSource.cpp HLSLBuiltinTypeDeclBuilder.cpp

[HLSL] Add support for dynamic resources (#221103)

Adds support for dynamic resources, also known as bindless or directly
indexed resources. The design is described in
https://github.com/llvm/wg-hlsl/issues/204.

The change adds:
- The `ResourceDescriptorHeap` and `SamplerDescriptorHeap` global
symbols, which expose the Shader Model 6.6 descriptor heaps.
- Internal `hlsl::__detail::heap_resource_info` and
`hlsl::__detail::heap_sampler_info` types, which are produced by
indexing the corresponding descriptor heap. HLSL resource and sampler
types can be implicitly constructed from these values.
- Constructors that accept the corresponding internal heap info type for
all currently implemented resource classes.
- Clang builtins `__builtin_hlsl_resource_handlefromheap` and
`__builtin_hlsl_resource_counterhandlefromheap` for creating resource
and counter handles from descriptor heap indices.
- Sema validation and return-type handling for the new builtins.

    [8 lines not shown]
DeltaFile
+132-0clang/test/AST/HLSL/DynamicResources-AST.hlsl
+109-0clang/test/CodeGenHLSL/resources/dynamic-resources.hlsl
+81-0clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
+52-13clang/lib/Sema/HLSLExternalSemaSource.cpp
+50-0clang/test/SemaHLSL/Resources/dynamic-resources.hlsl
+43-0clang/docs/HLSL/DynamicResources.md
+467-1319 files not shown
+651-1725 files

LLVM/project 6e687f8 — llvm/include/llvm/CodeGen MIRYamlMapping.h, llvm/include/llvm/CodeGen/MIRParser MIParser.h

[MIR][AMDGPU] Serialize register allocation anti-hints (#218073)

This PR adds MIR print and parse support for the register allocation
anti-hints through
a per vreg anti-hints: [ .. ] field in the registers: section. The
printer only emits
the anti-hint registers only when the it is non-empty to keep existing
tests unchanged.
## Stack
PR **2/4**. Depends on #218071. Next: Apply Occupancy-Aware allocation
anti-hints #218074.
DeltaFile
+121-0llvm/test/CodeGen/MIR/AMDGPU/register-allocation-antihints-mir-print-parse.mir
+19-0llvm/lib/CodeGen/MIRParser/MIRParser.cpp
+12-0llvm/lib/CodeGen/MIRPrinter.cpp
+5-0llvm/include/llvm/CodeGen/MIRYamlMapping.h
+1-0llvm/include/llvm/CodeGen/MIRParser/MIParser.h
+158-05 files

LLVM/project bacc5bd — llvm/lib/Target/AMDGPU GCNRegPressure.cpp GCNRegPressure.h

[AMDGPU] Track allocator-reserved register pressure separately

GCNRegPressure counts a tuple at its live lane count, but the excess and
critical limits the scheduler compares against are expressed in
allocatable registers. A tuple is reserved at its full class width for
its whole live range, so lanes that are dead at a given point are still
unavailable to any other value, and the live lane count underestimates
what the allocator has to set aside.

Track a third set of per-kind values recording the reserved width, and
use it for the pressure the GCN trackers hand to the scheduling
heuristics.

Also add -amdgpu-trackers-compare-rp to print the GCN tracker and the
generic tracker pressure side by side for every candidate, which is what
the discrepancy was found with.

WIP

AI-Assisted
DeltaFile
+38-7llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
+25-4llvm/lib/Target/AMDGPU/GCNRegPressure.h
+10-1llvm/lib/Target/AMDGPU/GCNRegPressure.cpp
+73-123 files

NetBSD/pkgsrc vOq5nVC — graphics/shader-slang Makefile, graphics/shader-slang/patches patch-include_slang.h

   shader-slang: fixed github project name; added missed pathc
VersionDeltaFile
1.1+25-0graphics/shader-slang/patches/patch-include_slang.h
1.2+2-1graphics/shader-slang/Makefile
+27-12 files

LLVM/project feaab8e — llvm/lib/Target/AMDGPU AMDGPUCoExecSchedStrategy.cpp GCNSchedStrategy.h

[AMDGPU] Handle AVGPR pressure in a bank-aware manner.

WIP

AI-Assisted
DeltaFile
+33-5llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
+23-0llvm/lib/Target/AMDGPU/GCNRegPressure.h
+15-0llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
+2-2llvm/lib/Target/AMDGPU/AMDGPUCoExecSchedStrategy.cpp
+73-74 files

NetBSD/src GlaHZSd — sys/kern uipc_syscalls.c, sys/sys socketvar.h

   kern: Nix SS_ISABORTING.

   This was a vestige of an earlier revision of the .fo_restart
   mechanism; it is never set by anything in the kernel, it has been
   supplanted by SS_RESTARTSYS, and it serves no further purpose.
VersionDeltaFile
1.217+2-7sys/kern/uipc_syscalls.c
1.172+2-2sys/sys/socketvar.h
+4-92 files

LLVM/project 88710e8 — clang/lib/CIR/CodeGen CIRGenFunction.cpp, clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp

[CIR] clang-format the fp-contract changes

Co-authored-by: Cursor <cursoragent at cursor.com>
DeltaFile
+17-20clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+2-1clang/lib/CIR/CodeGen/CIRGenFunction.cpp
+19-212 files

NetBSD/src 20lNrtR — sys/kern uipc_syscalls.c, tests/kernel t_fdrestart.c

   connect(2): Fix wakeup if the fd is concurrently closed.

   PR kern/57659: closing pipe writefd fails to wake concurrent write on
   same writefd
VersionDeltaFile
1.216+14-4sys/kern/uipc_syscalls.c
1.9+2-5tests/kernel/t_fdrestart.c
+16-92 files