LLVM/project 5f27de8clang/lib/CIR/CodeGen CIRGenDecl.cpp CIRGenFunction.cpp, clang/lib/CIR/Dialect/Transforms LoweringPrepare.cpp

[CIR] Implement variable size array cleanup (#191247)

This implements partial array destruction for variable sized arrays. The
cir.array.dtor operation already had support for variable length, so
this change only needs to add the variable handling in
`emitArrayDestroy` and `emitArrayLength`.

Assisted-by: Cursor / claude-4.6-opus-high
DeltaFile
+499-0clang/test/CIR/CodeGen/partial-array-cleanup.cpp
+27-32clang/lib/CIR/CodeGen/CIRGenDecl.cpp
+34-4clang/lib/CIR/CodeGen/CIRGenFunction.cpp
+0-2clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
+560-384 files

OpenBSD/ports c2DtKFznet/krill Makefile

   krill: USE_NOEXECONLY on amd64 due to aws-lc-sys

   Without this the basic publication server config crashes on startup.
   https://krill.docs.nlnetlabs.nl/en/stable/publication-server.html#configure
VersionDeltaFile
1.7+7-0net/krill/Makefile
+7-01 files

LLVM/project 67ff769clang/include/clang/Basic DiagnosticLexKinds.td, clang/include/clang/Lex HeaderSearch.h

[clang][modules] Add warning for symlinks to modular headers (#188059)

Symlinks that are not covered by a module that point to a header owned
by a module create situations where if a header is owned by a module
depends on which headers were included prior.

This adds a diagnostic for such cases when they can be detected, and
informs the user to use a textual forwarding header instead.

This bypasses Clang's FileManager and VFS as they don't know about
symlinks. The diagnostic is worded as "may" because of this.
DeltaFile
+130-38clang/lib/Lex/HeaderSearch.cpp
+98-0clang/test/Modules/symlink-to-modular-header.c
+11-0clang/lib/Lex/ModuleMap.cpp
+11-0clang/include/clang/Lex/HeaderSearch.h
+7-0clang/include/clang/Basic/DiagnosticLexKinds.td
+257-385 files

LLVM/project 6b2c2fellvm/utils/lit/lit TestTimes.py, llvm/utils/lit/tests malformed-test-times.py

[llvm-lit] Ignore malformed `.lit_test_times` entries

When running `llvm-lit`, I sometimes hit a traceback, because a
`.lit_test_times.txt` file has got corrupted (not sure how).
However, it's non-obvious what the issue is (you just get a traceback),
so I've fixed this as follows:

`read_test_times()` currently assumes every line in .lit_test_times.txt
contains a floating-point time followed by a test path. If the file
contains a blank line, a line without a path, or a non-numeric time,
lit raises during discovery instead of skipping the bad entry.

Fix this by parsing each line defensively. Split once, ignore lines
that do not produce both fields, and ignore entries whose time cannot
be parsed as a float. This keeps the existing behavior for valid lines
while making malformed timing files non-fatal.

Add a new `malformed-test-times.py` regression test and a checked-in
lit_test_times fixture containing both valid and malformed entries. The

    [3 lines not shown]
DeltaFile
+12-0llvm/utils/lit/tests/malformed-test-times.py
+8-2llvm/utils/lit/lit/TestTimes.py
+7-0llvm/utils/lit/tests/Inputs/malformed-test-times/lit.cfg
+5-0llvm/utils/lit/tests/Inputs/malformed-test-times/lit_test_times
+1-0llvm/utils/lit/tests/Inputs/malformed-test-times/b.txt
+1-0llvm/utils/lit/tests/Inputs/malformed-test-times/a.txt
+34-26 files

FreeNAS/freenas 82391dfsrc/middlewared/middlewared/plugins/failover_ reboot.py event.py, src/middlewared/middlewared/plugins/system reboot.py

Persist local reboot reasons

(cherry picked from commit f19b9781aac6d4092ad7ee21cd37fbb170d85724)
DeltaFile
+131-0src/middlewared/middlewared/pytest/unit/plugins/test_system_reboot.py
+39-6src/middlewared/middlewared/plugins/failover_/reboot.py
+26-16src/middlewared/middlewared/plugins/system/reboot.py
+6-0src/middlewared/middlewared/plugins/failover_/event.py
+202-224 files

FreeNAS/freenas bc280e6src/middlewared/middlewared/plugins/failover_ reboot.py event.py, src/middlewared/middlewared/plugins/system reboot.py

NAS-139412 / 27.0.0-BETA.1 / Persist local reboot reasons (#18658)

## Problem

Local reboot reasons (`SystemRebootService.reboot_reasons`) were stored
in an in-memory Python dict. If middleware restarted without a system
reboot (crash, OOM, `systemctl restart middlewared`), all accumulated
reasons were silently lost. This caused failover to be unblocked
prematurely (`LOC_FIPS_REBOOT_REQ` / `LOC_UPGRADE_REBOOT_REQ` vanished
from `failover.disabled.reasons`), `toggle_reason` to invert its
behavior after restart, and the remote node to get a false "all clear"
when querying `system.reboot.info`. Additionally, the existing keyvalue
key naming for remote reboot reasons (`remote_reboot_reasons_A` meaning
"reasons recorded BY Node A about the other node") was confusing.

## Solution

- **Local reasons persisted via volatile cache**: Replace the in-memory
dict with the `cache` service (TDB VOLATILE at

    [22 lines not shown]
DeltaFile
+131-0src/middlewared/middlewared/pytest/unit/plugins/test_system_reboot.py
+39-6src/middlewared/middlewared/plugins/failover_/reboot.py
+26-16src/middlewared/middlewared/plugins/system/reboot.py
+6-0src/middlewared/middlewared/plugins/failover_/event.py
+202-224 files

LLVM/project 92d3a1dllvm/test/Transforms/SLPVectorizer/RISCV revec-strided-load.ll

[NFC][SLP] Add tests for revectorization of strided loads (#191293)

Demonstrates bug in SLP when handling re-vectorization, see #191292
DeltaFile
+116-0llvm/test/Transforms/SLPVectorizer/RISCV/revec-strided-load.ll
+116-01 files

LLVM/project 47107a7clang/lib/CodeGen/TargetBuiltins ARM.cpp, clang/lib/Sema SemaARM.cpp

[AArch64][clang] Fix `__arm_atomic_store_with_stshh` ordering and lowering

`__builtin_arm_atomic_store_with_stshh` must satisfy two constraints:
  - preserve release/seq_cst ordering in LLVM IR
  - keep `stshh` immediately adjacent to the final store in codegen

The original target-intrinsic lowering preserved the final `stshh` + store
sequence, but it did not model ordering strongly enough in LLVM IR, so the
optimizer could sink earlier stores across the builtin.

Fix this by inserting a `release` or `seq_cst` fence before the intrinsic
call. This preserves ordering in optimized IR while still letting the
backend emit the required final instruction sequence. This means we now
get a `dmb ish` instruction before the `stshh` instruction.

Also relax Sema for the builtin to accept storing 8/16/32/64-bit
floating-point and pointer values in addition to integers, and update
the diagnostic text accordingly.


    [5 lines not shown]
DeltaFile
+38-0clang/test/CodeGen/AArch64/pcdphint-atomic-store.c
+37-0clang/test/CodeGen/AArch64/pcdphint-atomic-store-order.c
+28-5clang/lib/CodeGen/TargetBuiltins/ARM.cpp
+13-5clang/test/Sema/AArch64/pcdphint-atomic-store.c
+13-0llvm/test/CodeGen/AArch64/pcdphint-atomic-store.ll
+4-1clang/lib/Sema/SemaARM.cpp
+133-111 files not shown
+134-127 files

FreeBSD/ports 361fc26science/gramps distinfo Makefile

science/gramps: Update to 6.0.8

ChangeLog:      https://github.com/gramps-project/gramps/releases/tag/v6.0.8
MFH:            2026Q2 (maintenance release)
(cherry picked from commit 6ac815b3d46f34ad6f7328177d19f9f46ff3e93f)
DeltaFile
+3-3science/gramps/distinfo
+1-1science/gramps/Makefile
+4-42 files

LLVM/project e38801bclang/lib/Driver ModulesDriver.cpp, clang/test/Driver modules-driver-clang-modules-only.cpp modules-driver-manifest-input-args.cpp

Reapply "[clang][ModulesDriver] Add support for Clang modules to -fmodules-driver" (#191258)

This relands #187606 (reverted with #191122).

In the initial PR, the Clang module precompile jobs were created as
`CC1Command` objects instead of regular `Command` objects, which
introduced a memory leak.
(See discussion in https://reviews.llvm.org/D74447)

This has been fixed in this reland.
DeltaFile
+127-0clang/test/Driver/modules-driver-clang-modules-only.cpp
+57-27clang/lib/Driver/ModulesDriver.cpp
+7-9clang/test/Driver/modules-driver-manifest-input-args.cpp
+191-363 files

FreeBSD/ports 6ac815bscience/gramps distinfo Makefile

science/gramps: Update to 6.0.8

ChangeLog:      https://github.com/gramps-project/gramps/releases/tag/v6.0.8
MFH:            2026Q2 (maintenance release)
DeltaFile
+3-3science/gramps/distinfo
+1-1science/gramps/Makefile
+4-42 files

LLVM/project 3c5e03bllvm/test/CodeGen/SystemZ zos-symbol-2.ll

Extend test
DeltaFile
+24-10llvm/test/CodeGen/SystemZ/zos-symbol-2.ll
+24-101 files

LLVM/project 4a5e9fallvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV rv64p.ll rv32p.ll

[RISCV][P-ext] Recognize (select (X >u ((1 << C) - 1), sext(X >s -1), trunc(X)) as usati (#190810)

Where the result is a type with C bits. The unsigned compare on the
select treats negative values as large positive values so any value
that isn't in the range [0, (1 << C) - 1] will use the True operand
of the select. The sext(X >s -1) creates all ones for positive values
of X and 0 for negative values of X.

This pattern appears in the picojpeg workload of embench-iot with
an i8 result type.

Assisted-by: Claude Sonnet 4.5
DeltaFile
+230-0llvm/test/CodeGen/RISCV/rv64p.ll
+95-0llvm/test/CodeGen/RISCV/rv32p.ll
+68-0llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+393-03 files

LLVM/project 7b73b23clang/include/clang/AST ASTContext.h, clang/lib/AST ASTContext.cpp Type.cpp

[clang] implement CWG2064: ignore value dependence for decltype

The 'decltype' for a value-dependent (but non-type-dependent) should be known,
so this patch makes them non-opaque instead.

Readds a few test cases from da98651

Fixes #8740
Fixes #61818
Fixes #190388
DeltaFile
+473-44clang/lib/AST/ASTContext.cpp
+78-12clang/test/SemaTemplate/instantiation-dependence.cpp
+41-7clang/include/clang/AST/ASTContext.h
+44-0clang/test/SemaTemplate/injected-class-name.cpp
+28-16clang/lib/Sema/SemaTemplate.cpp
+25-16clang/lib/AST/Type.cpp
+689-9521 files not shown
+836-13227 files

LLVM/project e8e8552llvm/include/llvm/Analysis BlockFrequencyInfoImpl.h BranchProbabilityInfo.h, llvm/include/llvm/CodeGen MachineBranchProbabilityInfo.h

[Analysis][NFC] Remove BPI::getEdgeProbability(iterator) (#191286)

Now that successor iterators are Use iterators, it is no longer cheap to
get the successor index. Replace uses with the variant that takes the
successor index, which in all cases is easily available.

This is primarily cleanup after the somewhat recent successor changes.
There's also a minor (barely measurable) performance improvement here.
DeltaFile
+12-12llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
+5-5llvm/lib/CodeGen/MachineBranchProbabilityInfo.cpp
+3-5llvm/include/llvm/CodeGen/MachineBranchProbabilityInfo.h
+0-6llvm/lib/Analysis/BranchProbabilityInfo.cpp
+0-3llvm/include/llvm/Analysis/BranchProbabilityInfo.h
+1-1llvm/lib/CodeGen/MIRSampleProfile.cpp
+21-326 files

LLVM/project f29dbd7llvm/include/llvm/ADT PostOrderIterator.h

[spr] initial version

Created using spr 1.3.8-wip
DeltaFile
+28-19llvm/include/llvm/ADT/PostOrderIterator.h
+28-191 files

FreeNAS/freenas 1a65ff3src/middlewared/middlewared/api/v27_0_0 pool.py, src/middlewared/middlewared/plugins/pool_ pool.py

pool.create type safety WIP
DeltaFile
+25-11src/middlewared/middlewared/api/v27_0_0/pool.py
+13-8src/middlewared/middlewared/plugins/pool_/pool.py
+38-192 files

LLVM/project 6010425clang/include/clang/AST ASTContext.h, clang/lib/AST ASTContext.cpp Type.cpp

[clang] implement CWG2064: ignore value dependence for decltype

The 'decltype' for a value-dependent (but non-type-dependent) should be known,
so this patch makes them non-opaque instead.

Readds a few test cases from da98651

Fixes #8740
Fixes #61818
Fixes #190388
DeltaFile
+473-44clang/lib/AST/ASTContext.cpp
+78-12clang/test/SemaTemplate/instantiation-dependence.cpp
+41-7clang/include/clang/AST/ASTContext.h
+28-16clang/lib/Sema/SemaTemplate.cpp
+44-0clang/test/SemaTemplate/injected-class-name.cpp
+25-16clang/lib/AST/Type.cpp
+689-9521 files not shown
+835-13227 files

LLVM/project a085299llvm/test/CodeGen/SystemZ zos-section-1.ll zos-section-2.ll

Update tests
DeltaFile
+42-50llvm/test/CodeGen/SystemZ/zos-section-1.ll
+27-35llvm/test/CodeGen/SystemZ/zos-section-2.ll
+69-852 files

LLVM/project 691a130clang/include/clang/Analysis/Analyses PostOrderCFGView.h, clang/lib/Analysis PostOrderCFGView.cpp

[ADT] Refactor post order traversal (#191047)

Currently, po_iterator holds the traversal state. This makes copying
and moving po_iterator fairly expensive and the code cannot be optimized
away in several cases (most of it isn't even inlined in a default
build).

Therefore, refactor post-order traversal to hold the state in a wrapper
class with cheap iterators. Additionally, replace po_storage base class
with a CRTP implementation where users can provide their own storage.

Benefits:

- Performance in stage2-O3 improves by 0.19% instructions:u and even
  more substantially in cycles/wall-time.

- Users that use a custom storage/iteration limitation can do so in a
  more clean way by subclassing PostIteratorTraversalBase. See e.g.
  LoopBlocksTraversal.

    [15 lines not shown]
DeltaFile
+160-206llvm/include/llvm/ADT/PostOrderIterator.h
+16-42llvm/include/llvm/Analysis/LoopIterator.h
+9-47llvm/unittests/ADT/PostOrderIteratorTest.cpp
+0-52clang/include/clang/Analysis/Analyses/PostOrderCFGView.h
+33-5clang/lib/Analysis/PostOrderCFGView.cpp
+14-12mlir/include/mlir/IR/Iterators.h
+232-3647 files not shown
+263-38813 files

FreeNAS/freenas c90a02fsrc/middlewared/middlewared/plugins/pool_ pool.py, src/middlewared/middlewared/plugins/zpool create_impl.py

initial `pool.create` conversion
DeltaFile
+96-42src/middlewared/middlewared/plugins/pool_/pool.py
+8-2src/middlewared/middlewared/plugins/zpool/create_impl.py
+104-442 files

FreeBSD/ports 6455d34. MOVED

MOVED: back from the future
DeltaFile
+1-1MOVED
+1-11 files

NetBSD/pkgsrc fIY3oNKdevel/m4 distinfo, devel/m4/patches patch-configure

   m4: remove unneeded patch

   Fixed differently upstream

   https://gitweb.git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=676177182056adb6424757ae8fd4d099d394795b
VersionDeltaFile
1.58+1-2devel/m4/distinfo
1.3+1-1devel/m4/patches/patch-configure
+2-32 files

NetBSD/pkgsrc CfcdfWJdevel/m4 distinfo, devel/m4/patches patch-m4_sparcv8+.m4

   m4: remove unneeded patch

   fixed differently upstream

   https://gitweb.git.savannah.gnu.org/gitweb/?p=gnulib.git;a=commitdiff;h=676177182056adb6424757ae8fd4d099d394795b
VersionDeltaFile
1.57+1-2devel/m4/distinfo
1.3+1-1devel/m4/patches/patch-m4_sparcv8+.m4
+2-32 files

LLVM/project 7a186dallvm/include/llvm/CodeGen SelectionDAG.h, llvm/lib/CodeGen/SelectionDAG SelectionDAG.cpp TargetLowering.cpp

[SelectionDAG] Replace `isKnownNeverZeroFloat` with `isKnownNeverLogicalZero` using `KnownFPClass` (#190621)

In so doing, this also corrects miscompiles caused by
`isKnownNeverZeroFloat` mishandling denormals in DAZ floats.
DeltaFile
+186-0llvm/test/CodeGen/X86/fminimum-fmaximum.ll
+14-8llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+1-14llvm/test/CodeGen/X86/nofpclass.ll
+9-3llvm/include/llvm/CodeGen/SelectionDAG.h
+6-6llvm/lib/Target/X86/X86ISelLowering.cpp
+5-5llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+221-362 files not shown
+227-428 files

LLVM/project 3106002llvm/include/llvm/DebugInfo/Symbolize SymbolizableObjectFile.h, llvm/lib/DebugInfo/Symbolize SymbolizableObjectFile.cpp

SymbolizableOjbectFile: Convert Wasm file offset to section offset for DWARF (#191068)

Wasm's object and linking format lacks virtual addresses like ELF et al.
As a result, linked files generally use file offsets as "addresses",
whereas
objects and DWARF sections use code section offsets.
This has led to incorrect interpretation of addresses in llvm-objdump
and llvm-symbolizer for linked files.

This change to SerializableObjectFile checks the input ModuleOffset, and
if it falls within a wasm code section, adjusts it to a section offset
before querying the DwarfContext. (For object files, Sec.getAddress() is
0 so it works for object files too). It extends the existing DWARF test
for llvm-symbolizer to include a linked file, and also adds an
equivalent for objdump.

Fixes #129523
DeltaFile
+74-0llvm/test/tools/llvm-objdump/wasm/line-numbers.s
+21-11llvm/test/tools/llvm-symbolizer/wasm-basic.s
+23-3llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
+7-0llvm/include/llvm/DebugInfo/Symbolize/SymbolizableObjectFile.h
+4-0llvm/test/tools/llvm-symbolizer/lit.local.cfg
+4-0llvm/test/tools/llvm-objdump/lit.local.cfg
+133-146 files

LLVM/project 5439c31llvm/docs ProgrammersManual.rst, llvm/include/llvm/Support Error.h

Revert "[LLVM][Support] add nonNull function helper (#188718)"

This reverts commit 9e428b7e41ee891cddc911fb70bc23b4997e1d9b.
DeltaFile
+0-38llvm/unittests/Support/ErrorTest.cpp
+0-23llvm/include/llvm/Support/Error.h
+0-9llvm/docs/ProgrammersManual.rst
+0-703 files

LLVM/project 61830b2llvm/include/llvm/MC MCGOFFObjectWriter.h, llvm/lib/CodeGen/AsmPrinter AsmPrinter.cpp

Use ADA reference of MCSymbolGOFF for externals.
DeltaFile
+15-0llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
+6-9llvm/lib/MC/GOFFObjectWriter.cpp
+1-11llvm/lib/MC/MCGOFFStreamer.cpp
+2-5llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+0-6llvm/include/llvm/MC/MCGOFFObjectWriter.h
+3-2llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
+27-332 files not shown
+32-338 files

LLVM/project 6b34d4cllvm/lib/MC GOFFObjectWriter.cpp MCGOFFStreamer.cpp, llvm/lib/Target/SystemZ/MCTargetDesc SystemZHLASMAsmStreamer.cpp

[SystemZ][GOFF] Reference to external variable needs PR symbol

Variables are modelled as parts in the GOFF format. Referencing a
variable defined in a different compilation unit requires to use
a PR symbol instead of EXTRN/WEXTRN instruction.
A small issue is that these PR symbols can refer to the same ED
symbols, for which a section needs to be created.
DeltaFile
+52-44llvm/test/CodeGen/SystemZ/zos-section-1.ll
+35-27llvm/test/CodeGen/SystemZ/zos-section-2.ll
+22-10llvm/lib/MC/GOFFObjectWriter.cpp
+12-12llvm/test/CodeGen/SystemZ/zos-symbol-2.ll
+15-2llvm/lib/MC/MCGOFFStreamer.cpp
+7-2llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
+143-972 files not shown
+153-988 files

LLVM/project 70406aallvm/lib/Target/SystemZ/MCTargetDesc SystemZHLASMAsmStreamer.cpp

Fix formatting
DeltaFile
+2-1llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
+2-11 files