LLVM/project 66b644emlir/include/mlir-c Rewrite.h, mlir/test/CAPI rewrite.c

Address review: fix stale InsertPoint header comment, test all restore branches
DeltaFile
+16-2mlir/test/CAPI/rewrite.c
+2-2mlir/include/mlir-c/Rewrite.h
+18-42 files

LLVM/project cdec735libc/docs index.md, libc/docs/_static llvm_libc_logo.svg

[libc][docs] Add logo to website (#213120)

Add the excellent new logo drawn by @ajordanr-google to the homepage.
DeltaFile
+705-0libc/docs/_static/llvm_libc_logo.svg
+8-0libc/docs/index.md
+713-02 files

LLVM/project 79f9cdalldb/unittests/Utility ArchSpecTest.cpp

[lldb] Add a unit test for Wasm architecture compatibility (#213070)

A Wasm module encodes neither a vendor nor an OS, so ObjectFileWasm
reports a bare wasm32 or wasm64 architecture. That keeps an on-disk
module compatible with the more specific triple a Wasm runtime reports
at launch, which lets the dynamic loader reuse the module instead of
reparsing it from process memory. An over-specified triple, including
one that spells out an unknown vendor and OS, does not match, because an
explicitly specified component still counts as specified.
DeltaFile
+26-0lldb/unittests/Utility/ArchSpecTest.cpp
+26-01 files

LLVM/project b75ab58llvm/lib/Target/AMDGPU SOPInstructions.td, llvm/test/CodeGen/AMDGPU s_cmp_0.ll s_bcnt0.ll

[AMDGPU] Match bitsin(typeof(x)) - ctpop(x) to s_bcnt0_i32 (#164847)

This PR optimizes the pattern bitsin(typeof(x)) - popcnt(x) to
s_bcnt0_i32 on AMDGPU. It also creates a Clang builtin for s_bcnt0_i32
so that users can call this instruction directly instead of relying on
the compiler to match this pattern.
DeltaFile
+81-0llvm/test/CodeGen/AMDGPU/s_bcnt0.ll
+10-1llvm/lib/Target/AMDGPU/SOPInstructions.td
+3-6llvm/test/CodeGen/AMDGPU/s_cmp_0.ll
+94-73 files

FreeBSD/ports e05e837graphics/librsvg2 distinfo pkg-plist, graphics/librsvg2/files patch-rsvg-private.h

graphics/librsvg2: the port had been updated to version 2.40.23

- Switch to USE_GITLAB/GL_* because it is tagged-only release
- Drop needless GNU_CONFIGURE_MANPREFIX and `localbase' from
  the USES list
- Rewrite regex in `post-patch' target so it produces identical
  result, but is shorter and more correct (escape the dot)
- Drop the DOCS option which does nothing after HTML files and
  images no longer come with the distfile and USES+=gnomeprefix
  forces the --disable-gtk-doc anyway (however, dependency on
  textproc/gtk-doc is required for GTK_DOC_CHECK macro in the
  configure.ac, so keep it but adjust accordingly)

PR:             295743
Reviewed by:    arrowd
DeltaFile
+14-16graphics/librsvg2/Makefile
+1-21graphics/librsvg2/pkg-plist
+0-10graphics/librsvg2/files/patch-rsvg-private.h
+3-3graphics/librsvg2/distinfo
+18-504 files

LLVM/project b6e3037offload/unittests/OffloadAPI/program olCreateProgram.cpp

[offload][lit] Disable failing olCreateProgram test on AMD (#213126)

Fails with an error about not being able to find `lld`. AMD team is
investigating, but disable the test in the meantime.

Context: https://github.com/llvm/llvm-project/pull/212860

Signed-off-by: Nick Sarnie <nick.sarnie at intel.com>
DeltaFile
+1-0offload/unittests/OffloadAPI/program/olCreateProgram.cpp
+1-01 files

LLVM/project 813ccbellvm/lib/Transforms/InstCombine InstCombineSelect.cpp, llvm/test/Transforms/InstCombine minmax-fp-loop-carried.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+242-0llvm/test/Transforms/InstCombine/minmax-fp-loop-carried.ll
+31-6llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
+273-62 files

LLVM/project 136cd43clang/include/clang/DependencyScanning DependencyScanningWorker.h DependencyScannerImpl.h, clang/lib/DependencyScanning CMakeLists.txt DependencyScanningWorker.cpp

Move implementation details to DependencyScanningWorker.cpp and dissolve DependencyScannerImpl.h/cpp.
DeltaFile
+0-525clang/lib/DependencyScanning/DependencyScannerImpl.cpp
+493-1clang/lib/DependencyScanning/DependencyScanningWorker.cpp
+0-89clang/include/clang/DependencyScanning/DependencyScannerImpl.h
+12-2clang/include/clang/DependencyScanning/DependencyScanningWorker.h
+0-1clang/lib/Tooling/DependencyScanningTool.cpp
+0-1clang/lib/DependencyScanning/CMakeLists.txt
+505-6193 files not shown
+506-6219 files

LLVM/project bdf0e78llvm/lib/Target/X86 X86ISelLowering.cpp

X86: Simplify the EH_LABEL Expand condition

Re-express the opt-out handling of EH_LABEL. The special
case is 32-bit non-GNU Windows, and the net result is to skip
printing unused labels. Try to make this more comprehensible
to help figure out where this logic should really be.
I want to eliminate use of the TargetOptions::ExceptionModel,
which ideally wouldn't be needed in a TargetLowering
constructor.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+3-3llvm/lib/Target/X86/X86ISelLowering.cpp
+3-31 files

LLVM/project 4304020llvm/lib/Transforms/Vectorize VPlanConstruction.cpp LoopVectorizationPlanner.h

[VPlan] Migrate VPBuilder to VPInsertPt fully (NFC) (#209764)

There is already a VPInsertPoint in VPBuilder which is used just with
InsertPointGuard. In order to share code, migrate VPBuilder to fully use
VPInsertPoint as the canonical insertion point.
DeltaFile
+56-74llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+2-2llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
+58-762 files

FreeNAS/freenas ba60a7etests/sharing_protocols/iscsi test_266_iscsi_stale_enable_work.py

add tests for sysfs iscsi panic
DeltaFile
+4-3tests/sharing_protocols/iscsi/test_266_iscsi_stale_enable_work.py
+4-31 files

LLVM/project 1ccec89llvm/lib/Transforms/IPO WholeProgramDevirt.cpp LowerTypeTests.cpp, llvm/test/ThinLTO/X86 devirt_function_alias2.ll

[CFI] Create an external linkage alias instead of promoting internals
DeltaFile
+19-32llvm/lib/Transforms/IPO/ThinLTOBitcodeWriter.cpp
+35-0llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+24-5llvm/lib/Transforms/IPO/WholeProgramDevirt.cpp
+29-0llvm/test/Transforms/LowerTypeTests/promoted-internal.ll
+10-7llvm/test/Transforms/ThinLTOBitcodeWriter/comdat.ll
+6-4llvm/test/ThinLTO/X86/devirt_function_alias2.ll
+123-484 files not shown
+134-5610 files

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

clang: Use proper error for unified shared memory openmp error (#212750)

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

LLVM/project aae5b3fcompiler-rt/lib/scudo/standalone primary64.h

[scudo] Fix GCC build after 212604 (#212904)

Change #212604 introduced an issue when building with gcc where it
complains there are "too few template-parameter-lists" (see log:

https://lab.llvm.org/buildbot/#/builders/131/builds/51269/steps/6/logs/stdio
)
This PR fixes the build.

Assisted-by: Automated tooling, human reviewed.
DeltaFile
+3-2compiler-rt/lib/scudo/standalone/primary64.h
+3-21 files

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

LLVM/project 1447d6dclang/include/clang/DependencyScanning DependencyScannerImpl.h, clang/lib/DependencyScanning DependencyScannerImpl.cpp DependencyScanningWorker.cpp

Use CompilerInstanceWithContext for TU scanning.
DeltaFile
+315-38clang/lib/DependencyScanning/DependencyScanningWorker.cpp
+0-293clang/lib/DependencyScanning/DependencyScannerImpl.cpp
+35-0clang/unittests/Tooling/DependencyScannerTest.cpp
+0-27clang/include/clang/DependencyScanning/DependencyScannerImpl.h
+1-0clang/test/ClangScanDeps/logging-simple.c
+351-3585 files

LLVM/project cb4599eclang/test/CodeGenOpenCL builtins-amdgcn-global-load-store.cl, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add missing flat-global-insts to gfx13 frontend feature map

fillAMDGCNFeatureMap omitted flat-global-insts for gfx1310/gfx13-generic,
so clang wrongly rejected __builtin_amdgcn_av_load_b128 /
__builtin_amdgcn_av_store_b128 on those targets even though the backend
enables the feature. Add it to the gfx13 case.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+3,291-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.av.load.b128.ll
+1-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+1-0clang/test/CodeGenOpenCL/builtins-amdgcn-global-load-store.cl
+3,293-03 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 334f18eclang/test/CodeGenOpenCL builtins-amdgcn-gfx13.cl, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add missing msad-insts to gfx13 frontend feature map

fillAMDGCNFeatureMap omitted msad-insts for gfx1310/gfx13-generic, so
clang wrongly rejected __builtin_amdgcn_msad_u8 on those targets even
though the backend enables the feature (FeatureGFX9 generation, inherited
through FeatureGFX13). Add it to the gfx13 case.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+23-0clang/test/CodeGenOpenCL/builtins-amdgcn-gfx13.cl
+7-2llvm/test/CodeGen/AMDGPU/llvm.amdgcn.msad.u8.ll
+1-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+31-23 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 747ab7aclang/test/CodeGenOpenCL builtins-amdgcn-gfx13.cl, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add missing mqsad-pk-insts to gfx13 frontend feature map

fillAMDGCNFeatureMap omitted mqsad-pk-insts for gfx1310/gfx13-generic, so
clang wrongly rejected __builtin_amdgcn_mqsad_pk_u16_u8 on those targets
even though the backend enables the feature. Add it to the gfx13 case.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+23-0clang/test/CodeGenOpenCL/builtins-amdgcn-gfx13.cl
+7-2llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mqsad.pk.u16.u8.ll
+1-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+31-23 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