LLVM/project dd3a4edllvm/lib/Transforms/Scalar ConstraintElimination.cpp, llvm/test/Transforms/ConstraintElimination ne-tightening.ll

[ConstraintElim] Tighten bounds using inequalities with constants. (#213049)

Update ConstraintElimination to tighten existing bounds using
inequalities. Given an inequality %a != %b and %a >= %b, we can tighten
the fact to %a > %b.

For now this is limited to constant %b.

This helps to remove some checks in practice:
https://github.com/dtcxzyw/llvm-opt-benchmark-nightly/pull/819

Compile-time impact in the noise:
https://llvm-compile-time-tracker.com/compare.php?from=2f08dff5138a4ce908b6d4511a9439e859fedf86&to=fafe1d0d9d012654bc10e2b68d50ffe3b9fdbdcd&stat=instructions:u

PR: https://github.com/llvm/llvm-project/pull/213049
DeltaFile
+48-0llvm/lib/Transforms/Scalar/ConstraintElimination.cpp
+8-16llvm/test/Transforms/ConstraintElimination/ne-tightening.ll
+56-162 files

LLVM/project a2b26bbclang/test/CodeGenOpenCL builtins-amdgcn-raw-buffer-atomic-max.cl builtins-amdgcn-gfx13.cl, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add missing atomic-fmin-fmax-global to gfx13 feature map

fillAMDGCNFeatureMap omitted atomic-fmin-fmax-global-f32 and
atomic-fmin-fmax-global-f64 for gfx1310/gfx13-generic, so clang wrongly
rejected the raw_ptr_buffer_atomic_f{min,max}_f{32,64} builtins on those
targets even though the backend enables the features. Add them to the
gfx13 case.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+122-0llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-ptr-atomics.ll
+116-0llvm/test/CodeGen/AMDGPU/fp64-min-max-buffer-ptr-atomics.ll
+38-0clang/test/CodeGenOpenCL/builtins-amdgcn-gfx13.cl
+2-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+1-0clang/test/CodeGenOpenCL/builtins-amdgcn-raw-buffer-atomic-max.cl
+279-05 files

LLVM/project 50a6209llvm/lib/Target/AMDGPU SIISelLowering.cpp, llvm/test/CodeGen/AMDGPU clamp.ll

[AMDGPU] Canonicalize constant CLAMP source (#207902)

CLAMP lowers to v_max_f32, which canonicalizes its result: signaling
NaNs are quieted and denormals are flushed per the function denormal
mode

The constant fold returned the source unchanged, giving a different
result than the hardware. Route the folded constant through
getCanonicalConstantFP so it matches
DeltaFile
+17-18llvm/test/CodeGen/AMDGPU/clamp.ll
+1-1llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+18-192 files

LLVM/project ce3187acmake/Modules GetTripleCMakeSystemName.cmake, llvm/include/llvm/TargetParser TripleName.def

cmake: Derive CMake system name from a triple via new mechanism

This is a reimplementation of the cmake functionality first implemented in
6e4e181c83, which has now been reverted twice. Implement the raw cmake functionality
without introducing the uses yet.

The runtimes build needs to translate the build target (configured with a target
triple) to cmake's naming scheme, to use for CMAKE_SYSTEM_NAME. Use the OS/environment
list from TargetParser as the source of truth; add an additional entry for the
cmake name to ensure the build system and compiler always recognize the same set
of names.

Upgrade the previous cmake regexes to a new python script which parses the
authoritative def file. The new script logic should match Triple::normalize's
permissiveness for various legacy and malformed triple shapes. This should be
more maintainable than the previous cmake regexes, since there's now a unit test
mirroring the triple unit test.

Co-Authored-By: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+118-110llvm/include/llvm/TargetParser/TripleName.def
+208-0llvm/test/tools/TargetParser/get_triple_system_name_test.py
+148-0llvm/utils/get_triple_system_name.py
+40-0cmake/Modules/GetTripleCMakeSystemName.cmake
+4-4llvm/lib/TargetParser/Triple.cpp
+6-0llvm/test/tools/TargetParser/get-triple-system-name.test
+524-1146 files

FreeNAS/freenas 47581a9tests/sharing_protocols/iscsi test_266_iscsi_stale_enable_work.py

add tests for sysfs iscsi panic
DeltaFile
+179-0tests/sharing_protocols/iscsi/test_266_iscsi_stale_enable_work.py
+179-01 files

FreeBSD/ports 4d23d58devel/freebsd-git-mfc Makefile distinfo

devel/freebsd-git-mfc: Update to 0.20260730
DeltaFile
+5-5devel/freebsd-git-mfc/distinfo
+2-2devel/freebsd-git-mfc/Makefile
+7-72 files

LLVM/project bb7c7d1lldb/source/Plugins/ObjectFile/Minidump MinidumpFileBuilder.cpp, lldb/test/API/functionalities/process_save_core_minidump/size_mismatch Makefile main.cpp

[lldb][minidump] Fix Memory64List DataSize over-counting on a failed read (#212861)

**Issue:**
save-core records each range's DataSize from the value
ReadMemoryInChunks returns. That value counts bytes read from the
inferior even when the callback dropped them: a chunk that errors
part-way returns Stop before AddData, so the partially-read bytes are
counted but never written.

Because the Memory64List locates every range by the cumulative DataSize
of the preceding ranges, an over-counted DataSize desyncs the shared
data blob: the descriptors claim more bytes than the file holds and
every later range reads back corrupted.

**Fix**
Record the bytes actually written (total_bytes_read) as the range's size
so the descriptor DataSize matches the data in the blob.

**Test**

    [3 lines not shown]
DeltaFile
+107-0lldb/test/API/functionalities/process_save_core_minidump/size_mismatch/TestProcessSaveCoreMinidumpSizeMismatch.py
+42-0lldb/test/API/functionalities/process_save_core_minidump/size_mismatch/main.cpp
+10-2lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
+3-0lldb/test/API/functionalities/process_save_core_minidump/size_mismatch/Makefile
+162-24 files

FreeBSD/ports a6c55f2mail/mailgraph Makefile, mail/mailgraph/files patch-mailgraph.cgi

mail/mailgraph: Fix mailgraph.cgi for rrdtool 1.10.x

See also:       https://github.com/schweikert/mailgraph/pull/23

PR:             296712
Approved by:    maintainer timeout >2 weeks
MFH:            2026Q3

(cherry picked from commit 84b6f5ad5112ddf5ada4cc91c039ab9ac25a6c71)
DeltaFile
+42-0mail/mailgraph/files/patch-mailgraph.cgi
+1-1mail/mailgraph/Makefile
+43-12 files

FreeBSD/ports 84b6f5amail/mailgraph Makefile, mail/mailgraph/files patch-mailgraph.cgi

mail/mailgraph: Fix mailgraph.cgi for rrdtool 1.10.x

See also:       https://github.com/schweikert/mailgraph/pull/23

PR:             296712
Approved by:    maintainer timeout >2 weeks
MFH:            2026Q3
DeltaFile
+42-0mail/mailgraph/files/patch-mailgraph.cgi
+1-1mail/mailgraph/Makefile
+43-12 files

LLVM/project 3d94aebflang/lib/Evaluate intrinsics-library.cpp

[flang] Fix POSIX.1/XPG checks in intrinsics-library.cpp (#201072)

PR #201063 breaks the `flang` build on Solaris:

```
flang/lib/Evaluate/intrinsics-library.cpp:225:26: error: address of overloaded function 'acos' does not match required type '__float128 (__float128)'
flang/lib/Evaluate/intrinsics-library.cpp:225:26: error: address of overloaded function 'acos' does not match required type '_Complex __float128 (_Complex __float128)'

```

There are two problems here:
- The `__float128` support in `intrinsics-library.cpp` is guarded by the
POSIX.1 >= 2001/XPG >= 6 check, but only depends on `HAVE_QUADMATHLIB`.
- That check is done incorrectly: it tests for `_POSIX_C_SOURCE >=
200112L` or `_XOPEN_SOURCE >= 600`, which are no longer defined on
Solaris after the PR above. This check is due a misunderstanding of
those feature test macros: as detailed in [The Open Group Base
Specifications Issue 8, 2.2.1 POSIX.1
Symbols](https://pubs.opengroup.org/onlinepubs/9799919799/functions/V2_chap02.html),

    [14 lines not shown]
DeltaFile
+57-54flang/lib/Evaluate/intrinsics-library.cpp
+57-541 files

LLVM/project 5f10badllvm/lib/Transforms/Utils LoopUnroll.cpp, llvm/test/Transforms/LoopUnroll/branch-weights-freq unroll-partial-unconditional-latch.ll unroll-complete.ll

[LoopUnroll] Fix freqs for unconditional latches: N>2, uniform (#182405)

This patch introduces the command-line option `-unroll-uniform-weights`.
When computing probabilities for the remaining N conditional latches in
the unrolled loop after converting some iterations' latches to
unconditional, LoopUnroll now supports the following three strategies:

- A. If N <= 2, use a simple formula to compute a single uniform
  probability across those latches.
- B. Otherwise, if `-unroll-uniform-weights` is not specified, apply the
  original loop's probability to all N latches and then, as needed, adjust
  as few of them as possible.
- C. Otherwise, bisect the range [0,1] to find a single uniform
  probability across all N latches. This patch implements this strategy.

An issue with C is that it could impact compiler performance, so this
patch makes it opt-in. Its appeal over B is that it treats all latches
the same given that we have no evidence showing that any latch should
have a higher or lower probability than any other. A has neither

    [4 lines not shown]
DeltaFile
+187-74llvm/test/Transforms/LoopUnroll/branch-weights-freq/unroll-complete.ll
+100-15llvm/lib/Transforms/Utils/LoopUnroll.cpp
+48-20llvm/test/Transforms/LoopUnroll/branch-weights-freq/unroll-partial-unconditional-latch.ll
+335-1093 files

LLVM/project 40e33ebllvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPlanRecipes.cpp, llvm/test/Transforms/LoopVectorize hoist-predicated-loads-with-predicated-stores.ll

[VPlan] Set correct VPIRFlags for FP selects when sinking stores. (#212973)

Selects of floats carry fast-math flags. Update getDefaultFlags to take
the result type and use it to handle selects. I am planning on extending
this to other similar opcodes, including PHIs.

Then update sinkPredicatedStores to pass through the correct default
flags.

This fixes a crash in cse when intersecting common metadata.

Fixes https://github.com/llvm/llvm-project/issues/212811.

PR: https://github.com/llvm/llvm-project/pull/212973
DeltaFile
+85-0llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
+4-4llvm/lib/Transforms/Vectorize/VPlan.h
+6-1llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+4-2llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+99-74 files

LLVM/project 6e92d6dcompiler-rt/lib/sanitizer_common sanitizer_linux.cpp, compiler-rt/lib/tsan/go buildgo.sh

[tsan] Fix buildgo.sh on FreeBSD/NetBSD (#213047)

This patch fixes the remaining compile errors when running `ninja
check-all` on FreeBSD and NetBSD:

- `sanitizer_linux.cpp` doesn't compile on NetBSD, so this patch adds a
cast:
  ```
sanitizer_common/sanitizer_linux.cpp:2492:10: error: format specifies
type 'unsigned long long' but the argument has type '__greg_t' (aka
'unsigned long') [-Werror,-Wformat]
   ```

- `tsan_interface_atomic.cpp` doesn't compile on both FreeBSD and
NetBSD, so this patch disables the warning:
  ```
tsan_interface_atomic.cpp:353:12: error: unused function template
'NoTsanAtomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:358:12: error: unused function template

    [22 lines not shown]
DeltaFile
+12-0compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
+2-2compiler-rt/lib/tsan/go/buildgo.sh
+1-1compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
+15-33 files

FreeBSD/ports 09dcc88net/rsync-bpc distinfo Makefile

net/rsync-bpc: Update 3.1.3.0 => 3.1.3.2

Changelog:
https://github.com/backuppc/rsync-bpc/blob/3.1.3.2/NEWS

PR:             296990
Reported by:    Alexander Moisseev <moiseev at mezonplus.ru> (maintainer)
Approved by:    osa, vvd (Mentors, implicit)
MFH:            2026Q3

(cherry picked from commit d2315edfb619107820a863976c560a399d74317b)
DeltaFile
+3-3net/rsync-bpc/distinfo
+4-2net/rsync-bpc/Makefile
+7-52 files

FreeBSD/ports d2315ednet/rsync-bpc distinfo Makefile

net/rsync-bpc: Update 3.1.3.0 => 3.1.3.2

Changelog:
https://github.com/backuppc/rsync-bpc/blob/3.1.3.2/NEWS

PR:             296990
Reported by:    Alexander Moisseev <moiseev at mezonplus.ru> (maintainer)
Approved by:    osa, vvd (Mentors, implicit)
MFH:            2026Q3
DeltaFile
+3-3net/rsync-bpc/distinfo
+4-2net/rsync-bpc/Makefile
+7-52 files

LLVM/project ba11185clang/include/clang/Basic DiagnosticCommonKinds.td, clang/lib/CodeGen CGOpenMPRuntimeGPU.cpp

clang: Use proper error for unified shared memory openmp error

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+3-5clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
+1-1clang/test/OpenMP/requires_codegen.cpp
+2-0clang/include/clang/Basic/DiagnosticCommonKinds.td
+6-63 files

Linux/linux 3708dd9drivers/acpi cppc_acpi.c, drivers/cpufreq powernow-k8.c amd-pstate.c

Merge tag 'pm-7.2-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm

Pull power management fixes from Rafael Wysocki:
 "These fix issues related to cpufreq, in the ACPI CPPC library and the
  generic CPPC cpufreq driver, in the powernow-k8 and amd-pstate
  drivers, and in the schedutil governor:

   - Allow fast frequency switching in the ACPI CPPC library only when
     every supported control used by the driver callback has an address
     space already accepted for fast access (Christian Loehle)

   - Skip writes to unsupported performance controls in the ACPI CPPC
     library (Christian Loehle)

   - Update cppc_cpufreq_update_perf_limits() to read policy->min and
     policy->max once and, if the lockless snapshot is inconsistent,
     reduce the minimum to the observed maximum, along the lines of
     cpufreq_driver_resolve_freq() (Christian Loehle)


    [24 lines not shown]
DeltaFile
+24-11drivers/cpufreq/cppc_cpufreq.c
+21-8drivers/acpi/cppc_acpi.c
+11-0kernel/sched/cpufreq_schedutil.c
+7-1drivers/cpufreq/amd-pstate.c
+3-2include/acpi/cppc_acpi.h
+1-0drivers/cpufreq/powernow-k8.c
+67-226 files

FreeBSD/ports 3ad8cafdevel/libudev-devd Makefile distinfo

devel/libudev-devd: Update to 0.7.0

The update adds evdev and DRM enumeration in jails via sysctl.
Also it makes the monitor fd non-blocking.

PR:             296887
DeltaFile
+3-3devel/libudev-devd/distinfo
+1-1devel/libudev-devd/Makefile
+4-42 files

LLVM/project 1562871clang/lib/CodeGen CGOpenMPRuntimeGPU.cpp

clang: Use NVPTX TargetParser for OpenMP unified-addressing check (#212746)

processRequiresDirective enumerated every OffloadArch value in a switch
only to error on nvptx architectures older than sm_60. Replace it with
NVPTX::supportsUnifiedAddressing() applied to the parsed target CPU so
we don't need to keep adding cases here every time a new target is
added.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+8-120clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
+8-1201 files

LLVM/project 0e42c87clang/lib/Basic Cuda.cpp, llvm/include/llvm/TargetParser NVPTXTargetParser.h NVPTXTargetParser.def

NVPTX: Add target names in TargetParser (#212734)

Track the canonical sm name and other target information.
This will eventually be used to reduce the pain of maintaining
OffloadArch in clang; all of the disjoint targets share an
enum which makes target specific covered switches annoying.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+24-156clang/lib/Basic/Cuda.cpp
+73-0llvm/lib/TargetParser/NVPTXTargetParser.cpp
+71-0llvm/include/llvm/TargetParser/NVPTXTargetParser.def
+69-0llvm/include/llvm/TargetParser/NVPTXTargetParser.h
+68-0llvm/unittests/TargetParser/NVPTXTargetParserTest.cpp
+1-0llvm/lib/TargetParser/CMakeLists.txt
+306-1563 files not shown
+309-1569 files

LLVM/project 5b897d9mlir/lib/Dialect/Quant/IR QuantTypes.cpp

Fix classof implementation for QuantizedType (#213014)

This PR aims to fix the misleading implementation of `classof` which
accepted as a `QuantizedType` every type registered under the
`QuantDialect.`

The now updated implementation makes the checks more restrictive,
allowing only direct subtypes of `QuantizedType` to be recognized as a
`QuantizedType,` therefore preventing `QuantileType` and other types
that are registered under `QuantDialect` to be seen as a subtype of
`QuantizedType` and wrongfully use its methods which might lead to
potential crashes.
DeltaFile
+3-1mlir/lib/Dialect/Quant/IR/QuantTypes.cpp
+3-11 files

LLVM/project 459bd2fllvm/lib/Target/AMDGPU SIInstructions.td SIISelLowering.cpp

[AMDGPU] Rename packed 64-bit features to include SingleSGPR. NFCI.
DeltaFile
+9-9llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+12-6llvm/lib/Target/AMDGPU/AMDGPU.td
+8-8llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+4-4llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+2-2llvm/lib/Target/AMDGPU/SIInstructions.td
+2-2llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+37-313 files not shown
+43-339 files

LLVM/project c46282cllvm/lib/Target/AMDGPU VOP3PInstructions.td AMDGPUTargetTransformInfo.cpp, llvm/lib/Target/AMDGPU/Utils AMDGPUBaseInfo.cpp

[AMDGPU] Duplicate packed fp32 instructions

These have different semantics on gfx9 and gfx12 with respect to
scalar operands.
DeltaFile
+21-9llvm/lib/Target/AMDGPU/SIInstructions.td
+9-9llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+7-7llvm/lib/Target/AMDGPU/AMDGPUTargetTransformInfo.cpp
+9-4llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+6-6llvm/test/CodeGen/AMDGPU/bug-pk-f32-imm-fold.mir
+5-5llvm/test/CodeGen/AMDGPU/coexec-sched-effective-stall.mir
+57-409 files not shown
+89-5415 files

FreeBSD/ports bfb66d1multimedia/py-guessit Makefile distinfo

multimedia/py-guessit: Update to 4.2.1

ChangeLog:      https://github.com/guessit-io/guessit/releases/tag/v4.2.1
                https://github.com/guessit-io/guessit/releases/tag/v4.2.0
DeltaFile
+3-3multimedia/py-guessit/distinfo
+1-1multimedia/py-guessit/Makefile
+4-42 files

LLVM/project 200d55cllvm/test/Transforms/SandboxVectorizer topdown_vec.ll external_uses.ll

Nits, remove topdown vec checks from external_uses.ll
DeltaFile
+0-68llvm/test/Transforms/SandboxVectorizer/external_uses.ll
+18-18llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+18-862 files

LLVM/project e32d061llvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp

Add a cl::opt to limit the number of users visited
DeltaFile
+12-1llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+12-11 files

LLVM/project ce71db6llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

Remove stores
DeltaFile
+34-207llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+34-2071 files

LLVM/project d28df1allvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp, llvm/test/Transforms/SandboxVectorizer topdown_vec.ll

[SBVec] Track claimed users across bundles
DeltaFile
+38-13llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+13-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+51-162 files

LLVM/project b135bf9llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer VecUtils.h, llvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp

Refactor getNextUserBundles
DeltaFile
+179-97llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+41-63llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+20-11llvm/unittests/Transforms/Vectorize/SandboxVectorizer/VecUtilsTest.cpp
+2-0llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
+242-1714 files

LLVM/project b627ee1llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer VecUtils.h, llvm/lib/Transforms/Vectorize/SandboxVectorizer VecUtils.cpp

Pass Claimed by ref to getNextUserBundles

A user should not be claimed by multiple successful
bundles. Added a test for this.
DeltaFile
+60-7llvm/test/Transforms/SandboxVectorizer/topdown_vec.ll
+3-3llvm/lib/Transforms/Vectorize/SandboxVectorizer/VecUtils.cpp
+3-1llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
+2-1llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
+68-124 files