LLVM/project d74068dllvm/lib/Transforms/IPO OpenMPOpt.cpp, llvm/test/Transforms/OpenMP callback_parallel_regions.ll spmdization_no_guarding_two_reaching_kernels.ll

[OpenMPOpt] Ask the runtime how many of a block's threads can be workers

The custom state machine gates a thread on InitCB < BlockHwSize - WarpSize,
reconstructing the number of worker threads from the block size on the
assumption that the main thread occupies a whole warp above them. The DeviceRTL
already computes that number, in mapping::getMaxTeamThreads(), and its own
generic state machine gates on it in shouldEnterStateMachine(). Export it as
__kmpc_get_max_team_threads() and call that instead, so the compiler's state
machine and the runtime's agree by construction rather than by arithmetic that
has to be kept in step with the launch geometry.

This is NFC here: getMaxTeamThreads() in generic mode is BlockSize - WarpSize,
the same three instructions folded into one call. It is not NFC for a toolchain
whose launch geometry differs. In ROCm, CGOpenMPRuntimeGPU starts a single extra
thread rather than a warp -- "Only one additional thread is started, not an
entire warp" -- so thread_limit(1024) on a 64-lane target launches 961 threads
and the runtime reports 960 workers, while the state machine's own arithmetic
says 961 - 64 = 897. The threads in between are in neither group: the state
machine returns immediately for them, and the parallel region still hands them

    [12 lines not shown]
DeltaFile
+32-64llvm/test/Transforms/OpenMP/spmdization.ll
+24-48llvm/test/Transforms/OpenMP/custom_state_machines.ll
+22-30llvm/lib/Transforms/IPO/OpenMPOpt.cpp
+8-16llvm/test/Transforms/OpenMP/spmdization_indirect.ll
+6-12llvm/test/Transforms/OpenMP/spmdization_no_guarding_two_reaching_kernels.ll
+4-8llvm/test/Transforms/OpenMP/callback_parallel_regions.ll
+96-1784 files not shown
+113-18310 files

LLVM/project ec06ae2llvm/include/llvm/Frontend/OpenMP OMPKinds.def, llvm/lib/Transforms/IPO OpenMPOpt.cpp

[OpenMPOpt] Look inside the callbacks the loop runtime functions are handed

The __kmpc_{distribute_,for_,distribute_for_}static_loop_* functions receive the
loop body as a callback, so a parallel region written inside that body is
reachable from the kernel through the runtime call. AAKernelInfo could not see
that, and recorded the call as reaching an unknown parallel region. A kernel
using these functions therefore always got a worker state machine whose only
option was to indirectly call whatever work function it was handed.

Describe the callback argument of each of these functions in OMPKinds.def and
attach the corresponding !callback metadata in OpenMPOpt, then fold the
callback's AAKernelInfo state into the caller's. The state machine can now
dispatch directly to the regions the loop body actually reaches. Relax the two
"more than one callee means give up" checks for functions carrying !callback,
since the callback edge is a second edge by construction and is analyzable.

The conservative unknown-region record is kept for the case that motivated it, a
callback we only see a declaration of.


    [39 lines not shown]
DeltaFile
+239-0llvm/test/Transforms/OpenMP/callback_parallel_regions.ll
+99-10llvm/lib/Transforms/IPO/OpenMPOpt.cpp
+51-0llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
+48-0offload/test/offloading/fortran/target-teams-distribute-nested-parallel-do.f90
+437-104 files

FreeBSD/src a73bb62contrib/kyua/engine/prepare prepare_all.cpp

contrib/kyua: fix -Wshadow error

This fixes the build with gcc 14:

