LLVM/project c6b15d3 — lld/test/wasm check-arch-32-in-64.test check-arch-64-in-32.test, lld/wasm InputFiles.cpp

[lld][WebAssembly] Fix error message when linking wasm64 file with -mwasm32 (#227091)

When `-mwasm32` is explicitly passed and a wasm64 object file is linked,
the error message previously stated:
"wasm32 object file can't be linked in wasm64 mode". Fix this to report
that the wasm64 object file cannot be linked in wasm32 mode.
DeltaFile
+4-2lld/wasm/InputFiles.cpp
+4-1lld/test/wasm/check-arch-64-in-32.test
+1-1lld/test/wasm/check-arch-32-in-64.test
+9-43 files

LLVM/project 64907b6 — libcxxabi/src cxa_personality.cpp, libunwind/include unwind_wasm.h

fix Wasm exceptions + coop threading + shared libraries (#222747)

Prior to this commit, the combination of Wasm exception handling,
cooperative multithreading, and shared libraries was broken.
Specifically, the code generation in `WasmEHPrepare.cpp` involved
direct, cross-library access to `libunwind.so`'s thread-local
`__wasm_lpad_context` variable. However, the ABI used for cooperative
multithreading does not support cross-library access to thread-local
variables.

The solution used here is to add a new `_Unwind_GetWasmLPadContext`
function to `libunwind.so` and use that to get address of the
`__wasm_lpad_context` for the current thread, both in the code generated
by `WasmEHPrepare.cpp` and in the `__gxx_wasm_personality_v0` function
defined in `cxa_personality.cpp`. I've used this strategy
unconditionally for all targets, regardless of whether cooperative
multithreading and/or position-independent are enabled. If desired (e.g.
for performance or code complexity reasons), I could make it conditional
on both of those features being enabled and fall back to using

    [2 lines not shown]
DeltaFile
+29-27llvm/lib/CodeGen/WasmEHPrepare.cpp
+8-7llvm/test/CodeGen/WebAssembly/eh-lsda.ll
+8-6llvm/test/CodeGen/WebAssembly/wasm-eh-prepare.ll
+5-3libcxxabi/src/cxa_personality.cpp
+6-2libunwind/src/Unwind-wasm.c
+4-3libunwind/include/unwind_wasm.h
+60-483 files not shown
+67-519 files

LLVM/project c7bed2c — llvm/lib/Target/AMDGPU VOP3PInstructions.td, llvm/test/CodeGen/AMDGPU frem.ll mad-mix-lo-bf16.ll

[AMDGPU] Fold fpround of fadd and fsub into v_mad/fma_mixlo and mixhi

MadFmaMixFP32Pats turns (fadd x, y) into (fma x, 1.0, y) and (fsub x, y)
into (fma (-y), 1.0, x) so the mix instructions absorb the operation along
with the f16 or bf16 source modifiers. MadFmaMixFP16Pats and
MadFmaMixFP16Pats_t16 only did this for fmul, so a rounded result still
needed a separate convert for a rounding the mix instructions perform
themselves.

Unlike the f32 patterns these do not require an operand to be an fpextend
of an f16, since an fpround on the result always removes the convert. The
rewrite is exact because the mix instructions round the f32 result again
when they write the 16-bit destination, so it stays f32_to_f16(fma(x, 1.0,
y)).

Assisted-by: Claude Code Opus 5
DeltaFile
+192-285llvm/test/CodeGen/AMDGPU/GlobalISel/fdiv.f16.ll
+61-311llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
+62-145llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
+55-36llvm/test/CodeGen/AMDGPU/mad-mix-lo-bf16.ll
+26-52llvm/test/CodeGen/AMDGPU/frem.ll
+70-0llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+466-8294 files not shown
+499-88510 files

LLVM/project 5c881d4 — llvm/include/llvm/ProfileData SampleProf.h, llvm/lib/ProfileData SampleProf.cpp SampleProfReader.cpp

[ProfileData] Only keep module functions when reading ProfileSymbolList

When a sample profile is loaded for a module (SampleProfileLoader), the
profile symbol list is only ever queried for functions of that module:
`PSL->contains(F.getName())` in SampleProfileLoader and
`PSL->contains(CanonFName)` in SampleProfileMatcher. Yet the string-based
reader inserts every symbol of the profiled binary into a DenseSet, in every
compile and every ThinLTO backend that loads the profile.

When the reader has a module, build a small set of that module's function
names (raw and canonical) and only add matching list entries. The list is
still scanned, but nothing outside the module is inserted, so there is no
large hash table to build. Readers without a module (llvm-profdata) still
load the full list. The MD5 symbol list is unaffected.

In a fleet-wide CPU profile of a production clang,
`ProfileSymbolList::read` accounted for 1.7% of all clang cycles and 10% of
ThinLTO backend cycles.


    [11 lines not shown]
DeltaFile
+71-0llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-symbol-list.ll
+10-6llvm/lib/ProfileData/SampleProf.cpp
+15-1llvm/lib/ProfileData/SampleProfReader.cpp
+3-1llvm/include/llvm/ProfileData/SampleProf.h
+3-0llvm/test/Transforms/SampleProfile/Inputs/pseudo-probe-stale-profile-symbol-list.text
+102-85 files

FreeBSD/src 334e874 — share/man/man4 wsp.4

wsp.4: Canonicalize SYNOPSIS + tag SPDX

MFC after:              3 days
Reviewed by:            wulf
Differential Revision:  https://reviews.freebsd.org/D59257
DeltaFile
+8-12share/man/man4/wsp.4
+8-121 files

FreeBSD/src 3a542d8 — share/man/man4 uep.4

uep.4: Canonicalize SYNOPSIS, KERNEL CONFIGURATION

MFC after:              3 days
Reviewed by:            glebius, wulf
Differential Revision:  https://reviews.freebsd.org/D59869
DeltaFile
+19-18share/man/man4/uep.4
+19-181 files

LLVM/project c87ad07 — llvm/lib/Transforms/Vectorize/SLPVectorizer SLPMemoryUtils.cpp

[SLP][NFC]Fix build for MSVC compiler, NFC

Reported in https://lab.llvm.org/buildbot/#/builders/46/builds/42017

Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/227129
DeltaFile
+3-3llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPMemoryUtils.cpp
+3-31 files

LLVM/project 9e09945 — llvm/lib/Transforms/Vectorize/SLPVectorizer SLPMemoryUtils.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+3-3llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPMemoryUtils.cpp
+3-31 files

LLVM/project c021bb4 —

[gn] bump deployment target to macOS 13 (#227124)

macOS 13 is four years old by now.

This has the effect that lld starts defaulting to chained fixups with
this. Chained fixups reduces `clang --version` from 4 ms to 3.2 ms. (Not
that it matters.)

(Without #227120, chained fixups reduce `clang --version` from 12.5 ms
to 10.9 ms.)

No behavior change.
DeltaFile
+0-00 files

LLVM/project 4ca8a56 — clang/lib/CodeGen CGObjCRuntime.cpp, clang/test/CodeGenObjC exceptions-seh.m

[ObjC][SEH] Fix clang crash when using finally statements (#176779)

When targeting a platform that does not have funclet-based EH, we push
the finally cleanup (normal edge) and catchall (unwind edge) onto the
EHStack _before_ pushing all catch handlers. The try statement is then
emitted and catch handlers popped from EHStack. Last, the finally
cleanup is popped from EHStack.

For funclet-based EH, we outline and push the finally funclet (of type
`NormalAndEHCleanup`) onto the EHStack _after_ pushing the catch
handlers and never pop it. This results in a crash during codegen when
we try to emit the catch handlers. Not popping the finally cleanup from
the EHStack results in incorrect calls to cleanup handlers in nested
try/catch/finally statements.

I fixed the two issues by:
1. Pushing the finally cleanup first, and
2. Popping it at the end of `CGObjCRuntime::EmitTryCatchStmt`.

Fixes #51899
DeltaFile
+53-0clang/test/CodeGenObjC/exceptions-seh.m
+27-2clang/lib/CodeGen/CGObjCRuntime.cpp
+80-22 files

LLVM/project 6ab3be2 — llvm/utils/gn/build mac_sdk.gni

[gn] bump deployment target to macOS 13 (#227124)

macOS 13 is four years old by now.

This has the effect that lld starts defaulting to chained fixups with
this. Chained fixups reduces `clang --version` from 4 ms to 3.2 ms. (Not
that it matters.)

(Without #227120, chained fixups reduce `clang --version` from 12.5 ms
to 10.9 ms.)

No behavior change.
DeltaFile
+1-1llvm/utils/gn/build/mac_sdk.gni
+1-11 files

LLVM/project a8debc5 — mlir/include/mlir/Target/Cpp CppEmitter.h

Add registerToCppTranslation to CppEmmitter.h (#226337)

Currently if one wants to register `mlir-to-cpp` out of tree, they must
include `mlir/InitAllTranslations.h` and depend transitively on all
translation targets (in bazel, `@llvm-project//mlir:AllTranslations`).

This change adds the registration declaration to `CppEmitter.h` so that
one can depend just on the `MLIRTargetCpp` target (or
`@llvm-project//mlir:TargetCpp` in bazel).

This matches the organization of the SMTLib codegen registration in
`mlir/include/mlir/Target/SMTLIB/ExportSMTLIB.h` (though some other
targets like `IRDLToCpp` do it differently).
DeltaFile
+4-0mlir/include/mlir/Target/Cpp/CppEmitter.h
+4-01 files

LLVM/project 285a865 — llvm/utils/gn/build BUILDCONFIG.gn BUILD.gn, llvm/utils/gn/secondary/clang/tools/clang-repl BUILD.gn

[gn] Build executables without exported symbols on macOS (#227120)

Speeds up `clang --version` from 12 ms to 4 ms on my system. 8 ms faster
startup isn't a lot, but there's also no reason not to do it.

No intended behavior change.
DeltaFile
+7-2llvm/utils/gn/secondary/clang/tools/clang-repl/BUILD.gn
+7-0llvm/utils/gn/build/BUILD.gn
+3-1llvm/utils/gn/build/BUILDCONFIG.gn
+4-0llvm/utils/gn/secondary/llvm/unittests/Passes/Plugins/BUILD.gn
+4-0llvm/utils/gn/secondary/llvm/tools/llvm-jitlink/BUILD.gn
+4-0llvm/utils/gn/secondary/llvm/tools/lli/BUILD.gn
+29-38 files not shown
+41-414 files

FreeBSD/ports 5449149 — misc/gollama Makefile distinfo

misc/gollama: update 2.0.5 → 2.0.6
DeltaFile
+5-135misc/gollama/distinfo
+2-80misc/gollama/Makefile
+7-2152 files

LLVM/project a69848d — llvm/utils profcheck-xfail.txt

[profcheck] Exclude find-first-byte-nested.ll (#227121)

We only fixed x86 for LoopIdiom. PR #225576 added a test that looks like
it's just exposing existing propagation issues.
DeltaFile
+1-0llvm/utils/profcheck-xfail.txt
+1-01 files

FreeBSD/doc 4adfd4a — website/themes/beastie/layouts/_partials site-header.html site-footer.html

website: Revive donations page

Restore donations links on the project website to the projects donations
page. These links were replaced in the foundation sponsored website
refresh with links to the foundations donations page.

The very first link on this page is to the Foundations donations, but
importantly, it explains where this money actually goes, which has many
common misconceptions, such as the cluster. There are also other links
on the page, such as hardware donations, which we actually need right
now for the aging cluster.

Event:                  EuroBSDcon 2026
Reviewed by:            adrian, bapt, gahr, kevans, obiwac, philip,
Reviewed by:            vishwin, wosch,
Reviewed by:            Antranig Vartanian <antranigv at freebsd.am>,
Reviewed by:            Lukas Engelhardt <lukas.engelhardt at gmx.de>
Differential Revision:  https://reviews.freebsd.org/D59505
DeltaFile
+1-1website/themes/beastie/layouts/_partials/site-header.html
+1-1website/themes/beastie/layouts/_partials/site-footer.html
+2-22 files

LLVM/project f9d9b42 — clang/lib/CodeGen BackendConsumer.h CodeGenAction.cpp, clang/lib/Interpreter Interpreter.cpp DeviceOffload.h

Revert "releand "[clang-repl] Implement IncrementalHIPDeviceParser for HIP de…"

This reverts commit 5c20fe98552af8fdbcd7ce714c1fad1f1e731a65.
DeltaFile
+8-209clang/lib/Interpreter/DeviceOffload.cpp
+9-55clang/lib/Interpreter/DeviceOffload.h
+0-50clang/unittests/Basic/TargetIDTest.cpp
+0-9clang/lib/CodeGen/CodeGenAction.cpp
+0-8clang/lib/CodeGen/BackendConsumer.h
+6-1clang/lib/Interpreter/Interpreter.cpp
+23-3324 files not shown
+25-34210 files

LLVM/project b28ced4 — llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/CodeGen/AMDGPU bitinsert-bitextract.ll

Rebase

Created using spr 1.3.7
DeltaFile
+4,294-0llvm/test/CodeGen/RISCV/bitinsert-bitextract.ll
+3,321-0llvm/test/CodeGen/ARM/bitinsert-bitextract.ll
+1,989-0llvm/test/CodeGen/RISCV/bitinsert-bitextract-fp.ll
+1,976-0llvm/test/CodeGen/AMDGPU/bitinsert-bitextract.ll
+1,011-908llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+1,552-0llvm/test/CodeGen/ARM/bitinsert-bitextract-fp.ll
+14,143-9081,794 files not shown
+66,080-18,8631,800 files

FreeBSD/ports 159cf85 — net/frr9 Makefile pkg-plist, net/frr9/files patch-configure.ac frr.in

net/frr9: Install daemons in lib/frr, fix SNMP build and rc.d restart

Daemons move from ${PREFIX}/sbin to ${PREFIX}/lib/frr, matching the Linux
packages and net/frr10. Only vtysh and frr-reload stay in bin/ and sbin/.
This avoids filename collision with net/openbgpd*, net/pimd, net/quagga, etc.

Fix the SNMP build.

Backport frr10's rc.d fixes: a bare "service frr restart" restarted watchfrr
only, leaving the daemons it supervises untouched.
DeltaFile
+26-26net/frr9/pkg-plist
+27-9net/frr9/files/frr.in
+25-2net/frr9/files/patch-configure.ac
+4-3net/frr9/Makefile
+82-404 files

FreeBSD/ports 00a9983 — x11-themes/xfce-icons-elementary Makefile distinfo, x11-themes/xfce-icons-elementary/files patch-Makefile.in

x11-themes/xfce-icons-elementary: Update to 0.23
DeltaFile
+32-0x11-themes/xfce-icons-elementary/pkg-plist
+3-3x11-themes/xfce-icons-elementary/distinfo
+2-2x11-themes/xfce-icons-elementary/files/patch-Makefile.in
+1-1x11-themes/xfce-icons-elementary/Makefile
+38-64 files

FreeBSD/ports f038044 — finance/gnucash Makefile distinfo

finance/gnucash: Update to 5.17
DeltaFile
+3-3finance/gnucash/distinfo
+1-2finance/gnucash/Makefile
+4-52 files

FreeBSD/ports 7d411b1 — mail/mailpit Makefile distinfo, mail/mailpit/files patch-package-lock.json

mail/mailpit: Update to 1.31.3
DeltaFile
+375-1,071mail/mailpit/files/patch-package-lock.json
+7-7mail/mailpit/distinfo
+3-3mail/mailpit/Makefile
+385-1,0813 files

FreeBSD/ports b7216a8 — finance/gnucash-docs Makefile distinfo

finance/gnucash-docs: Update to 5.17
DeltaFile
+3-3finance/gnucash-docs/distinfo
+1-1finance/gnucash-docs/Makefile
+4-42 files

FreeBSD/ports 2f422e6 — devel/git Makefile pkg-plist

devel/git: Update to 2.56.0

Sponsored by:   Rubicon Communications, LLC ("Netgate")
DeltaFile
+7-7devel/git/distinfo
+5-0devel/git/pkg-plist
+1-1devel/git/Makefile
+13-83 files

LLVM/project c5f99a1 — clang/test/CodeGen/X86 sse41-builtins-constrained.c sse41-builtins.c

[clang][X86] Fix round builtins tests (#226708)

Fixed minor issues in round builtins tests. Noticed them while working on #215787.
DeltaFile
+9-9clang/test/CodeGen/X86/sse41-builtins.c
+6-6clang/test/CodeGen/X86/sse41-builtins-constrained.c
+15-152 files

LLVM/project 650a674 — clang/test/CIR/CodeGen pragma-fenv_access.c, llvm/include/llvm/ADT DenseMap.h

Rebase

Created using spr 1.3.7
DeltaFile
+977-870llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+1,308-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.scale.pk32.gfx13.ll
+339-431llvm/include/llvm/ADT/DenseMap.h
+367-367clang/test/CIR/CodeGen/pragma-fenv_access.c
+696-0llvm/test/Transforms/SLPVectorizer/X86/strength-reducible-address.ll
+694-0llvm/test/CodeGen/AMDGPU/rewrite-vgpr-mfma-to-agpr-spill-multi-store-codegen.ll
+4,381-1,668752 files not shown
+19,313-6,537758 files

LLVM/project 9146ac4 — llvm/lib/Target/AMDGPU GCNHazardRecognizer.h GCNHazardRecognizer.cpp, llvm/test/CodeGen/AMDGPU vperm-pk16-postmisched-hazard.mir vperm-pk16-sched-softcost.mir

[AMDGPU] Prefer a safe V_PERM_PK16 follower in the scheduler (gfx1250/gfx1251)

Stacked on the post-RA V_PERM_PK16 hazard fixup. V_PERM_PK16 must be
immediately followed by a "safe" instruction (see
SIInstrInfo::isVPermPk16SafeInstr) or the post-RA fixup has to insert a
forced-EXEC V_NOP. Teach GCNHazardRecognizer to bias a safe follower into
the slot right after a V_PERM_PK16 so that V_NOP can be avoided.

Assisted-by: Opus 4.8 Medium
DeltaFile
+56-0llvm/test/CodeGen/AMDGPU/vperm-pk16-sched-softcost.mir
+46-3llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
+33-0llvm/test/CodeGen/AMDGPU/vperm-pk16-postmisched-hazard.mir
+21-0llvm/lib/Target/AMDGPU/GCNHazardRecognizer.h
+156-34 files

FreeBSD/doc 08ebd13 — website/themes/beastie/i18n en.toml, website/themes/beastie/layouts home.html

website: Restore "The Power to Serve" on homepage

Bring website back into congruence with branding guidelines.

Event:          EuroBSDcon 2026
Fixes:          c9c518d9dbb7 ("New design for the FreeBSD website")
Reviewed by:    adrian, allanjude, bapt, bcr, bnovkov, carlavilla,
Reviewed by:    dbaio, decke, des, dsl, fernape, glebius, gnn, jfree,
Reviewed by:    jhibbits, jkoshy, jlduran, jwb, kbowling, kevans, kfv,
Reviewed by:    kibab, kp, mat, mikael, netchild, ngie, obiwac, oh,
Reviewed by:    olce, philip, rene, rhurlin, seuros, siva, vexeduxr,
Reviewed by:    vishwin, wosch, zlei,
Reviewed by:    Antranig Vartanian <antranigv at freebsd.am>,
Reviewed by:    Lukas Engelhardt <lukas.engelhardt at gmx.de>,
Reviewed by:    Ronald Klop <ronald at FreeBSD.org>
Differential Revision:  https://reviews.freebsd.org/D59589
DeltaFile
+2-8website/themes/beastie/i18n/en.toml
+1-1website/themes/beastie/layouts/home.html
+3-92 files

LLVM/project dc306a2 — clang/lib/CodeGen CGExprScalar.cpp, clang/test/CodeGenHLSL/BasicFeatures VectorElementwiseCast.hlsl MatrixElementTypeCast.hlsl

[HLSL] Build elementwise cast results from poison (#225591)

I noticed this unnecessary alloca while doing this pr:
https://github.com/llvm/llvm-project/pull/225519

The change is to initialize vector and matrix elementwise cast results
with poison instead of loading uninitialized temporary storage.

We do this because every result element is overwritten before use,
making the temporary allocation and load unnecessary.
DeltaFile
+77-93clang/test/CodeGenHLSL/BasicFeatures/MatrixElementTypeCast.hlsl
+7-21clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
+2-4clang/lib/CodeGen/CGExprScalar.cpp
+86-1183 files

FreeBSD/ports db1ab29 — multimedia/podcastdl distinfo Makefile

multimedia/podcastdl: upgrade 0.3.3 -> 0.4.0

Changelog: https://github.com/rosorio/podcast-dl/releases/tag/v0.4.0

Also fix CMake 4 build

PR:             298888
Reported by:    arrowd
DeltaFile
+5-3multimedia/podcastdl/Makefile
+3-2multimedia/podcastdl/distinfo
+8-52 files