LLVM/project 57ef7d5 — clang/docs ReleaseNotes.md, clang/lib/Sema SemaTemplateDeduction.cpp

[Clang] Fix pack vs non-pack tie breaker. (#229024)

The tentative resolution for CWG1432 was not consistent for the
resolution of CWG1395.

This fixes the crash reported in #228870.

Additionally, this update the status of related core issues and papers
touching the same wording. Clang was never affected because we never
fully implemented CWG1395.

Fixes #228870
Fixes #27357

Assisted-by: Opus 5.5
DeltaFile
+17-0clang/test/SemaTemplate/partial-order.cpp
+12-4clang/lib/Sema/SemaTemplateDeduction.cpp
+13-0clang/test/SemaCXX/cxx2d-pack-indexing-template.cpp
+13-0clang/test/CXX/drs/cwg18xx.cpp
+4-0clang/test/CXX/drs/cwg13xx.cpp
+4-0clang/docs/ReleaseNotes.md
+63-42 files not shown
+65-68 files

LLVM/project bd55ada — llvm/test/Transforms/SLPVectorizer/RISCV reversed-widened-strided-load.ll

[SLP][NFC]Add a test with the incorrect vectorization, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/230488
DeltaFile
+79-0llvm/test/Transforms/SLPVectorizer/RISCV/reversed-widened-strided-load.ll
+79-01 files

LLVM/project 2acc171 — llvm/lib/Target/AArch64 AArch64TargetTransformInfo.cpp, llvm/test/Analysis/CostModel/AArch64 sve-fptoi.ll sve-bitcast.ll

[AArch64][CostModel] Consider some nxv1 casts as illegal (#230153)

Codegen does not support all kinds of casts for these types.

This patch adds missing costmodel and codedgen tests.
DeltaFile
+164-0llvm/test/CodeGen/AArch64/sve-sext-zext.ll
+52-0llvm/test/CodeGen/AArch64/sve-bitcast.ll
+51-0llvm/test/Analysis/CostModel/AArch64/sve-itofp.ll
+10-6llvm/test/Analysis/CostModel/AArch64/sve-fptoi.ll
+16-0llvm/test/Analysis/CostModel/AArch64/sve-bitcast.ll
+16-0llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
+309-62 files not shown
+319-68 files

LLVM/project 187dec7 — llvm/test/CodeGen/X86 mask-beforefirst.ll

Don't use mask types in arguments or return
DeltaFile
+207-180llvm/test/CodeGen/X86/mask-beforefirst.ll
+207-1801 files

LLVM/project ef05fab — flang-rt CMakeLists.txt, libclc/cmake/modules AddLibclc.cmake

[flang-rt][libclc] Install multilib variants in their own directory (#230251)

A multilib runtimes build sets <PROJECT>_LIBDIR_SUBDIR. flang-rt
libraries and libclc bitcode were installed with the same name as the
base library. This doesn't really work for `libclc` because the clang
driver doesn't look through multilibs currently, but it should still go
somewhere else so it doesn't clobber.
DeltaFile
+6-1libclc/cmake/modules/AddLibclc.cmake
+7-0flang-rt/CMakeLists.txt
+13-12 files

LLVM/project 170b564 — offload/include PluginManager.h, offload/include/OpenMP OffloadRTL.h

[offload][nfc] Pull OpenMP's InteropTbl out of PluginManager

PluginManager is shared with OpenACC, so the OpenMP interop table moves
to OmpPluginManager in libomptarget. The OpenMP PM is defined there, and
interop cleanup is registered from initRuntime.
DeltaFile
+12-4offload/libomptarget/OffloadRTL.cpp
+10-1offload/include/OpenMP/OffloadRTL.h
+0-7offload/libompaccsupport/PluginManager.cpp
+0-5offload/include/PluginManager.h
+22-174 files

LLVM/project 3530621 — offload/include PluginManager.h device.h, offload/include/OpenMP OffloadRTL.h

[offload][nfc] Use the PluginManager instance instead of the global PM

PluginManager methods referred to the global PM pointer instead of the
object they were called on. DeviceTy now carries the PluginManager that
created it. Move the PM definition and the RTL atomics to OffloadRTL.
DeltaFile
+27-28offload/libompaccsupport/PluginManager.cpp
+24-0offload/include/OpenMP/OffloadRTL.h
+4-4offload/libompaccsupport/Mapping.cpp
+4-1offload/include/device.h
+0-4offload/include/PluginManager.h
+2-2offload/libompaccsupport/device.cpp
+61-395 files not shown
+67-4211 files

LLVM/project f8470a9 — clang/include/clang/CIR/Dialect/IR CIRTypeConstraints.td CIROps.td, clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVM.cpp

[CIR][Matrix] Implement vector splat/add for CIR lowering (#230185)

This patch extends cir.add/cir.fadd to work on matrixes of int/float,
and lower correctly to add/fadd in LLVMIR.

It also extends cir.vec.splat to work with a matrix as well, so we could
get mixed-matrix-int/float operations to work. I considered making this
its own operation, however it is so nearly identical to cir.vec.splat
(and will become more so as we extend matrix) that it didn't seem
valuable to consider it separately, particularly as they lower to the
same things in LLVM.

One limitation: Splat is sometimes constant-folded during simplify.
However, we don't yet have a constant attribute type for a matrix, so
this is left for future work.
DeltaFile
+207-0clang/test/CIR/CodeGen/matrix-add.c
+70-0clang/test/CIR/Lowering/matrix-add.cir
+52-0clang/test/CIR/IR/invalid-matrix.cir
+23-21clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+23-13clang/include/clang/CIR/Dialect/IR/CIROps.td
+29-1clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
+404-354 files not shown
+461-3910 files

LLVM/project 3c109cf — llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV/rvv fixed-vectors-mask-beforefirst.ll

[RISCV] Custom lower fixed length mask_beforefirst

Rather than add a new _VL node, just put it in a scalable container with VLMAX so it gets the scalable vmsbf.m pattern. RISCVVLOptimizer can optimize the VL of it based on its users.
DeltaFile
+114-103llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-beforefirst.ll
+5-2llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+119-1052 files

FreeBSD/ports 4de0ea4 — science/hpddm Makefile distinfo

science/hpddm: upgrade to v2.4.1

Enables a 160-column limit for clang-format.
DeltaFile
+3-3science/hpddm/distinfo
+1-1science/hpddm/Makefile
+4-42 files

LLVM/project 07dc962 — llvm/docs LangRef.md ReleaseNotes.md, llvm/include/llvm/IR IntrinsicsX86.td

[X86] Declare memory effects for the AMX intrinsics (#229025)

The AMX intrinsics that name tile registers (`llvm.x86.tileloadd64`,
`llvm.x86.tdpbssd` and the rest of the non-`_internal` forms) have no
memory attributes, so to the optimizer every call may read and write any
memory. A loop-invariant value that lives in memory is reloaded after
every tile instruction, a store isn't forwarded past a tile load, and
two reads of the same tile row aren't merged.

This PR models the tile registers and the tile configuration as
`target_mem0`, the way AArch64 models SME's ZT0 and ZA
(`target_mem0`/`target_mem1`; `SME_Load_Intrinsic` is
`[IntrRead<[ArgMem, ZA]>, IntrWrite<[ZA]>]`), and declares what each
intrinsic actually does:

| Intrinsics | Reads | Writes |
|---|---|---|
| `tileloadd64`, `tileloaddt164`, `tileloaddrs64`, `tileloaddrst164` |
pointer argument, tile state | tile state |

    [63 lines not shown]
DeltaFile
+115-74llvm/include/llvm/IR/IntrinsicsX86.td
+130-0llvm/test/Transforms/LICM/X86/amx-memory-effects.ll
+86-0llvm/test/Transforms/EarlyCSE/X86/amx-tile-state.ll
+6-0llvm/docs/ReleaseNotes.md
+2-1llvm/docs/LangRef.md
+2-0llvm/test/Transforms/LICM/X86/lit.local.cfg
+341-756 files

OpenBSD/ports hygAd3b — devel/cargo-insta Makefile crates.inc

   Update to cargo-insta 1.49.0

   https://github.com/mitsuhiko/insta/releases/tag/1.49.0
VersionDeltaFile
1.15+22-46devel/cargo-insta/distinfo
1.6+10-22devel/cargo-insta/crates.inc
1.15+2-2devel/cargo-insta/Makefile
+34-703 files

FreeBSD/ports 67b8ec5 — lang/gleam Makefile.crates Makefile

lang/gleam: Update to 1.19.1

- https://github.com/gleam-lang/gleam/releases/tag/v1.19.1
- drop windows-only static_vcruntime from crate list

Reported by:  portscout
Sponsored by: SkunkWerks, GmbH
DeltaFile
+3-5lang/gleam/distinfo
+1-1lang/gleam/Makefile
+0-1lang/gleam/Makefile.crates
+4-73 files

FreeBSD/ports ffcb013 — devel/buildkite-cli Makefile distinfo

devel/buildkite-cli: Update to 3.60.0

- https://github.com/buildkite/cli/releases/tag/v3.60.0

Reported by:  portscout
Sponsored by: SkunkWerks, GmbH
DeltaFile
+7-7devel/buildkite-cli/distinfo
+1-2devel/buildkite-cli/Makefile
+8-92 files

FreeBSD/ports a8fe902 — textproc Makefile, textproc/patdiff pkg-descr distinfo

textproc/patdiff:  NEW PORT - diff for the discerning developer

Patdiff is an OCaml implementation of Bram Cohen's patience difference
algorithm, with a few extra conveniences for comparing code and config
files:

- gorgeous coloured patience diffs with word-level refinements
- outputs plain ASCII, ANSI color codes, or HTML
- optional semantic diffing of numbers
- good word-level diffing out of the box
- recursive diffing of directories
- extensively configurable output (markers, colors, location format, context)
- whitespace-aware diffing

Sponsored by:   SkunkWerks, GmbH
DeltaFile
+102-0textproc/patdiff/Makefile
+101-0textproc/patdiff/distinfo
+34-0textproc/patdiff/files/patch-vendor_core__unix_linux__ext_src_linux__ext__stubs.c
+14-0textproc/patdiff/pkg-descr
+1-0textproc/Makefile
+252-05 files

FreeBSD/ports c1fbc73 — sysutils/py-mitogen Makefile distinfo

sysutils/py-mitogen: Update to 0.3.54

- https://github.com/mitogen-hq/mitogen/releases/tag/v0.3.54

Reported by:  portscout
Sponsored by: SkunkWerks, GmbH
DeltaFile
+3-3sysutils/py-mitogen/distinfo
+1-1sysutils/py-mitogen/Makefile
+4-42 files

FreeBSD/ports 9da1b58 — dns/p5-Zonemaster-Engine pkg-plist distinfo

dns/p5-Zonemaster-Engine: Update to 9.0.1

- add new CBOR::XS run dependency, require Zonemaster::LDNS 5.1.0
- saved packet serialization format has changed
- removes deprecated profile properties resolver.defaults.recurse,
  resolver.defaults.igntc and resolver.defaults.usevc

ChangeLog: https://github.com/zonemaster/zonemaster-engine/blob/master/Changes
ChangeLog: https://github.com/zonemaster/zonemaster/releases/tag/v2026.1.2

Sponsored by: SkunkWerks, GmbH
DeltaFile
+4-3dns/p5-Zonemaster-Engine/Makefile
+3-3dns/p5-Zonemaster-Engine/distinfo
+2-0dns/p5-Zonemaster-Engine/pkg-plist
+9-63 files

FreeBSD/ports e8caa22 — textproc Makefile, textproc/markterm pkg-descr distinfo

textproc/markterm: NEW PORT - render Markdown to terminal and PDF

Sponsored by:   SkunkWerks, GmbH
DeltaFile
+109-0textproc/markterm/Makefile
+43-0textproc/markterm/distinfo
+15-0textproc/markterm/pkg-descr
+1-0textproc/Makefile
+168-04 files

FreeBSD/ports db6d856 — deskutils/gitte Makefile, deskutils/gitte/files patch-src_git_diff.rs

deskutils/gitte: Ensure diff output is independent of user settings

Sponsored by:   SkunkWerks, GmbH
Upstreamed:     https://codeberg.org/ckruse/Gitte/pulls/287
DeltaFile
+20-0deskutils/gitte/files/patch-src_git_diff.rs
+1-0deskutils/gitte/Makefile
+21-02 files

FreeBSD/ports 2b0941c — dns/p5-Zonemaster-Backend pkg-plist Makefile

dns/p5-Zonemaster-Backend: Update to 12.1.1

- adds schema version to the database, a migration is required when
  upgrading from 12.0.0, see share/patch/patch_db_schema_version_1.pl
- adds TLD URL feature for GUI in RPCAPI
- prevents DB handles being reused in child processes
- requires Zonemaster::Engine 9.0.0

ChangeLog: https://github.com/zonemaster/zonemaster-backend/blob/master/Changes
ChangeLog: https://github.com/zonemaster/zonemaster/releases/tag/v2026.1.1
DeltaFile
+3-3dns/p5-Zonemaster-Backend/distinfo
+2-3dns/p5-Zonemaster-Backend/Makefile
+3-0dns/p5-Zonemaster-Backend/pkg-plist
+8-63 files

FreeBSD/ports e38e3a5 — dns/p5-Zonemaster-CLI Makefile distinfo

dns/p5-Zonemaster-CLI: Update to 8.0.3

- fix root hints overrides for undelegated root zone
- requires Zonemaster::Engine 9.0.1

ChangeLog: https://github.com/zonemaster/zonemaster-cli/blob/master/Changes
ChangeLog: https://github.com/zonemaster/zonemaster/releases/tag/v2026.1.2

Sponsored by: SkunkWerks, GmbH
DeltaFile
+3-3dns/p5-Zonemaster-CLI/distinfo
+2-2dns/p5-Zonemaster-CLI/Makefile
+5-52 files

FreeBSD/ports 25b41b6 — www/p5-Zonemaster-GUI Makefile distinfo

www/p5-Zonemaster-GUI: Update to 5.1.0

- fixes language switcher, FAQ layout and DS algorithm list
- corrects handling of empty testcase values in results

ChangeLog:      https://github.com/zonemaster/zonemaster-gui/blob/master/Changes
ChangeLog:      https://github.com/zonemaster/zonemaster/releases/tag/v2026.1.2
Sponsored by:   SkunkWerks, GmbH
Reported by:    portscout
DeltaFile
+21-23www/p5-Zonemaster-GUI/pkg-plist
+3-3www/p5-Zonemaster-GUI/distinfo
+1-1www/p5-Zonemaster-GUI/Makefile
+25-273 files

LLVM/project 43c3bf2 — llvm/include/llvm/CodeGen MachineBasicBlock.h, llvm/lib/CodeGen MachineBasicBlock.cpp PHIElimination.cpp

CodeGen: Only visit live-out vregs when splitting a critical edge with LIS (#230441)

To update LiveIntervals, SplitCriticalEdge checked every virtual
register in the function for liveness at the end of the split block.
That made PHIElimination's edge splitting O(splits * vregs).

PHIElimination now computes the set of virtual registers live out of
each block before the first split and passes it through
SplitCriticalEdgeAnalyses. Only those registers are visited, and the set
for the new block is added once the intervals are updated.

This essentially resurrects the per-block sparse register sets used to
update LiveVariables, which were removed in #228618 and #230147, applied
to the LiveIntervals update instead.

Instructions retired in phi-node-elimination, x86_64 -O3, on a generated
chain of N compare blocks branching to a shared PHI block:

  N     before          after           after/before

    [11 lines not shown]
DeltaFile
+26-10llvm/lib/CodeGen/PHIElimination.cpp
+22-5llvm/lib/CodeGen/MachineBasicBlock.cpp
+7-0llvm/include/llvm/CodeGen/MachineBasicBlock.h
+55-153 files

FreeBSD/ports 275a822 — textproc/moor Makefile distinfo

textproc/moor: Update 2.19.2 => 2.19.3

Changelog:
https://github.com/walles/moor/releases/tag/v2.19.3

Reported by:    Repology
Approved by:    osa, vvd (Mentors, implicit)
DeltaFile
+5-5textproc/moor/distinfo
+1-2textproc/moor/Makefile
+6-72 files

LLVM/project 35eee97 — llvm/lib/Analysis ScalarEvolution.cpp, llvm/test/Transforms/IndVarSimplify lftr-reuse-long-chain.ll

[SCEVExp] Only count instructions needing analysis in reuse budget. (#230446)

canReuseInstruction gave up once it had visited 16 values, counting
constants and values already known to be poison-contributors of S. These
values are not walked any further, so only charge the instructions we
have to analyze operands of.

This improves re-use across a number of workloads end-to-end:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/1624

I noticed this while invesigating missed re-use after changing operand
order in SCEV (https://github.com/llvm/llvm-project/pull/230252)

Compile-time impact in the noise

https://llvm-compile-time-tracker.com/compare.php?from=10d4b33fe57fecd864b7f9dbdfa558ae2f1329ad&to=0a29e64eaf5e64e683a81529323428d9b111751d&stat=instructions:u

PR: https://github.com/llvm/llvm-project/pull/230446
DeltaFile
+240-0llvm/test/Transforms/IndVarSimplify/lftr-reuse-long-chain.ll
+5-4llvm/lib/Analysis/ScalarEvolution.cpp
+245-42 files

LLVM/project bd4933d — llvm/lib/Target/AArch64/AsmParser AArch64AsmParser.cpp, llvm/test/MC/AArch64 armv8.5a-mte-error.s basic-a64-diagnostics.s

fixup! And fix all the other cases
DeltaFile
+69-69llvm/test/MC/AArch64/basic-a64-diagnostics.s
+53-53llvm/test/MC/AArch64/armv8.5a-mte-error.s
+37-29llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+16-16llvm/test/MC/AArch64/SVE/st1h-diagnostics.s
+16-16llvm/test/MC/AArch64/SVE/ld1h-diagnostics.s
+14-14llvm/test/MC/AArch64/SVE/st1w-diagnostics.s
+205-197113 files not shown
+667-659119 files

LLVM/project 1718697 — llvm/test/MC/AArch64 armv9.8a-cflt-diagnostics.s arm64-diags.s, llvm/test/MC/AArch64/SVE str-diagnostics.s ldr-diagnostics.s

[AArch64][llvm] Fix incorrect diagnostic (index/immediate in simm9)

Improve the error message in the simm9 diagnostics and use the word
'immediate' instead of 'index'. This was noticed when creating the
CFLT instructions for Armv9.8-A, but would have caused a lot of
unrelated churn if merged as part of that change.

Co-authored-by: Martin Wehking <martin.wehking at arm.com>
DeltaFile
+82-82llvm/test/MC/AArch64/basic-a64-diagnostics.s
+39-39llvm/test/MC/AArch64/armv8.4a-ldst-error.s
+5-5llvm/test/MC/AArch64/arm64-diags.s
+4-4llvm/test/MC/AArch64/SVE/str-diagnostics.s
+4-4llvm/test/MC/AArch64/SVE/ldr-diagnostics.s
+2-2llvm/test/MC/AArch64/armv9.8a-cflt-diagnostics.s
+136-1361 files not shown
+137-1377 files

LLVM/project 8d8be2b — llvm/lib/Target/AArch64 AArch64InstrFormats.td, llvm/lib/Target/AArch64/AsmParser AArch64AsmParser.cpp

[AArch64][llvm] Fix constant expressions in CMPBR immediate aliases

Use the standard immediate parser for CMPBR aliases so that parenthesized
expressions and explicit unary plus are accepted. This also simplifies
the amount of code required, since we can remove `tryParseAdjImm0_63`,
and reuse code in `AdjImmAsmOperand` which does the same job.

Check immediates in their original ranges and apply the adjustment
when rendering MC operands. Add coverage for constant expressions in
`cbge`, `cbhs`, `cble` and `cbls`.
DeltaFile
+14-24llvm/lib/Target/AArch64/AArch64InstrFormats.td
+0-35llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+13-0llvm/test/MC/AArch64/CMPBR/cmpbr_aliases.s
+27-593 files

LLVM/project f13be6d — llvm/lib/Target/AArch64/AsmParser AArch64AsmParser.cpp, llvm/test/MC/AArch64 armv8.5a-mte-error.s armv9.8a-cflt-diagnostics.s

[AArch64][llvm] Improve diagnostics for invalid operands

Return `DiagnosticPredicate` from `isSImm()`, `isImmInRange()`, and
`isUImm12Offset()` so invalid operand types do not produce misleading
immediate range errors, while out-of-range constants retain their
range diagnostics.

Keep the load/store fallback predicate boolean and remove the
CFLT-specific diagnostic workaround. Update affected diagnostic
tests and add prefetch and CFLT regression testcases.
DeltaFile
+16-17llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
+14-14llvm/test/MC/AArch64/basic-a64-diagnostics.s
+5-5llvm/test/MC/AArch64/neon-diagnostics.s
+9-0llvm/test/MC/AArch64/armv9.8a-cflt-diagnostics.s
+3-3llvm/test/MC/AArch64/SME2p1/zero-diagnostics.s
+2-2llvm/test/MC/AArch64/armv8.5a-mte-error.s
+49-4121 files not shown
+71-6327 files

LLVM/project 8071eb4 — llvm/lib/Target/AArch64 AArch64InstrFormats.td

fixup! Remove UImm6Plus1Operand and UImm6Minus1Operand
DeltaFile
+8-11llvm/lib/Target/AArch64/AArch64InstrFormats.td
+8-111 files