/usr/src/contrib/kyua/engine/prepare/prepare_all.cpp:56:16: error: declaration of 'handler' shadows a member of 'engine::prepare::prepare_all' [-Werror=shadow]
   56 |     for (auto& handler : prepare::handlers()) {
      |                ^~~~~~~
In file included from /usr/src/contrib/kyua/engine/prepare/prepare_all.hpp:35,
                 from /usr/src/contrib/kyua/engine/prepare/prepare_all.cpp:29:
/usr/src/contrib/kyua/engine/prepare/prepare.hpp:51:15: note: shadowed declaration is here
   51 | class handler {
      |               ^

Fixes:  edb230c4af499203d7a6894b3711fe6574b26040

Reviewed by:    igoro, rlibby, ngie
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
Differential Revision:  https://reviews.freebsd.org/D59346
DeltaFile
+3-3contrib/kyua/engine/prepare/prepare_all.cpp
+3-31 files

FreeBSD/ports 3c046a0multimedia/syncplay distinfo Makefile, multimedia/syncplay/files patch-GNUmakefile

multimedia/syncplay: Update to 1.7.6

Take maintainership.

Changelog: https://github.com/Syncplay/syncplay/releases

PR:             297642
Approved by:    Christian Heckendorf <heckendorfc at gmail.com> (former maintainer, timeout)
Approved by:    fluffy (mentor)
DeltaFile
+36-7multimedia/syncplay/pkg-plist
+8-7multimedia/syncplay/files/patch-GNUmakefile
+5-5multimedia/syncplay/Makefile
+3-3multimedia/syncplay/distinfo
+52-224 files

LLVM/project b59cce1clang-tools-extra/docs/clang-tidy/checks/readability container-size-empty.md duplicate-include.md

[clang-tidy][docs] Rewrite readability check docs to Markdown [1/5]
DeltaFile
+82-85clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.md
+62-67clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.md
+41-39clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.md
+31-33clang-tools-extra/docs/clang-tidy/checks/readability/avoid-return-with-void-value.md
+28-29clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.md
+25-27clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.md
+269-2804 files not shown
+351-36710 files

LLVM/project 4a3ad32clang-tools-extra/docs/clang-tidy/checks/readability ambiguous-smartptr-reset-call.rst ambiguous-smartptr-reset-call.md

[clang-tidy][docs] Rename readability check docs to Markdown [1/5]
DeltaFile
+0-111clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.rst
+111-0clang-tools-extra/docs/clang-tidy/checks/readability/enum-initial-value.md
+0-90clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.rst
+90-0clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.md
+0-62clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
+62-0clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.md
+263-26314 files not shown
+534-53420 files

GhostBSD/ports 13a9522devel Makefile

devel/Makefile: add missing c3-lsp SUBDIR entries
DeltaFile
+77-13devel/Makefile
+77-131 files

NetBSD/pkgsrc-wip 3cc75a8py-img2pdf COMMIT_MSG distinfo

Add py-img2pdf, a tool (and python library) to add image files to PDFs
without recoding them.
DeltaFile
+21-0py-img2pdf/Makefile
+12-0py-img2pdf/DESCR
+11-0py-img2pdf/PLIST
+5-0py-img2pdf/distinfo
+2-0py-img2pdf/COMMIT_MSG
+51-05 files

FreeBSD/src d7ed56blib/msun/tests nearbyint_test.c

lib/msun/tests: remove nearbyint test xfail on riscv

PR:             290099
MFC after:      3 days
Sponsored by:   The FreeBSD Foundation
DeltaFile
+1-1lib/msun/tests/nearbyint_test.c
+1-11 files

OpenBSD/ports eBj7JMUnet Makefile

   + bitmagnet
VersionDeltaFile
1.1470+1-0net/Makefile
+1-01 files

FreeBSD/src 555972cshare/man/man4 tun.4

tun.4: Canonicalize SYNOPSIS and AUTHORS

While here, s/PR#2411/NetBSD PR#2411/ in the comments for clarity.
I had to go to netbsd sources to get this information.

MFC after:      3 days
Event:          Berlin Hackathon 202609
DeltaFile
+6-15share/man/man4/tun.4
+6-151 files

OpenBSD/ports fK9sBIWnet/bitmagnet Makefile modules.inc, net/bitmagnet/pkg PLIST bitmagnet.rc

   Initial revision
VersionDeltaFile
1.1+2,882-0net/bitmagnet/distinfo
1.1+1,003-0net/bitmagnet/modules.inc
1.1+30-0net/bitmagnet/Makefile
1.1+19-0net/bitmagnet/pkg/README
1.1+12-0net/bitmagnet/pkg/bitmagnet.rc
1.1+3-0net/bitmagnet/pkg/PLIST
+3,949-08 files not shown
+3,951-014 files

FreeBSD/src ef3239cshare/man/man4 tws.4

tws.4: Canonicalize SYNOPSIS + nits

+ wrap some long lines
+ escape some ? wildcards
+ no macros in width specifiers
+ mention the speed in HARDWARE (bumps date)
+ use the hyperlink macro for... the defunct LSI website...
+ write out a symbol heavy error message format string in mdoc

MFC after:      3 days
Event:          Berlin Hackathon 202609
DeltaFile
+23-23share/man/man4/tws.4
+23-231 files

GhostBSD/ports 5ecd571deskutils/mate-utils Makefile, deskutils/mate-utils/files patch-baobab_src_baobab-utils.c

Merge branch 'main' into llvm-libs
DeltaFile
+81-0deskutils/mate-utils/files/patch-baobab_src_baobab-utils.c
+1-1deskutils/mate-utils/Makefile
+1-0mail/thunderbird/files/thunderbird.desktop.in
+1-0mail/thunderbird/Makefile
+1-0mail/thunderbird-esr/files/thunderbird.desktop.in
+1-0mail/thunderbird-esr/Makefile
+86-16 files

GhostBSD/ghostbsd dfa76c5stand/lua menu.lua core.lua

lualoader: Added a menu option for unmuting logs.

Added a dedicated menu option for toggling the `boot_menu` kenv variable
so that the user can easily toggle `boot_menu` off to see the kernel
messages.
Useful for debugging, etc.

Also moved the `core.recordDefaults()` out of the end of core.lua and put
it on top of menu.lua . When the function ran at the end of core.lua, it
did not capture the variables defined in loader configuration files.
This is a small bug in base.

Signed-off-by: b-aaz <b-aazbsd at proton.me>
DeltaFile
+19-6stand/lua/core.lua
+13-0stand/lua/menu.lua
+32-62 files

GhostBSD/ghostbsd 77844b8sys/dev/atkbdc psm.c

psm(4): Disabled IMEX side-buttons by default.

This is a workaround.
At least two hypervisors (QEMU and VBox) are detected to be using this
mouse model by default and they send superfluous side button key events
when using the scroll wheel.

Added a runtime rw sysctl that disables the side buttons on this
specific model to workaround this issue.

Signed-off-by: b-aaz <b-aazbsd at proton.me>
DeltaFile
+8-0sys/dev/atkbdc/psm.c
+8-01 files

GhostBSD/ghostbsd c15c04astand/lua menu.lua core.lua

lualoader: Added a menu option for unmuting logs.

Added a dedicated menu option for toggling the `boot_menu` kenv variable
so that the user can easily toggle `boot_menu` off to see the kernel
messages.
Useful for debugging, etc.

Also moved the `core.recordDefaults()` out of the end of core.lua and put
it on top of menu.lua . When the function ran at the end of core.lua, it
did not capture the variables defined in loader configuration files.
This is a small bug in base.

Signed-off-by: b-aaz <b-aazbsd at proton.me>
DeltaFile
+19-6stand/lua/core.lua
+13-0stand/lua/menu.lua
+32-62 files

GhostBSD/ghostbsd 3f412ffsys/dev/atkbdc psm.c

psm(4): Disabled IMEX side-buttons by default.

This is a workaround.
At least two hypervisors (QEMU and VBox) are detected to be using this
mouse model by default and they send superfluous side button key events
when using the scroll wheel.

Added a runtime rw sysctl that disables the side buttons on this
specific model to workaround this issue.

Signed-off-by: b-aaz <b-aazbsd at proton.me>
DeltaFile
+8-0sys/dev/atkbdc/psm.c
+8-01 files

LLVM/project 6143832clang/include/clang/Basic CodeGenOptions.h, llvm/include/llvm/Support CodeGen.h

WebAssembly: Introduce ExceptionHandling::EmscriptenEH model

Add a dedicated EmscriptenEH exception model so the control uses
the standard exception model control, instead of relying on a backend
specific cl::opt. This will later migrate to a module flag and
remove -enable-emscripten-cxx-exceptions

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+20-12llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp
+11-6llvm/lib/Target/WebAssembly/WebAssemblyLowerEmscriptenEHSjLj.cpp
+8-7llvm/include/llvm/Support/CodeGen.h
+5-8llvm/test/CodeGen/WebAssembly/eh-option-errors.ll
+12-1clang/include/clang/Basic/CodeGenOptions.h
+6-3llvm/lib/Target/WebAssembly/WebAssemblyCodeGenPassBuilder.cpp
+62-3714 files not shown
+94-5320 files

LLVM/project a22a048llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/CodeGen/ARM cortex-a57-misched-vfma.ll

DAGCombiner: Drop AllowFPOpFusion from visitFSUBForFMACombine

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+203-31llvm/test/CodeGen/ARM/cortex-a57-misched-vfma.ll
+3-3llvm/test/CodeGen/Hexagon/sffms.ll
+3-3llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+209-373 files

OpenBSD/ports XriDiYEaudio/nncmpp distinfo Makefile

   audio/nncmpp: update to 2.3.1
VersionDeltaFile
1.7+5-3audio/nncmpp/Makefile
1.6+2-2audio/nncmpp/distinfo
+7-52 files

LLVM/project 6d139a6llvm/lib/Target/LoongArch LoongArchMergeBaseOffset.cpp, llvm/lib/Target/RISCV RISCVMergeBaseOffset.cpp

[LoongArch][RISCV] Ignore debug uses when merging base offsets (#221117)

## Summary

Debug instructions are currently enumerated as ordinary users by the RISC-V
and LoongArch merge-base-offset passes. A `DBG_VALUE` can therefore veto an
otherwise valid fold and make `-g` add an ordinary address-calculation
instruction.

Use the non-debug instruction iterator for validation and rewriting, and make
affected debug values unavailable before changing the address represented by
the destination register. Also handle the case where the register has no
ordinary users, which becomes possible after debug uses are excluded.

The same change is applied to both targets because their implementations and
failure mode are equivalent.

## Testing


    [6 lines not shown]
DeltaFile
+42-0llvm/test/CodeGen/LoongArch/merge-base-offset-debug-only.mir
+40-0llvm/test/CodeGen/RISCV/merge-base-offset-debug-only.mir
+37-0llvm/test/CodeGen/LoongArch/merge-base-offset-debug-use.ll
+37-0llvm/test/CodeGen/RISCV/merge-base-offset-debug-use.ll
+9-2llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
+9-2llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
+174-46 files

FreeBSD/ports e38e7abmisc/hwdata Makefile distinfo

misc/hwdata: Update to 0.411

Reported by:    portscout!
DeltaFile
+3-3misc/hwdata/distinfo
+1-1misc/hwdata/Makefile
+4-42 files

FreeBSD/ports e2a4eb6sysutils/cardano-cli Makefile Makefile.cabal

sysutils/cardano-cli: Update to 11.2.3.1

Reported by:    portscout!
DeltaFile
+17-13sysutils/cardano-cli/distinfo
+7-7sysutils/cardano-cli/Makefile.cabal
+1-1sysutils/cardano-cli/Makefile
+25-213 files

LLVM/project cd9a5fellvm/test/CodeGen/AMDGPU madak.ll, llvm/test/CodeGen/LoongArch float-fma.ll double-fma.ll

DAGCombiner: Drop AllowFPOpFusion from visitFADDForFMACombine

Rewrites fp-dp3.ll to use flags on individual patterns. It weirdly
used different triples for the fp-contract on and off cases, seemingly
an artifact of the ARM64 and AArch64 merge.

fp-contract.cu is essentially a bugfix, the local fp contract(on) pragma
wins over the global flag now.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+352-1,116llvm/test/CodeGen/LoongArch/lasx/fma-v8f32.ll
+352-1,116llvm/test/CodeGen/LoongArch/lasx/fma-v4f64.ll
+260-872llvm/test/CodeGen/LoongArch/float-fma.ll
+260-872llvm/test/CodeGen/LoongArch/double-fma.ll
+388-471llvm/test/CodeGen/AMDGPU/madak.ll
+178-564llvm/test/CodeGen/LoongArch/lsx/fma-v4f32.ll
+1,790-5,01117 files not shown
+2,485-6,18223 files

OpenBSD/ports JSO8OvHdevel/codex distinfo Makefile, devel/codex/patches patch-codex-rs_tui_src_app_agents_overview_rs patch-codex-rs_skills_src_invocation_rs

   devel/codex: update to 0.153.4

   I also drop patches to replace current_exe() because rust-1.98.1
   uses getexecpath() for it.
VersionDeltaFile
1.50+1-13devel/codex/Makefile
1.4+0-10devel/codex/patches/patch-codex-rs_cli_src_main_rs
1.48+2-2devel/codex/distinfo
1.4+0-0devel/codex/patches/patch-codex-rs_tui_src_app_agents_overview_rs
1.3+0-0devel/codex/patches/patch-codex-rs_skills_src_invocation_rs
1.4+0-0devel/codex/patches/patch-codex-rs_install-context_src_lib_rs
+3-257 files not shown
+3-2513 files

LLVM/project 24a7afbllvm/test/CodeGen/X86 pdep-vector-512.ll pdep-vector-128.ll

[X86] LowerCLMUL - improve vXi32 codegen (#221289)

Shuffle combining is struggling to handle the mixture of vector
unrolling, truncations and optimal use of PCLMULQDQ swizzles, this patch
gives us more optimal lowering direct instead of relying on fixup.

Use the PCLMULQDQ lo/hi control immediate to handle anyext i64 element
evaluation - along with shifting the upper elements down to the lowest
bits of the i64 in parallel

Use UNPACK build vector pattern to avoid FPR<->GPR traffic

CLMULH needs to be handled in a future patch, and vXi16 /might/ be worth
handling as well.
DeltaFile
+646-759llvm/test/CodeGen/X86/clmul-vector.ll
+354-446llvm/test/CodeGen/X86/znver-pdep.ll
+330-435llvm/test/CodeGen/X86/clmul-vector-256.ll
+287-436llvm/test/CodeGen/X86/pext-vector-128.ll
+279-428llvm/test/CodeGen/X86/pdep-vector-128.ll
+141-302llvm/test/CodeGen/X86/pdep-vector-512.ll
+2,037-2,8066 files not shown
+2,634-3,84212 files

FreeBSD/ports b8614absysutils/f3 distinfo Makefile

sysutils/f3: Update 8.0 => 10.0, take maintainership

Upstream moved sources to src/, build output to build/, the man page to
man/ and the helper scripts to scripts/, adapt do-install accordingly.

While here, switch to DISTVERSION and pet portclippy.

Changelog:
https://github.com/AltraMayor/f3/blob/v10.0/changelog

PR:             298206
Approved by:    osa, vvd (Mentors, implicit)
DeltaFile
+13-11sysutils/f3/Makefile
+3-3sysutils/f3/distinfo
+16-142 files

LLVM/project 5cba2fcclang/docs ReleaseNotes.md, clang/lib/Sema SemaAvailability.cpp

[Clang] Fix Crash in Sema::DiagnoseUnguardedAvailability On 'if' With No Condition (#220004)

**Problem**
C++ 23 introduced consteval expressions which allows `if` statements to
have no condition:
```
if consteval {
}
```
`DiagnoseUnguardedAvailability::TraverseIfStmt` Assumed `If->getCond()`
would never return a `nullptr`, causing a `nullptr` dereference.

Fixes #219948
DeltaFile
+10-0clang/test/SemaCXX/attr-availability.cpp
+5-1clang/lib/Sema/SemaAvailability.cpp
+2-0clang/docs/ReleaseNotes.md
+17-13 files

FreeBSD/ports 9de74e4www/py-django_statici18n Makefile distinfo

www/py-django_statici18n: Update 2.7.1 => 2.8.0

Upstream requires Django<6.2 so change the RUN_DEPENDS accordingly.

Changelog:
https://github.com/zyegfryed/django-statici18n/blob/v2.8.0/docs/changelog.rst

PR:             298210
Approved by:    osa, vvd (Mentors, implicit)
DeltaFile
+3-3www/py-django_statici18n/distinfo
+2-2www/py-django_statici18n/Makefile
+5-52 files