FreeNAS/freenas b671cc5src/middlewared/middlewared/plugins/pool_ scrub.py, src/middlewared/middlewared/plugins/zpool scrub_impl.py scrub.py

code deduplicating (WIP)
DeltaFile
+41-34src/middlewared/middlewared/plugins/zpool/scrub_impl.py
+17-38src/middlewared/middlewared/plugins/pool_/scrub.py
+4-4src/middlewared/middlewared/plugins/zpool/scrub.py
+1-1src/middlewared/middlewared/plugins/zpool/query_impl.py
+63-774 files

LLVM/project 5ec1fb2llvm/lib/IR RuntimeLibcalls.cpp, llvm/test/Transforms/Util/DeclareRuntimeLibcalls basic.ll sincos_stret.ll

Revert "RuntimeLibcalls: Add mustprogress to common function attributes (#167080)" (#191524)

This reverts commit eb5297e0ade96fe8a6297763f28219be97dfac76.

This is redundant with willreturn.
DeltaFile
+3-3llvm/lib/IR/RuntimeLibcalls.cpp
+3-3llvm/test/Transforms/Util/DeclareRuntimeLibcalls/basic.ll
+2-2llvm/test/Transforms/Util/DeclareRuntimeLibcalls/sincos_stret.ll
+2-2llvm/test/Transforms/Util/DeclareRuntimeLibcalls/sleef.ll
+2-2llvm/test/Transforms/Util/DeclareRuntimeLibcalls/armpl.ll
+1-1llvm/test/Transforms/Util/DeclareRuntimeLibcalls/merge_attributes.ll
+13-136 files

LLVM/project 994259aclang-tools-extra/clang-doc Serialize.cpp Serialize.h

[clang-doc] Removed OwnedPtr alias

The alias served a purpose during migration, but now conveys the wrong
semantics, as the memory of these pointers is generally interned inside
a local arena.
DeltaFile
+40-38clang-tools-extra/clang-doc/Serialize.cpp
+29-42clang-tools-extra/clang-doc/Serialize.h
+17-18clang-tools-extra/clang-doc/Representation.cpp
+3-14clang-tools-extra/clang-doc/Representation.h
+8-8clang-tools-extra/clang-doc/JSONGenerator.cpp
+8-6clang-tools-extra/clang-doc/Generators.h
+105-12610 files not shown
+145-16616 files

LLVM/project 08071d0clang-tools-extra/clang-doc Representation.h

[clang-doc][nfc] Reformat and revise comment block
DeltaFile
+9-12clang-tools-extra/clang-doc/Representation.h
+9-121 files

LLVM/project 7bce636clang-tools-extra/clang-doc Serialize.cpp Representation.cpp, clang-tools-extra/clang-doc/benchmarks ClangDocBenchmark.cpp

[clang-doc] Use distinct APIs for fixed arena allocation sites

Typically, code either always emits data into the TransientArena or the
PersistentArena. Use more explicit APIs to convey the intent directly
instead of relying on parameters or defaults.
DeltaFile
+18-17clang-tools-extra/clang-doc/Serialize.cpp
+7-8clang-tools-extra/clang-doc/Representation.cpp
+7-7clang-tools-extra/clang-doc/BitcodeReader.cpp
+8-3clang-tools-extra/clang-doc/Representation.h
+3-3clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
+43-385 files

LLVM/project 3e58db5clang-tools-extra/clang-doc Representation.h Representation.cpp, clang-tools-extra/clang-doc/benchmarks ClangDocBenchmark.cpp

[clang-doc] Update type aliases

Many of the type aliases we introduced to simplify migration to arena
allocation  are no longer relevant after completing the migration. We
can use more relevant names and remove dead aliases.
DeltaFile
+13-25clang-tools-extra/clang-doc/Representation.h
+9-9clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
+4-4clang-tools-extra/clang-doc/Representation.cpp
+4-4clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
+4-4clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
+4-4clang-tools-extra/unittests/clang-doc/MergeTest.cpp
+38-505 files not shown
+47-5911 files

LLVM/project e172ce0clang-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 0a54089clang-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 d3318f8clang-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 (#190054)

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. Unfortunatly, 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 have 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.

    [50 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,648-94220 files

FreeBSD/ports cf05ca7mail/py-email-validator distinfo Makefile

mail/py-email-validator: Update 2.2.0 => 2.3.0

Changelog:
https://github.com/JoshData/python-email-validator/releases/tag/v2.3.0

PR:             294388
Reported by:    Goran Mekić <meka at tilda.center> (maintainer)
Approved by:    osa (mentor)
DeltaFile
+3-3mail/py-email-validator/distinfo
+1-2mail/py-email-validator/Makefile
+4-52 files

FreeBSD/ports 9ce62a2multimedia/navidrome Makefile, multimedia/navidrome/files config.toml.sample.in pkg-message.in

multimedia/navidrome: Don't install ffmpeg by default

Don't install multimedia/ffmpeg by default so that users can install
the flavour they want at runtime (e.g.: multimedia/ffmpeg at default
or multimedia/ffmpeg at nox11).

And while here, update the configuration file to remove obsolete
parameters and add new ones. Now FFmpegPath is added, as it is
required for transcoding to work when running Navidrome via the
rc(8) script.

Reported by:    t at ida2.de (email)
DeltaFile
+24-23multimedia/navidrome/files/config.toml.sample.in
+3-0multimedia/navidrome/files/pkg-message.in
+0-1multimedia/navidrome/Makefile
+27-243 files

FreeBSD/ports 5a812camath/lcalc Makefile distinfo

math/lcalc: upgrade to 2.2.1

Release notes: OpenMP support improved.
DeltaFile
+7-5math/lcalc/Makefile
+3-3math/lcalc/distinfo
+10-82 files

FreeBSD/ports 324c83cdevel/apache-log4j2 distinfo Makefile

devel/apache-log4j2: upgrade to 2.25.4

Release notes at
        https://logging.apache.org/log4j/2.x/release-notes.html#release-notes-2-25-4
DeltaFile
+3-3devel/apache-log4j2/distinfo
+1-2devel/apache-log4j2/Makefile
+4-52 files

FreeBSD/ports a0ecc03textproc/ibus-typing-booster Makefile pkg-plist, textproc/ibus-typing-booster/files patch-setup_ibus-setup-typing-booster.desktop.in.in patch-engine_itb__emoji.py

textproc/ibus-typing-booster: upgrade to 2.30.6

Release notes at
        https://github.com/mike-fabian/ibus-typing-booster/releases/tag/2.30.6
DeltaFile
+6-13textproc/ibus-typing-booster/Makefile
+4-7textproc/ibus-typing-booster/files/patch-setup_ibus-setup-typing-booster.desktop.in.in
+10-0textproc/ibus-typing-booster/files/patch-engine_itb__emoji.py
+6-3textproc/ibus-typing-booster/pkg-plist
+3-3textproc/ibus-typing-booster/distinfo
+29-265 files

FreeBSD/ports 33a99edmath/libsemigroups Makefile distinfo

math/libsemigroups: upgrade to v3.5.5

Release notes at
        https://github.com/libsemigroups/libsemigroups/releases/tag/v3.5.5
DeltaFile
+5-4math/libsemigroups/Makefile
+3-3math/libsemigroups/distinfo
+1-1math/libsemigroups/pkg-plist
+9-83 files

FreeBSD/ports 5ac3af5math/primecount distinfo Makefile

math/primecount: upgrade to v8.4

Release notes at https://github.com/kimwalisch/primecount/releases/tag/v8.4
DeltaFile
+3-3math/primecount/distinfo
+1-1math/primecount/Makefile
+4-42 files

FreeBSD/ports 6a19853math/R-cran-admisc distinfo Makefile

math/R-cran-admisc: upgrade to 0.40

Changelog at https://cran.r-project.org/web/packages/admisc/ChangeLog
DeltaFile
+3-3math/R-cran-admisc/distinfo
+1-1math/R-cran-admisc/Makefile
+4-42 files

LLVM/project 1757106llvm/lib/IR RuntimeLibcalls.cpp, llvm/test/Transforms/Util/DeclareRuntimeLibcalls basic.ll armpl.ll

Revert "RuntimeLibcalls: Add mustprogress to common function attributes (#167080)"

This reverts commit eb5297e0ade96fe8a6297763f28219be97dfac76.

This is redundant with willreturn.
DeltaFile
+3-3llvm/lib/IR/RuntimeLibcalls.cpp
+3-3llvm/test/Transforms/Util/DeclareRuntimeLibcalls/basic.ll
+2-2llvm/test/Transforms/Util/DeclareRuntimeLibcalls/armpl.ll
+2-2llvm/test/Transforms/Util/DeclareRuntimeLibcalls/sincos_stret.ll
+2-2llvm/test/Transforms/Util/DeclareRuntimeLibcalls/sleef.ll
+1-1llvm/test/Transforms/Util/DeclareRuntimeLibcalls/merge_attributes.ll
+13-136 files

LLVM/project 2749912llvm/lib/DebugInfo/Symbolize SymbolizableObjectFile.cpp, llvm/test/tools/llvm-symbolizer wasm-basic.s

SymbolizableObjectFile: Invalidate Wasm addresses that map outside the code section (#191329)

A fix after #191068: For linked files, invalidate any address that
is outside the text section to prevent it from being matched in DWARF as
a section-relative address.

Add test cases that cover the distinction (e.g. address 3 should match
in an object file but not in a linked file).
Also, fix the comments in the test to match the updated line numbers.
DeltaFile
+23-13llvm/test/tools/llvm-symbolizer/wasm-basic.s
+14-1llvm/lib/DebugInfo/Symbolize/SymbolizableObjectFile.cpp
+37-142 files

LLVM/project b6671f8lldb/source/Host/windows ProcessLauncherWindows.cpp

[lldb] [windows] Add a [[fallthrough]] to silence warnings. NFC. (#191400)
DeltaFile
+1-0lldb/source/Host/windows/ProcessLauncherWindows.cpp
+1-01 files

LLVM/project 11a8026clang/cmake/caches Release.cmake, llvm CMakeLists.txt

[cmake] Add support for statically linking libxml2 (#166867)

Dynamically depending on libxml2 results in various annoyances across
different linux distros for release artifacts. Specifically on fedora
and nixos the library has a different name than on debian, and on
arch-linux they tried to remove the old name entirely.

With this, enabled by default for releases, we don't sacrifice any
behavior changes, but no longer have these issues. For lld the binary
size impact is <1mb

This continues to use the shared libxml for lldb since otherwise
it requires linking ICU, which is off by default

macOS ignores this setting since libxml2 is part of the OS and stable
enough.

This mirrors what we do for zstd


    [3 lines not shown]
DeltaFile
+75-0llvm/cmake/modules/FindLibXml2.cmake
+16-3llvm/cmake/config-ix.cmake
+7-3llvm/lib/WindowsManifest/CMakeLists.txt
+4-0clang/cmake/caches/Release.cmake
+2-0llvm/CMakeLists.txt
+104-65 files

LLVM/project 392336bllvm/lib/CodeGen/SelectionDAG TargetLowering.cpp, llvm/test/CodeGen/X86 srem-seteq-vec-nonsplat.ll

[TargetLowering] Use 0 for add constant for power of 2 divisors in prepareSREMEqFold. (#190274)

We don't need to toggle the sign bit here.
DeltaFile
+78-78llvm/test/CodeGen/X86/srem-seteq-vec-nonsplat.ll
+4-5llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+82-832 files

LLVM/project d0388c4llvm/lib/Transforms/IPO SampleProfileMatcher.cpp

Optimize the basename matching logic.

This change optimizes the basename matching logic in `SampleProfileMatcher::matchFunctionsWithoutProfileByBasename` by replacing the existing O(N*M) nested loop with an O(N+M) hash-based lookup, while strictly preserving the original matching semantics. The previous implementation relied on a substring heuristic (`ProfName.contains(BaseName)`) to bypass expensive demangling operations during the nested iteration; however, in codebases with common or overlapping function names, this heuristic frequently evaluated to true, resulting in redundant demangling and quadratic time complexity. The updated approach demangles each profile name exactly once and utilizes a `StringMap` to perform O(1) lookups against the orphan functions. This eliminates the need for the substring pre-check while maintaining the exact same constraints: establishing a strict 1:1 mapping between orphaned IR functions and profile entries, and correctly identifying and rejecting ambiguous matches where multiple entities share the same demangled basename.

Results in a 9x speedup on a large module with common basenames.
DeltaFile
+12-12llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
+12-121 files

LLVM/project 7f7360fclang-tools-extra/clang-doc Representation.h

[clang-doc][nfc] Reformat and revise comment block
DeltaFile
+9-12clang-tools-extra/clang-doc/Representation.h
+9-121 files

LLVM/project 376a164clang-tools-extra/clang-doc Serialize.cpp Serialize.h

[clang-doc] Removed OwnedPtr alias

The alias served a purpose during migration, but now conveys the wrong
semantics, as the memory of these pointers is generally interned inside
a local arena.
DeltaFile
+40-38clang-tools-extra/clang-doc/Serialize.cpp
+29-42clang-tools-extra/clang-doc/Serialize.h
+17-18clang-tools-extra/clang-doc/Representation.cpp
+3-14clang-tools-extra/clang-doc/Representation.h
+8-8clang-tools-extra/clang-doc/JSONGenerator.cpp
+8-6clang-tools-extra/clang-doc/Generators.h
+105-12610 files not shown
+145-16616 files

LLVM/project 0ec0981clang-tools-extra/clang-doc Serialize.cpp Representation.cpp, clang-tools-extra/clang-doc/benchmarks ClangDocBenchmark.cpp

[clang-doc] Use distinct APIs for fixed arena allocation sites

Typically, code either always emits data into the TransientArena or the
PersistentArena. Use more explicit APIs to convey the intent directly
instead of relying on parameters or defaults.
DeltaFile
+18-17clang-tools-extra/clang-doc/Serialize.cpp
+7-8clang-tools-extra/clang-doc/Representation.cpp
+7-7clang-tools-extra/clang-doc/BitcodeReader.cpp
+8-3clang-tools-extra/clang-doc/Representation.h
+3-3clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
+43-385 files

LLVM/project db7c03dclang-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 036be76clang-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 1f3e33eclang-tools-extra/clang-doc Representation.h Representation.cpp, clang-tools-extra/clang-doc/benchmarks ClangDocBenchmark.cpp

[clang-doc] Update type aliases

Many of the type aliases we introduced to simplify migration to arena
allocation  are no longer relevant after completing the migration. We
can use more relevant names and remove dead aliases.
DeltaFile
+13-25clang-tools-extra/clang-doc/Representation.h
+9-9clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
+4-4clang-tools-extra/unittests/clang-doc/MergeTest.cpp
+4-4clang-tools-extra/clang-doc/Representation.cpp
+4-4clang-tools-extra/clang-doc/benchmarks/ClangDocBenchmark.cpp
+4-4clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
+38-505 files not shown
+47-5911 files

LLVM/project 6095677clang-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,648-94220 files