LLVM/project 8db1f64mlir/include/mlir/Reducer Tester.h, mlir/lib/Reducer OptReductionPass.cpp Tester.cpp

[mlir][reducer] Remove the restriction that OptReductionPass must be a ModuleOp (#189038)

This PR aims to make the pass more generic by removing the ModuleOp
restriction. This PR reimplements the logic using a standalone
PassManager. Additionally, the isInteresting method has been updated to
accept Operation* for better flexibility. Finally, a dedicated test
directory has been added to improve the organization of OptReductionPass
tests.
DeltaFile
+15-18mlir/lib/Reducer/OptReductionPass.cpp
+17-0mlir/test/mlir-reduce/opt-reduction/dce-test.mlir
+0-17mlir/test/mlir-reduce/dce-test.mlir
+16-0mlir/test/mlir-reduce/opt-reduction/cse-test.mlir
+3-3mlir/lib/Reducer/Tester.cpp
+1-1mlir/include/mlir/Reducer/Tester.h
+52-392 files not shown
+53-428 files

NetBSD/pkgsrc-wip 5935eeatangled-git distinfo go-modules.mk

tangled-git: update go modules
DeltaFile
+306-258tangled-git/distinfo
+102-86tangled-git/go-modules.mk
+408-3442 files

LLVM/project 5347990clang/include/clang/CIR MissingFeatures.h, clang/include/clang/CIR/Dialect/IR CIROps.td

[CIR] Remove OpenCLKernel enum and updated the ordering to match llvm::CallingConv
DeltaFile
+8-8clang/include/clang/CIR/Dialect/IR/CIROps.td
+0-4clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+0-1clang/include/clang/CIR/MissingFeatures.h
+8-133 files

LLVM/project df48719llvm/lib/Target/AMDGPU AMDGPULowerKernelArguments.cpp, llvm/test/CodeGen/AMDGPU lower-kernel-arguments-noalias-call-no-ptr-args.ll

[AMDGPU] Add !noalias metadata to mem-accessing calls w/o pointer args (#188949)

addAliasScopeMetadata in AMDGPULowerKernelArguments skips instructions
with empty PtrArgs, including memory-accessing calls that have no
pointer arguments (e.g. builtins like threadIdx()). Because these calls
never receive !noalias metadata, ScopedNoAliasAA cannot prove they don't
alias noalias kernel arguments. MemorySSA then conservatively reports
them as clobbers, which prevents AMDGPUAnnotateUniformValues from
marking loads as noclobber, blocking scalarization (s_load) and forcing
expensive vector loads (global_load) instead.

Fix by adding all noalias kernel argument scopes to !noalias metadata
for memory-accessing instructions with no pointer arguments. Since such
instructions cannot access memory through any kernel pointer argument,
all noalias scopes are safe to apply.

This fixes a performance regression in rocFFT introduced by bd9668df0f00
("[AMDGPU] Propagate alias information in AMDGPULowerKernelArguments").

Assisted-by: Claude Opus
DeltaFile
+133-0llvm/test/CodeGen/AMDGPU/lower-kernel-arguments-noalias-call-no-ptr-args.ll
+51-39llvm/lib/Target/AMDGPU/AMDGPULowerKernelArguments.cpp
+184-392 files

LLVM/project e09d1e3llvm/lib/Transforms/Vectorize VPlanTransforms.cpp

[VPlan] Use not_equal_to to improve code (NFC) (#190262)
DeltaFile
+1-1llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+1-11 files

LLVM/project a1b303eclang/lib/CIR/Dialect/Transforms LoweringPrepare.cpp

unreachable on RDC compilation
DeltaFile
+2-1clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
+2-11 files

LLVM/project 24bcb78clang/lib/CIR/Dialect/Transforms LoweringPrepare.cpp

fix undefined void ty
DeltaFile
+1-0clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
+1-01 files

LLVM/project f3e629bclang/lib/CIR/Dialect/Transforms LoweringPrepare.cpp, clang/test/CIR/CodeGenCUDA device-stub.cu

[CIR][CUDA] Handle CUDA module constructor and destructor emission.
DeltaFile
+122-2clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
+41-0clang/test/CIR/CodeGenCUDA/device-stub.cu
+163-22 files

OpenBSD/ports vCR0kfqsysutils/exoscale-cli distinfo Makefile

   Update to exoscale-cli-1.94.0.
VersionDeltaFile
1.145+2-2sysutils/exoscale-cli/distinfo
1.148+1-1sysutils/exoscale-cli/Makefile
+3-32 files

LLVM/project a52a504clang-tools-extra/clang-doc Representation.h

[clang-doc] Prepare Info types for Arena allocation (#190046)

To allocate Info structures directly in an Arena, they cannot have
members with nontrivial destructors, or we will leak memory. Before we
migrate them, we can replace growable vector types with intrusive lists.

This introduces some slight overhead as these types now have new pointer
members for use in ilists in later patches.

| Metric | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Time | 920.5s | 1005.7s | 1010.5s | +9.8% | +0.5% |
| Memory | 86.0G | 42.1G | 42.9G | -50.2% | +1.8% |

| Benchmark | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |
| BM_BitcodeReader_Scale/10 | 67.9us | 68.6us | 69.2us | +1.9% | +0.9% |
| BM_BitcodeReader_Scale/10000 | 70.5ms | 21.3ms | 21.9ms | -68.9% |
+2.8% |

    [32 lines not shown]
DeltaFile
+9-8clang-tools-extra/clang-doc/Representation.h
+9-81 files

HardenedBSD/ports 208996bfilesystems/mcp-server-filesystem pkg-plist Makefile, filesystems/mcp-server-filesystem/files package-lock.json

Merge branch 'freebsd/main' into hardenedbsd/main
DeltaFile
+15,858-0www/mcp-server-browserbase/pkg-plist
+4,186-0www/mcp-server-browserbase/files/package-lock.json
+4,026-0filesystems/mcp-server-filesystem/pkg-plist
+1,607-0filesystems/mcp-server-filesystem/files/package-lock.json
+52-0www/mcp-server-browserbase/Makefile
+52-0filesystems/mcp-server-filesystem/Makefile
+25,781-028 files not shown
+26,019-1534 files

OpenBSD/ports SgWSuUesecurity/pinentry Makefile, security/pinentry/patches patch-configure

   Respect PICFLAG to fix pinentry-qt5 build on sparc64 and friends

   The build system wrongfully assumes that -fpic is enough, thereby
   overriding our -fPIE defaults and resulting in relocation overflow.

   ok ajacoutot@ (co-maintainer)
VersionDeltaFile
1.3+21-21security/pinentry/patches/patch-configure
1.44+3-2security/pinentry/Makefile
+24-232 files

NetBSD/pkgsrc u24ReLnprint/tex-context-legacy distinfo Makefile, print/tex-context-legacy-doc distinfo Makefile

   tex-context-legacy{,-doc}: update to 2026

   changes unknown
VersionDeltaFile
1.6+3-3print/tex-context-legacy-doc/distinfo
1.6+3-3print/tex-context-legacy/distinfo
1.6+3-3print/tex-context-legacy-doc/Makefile
1.6+2-2print/tex-context-legacy/Makefile
+11-114 files

LLVM/project f919a8bclang/include/clang/CIR/Dialect/IR CIROps.td

[CIR] Add calling convention values to CIR_CallingConv
DeltaFile
+8-3clang/include/clang/CIR/Dialect/IR/CIROps.td
+8-31 files

LLVM/project bb53a86clang/include/clang/CIR/Dialect/IR CIROps.td, clang/lib/CIR/CodeGen CIRGenModule.cpp

[CIR] Add calling_conv attribute to FuncOp with lowering support
DeltaFile
+38-0clang/test/CIR/IR/calling-conv.cir
+34-0clang/test/CIR/Lowering/calling-conv.cir
+23-5clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+24-1clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+16-1clang/include/clang/CIR/Dialect/IR/CIROps.td
+5-6clang/lib/CIR/CodeGen/CIRGenModule.cpp
+140-133 files not shown
+143-219 files

LLVM/project ccde14aclang/include/clang/CIR MissingFeatures.h, clang/lib/CIR/CodeGen CIRGenModule.cpp CIRGenItaniumCXXABI.cpp

[CIR] Restore MissingFeatures asserts and fix OpenCLKernel handling
DeltaFile
+6-5clang/lib/CIR/CodeGen/CIRGenModule.cpp
+5-1clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
+3-1clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+2-1clang/lib/CIR/CodeGen/CIRGenCall.cpp
+2-0clang/include/clang/CIR/MissingFeatures.h
+18-85 files

LLVM/project ff7b357clang-tools-extra/clang-doc Representation.cpp Representation.h, clang-tools-extra/clang-doc/tool ClangDocMain.cpp

[clang-doc] Merge data into persistent memory

We have a need for persistent memory for the final info. Since each
group processes a single USR at a time, every USR is only ever processed by
a single thread from the thread pool. This means that we can keep per
thread persistent storage for all the info. There is significant
duplicated data between all the serialized records, so we can just merge
the final/unique items into the persistent arena, and clear out the
scratch/transient arena as we process each record in the bitcode.

The patch adds some APIs to help with managing the data, merging, and
allocation of data in the correct arena. It also safely merges and deep
copies data from the transient arenas into persistent storage that is
never reset until the program completes.

This patch reduces memory by another % over the previous patches,
bringing the total savings over the baseline to 57%. Runtime performance
and benchmarks stay mostly flat with modest improvements.


    [31 lines not shown]
DeltaFile
+134-10clang-tools-extra/clang-doc/Representation.cpp
+25-25clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+7-0clang-tools-extra/clang-doc/Representation.h
+166-353 files

LLVM/project ae9905eclang-tools-extra/clang-doc Representation.cpp Representation.h

[clang-doc] Support deep copy between arenas for merging

Upcoming changes to the merge step will necessitate that we clear the
transient arenas and merge new items into the persistent arena. However
there are some challenges with that, as the existing types typically
don't want to be copied. We introduce some new APIs to simplify that
task and ensure we don't accidentally leak memory.

On the performance front, we reclaim about 2% of the overhead, bringing
the cumulative overhead from the series of patches down to about 7% over
the baseline.

| Metric | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Time | 920.5s | 1014.5s | 991.5s | +7.7% | -2.3% |
| Memory | 86.0G | 39.9G | 40.0G | -53.4% | +0.3% |

| Benchmark | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |

    [28 lines not shown]
DeltaFile
+140-21clang-tools-extra/clang-doc/Representation.cpp
+30-0clang-tools-extra/clang-doc/Representation.h
+170-212 files

LLVM/project c02aa6cclang-tools-extra/clang-doc BitcodeReader.cpp Serialize.cpp, clang-tools-extra/unittests/clang-doc SerializeTest.cpp MergeTest.cpp

[clang-doc] Move Info types into arenas

Info types used to own significant chunks of data. As we move these into
local arenas, these types must be trivially destructible, to avoid
leaking resources when the arena is reset. Unfortunaly, there isn't a
good way to transition all the data types one at a time, since most of
them are tied together in some way. Further, as they're now allocated in
the arenas, they often cannot be treated the same way, and even the
aliases and interfaces put in pLace to simplify the transition cannot
cover the full range of changes required.

We also use some SFINAE tricks to avoid adding boilerplate for helper
APIs, we'd otherwise ahve to support

Though it introduces some additional churn, we also try to keep tests
from using arena allocation as much as possible, since this is not
required to test the implementation of the library. As much of the test
code needed to be rewritten anyway, we take the opportunity to
transition now.

    [41 lines not shown]
DeltaFile
+419-187clang-tools-extra/clang-doc/BitcodeReader.cpp
+246-189clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
+196-129clang-tools-extra/unittests/clang-doc/MergeTest.cpp
+176-80clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
+137-75clang-tools-extra/clang-doc/Serialize.cpp
+71-41clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
+1,245-70114 files not shown
+1,662-95220 files

LLVM/project 05a58efclang-tools-extra/clang-doc Representation.cpp Representation.h, clang-tools-extra/unittests/clang-doc MergeTest.cpp ClangDocTest.cpp

[clang-doc] Migrate Namespaces to arena allocation

This patch allocates the NamespaceInfo types in the local arenas, and
adapts the merging logic for the new list type and its children.
Memory use and performance improve slightly. Micro-benchmarks show a
regression in merge operations due to the more complex list operations.

 ## Build Clang-Doc Documentation
| Metric | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Time | 920.5s | 1009.2s | 1002.4s | +8.9% | -0.7% |
| Memory | 86.0G | 43.2G | 43.9G | -49.0% | +1.6% |

 ## Microbenchmarks (Filtered for >1% Delta)
| Benchmark | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |
| BM_BitcodeReader_Scale/10 | 67.9us | 69.7us | 69.3us | +1.9% | -0.7% |
| BM_BitcodeReader_Scale/10000 | 70.5ms | 22.3ms | 24.8ms | -64.8% | +11.4% |
| BM_BitcodeReader_Scale/4096 | 23.2ms | 4.7ms | 4.4ms | -80.9% | -5.7% |

    [22 lines not shown]
DeltaFile
+26-1clang-tools-extra/clang-doc/Representation.cpp
+8-8clang-tools-extra/unittests/clang-doc/MergeTest.cpp
+7-3clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
+8-2clang-tools-extra/clang-doc/Representation.h
+6-3clang-tools-extra/clang-doc/JSONGenerator.cpp
+4-4clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
+59-217 files not shown
+83-3713 files

LLVM/project d82b1d0clang-tools-extra/clang-doc Generators.h ClangDoc.cpp, clang-tools-extra/clang-doc/benchmarks ClangDocBenchmark.cpp

[clang-doc] Move non-arena allocated types off the OwnedPtr alias

Some types should not be using this alias, which was over applied to
APIs that wont participate in arena style allocation. This patch
restores them to their correct spelling.
DeltaFile
+7-7clang-tools-extra/clang-doc/Generators.h
+4-4clang-tools-extra/clang-doc/ClangDoc.cpp
+4-4clang-tools-extra/clang-doc/MDMustacheGenerator.cpp
+3-3clang-tools-extra/clang-doc/HTMLGenerator.cpp
+2-2clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
+1-1clang-tools-extra/clang-doc/ClangDoc.h
+21-211 files not shown
+22-227 files

LLVM/project f8a70b4clang-tools-extra/clang-doc BitcodeReader.cpp Serialize.cpp, clang-tools-extra/unittests/clang-doc MDGeneratorTest.cpp BitcodeTest.cpp

[clang-doc] Make CommentInfo arena allocated

This patch move the CommentInfo type into the arena. It updates block
handling to collect child info types and serialize the array in one
shot.

We also clean up the test code to avoid using the arenas in the tests.
This has the upside of making the test more hermetic, and avoids churn
in the related code as the allocation API interfaces evolve.

Performance and memory usage regress slightly. This is somewhat expected
as we do not yet aggressively release short term memory during merge
operations. Future patches will reclaim this overhead.

| Metric | Baseline | Prev | This | Culm% | Seq% |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Time | 920.5s | 998.5s | 1010.5s | +9.8% | +1.2% |
| Memory | 86.0G | 43.8G | 47.8G | -44.4% | +9.2% |


    [26 lines not shown]
DeltaFile
+124-94clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
+70-111clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
+66-103clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
+15-30clang-tools-extra/unittests/clang-doc/MergeTest.cpp
+17-9clang-tools-extra/clang-doc/BitcodeReader.cpp
+15-5clang-tools-extra/clang-doc/Serialize.cpp
+307-3526 files not shown
+345-37012 files

LLVM/project edb0f7aclang-tools-extra/clang-doc Representation.h

[clang-doc] Enforce arena allocated types are trivially destructible

We can enforce at compile-time that the types we want to place in the
arenas are always safe to allocate there.
DeltaFile
+26-0clang-tools-extra/clang-doc/Representation.h
+26-01 files

LLVM/project d5d616dclang-tools-extra/clang-doc BitcodeReader.cpp BitcodeReader.h

[clang-doc] Simplify parsing and reading bitcode blocks

Much of the logic int he readBlock implementation is boilerplate, and is
repeated for each implementation/specialization. This will become much
worse as we introduce new custom block reading logic as we migrate
towards arena allocation. In preparation for that, we're introducing the
change in logic now, which should make later refactoring much more
straightforward.
DeltaFile
+103-120clang-tools-extra/clang-doc/BitcodeReader.cpp
+5-0clang-tools-extra/clang-doc/BitcodeReader.h
+1-1clang-tools-extra/clang-doc/Representation.h
+109-1213 files

LLVM/project 6770666clang-tools-extra/clang-doc Representation.cpp

[clang-doc] Consolidate merging logic

As we migrate things in the arena, this logic may get more complex.
Factoring it out now, will give clear extension points to make this
easier to manage.
DeltaFile
+10-9clang-tools-extra/clang-doc/Representation.cpp
+10-91 files

LLVM/project e73ea23clang-tools-extra/clang-doc BitcodeWriter.cpp

clang-format
DeltaFile
+1-1clang-tools-extra/clang-doc/BitcodeWriter.cpp
+1-11 files

NetBSD/pkgsrc qfJdZQyprint/tex-context PLIST distinfo, print/tex-context-doc PLIST distinfo

   tex-context{,-doc}: update to 20260325

   changes unknown
VersionDeltaFile
1.19+7-1print/tex-context/PLIST
1.20+5-3print/tex-context-doc/PLIST
1.24+3-3print/tex-context/distinfo
1.24+3-3print/tex-context-doc/distinfo
1.34+2-2print/tex-context/Makefile
1.24+2-2print/tex-context-doc/Makefile
+22-146 files

OpenBSD/ports Cpbqb8ymisc/hwdata distinfo Makefile

   Update to hwdata-0.406.
VersionDeltaFile
1.130+2-2misc/hwdata/distinfo
1.132+1-1misc/hwdata/Makefile
+3-32 files

LLVM/project 07ba9a7clang-tools-extra/clang-doc Representation.cpp Representation.h, clang-tools-extra/clang-doc/tool ClangDocMain.cpp

[clang-doc] Merge data into persistent memory

We have a need for persistent memory for the final info. Since each
group processes a single USR at a time, every USR is only ever processed by
a single thread from the thread pool. This means that we can keep per
thread persistent storage for all the info. There is significant
duplicated data between all the serialized records, so we can just merge
the final/unique items into the persistent arena, and clear out the
scratch/transient arena as we process each record in the bitcode.

The patch adds some APIs to help with managing the data, merging, and
allocation of data in the correct arena. It also safely merges and deep
copies data from the transient arenas into persistent storage that is
never reset until the program completes.

This patch reduces memory by another % over the previous patches,
bringing the total savings over the baseline to 57%. Runtime performance
and benchmarks stay mostly flat with modest improvements.


    [31 lines not shown]
DeltaFile
+134-10clang-tools-extra/clang-doc/Representation.cpp
+25-25clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
+7-0clang-tools-extra/clang-doc/Representation.h
+166-353 files

LLVM/project 15a7d09clang-tools-extra/clang-doc BitcodeReader.cpp Serialize.cpp, clang-tools-extra/unittests/clang-doc SerializeTest.cpp MergeTest.cpp

[clang-doc] Move Info types into arenas

Info types used to own significant chunks of data. As we move these into
local arenas, these types must be trivially destructible, to avoid
leaking resources when the arena is reset. Unfortunaly, there isn't a
good way to transition all the data types one at a time, since most of
them are tied together in some way. Further, as they're now allocated in
the arenas, they often cannot be treated the same way, and even the
aliases and interfaces put in pLace to simplify the transition cannot
cover the full range of changes required.

We also use some SFINAE tricks to avoid adding boilerplate for helper
APIs, we'd otherwise ahve to support

Though it introduces some additional churn, we also try to keep tests
from using arena allocation as much as possible, since this is not
required to test the implementation of the library. As much of the test
code needed to be rewritten anyway, we take the opportunity to
transition now.

    [41 lines not shown]
DeltaFile
+419-187clang-tools-extra/clang-doc/BitcodeReader.cpp
+246-189clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
+196-129clang-tools-extra/unittests/clang-doc/MergeTest.cpp
+176-80clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
+137-75clang-tools-extra/clang-doc/Serialize.cpp
+71-41clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
+1,245-70114 files not shown
+1,662-95220 files