LLVM/project e32a1c6clang/lib/Driver/ToolChains ZOS.cpp, clang/test/Driver zos-ld.c

[SystemZ][z/OS] Improve link command for shared libraries (#204205)

This PR adds -e/-O CELQSTRT and improves the link command for shared
libs.

Co-authored-by: Yusra Syeda <yusra.syeda at ibm.com>
DeltaFile
+25-13clang/lib/Driver/ToolChains/ZOS.cpp
+18-4clang/test/Driver/zos-ld.c
+43-172 files

FreeBSD/ports 9d48375graphics Makefile, graphics/R-cran-ggpolypath Makefile distinfo

graphics/R-cran-ggpolypath: New port

Tools for working with polygons with holes in 'ggplot2', with a new 'geom' for
drawing a 'polypath' applying the 'evenodd' or 'winding' rules.
DeltaFile
+18-0graphics/R-cran-ggpolypath/Makefile
+3-0graphics/R-cran-ggpolypath/distinfo
+2-0graphics/R-cran-ggpolypath/pkg-descr
+1-0graphics/Makefile
+24-04 files

LLVM/project eb05efcflang/include/flang/Parser parse-tree.h, flang/lib/Parser program-parsers.cpp

[flang][openacc] Ignore bare acc routine in module subprogram part instead of erroring out (#205450)

This small code below would trigger not easy to understand error like
`error: expected 'END'`. Ignore such directive and emit the standard
warning.

```
module acc_routine_bad
contains
!$acc routine
subroutine acc_routine20()
end subroutine
end module
```
DeltaFile
+10-0flang/test/Semantics/OpenACC/acc-routine-bad.f90
+3-1flang/lib/Semantics/program-tree.cpp
+2-0flang/lib/Parser/program-parsers.cpp
+1-0flang/include/flang/Parser/parse-tree.h
+16-14 files

LLVM/project 42e02callvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.h, llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes BottomUpVec.cpp PassRegistry.def

[SBVec] Implement topDown/botUp vectorizers in unison

This patch introduces the `top-down-vec` pass to the Sandbox Vectorizer,
adding the ability to traverse use-def chains top-down to discover and
collect vectorization opportunities. Furthermore, this patch unifies
the two vectorizers into a single implementation to minimize code
duplication.
DeltaFile
+90-16llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+94-0llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+69-10llvm/test/Transforms/SandboxVectorizer/pack.ll
+57-1llvm/test/Transforms/SandboxVectorizer/external_uses.ll
+23-6llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.h
+1-0llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
+334-336 files

LLVM/project 3257220lldb/include/lldb/Breakpoint BreakpointList.h Breakpoint.h, lldb/source/Breakpoint BreakpointList.cpp

[lldb] Change BreakpointList::FindBreakpointsByName to use StringRef (#205695)

It's not possible to turn a StringRef into a c-string safely without a
potential allocation. I will use this in a follow-up to remove
ConstString from BreakpointName.
DeltaFile
+3-3lldb/source/Breakpoint/BreakpointList.cpp
+1-2lldb/source/Target/Target.cpp
+1-1lldb/include/lldb/Breakpoint/BreakpointList.h
+1-1lldb/include/lldb/Breakpoint/Breakpoint.h
+6-74 files

LLVM/project 6d47d03llvm/test/CodeGen/AMDGPU rotate-add.ll

AMDGPU: Fix wrong triple in rotate-add test

This was overwritten by the command line anyway.
DeltaFile
+0-2llvm/test/CodeGen/AMDGPU/rotate-add.ll
+0-21 files

Linux/linux c75597carch/s390/kvm kvm-s390.c gmap.c, arch/x86/include/asm kvm_host.h

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull kvm fixes from Paolo Bonzini:
 "s390:

   - Fix S390_USER_OPEREXEC so it can now be enabled regardless of other
     unrelated capabilities

   - Fix handling of the _PAGE_UNUSED pte bit that could lead to guest
     memory corruption in some scenarios

   - A bunch of misc gmap fixes (locking, behaviour under memory
     pressure)

   - Fix CMMA dirty tracking

  x86:

   - Tidy up some WARN_ON() and BUG_ON(), replacing them with

    [33 lines not shown]
DeltaFile
+110-0tools/testing/selftests/kvm/s390/user_operexec.c
+48-23arch/s390/kvm/kvm-s390.c
+30-7arch/s390/kvm/gmap.c
+7-7arch/x86/kvm/mmu/mmu.c
+11-1arch/s390/kvm/gmap.h
+1-11arch/x86/include/asm/kvm_host.h
+207-4919 files not shown
+266-8625 files

LLVM/project aa1cc2dllvm/include/llvm/ADT StringRef.h, llvm/unittests/ADT StringRefTest.cpp

[ADT] Add StringRef::nonEmptyOr (#204690)

This adds a new method to StringRef. The intended use case is for
situations when a non-empty StringRef is needed but some operation
returns an empty StringRef because of missing data or some other
exception.

This is primarily for ergonomics. I'm mainly motivated to avoid creating
a temporary StringRef in situations where a StringRef is obtained
through a long call chain. e.g.


`doAThing(my_obj.getFoo().getBar().getBaz().getStringRef().nonEmptyOr("unknown"))`

---------

Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>
DeltaFile
+7-0llvm/unittests/ADT/StringRefTest.cpp
+6-0llvm/include/llvm/ADT/StringRef.h
+13-02 files

LLVM/project 8987645llvm/lib/Target/BPF BTFDebug.cpp BPFAbstractMemberAccess.cpp, llvm/test/CodeGen/BPF/BTF struct-member-order.ll

[BPF] Sort BTF struct members by offset (#205396)

Sort BTF structure elements by their debug offsets. Prevent
source-ordered Rust debug metadata from producing descending member
offsets after rustc chooses a different physical layout, because the
kernel rejects such BTF.

Use the sorted order for member emission, declaration-tag component
indexes, and CO-RE access strings. Keep physical offset calculations on
the original debug indexes so changing BTF order does not change
generated code.

Eliminate the need for the bpf-linker metadata rewrite by enforcing the
ordering in the LLVM BPF backend:

https://github.com/aya-rs/bpf-linker/commit/1007ec7fed03562eb7d08f3e7521094a7e698b95
DeltaFile
+104-0llvm/test/CodeGen/BPF/CORE/struct-member-order.ll
+45-0llvm/test/CodeGen/BPF/BTF/struct-member-order.ll
+16-6llvm/lib/Target/BPF/BTFDebug.cpp
+18-2llvm/lib/Target/BPF/BPFAbstractMemberAccess.cpp
+15-0llvm/lib/Target/BPF/BPFCORE.h
+4-2llvm/lib/Target/BPF/BTFDebug.h
+202-106 files

LLVM/project 617e2a1llvm/lib/Transforms/Scalar LoopInterchange.cpp, llvm/test/Transforms/LoopInterchange transform-stop-partway.ll pr57148.ll

[LoopInterchange] Prevent the transformation stage from stopping partway
DeltaFile
+19-38llvm/lib/Transforms/Scalar/LoopInterchange.cpp
+15-19llvm/test/Transforms/LoopInterchange/transform-stop-partway.ll
+18-14llvm/test/Transforms/LoopInterchange/pr57148.ll
+12-14llvm/test/Transforms/LoopInterchange/pr43326-ideal-access-pattern.ll
+11-13llvm/test/Transforms/LoopInterchange/interchanged-loop-nest-3.ll
+11-9llvm/test/Transforms/LoopInterchange/guarded-inner-loop.ll
+86-1073 files not shown
+100-1159 files

LLVM/project 3d373b0clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat JSONFormatImpl.cpp, clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat JSONFormatImpl.cpp

Merge branch 'main' into users/kparzysz/c01-clause-check
DeltaFile
+1,443-0clang/unittests/ScalableStaticAnalysis/Analyses/PointerFlow/PointerFlowTest.cpp
+0-1,443clang/unittests/ScalableStaticAnalysisFramework/Analyses/PointerFlow/PointerFlowTest.cpp
+0-1,380clang/lib/ScalableStaticAnalysisFramework/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
+1,380-0clang/lib/ScalableStaticAnalysis/Core/Serialization/JSONFormat/JSONFormatImpl.cpp
+1,171-0libcxx/test/std/text/text_encoding/test_text_encoding.h
+1,094-0flang/test/Lower/OpenMP/compound.f90
+5,088-2,8231,328 files not shown
+48,768-32,1681,334 files

LLVM/project b7c56b5llvm/lib/Target/NVPTX NVPTXAddressFolder.cpp NVPTXInstrInfo.td, llvm/test/CodeGen/NVPTX address-folder.ll address-folder.mir

Revert "[NVPTX] Fold symbol addresses into memory operands" (#205852)

Reverts llvm/llvm-project#202379

check-llvm now fails on one of the new testcases
```
Failed Tests (1):
  LLVM :: CodeGen/NVPTX/address-folder.ll
```
DeltaFile
+0-123llvm/lib/Target/NVPTX/NVPTXAddressFolder.cpp
+0-113llvm/test/CodeGen/NVPTX/address-folder.ll
+0-60llvm/test/CodeGen/NVPTX/address-folder.mir
+2-2llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
+0-3llvm/lib/Target/NVPTX/NVPTX.h
+0-3llvm/lib/Target/NVPTX/NVPTXTargetMachine.cpp
+2-3044 files not shown
+2-30910 files

FreeBSD/ports 4714f48dns/getdns Makefile

dns/getdns: Fix missing rc script

- Bump PORTREVISION

PR:             296280
Reported by:    Hannes <hannes_11 at fantasymail.de>
DeltaFile
+2-1dns/getdns/Makefile
+2-11 files

FreeNAS/freenas 1b60c7asrc/middlewared/middlewared/plugins failover.py, src/middlewared/middlewared/plugins/failover_ event.py stcnith.py

NAS-141531 / 27.0.0-BETA.1 / more zpool status checks in failover (by yocalebo) (by bugclerk) (#19206)

These changes make the standby transition fail closed so a controller
never releases its disks while a pool might still be imported.

When a controller demotes to standby it exports its pools and then stops
fencing to make the disks available to the other controller. The old
code exported each pool on a best effort basis and skipped any pool that
reported a status of OFFLINE. In rare cases a pool can report OFFLINE
while it is in fact still imported, so the old code could stop fencing
and release the disks while a pool was still attached. That is a fail
open scenario because the other controller could then import the same
pool at the same time, which can lead to data corruption.

The new code attempts to export every pool and then confirms the outcome
before releasing fencing. It checks each pool again using a lockless
read of the kernel kstat namespace, which reflects whether a pool is
actually present rather than what state it reports. If any pool is still
imported, or the export is still running past its timeout, or the import

    [21 lines not shown]
DeltaFile
+66-27src/middlewared/middlewared/plugins/failover_/event.py
+82-0src/middlewared/middlewared/pytest/unit/plugins/test_failover_event_failclosed.py
+43-0src/middlewared/middlewared/plugins/failover_/stcnith.py
+2-14src/middlewared/middlewared/plugins/failover.py
+2-11src/middlewared/middlewared/scripts/ha_panic.py
+195-525 files

LLVM/project 2de5eb4offload/test/offloading xteam_min_reduction_partial_wave.c, openmp/device/src Reduction.cpp

[offload][OpenMP] Fix partial warp reduction

Don't use a full warp for the final cross-team reduction if the
reduction's thread limit is below the warp size.

Claude assisted with the test.
DeltaFile
+41-0offload/test/offloading/xteam_min_reduction_partial_wave.c
+1-1openmp/device/src/Reduction.cpp
+42-12 files

LLVM/project f3cb7bbllvm/benchmarks ImmutableSetIteratorBM.cpp CMakeLists.txt, llvm/include/llvm/ADT ImmutableSet.h

[ADT] Rewrite ImmutableSet/Map in-order iterator without per-node state (#205552)

ImutAVLTreeInOrderIterator was layered on a "generic" iterator whose
stack stored a 2-bit visit-state (None/Left/Right) packed into the low
bits of each node pointer, and which was spun through several
intermediate states per in-order step.

Replace it with a single iterator that keeps a stack of plain node
pointers (the root-to-current ancestor chain) and recovers the traversal
direction by inspecting whether it is ascending from a node's left or
right child. A node's parent cannot be cached in the node itself because
these trees are persistent and structurally shared (one node may be a
child of different parents across tree versions), so the ancestor stack
is the per-traversal parent chain.

The observable contract is unchanged: same in-order sequence, same
skipSubTree() semantics (so tree canonicalization via isEqual is
unaffected), and the iterator stays bidirectional. operator== now
compares the current node rather than the whole path, which is O(1) and

    [21 lines not shown]
DeltaFile
+87-142llvm/include/llvm/ADT/ImmutableSet.h
+187-0llvm/unittests/ADT/ImmutableSetTest.cpp
+121-0llvm/benchmarks/ImmutableSetIteratorBM.cpp
+1-0llvm/benchmarks/CMakeLists.txt
+396-1424 files

OpenBSD/ports 5X2ef52astro/stellarium Makefile distinfo, astro/stellarium/pkg PLIST

   Update to stellarium-26.2.
VersionDeltaFile
1.67+101-35astro/stellarium/pkg/PLIST
1.115+3-2astro/stellarium/Makefile
1.68+2-2astro/stellarium/distinfo
+106-393 files

LLVM/project e87160elldb/source/Plugins/SymbolFile/DWARF DWARFASTParserClang.cpp

[lldb] Fix DWARFASTParserClang formatting (#205857)

In #205701, I applied Michael's suggestion and enabled auto-merge.
Despite the formatter check failing, the change still got merged. Fix
the formatting and another inconsistency in the use of braces.
DeltaFile
+8-7lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
+8-71 files

OpenBSD/ports qbkqsvKsysutils/exoscale-cli distinfo Makefile

   Update to exoscale-cli-1.95.3.
VersionDeltaFile
1.150+2-2sysutils/exoscale-cli/distinfo
1.153+1-1sysutils/exoscale-cli/Makefile
+3-32 files

LLVM/project a83dd60llvm/include/llvm/Target TargetLoweringObjectFile.h, llvm/lib/CodeGen TargetLoweringObjectFileImpl.cpp

Revert "[x86] Handle implicit sections when determining if a global is large …"

This reverts commit f4a149172b51165487b71144c3fd7275da1809a1.
DeltaFile
+0-134llvm/test/CodeGen/X86/large-implicit-section.ll
+24-5llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
+8-14llvm/lib/Target/TargetMachine.cpp
+0-19llvm/lib/Target/TargetLoweringObjectFile.cpp
+0-5llvm/include/llvm/Target/TargetLoweringObjectFile.h
+32-1775 files

LLVM/project 469e3e8llvm/lib/Transforms/Scalar LoopInterchange.cpp, llvm/test/Transforms/LoopInterchange transform-stop-partway.ll

[LoopInterchange] Add test for IR modification stops partway (#205562)

The transform phase in LoopInterchange, which actually modifies the
input IR, has several early exits. This means that if the process hits
one of them, the end result may be IR that has been left in a partially
modified state. As far as I have searched, there is only one case that
actually triggers an early exit. In that case, the final output happens
to be valid IR (though not interchanged), so I believe this is not a
correctness issue at the moment. However, the current implementation is
clearly undesirable, especially because the loop is regarded as
interchanged internally even though the transformation actually failed.
We should eliminate all such early exits.

This patch adds a test that I could find, and also adds a debug output
to make it clear which one is triggered.

Assisted-by: Claude Code
DeltaFile
+89-0llvm/test/Transforms/LoopInterchange/transform-stop-partway.ll
+6-1llvm/lib/Transforms/Scalar/LoopInterchange.cpp
+95-12 files

Linux/linux a142da0block blk-cgroup.c bfq-cgroup.c, drivers/md raid5.c raid1.c

Merge tag 'block-7.2-20260625' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux

Pull block fixes from Jens Axboe:

 - blk-cgroup locking rework and fixes:
      - fix a use-after-free in __blkcg_rstat_flush()
      - defer freeing policy data until after an RCU grace period
      - defer the blkcg css_put until the blkg is unlinked from
        the queue
      - unwind the queue_lock nesting under RCU / blkcg->lock
        across the lookup, create, associate and destroy paths

 - NVMe fixes via Keith:
      - Fix a crash and memory leak during invalid cdev teardown,
        and related cdev cleanups (Maurizio, John)
      - nvmet fixes: handle TCP_CLOSING in the tcp state_change
        handler, reject short AUTH_RECEIVE buffers, handle inline
        data with a nonzero offset in rdma, fix an sq refcount leak,
        and allocate ana_state with the port (Maurizio, Michael,

    [54 lines not shown]
DeltaFile
+112-84block/blk-cgroup.c
+82-49drivers/md/raid5.c
+58-41drivers/md/raid1.c
+30-15drivers/nvme/host/core.c
+25-5block/bfq-cgroup.c
+20-8drivers/md/raid10.c
+327-20235 files not shown
+519-31641 files

LLVM/project c7e3c11clang/lib/CIR/CodeGen CIRGenFunction.cpp CIRGenFunction.h, clang/test/CIR/CodeGen goto-address-label-table.c label-values.c

[CIR] Simplify indirect-goto label tracking

Track every address-taken label -- whether `&&label` appears as an
operation or in a constant initializer -- in one per-function vector of
BlockAddrInfoAttr, resolved to its LabelOp in finishIndirectBranch. This
drops the BlockAddressOp->LabelOp map and the unresolved/resolved
bookkeeping in CIRGenModule: a label always resolves once every label has
been emitted, so the op-side deferral was unnecessary.

Create the indirect-branch block only when a `goto *expr` is emitted,
instead of the first time a label address is taken. A function that takes
a label address but never branches indirectly now emits no indirect
branch, rather than a dead one the verifier needs poisoned, so the poison
fallback is gone too. Classic codegen still emits the dead indirectbr for
that case, so the two diverge there; goto-address-label-table.c (h) and
label-values.c (E) cover it.
DeltaFile
+54-77clang/test/CIR/CodeGen/goto-address-label-table.c
+21-44clang/lib/CIR/CodeGen/CIRGenFunction.cpp
+6-33clang/test/CIR/CodeGen/label-values.c
+12-12clang/lib/CIR/CodeGen/CIRGenFunction.h
+0-23clang/lib/CIR/CodeGen/CIRGenModule.cpp
+0-11clang/lib/CIR/CodeGen/CIRGenModule.h
+93-2003 files not shown
+101-2219 files

FreeBSD/ports 78eea88cad/openscad-devel distinfo Makefile.git_rev

cad/openscad-devel: Update to 2026.06.21
DeltaFile
+9-9cad/openscad-devel/distinfo
+5-5cad/openscad-devel/Makefile.git_rev
+1-1cad/openscad-devel/Makefile
+15-153 files

OpenBSD/ports Np63YL2sysutils/amazon-ssm-agent distinfo Makefile, sysutils/amazon-ssm-agent/patches patch-agent_ssm_service_go

   Update to amazon-ssm-agent-3.3.4793.0.
VersionDeltaFile
1.172+2-2sysutils/amazon-ssm-agent/distinfo
1.186+1-1sysutils/amazon-ssm-agent/Makefile
1.16+1-1sysutils/amazon-ssm-agent/patches/patch-agent_ssm_service_go
+4-43 files

Linux/linux c58ddacinclude/linux io_uring_types.h, io_uring register.c tw.c

Merge tag 'io_uring-7.2-20260625' of git://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux

Pull io_uring fixes from Jens Axboe:

 - Fix a file reference leak in the nop opcode when used with
   IOSQE_FIXED_FILE

 - Preserve the SQ array entries when resizing the ring via the register
   path

 - Preserve the partial result for an iopoll request rather than
   overwriting it

 - Don't audit log IORING_OP_RECV_ZC

 - Bound io_pin_pages() by the page array byte size in the memmap path

 - Follow-up cleanup to the task_work mpscq conversion, getting rid of
   the now-unnecessary tw_pending tracking for the !DEFER_TASKRUN path

    [11 lines not shown]
DeltaFile
+24-13io_uring/register.c
+9-12io_uring/tw.c
+6-6io_uring/rw.c
+9-0io_uring/mpscq.h
+4-4io_uring/nop.c
+0-2include/linux/io_uring_types.h
+52-372 files not shown
+54-388 files

LLVM/project 0ffb729llvm/lib/Target/SPIRV SPIRVNonSemanticDebugHandler.cpp

Fix typo.
DeltaFile
+1-1llvm/lib/Target/SPIRV/SPIRVNonSemanticDebugHandler.cpp
+1-11 files

OpenZFS/src e720a4ainclude zfs_crrd.h, module/zfs zfs_crrd.c

Constify some rrd_*() functions

These don't modify the db, so just constify them while we're in the
area.

Reviewed-by: Alexander Motin <alexander.motin at TrueNAS.com>
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Chris Longros <chris.longros at gmail.com>
Signed-off-by: Kyle Evans <kevans at FreeBSD.org>
DeltaFile
+3-3include/zfs_crrd.h
+3-3module/zfs/zfs_crrd.c
+6-62 files

OpenZFS/src bc9ec31include zfs_crrd.h, module/zfs zfs_crrd.c

Add dbrrd_latest_time() to grab the latest timestamp in the db

Returns 0 if the database is empty, otherwise it returns the highest
value of the minutely db.  dbrrd_add() will already enforce the property
that these are monotonically increasing, so we won't try to second-guess
it.

Reviewed-by: Alexander Motin <alexander.motin at TrueNAS.com>
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Chris Longros <chris.longros at gmail.com>
Signed-off-by: Kyle Evans <kevans at FreeBSD.org>
DeltaFile
+16-0module/zfs/zfs_crrd.c
+1-0include/zfs_crrd.h
+17-02 files

OpenZFS/src fff9a0fmodule/os/freebsd/zfs zfs_vfsops.c

freebsd: set mnt_time on the rootfs at mountroot time

FreeBSD's vfs_mountroot() will collect `mnt_time` from every filesystem
that we mounted and use the highest timestamp as a source for the system
time if we didn't get anything from an attached RTC.

Use the rrd mechanism added to gather up a notion of the latest time
and set it on mnt_time.  If the timestamp db is empty, we just fallback
to the uberblock timestamp and hope that that is in the right ballpark.

Relevant: FreeBSD PR254058[0] reporting the problem downstream

[0] https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=254058

Reviewed-by: Alexander Motin <alexander.motin at TrueNAS.com>
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Reviewed-by: Chris Longros <chris.longros at gmail.com>
Signed-off-by: Kyle Evans <kevans at FreeBSD.org>
DeltaFile
+7-1module/os/freebsd/zfs/zfs_vfsops.c
+7-11 files