LLVM/project f8d6f8b — llvm/test/MC/RISCV option-invalid.s option-arch.s

[nspr] initial commit
DeltaFile
+25-0llvm/test/MC/RISCV/option-arch.s
+14-0llvm/test/MC/RISCV/option-invalid.s
+39-02 files

LLVM/project 4c668a3 — lldb/source/Core CMakeLists.txt ModuleList.cpp, lldb/source/Plugins/TypeSystem/Clang CMakeLists.txt TypeSystemClang.cpp

[lldb] Set the default clang module cache path in TypeSystemClang (#229817)

`ModuleListProperties` calls
`clang::driver::Driver::getDefaultModuleCachePath`, so `lldbCore` links
`clangDriver`, which drags in `clangAST` and most of LLVM via static
initializers. lldb-server only links `lldbCore` and links everything
else regardless.

Set the default from `TypeSystemClang::Initialize` instead. Every tool
that uses the clang module cache registers TypeSystemClang.
DeltaFile
+7-0lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
+0-6lldb/source/Core/ModuleList.cpp
+0-3lldb/source/Core/CMakeLists.txt
+1-0lldb/source/Plugins/TypeSystem/Clang/CMakeLists.txt
+8-94 files

LLVM/project 974e95f — llvm/include/llvm/CodeGen LazyMachineBlockFrequencyInfo.h, llvm/lib/CodeGen LazyMachineBlockFrequencyInfo.cpp

[CodeGen] Force compiler to generate default destructor for class (#229944)

The LazyMachineBlockFrequencyInfoPass has global visibility so in order
for it to be linkable with MSVC, we need to explicitly tell the compiler
to emit its definition.
DeltaFile
+3-0llvm/lib/CodeGen/LazyMachineBlockFrequencyInfo.cpp
+1-0llvm/include/llvm/CodeGen/LazyMachineBlockFrequencyInfo.h
+4-02 files

LLVM/project 92ab900 — clang/lib/CIR/CodeGen CIRGenCoroutine.cpp, clang/test/CIR/CodeGenCoroutines coro-fallthrough.cpp

[CIR] Destroy coroutine body locals before the implicit co_return (#229743)

When a coroutine body flows off its end, CIRGen calls the promise's
`return_void()` while the local variables of the body are still alive,
and destroys them afterwards.

Flowing off the end of the function-body is equivalent to a `co_return`
with no operand. Control only flows off the end of the function-body
when it leaves the body's block, and leaving the block destroys the
block's automatic variables.

This patch wraps the body in a `RunCleanupsScope`, so the body's
cleanups are popped when the body ends, before the fall-through handler
is emitted. The body's `cir.cleanup.scope` now ends with a `cir.yield`,
and `return_void()` and `cir.co_return` follow it.

---------

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+193-0clang/test/CIR/CodeGenCoroutines/coro-fallthrough.cpp
+10-2clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
+203-22 files

GhostBSD/ports 11711cd — cad/PrusaSlicer Makefile

cad/PrusaSlicer: add ffmpeg4 as a runtime dependency for libavcodec support
DeltaFile
+3-0cad/PrusaSlicer/Makefile
+3-01 files

GhostBSD/ports 98611f6 — graphics/aoi Makefile

graphics/aoi: pin JDK version to avoid conflicts with java.mk default
DeltaFile
+2-0graphics/aoi/Makefile
+2-01 files

LLVM/project 732b46f — lldb/source/API SBData.cpp SBProcessInfo.cpp, lldb/unittests/Utility StringPoolTest.cpp

[lldb] Intern SB API strings in the system pool (#229901)

Intern strings returned by SB classes that do not belong to a debugger
in the system pool. Rename StringPool::GetSystem to GetSystemPool and
add StringPoolRef::InternNonEmpty for getters that map an empty string
to nullptr. SBEnvironmentTest now initializes the SB API, as the system
pool is only valid between Initialize and Terminate.
DeltaFile
+31-37lldb/source/API/SBPlatform.cpp
+9-7lldb/source/API/SBLaunchInfo.cpp
+6-5lldb/source/API/SBEnvironment.cpp
+9-1lldb/unittests/Utility/StringPoolTest.cpp
+5-4lldb/source/API/SBProcessInfo.cpp
+3-5lldb/source/API/SBData.cpp
+63-599 files not shown
+93-7115 files

OpenZFS/src 5d1ed14 — module/zfs zil.c

Bail out of zil_create() when the pool suspends

zil_create() waits with txg_wait_synced(), a void wrapper around a
plain wait that cannot report a suspend. When the pool suspends while
it waits, the fsync() that got there does not return until the pool
resumes.

The rest of the commit path already handles this. zil_commit_flags()
and zil_commit_writer_stall() wait with TXG_WAIT_SUSPEND, call
zil_crash() on ESHUTDOWN and hand EIO back to the waiters.
zil_create() and zil_commit_activate_saxattr_feature() were left on the
old wait, so a suspend caught in either one still hangs.

Use the suspend-aware wait in all three places and return the failure.
zil_process_commit_list() already has a NULL-lwb path that signals the
nolwb waiters with the error, and its comment already says an ESHUTDOWN
there means zil_crash() was called, so the failure lands somewhere that
expects it.


    [11 lines not shown]
DeltaFile
+34-11module/zfs/zil.c
+34-111 files

GhostBSD/ports ba73c62 — math/dune-fem Makefile

math/dune-fem: switch dependency from arpack-ng at openmpi to arpack-ng at mpich
DeltaFile
+1-1math/dune-fem/Makefile
+1-11 files

OpenZFS/src b38e7a4 — module/zfs dmu_objset.c

Bail out of the objset upgrade when the pool suspends

The two objset upgrade callbacks end with txg_wait_synced(), a void
wrapper around a plain wait that cannot report a suspend. When the
pool suspends during that wait, the upgrade taskq thread stays blocked
until the pool resumes. So does dmu_objset_disown(), which calls
dmu_objset_upgrade_stop(). That waits for a running upgrade task to
finish and then waits for a txg itself.

Give all three waits TXG_WAIT_SUSPEND. The callbacks return EAGAIN,
which dmu_objset_upgrade_task_cb() records in os_upgrade_status.
zfs_ioc_userspace_upgrade() and zfs_ioc_id_quota_upgrade() return that
status, and libzfs reports EAGAIN as a suspended pool.
dmu_objset_upgrade_stop() ignores the result, as it ignored the old
wait.

On master, fstests generic/753 in the eio group hangs with the pool
suspended and z_upgrade blocked here:


    [10 lines not shown]
DeltaFile
+8-3module/zfs/dmu_objset.c
+8-31 files

GhostBSD/ports b80a06b — math/dune-pdelab Makefile

math/dune-pdelab: switch dependency from arpack-ng at openmpi to arpack-ng at mpich
DeltaFile
+1-1math/dune-pdelab/Makefile
+1-11 files

OpenZFS/src b098c60 — module/zfs spa_misc.c, tests/runfiles common.run

Do not wait forever in spa_vdev_state_exit() on a suspended pool

spa_vdev_state_exit() waits for the txg to sync whenever it is given a
vdev, so that zpool(8) commands are synchronous. If the pool suspends
during that wait, the txg never syncs and the command never returns.

A pool that is already suspended does not get that far.
ZFS_IOC_VDEV_SET_STATE refuses it with EAGAIN before vdev_online()
runs, and zfs_ioc_clear() passes NULL instead of the vdev when
spa_suspended() is true. The hang needs the pool to suspend after
those checks. That happens when the state change's own sync fails,
and when a zpool clear races a new suspend, which generic/753 in the
eio group caught on an encrypted mirror:

    zpool     D  357s   txg_wait_synced <- spa_vdev_state_exit
                        <- zfs_ioc_clear
    txg_sync  D  359s
    pool      SUSPENDED


    [24 lines not shown]
DeltaFile
+103-0tests/zfs-tests/tests/functional/failmode/failmode_vdev_state.ksh
+10-2module/zfs/spa_misc.c
+2-1tests/runfiles/common.run
+1-0tests/zfs-tests/tests/Makefile.am
+116-34 files

OpenZFS/src 2a96397 — module/zfs dmu_tx.c, tests/runfiles linux.run

Stop DMU_TX_NOWAIT callers spinning on a suspended pool

On a suspended pool, dmu_tx_assign() gives a DMU_TX_WAIT caller EIO
under failmode=continue and blocks it under failmode=wait. A
DMU_TX_NOWAIT caller gets ERESTART in both modes, and every such caller
answers it the same way:

        if (error == ERESTART) {
                waited = B_TRUE;
                dmu_tx_wait(tx);
                dmu_tx_abort(tx);
                goto top;
        }

dmu_tx_assign() sets tx_break_on_suspend for any caller without
DMU_TX_SUSPEND, so this dmu_tx_wait() waits with TXG_WAIT_SUSPEND and
returns as soon as it sees the suspended pool. It returns void, so the
caller retries at once, and the thread spins in the kernel until the
pool resumes. dmu_tx_assign() guards its own retry against this by

    [26 lines not shown]
DeltaFile
+79-0tests/zfs-tests/tests/functional/failmode/failmode_nowait_wait.ksh
+14-5module/zfs/dmu_tx.c
+4-0tests/runfiles/linux.run
+1-0tests/zfs-tests/tests/Makefile.am
+98-54 files

GhostBSD/ports 563b157 — math/dune-vtk Makefile

math/dune-vtk: switch dependency from arpack-ng at openmpi to arpack-ng at mpich
DeltaFile
+1-1math/dune-vtk/Makefile
+1-11 files

GhostBSD/ports a9f9c8b — science/chrono Makefile

devel/chrono: added VEHICLE_RUN_DEPENDS
DeltaFile
+2-0science/chrono/Makefile
+2-01 files

LLVM/project 9f0753e — llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/test/CodeGen/X86 mask-beforefirst.ll

[DAG] Handle widened step vectors in expandGetActiveLaneMask

On AVX512 getLegalMaskAndStepVector will need to widen the step vector type. Handle this in expandGetActiveLaneMask, so we don't crash on AVX512 which widens e.g. v8i1 -> v16i1. We don't actually use Mask, it's just a dummy poison value to work out what type the final mask result should be.
DeltaFile
+65-1llvm/test/CodeGen/X86/mask-beforefirst.ll
+6-3llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+71-42 files

LLVM/project b5fad95 — offload/plugins-nextgen/amdgpu/src rtl.cpp, offload/plugins-nextgen/common/include PluginInterface.h

[Offload][AMDGPU] Wire HSA profiling into GenericProfiler abstraction

Add device profiling infrastructure to the AMDGPU plugin so that the
GenericProfiler can receive nanosecond-accurate kernel execution and
data transfer timestamps from the HSA runtime.

Key changes:
- Add ProfilingInfoTy struct to transport HSA profiling data
- Add timeKernelInNsAsync/timeDataTransferInNsAsync callbacks that
  extract dispatch/copy times from HSA signals and call
  handleKernelCompletion/handleDataTransfer on the profiler
- Add getOrNullProfilerSpecificData helper to extract ProfilerData
  from AsyncInfoWrapperTy
- Add getDeviceTimeStamp() override using hsa_system_get_info
- Add getSystemTimestampInNs() for HSA system timestamp queries
- Add schedProfilerKernelTiming/schedProfilerDataTransferTiming to
  StreamSlotTy for scheduling profiler callbacks on stream slots
- Thread ProfilerSpecificData through pushKernelLaunch,
  pushMemoryCopyH2DAsync, pushMemoryCopyD2HAsync, pushMemoryCopyD2DAsync

    [6 lines not shown]
DeltaFile
+214-21offload/plugins-nextgen/amdgpu/src/rtl.cpp
+15-9offload/plugins-nextgen/common/src/PluginInterface.cpp
+17-7offload/plugins-nextgen/cuda/src/rtl.cpp
+14-7offload/plugins-nextgen/common/include/PluginInterface.h
+8-4offload/plugins-nextgen/level_zero/src/L0Device.cpp
+8-4offload/plugins-nextgen/host/src/rtl.cpp
+276-525 files not shown
+295-5711 files

LLVM/project b9dd495 — llvm/test/Transforms/SLPVectorizer/AArch64 or-reduction-byte-pack.ll

[SLP][NFC]Add a test with missing vectorization, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/230295
DeltaFile
+656-0llvm/test/Transforms/SLPVectorizer/AArch64/or-reduction-byte-pack.ll
+656-01 files

GhostBSD/ports 01e612b — shells/ghostbsd-zsh-settings Makefile

shells/ghostbsd-zsh-settings: update zsh-completions dependency format
DeltaFile
+1-1shells/ghostbsd-zsh-settings/Makefile
+1-11 files

LLVM/project 41d1105 — llvm/test/Transforms/SLPVectorizer/AArch64 or-reduction-byte-pack.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+656-0llvm/test/Transforms/SLPVectorizer/AArch64/or-reduction-byte-pack.ll
+656-01 files

GhostBSD/ports 3e04c1b — x11-servers/xlibre-server Makefile.common

x11-servers/xlibre-server: update mesa-dri dependency format
DeltaFile
+1-1x11-servers/xlibre-server/Makefile.common
+1-11 files

LLVM/project 3f89866 — llvm/include/llvm/CodeGen LiveVariables.h, llvm/lib/CodeGen LiveVariables.cpp

LiveVariables: Only visit tracked physical registers

Keep a bitvector of physical registers with a recorded def or use in
the current block. Register mask handling, the end of block scan, and
the per-block reset now only visit those registers instead of every
register. This is significant for targets with many registers, such as
AMDGPU.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+19-8llvm/lib/CodeGen/LiveVariables.cpp
+3-0llvm/include/llvm/CodeGen/LiveVariables.h
+22-82 files

GhostBSD/ports 66889ef — x11-drivers/ghostbsd-drivers Makefile

x11-drivers/ghostbsd-drivers: update xorg runtime dependency to xorg-minimal
DeltaFile
+1-1x11-drivers/ghostbsd-drivers/Makefile
+1-11 files

LLVM/project 43edafd — llvm/include/llvm/CodeGen LiveVariables.h, llvm/lib/CodeGen LiveVariables.cpp

LiveVariables: Remove dead live-in handling and Defs plumbing

No physical register is tracked at the start of a block, so handling
the block live-ins was a no-op. The Defs list was only appended for
instruction defs, which runOnInstr already collects.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+9-24llvm/lib/CodeGen/LiveVariables.cpp
+3-5llvm/include/llvm/CodeGen/LiveVariables.h
+12-292 files

FreeBSD/ports db8a20e — science/bagel distinfo Makefile, science/bagel/files patch-src_util_input_input.cc menthol.json

science/bagel: update 1.2.2-132 → 1.2.2.147
DeltaFile
+50-0science/bagel/files/menthol.json
+15-4science/bagel/Makefile
+18-0science/bagel/files/patch-src_util_input_input.cc
+3-3science/bagel/distinfo
+86-74 files

LLVM/project f9c8a1f — llvm/include/llvm/CodeGen LiveVariables.h, llvm/lib/CodeGen LiveVariables.cpp

CodeGen: Strip LiveVariables down to dead flag computation (#230149)

This analysis is dead and there are no more explicit uses. There are still 
passes implicitly relying on adjustments of dead flags. Missing dead
flags are added, and implicit-def operands are added for partially dead
physical registers.

The whole pass should be deleted, but it's taking a while to get all the
dead flag changes through the rest of the compiler. As a stop-gap to try to
recover some compile time regression, and avoiding new users appearing, strip
the pass down to only computing the dead flags.

The main side effect of this is kill flags are no longer made accurate, which
is the source of the test churn.

Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+53-519llvm/lib/CodeGen/LiveVariables.cpp
+7-231llvm/include/llvm/CodeGen/LiveVariables.h
+34-34llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
+0-64llvm/unittests/MI/LiveIntervalTest.cpp
+26-26llvm/test/CodeGen/AMDGPU/waterfall-loop-exec-update-terminator.mir
+16-16llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
+136-89034 files not shown
+216-1,00040 files

LLVM/project 7e1fa69 — llvm/test/CodeGen/AMDGPU rewrite-vgpr-mfma-to-agpr-unspill-regunit-interference.mir rewrite-vgpr-mfma-to-agpr-unspill-regmask-interference.mir

[AMDGPU] Move to new pass spelling virt-reg-rewriter in 2 tests (#230287)

Fixes buildbot failure from
https://github.com/llvm/llvm-project/pull/205962.
DeltaFile
+1-1llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-unspill-regunit-interference.mir
+1-1llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-unspill-regmask-interference.mir
+2-22 files

GhostBSD/ports 204a6f9 — devel/opencl-clang Makefile, devel/spirv-llvm-translator Makefile

*/*: depend on llvm-libs for libLLVM and libclang

libLLVM and libclang moved to the devel/llvmNN-libs ports, so packages
record llvmNN-libs for these LIB_DEPENDS while the Makefiles still named
the full devel/llvmNN. Poudriere saw a "new dependency" on every run and
rebuilt them, which cascaded through mesa to most of the tree.

Point the runtime dependency at the -libs port and keep a build
dependency on the full llvm for headers, llvm-config and cmake files.
spirv-llvm-translator and opencl-clang only do this for flavors that
have a -libs port. rpcs3 now strips -libs when deriving LLVM_DIR.
DeltaFile
+8-2devel/opencl-clang/Makefile
+6-0devel/spirv-llvm-translator/Makefile
+3-2emulators/rpcs3/Makefile
+2-1lang/crystal/Makefile
+2-1graphics/seexpr/Makefile
+2-1emulators/dolphin-emu/Makefile
+23-77 files not shown
+33-1413 files

LLVM/project 2d1a007 — llvm/lib/Target/X86 X86InstrInfo.cpp, llvm/test/CodeGen/X86 twoaddr-convert3addr-eflags-live-through.mir avx512bw-reduce-fmaximum-v32f16.ll

X86: Only drop EFLAGS def in convertToThreeAddress if MI defines EFLAGS

convertToThreeAddress unconditionally removed the EFLAGS value at the
converted instruction's slot. For instructions that do not define EFLAGS,
such as masked moves converted to blends or the _NF variants, a live-through
EFLAGS value could be removed leaving a missing segment.

Reported in https://github.com/llvm/llvm-project/pull/225174#issuecomment-6056927367

Co-authored-by: Claude (Claude-Opus-5.5)
DeltaFile
+543-0llvm/test/CodeGen/X86/avx512bw-reduce-fmaximum-v32f16.ll
+76-0llvm/test/CodeGen/X86/twoaddr-convert3addr-eflags-live-through.mir
+4-2llvm/lib/Target/X86/X86InstrInfo.cpp
+623-23 files

OpenBSD/ports P7mQ2Rk — devel/py-makefun/patches patch-setup_py

   take patch from a PR to drop use of pkg_resources durimg build
VersionDeltaFile
1.1+37-0devel/py-makefun/patches/patch-setup_py
+37-01 files