LLVM/project 11e915flld/ELF SyntheticSections.cpp, llvm/include/llvm/ADT FoldingSet.h

[FoldingSet] Add typed lookup/insert/erase/getOrInsert (#219644)

FindNodeOrInsertPos hands the insertion state to InsertNode as a `void *`:
any pointer converts to it, only a comment says where it may come from,
and since the switch to linear probing the value is the node's hash, not
a position at all.

Carry it in FoldingSetInsertToken instead, the hash wrapped in a type
whose constructor and accessor are private to FoldingSetBase, with
NotAHash as the no-token state. The `void *` overloads remain,
forwarding to the typed ones, until their callers are migrated.

LLM-aided
DeltaFile
+85-38llvm/include/llvm/ADT/FoldingSet.h
+42-45llvm/lib/TableGen/Record.cpp
+43-26llvm/unittests/ADT/FoldingSet.cpp
+23-10llvm/lib/Support/FoldingSet.cpp
+3-3lld/ELF/SyntheticSections.cpp
+196-1225 files

LLVM/project 93c6f4fclang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations CppBoundedBuffers.cpp, clang/test/Analysis/Scalable/source-edit-generation end-to-end-cpp-bounded-buffers.cpp

[SSAF][clang-reforge] Add end-to-end clang-reforge tests

- Make CppBoundedBuffers adapt to flattened WPA results;
- Let CppBoundedBuffers use qualified EntityNames so that it can
  associate ASTNodes with WPA results;
- Add end-to-end tests

Final step of:
rdar://185840466
DeltaFile
+623-0clang/test/Analysis/Scalable/source-edit-generation/end-to-end-cpp-bounded-buffers.cpp
+23-9clang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations/CppBoundedBuffers.cpp
+22-4clang/unittests/ScalableStaticAnalysis/SourceTransformation/CppBoundedBuffersTest.cpp
+668-133 files

LLVM/project acb8ba4clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage UnsafeBufferUsageAnalysis.cpp, clang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations CppBoundedBuffers.cpp

[SSAF] Flatten 'UnsafeBufferReachableAnalysisResult' to a plain set

Previously, an 'UnsafeBufferReachableAnalysisResult' was organized as
a map from contributors to their mutually exclusive
sub-results. Because this extra layer of contributor information
proved unnecessary, this commit flattens the result into a plain set.

The source transformation expects the result to be a plain set, so
this is a prerequisite step for
rdar://185840466
DeltaFile
+10-10clang/lib/ScalableStaticAnalysis/Analyses/UnsafeBufferUsage/UnsafeBufferUsageAnalysis.cpp
+5-11clang/test/Analysis/Scalable/TypeConstrainedPointers/unsafe-buffer-reachable-excludes-type-constrained-new-delete.cpp
+4-7clang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations/CppBoundedBuffers.cpp
+1-4clang/unittests/ScalableStaticAnalysis/WholeProgramAnalysis/UnsafeBufferReachableAnalysisTest.cpp
+1-3clang/unittests/ScalableStaticAnalysis/SourceTransformation/CppBoundedBuffersTest.cpp
+0-3clang/test/Analysis/Scalable/TypeConstrainedPointers/unsafe-buffer-reachable-excludes-type-constrained-main.cpp
+21-381 files not shown
+23-397 files

LLVM/project 61a82f0clang/include/clang/ScalableStaticAnalysis/Core ASTEntityMapping.h, clang/include/clang/ScalableStaticAnalysis/SourceTransformation Transformation.h

[SSAF] Add APIs for resolving bare EntityNames to qualified EntityNames

Also give Transformation access to SSAFOptions so that it can use
link-unit and compilation-unit IDs to resolve bare EntityNames.

first step of
rdar://185840466
DeltaFile
+64-0clang/lib/ScalableStaticAnalysis/Core/ASTEntityMapping.cpp
+0-41clang/lib/ScalableStaticAnalysis/Core/TUSummary/TUSummaryExtractor.cpp
+35-0clang/unittests/ScalableStaticAnalysis/ASTEntityMappingTest.cpp
+26-0clang/include/clang/ScalableStaticAnalysis/Core/ASTEntityMapping.h
+5-5clang/lib/ScalableStaticAnalysis/Core/EntityLinker/EntityLinker.cpp
+6-3clang/include/clang/ScalableStaticAnalysis/SourceTransformation/Transformation.h
+136-498 files not shown
+172-5714 files

LLVM/project 5aacc08clang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations CppBoundedBuffers.cpp, clang/unittests/ScalableStaticAnalysis/SourceTransformation CppBoundedBuffersTest.cpp

fix clang-format
DeltaFile
+4-2clang/lib/ScalableStaticAnalysis/SourceTransformation/Transformations/CppBoundedBuffers.cpp
+1-1clang/unittests/ScalableStaticAnalysis/SourceTransformation/CppBoundedBuffersTest.cpp
+5-32 files

LLVM/project 7312ebaclang/unittests/ScalableStaticAnalysis ASTEntityMappingTest.cpp

fix clang-format
DeltaFile
+2-3clang/unittests/ScalableStaticAnalysis/ASTEntityMappingTest.cpp
+2-31 files

LLVM/project 0f3ffcdclang/docs/ScalableStaticAnalysis/user-docs SourceEditGeneration.md, clang/include/clang/Frontend SSAFOptions.h

[SSAF][SourceTransform] Add '--ssaf-link-unit-id=' for specifying link unit IDs (#218823)

The source-transformation pass takes WPA results as input, where
entities are named under link-unit and compilation-unit namespaces. To
associate ASTNodes with entities, the source-transformation pass needs
to know both link-unit and compilation-unit IDs. Such information is
provided by the caller.

rdar://185818153
DeltaFile
+30-5clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
+8-3clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.md
+9-0clang/include/clang/Options/Options.td
+6-0clang/lib/ScalableStaticAnalysis/Frontend/SourceTransformationFrontendAction.cpp
+4-0clang/include/clang/Frontend/SSAFOptions.h
+2-1clang/test/Analysis/Scalable/source-edit-generation/downgradable-errors.cpp
+59-96 files not shown
+68-1012 files

LLVM/project 00aa82bflang/lib/Semantics expression.cpp, flang/test/Semantics bindings09.f90

[flang][Semantics] Resolve private PDT binding overrides (#218832)

Use the selected binding declaration owner when determining the module
in which a private binding may be overridden. A generic cloned into a
PDT instantiation is owned by the instantiation scope, which can
otherwise cause a legal same-module override to be skipped.

Add coverage for external, unrelated-module, module-owned, use-renamed,
and cross-module private/public PDT cases.

Fixes #218683

Assisted-by: AI
DeltaFile
+134-0flang/test/Semantics/bindings09.f90
+1-1flang/lib/Semantics/expression.cpp
+135-12 files

LLVM/project 09be095llvm/tools/dsymutil MachODebugMapParser.cpp

[dsymutil] Fix cross-container iterator comparison in MachODebugMapParser (#219370)

This patch fixes a cross-container iterator comparison in
handleStabSymbolTableEntry.

Without this patch, ObjectSymIt starts as an iterator into
CurrentObjectAddresses.  If alias lookup succeeds, ObjectSymIt is
assigned AliasIt, an iterator into CurrentObjectAliasMap:

  auto AliasIt = CurrentObjectAliasMap.find(Name);
  if (AliasIt != CurrentObjectAliasMap.end())
    ObjectSymIt = AliasIt;

Subsequent checks then evaluate:

  if (ObjectSymIt == CurrentObjectAddresses.end())

which compares an iterator from CurrentObjectAliasMap against the end of
CurrentObjectAddresses.

    [7 lines not shown]
DeltaFile
+12-10llvm/tools/dsymutil/MachODebugMapParser.cpp
+12-101 files

LLVM/project f4a4a1dflang/test/Semantics func-proc-result-callees.f90 func-proc-result-valid.f90

[flang][test] Extend coverage for procedure-valued function results (#219477)

Follow-up test coverage for #216322, which fixed `IsProcedure()` for
references to functions whose result is a plain procedure — a shape that
previously aborted a production build on the `CHECK(IsProcedure(expr) ||
IsProcedurePointer(expr))` in intrinsic argument checking instead of
reporting the declaration error flang had already recorded.

The tests that landed with that fix reference the callee directly and
recursively (`func-proc-result.f90`) or vary the intrinsic
(`func-proc-result-intrinsics.f90`). This adds the two dimensions they
leave uncovered.

Assisted-by: AI
DeltaFile
+136-0flang/test/Semantics/func-proc-result-valid.f90
+108-0flang/test/Semantics/func-proc-result-callees.f90
+244-02 files

FreeBSD/src 1911838sys/dev/dpaa fman_xmdio.c

dpaa/fman_xmdio: Make xmdio a "real" MDIO

Instead of forcing an `mdio` pseudo-device to hang off the xmdio, rename
xmdio to "mdio" and make it an ofw bus device, akin to the mii_fdt
driver, so that children can get the device tree goodies.
DeltaFile
+45-6sys/dev/dpaa/fman_xmdio.c
+45-61 files

FreeBSD/src 32b99a2sys/dev/dpaa fman.c

dpaa/fman: Pad the qman channel search array

The loop goes over the qman channel total (16), so if a port ID is not
found in the list it could walk off the end of the list and return
garbage.  Not a problem in practice, as only valid ports are included in
our device trees, but protect it anyway.
DeltaFile
+3-3sys/dev/dpaa/fman.c
+3-31 files

LLVM/project 45b4eeallvm/include/llvm/ADT FoldingSet.h DenseMap.h, llvm/unittests/ADT DenseMapTest.cpp FoldingSet.cpp

[ADT] Add DebugEpochBase::HandleBase::isComparableWith (#219738)

This patch unifies operator== across hash table iterators with
DebugEpochBase::HandleBase::isComparableWith, performing the following
safety checks:

- LHS is either default-constructed or in sync with its container.

- RHS is likewise either default-constructed or in sync with its
container.

- Both iterators belong to the same container instance and share the
  same state (without intervening mutations).

Assisted-by: Antigravity
DeltaFile
+19-0llvm/unittests/ADT/FoldingSet.cpp
+18-0llvm/unittests/ADT/DenseMapTest.cpp
+10-0llvm/include/llvm/ADT/EpochTracker.h
+1-6llvm/include/llvm/ADT/DenseMap.h
+1-1llvm/include/llvm/ADT/FoldingSet.h
+49-75 files

FreeBSD/src 26d5c4fsys/powerpc/pseries xics.c

powerpc64/powernv: Migrate XICS to PIC_AP_INIT

Get rid of the powernv-specific AP callback and use the new-ish
PIC_AP_INIT() PIC KPI instead.
DeltaFile
+7-10sys/powerpc/pseries/xics.c
+7-101 files

NetBSD/src hoIO0JOsys/net if_wg.c

   if_wg.c: s/liftime/lifetime in sysctl descriptions
VersionDeltaFile
1.143+4-4sys/net/if_wg.c
+4-41 files

FreeBSD/ports 7541161math/octave-forge-statistics Makefile distinfo

math/octave-forge-statistics: Update to 1.9.1.
DeltaFile
+3-3math/octave-forge-statistics/distinfo
+1-1math/octave-forge-statistics/Makefile
+4-42 files

FreeBSD/ports 62a05ccmath/octave-forge-pkg-octave-doc Makefile distinfo

math/octave-forge-pkg-octave-doc: Update to 0.7.7.
DeltaFile
+3-3math/octave-forge-pkg-octave-doc/distinfo
+1-1math/octave-forge-pkg-octave-doc/Makefile
+4-42 files

FreeBSD/ports 969a5dfmath/octave-forge-llms Makefile distinfo

math/octave-forge-llms: Update to 0.2.1.
DeltaFile
+3-3math/octave-forge-llms/distinfo
+1-1math/octave-forge-llms/Makefile
+4-42 files

FreeBSD/ports 57269d6math/octave-forge-femoctave Makefile distinfo

math/octave-forge-femoctave: Update to 2.1.10.
DeltaFile
+3-3math/octave-forge-femoctave/distinfo
+1-2math/octave-forge-femoctave/Makefile
+4-52 files

FreeBSD/ports 547b7fcmath/octave-forge-datatypes Makefile distinfo

math/octave-forge-datatypes: Update to 1.3.4.
DeltaFile
+3-3math/octave-forge-datatypes/distinfo
+1-1math/octave-forge-datatypes/Makefile
+4-42 files

FreeBSD/ports e8f3d26multimedia/smpeg/files patch-configure.in

multimedia/smpeg: Fix build

PR:             298050
Reported by:    Ale <discipline _at__ tiscali.it>
DeltaFile
+14-1multimedia/smpeg/files/patch-configure.in
+14-11 files

LLVM/project d9c2d04clang/docs/ScalableStaticAnalysis/user-docs SourceEditGeneration.md, clang/include/clang/Frontend SSAFOptions.h

address comments
DeltaFile
+23-0clang/test/Analysis/Scalable/source-edit-generation/cli-errors.cpp
+2-2clang/include/clang/Options/Options.td
+2-2clang/include/clang/Frontend/SSAFOptions.h
+2-2clang/docs/ScalableStaticAnalysis/user-docs/SourceEditGeneration.md
+1-1clang/test/Analysis/Scalable/help.cpp
+30-75 files

FreeBSD/ports f1b14f0devel/wasi-libc Makefile

devel/wasi-libc: add LLVM 23 flavour
DeltaFile
+1-1devel/wasi-libc/Makefile
+1-11 files

FreeBSD/ports 9e7c4d8devel Makefile, devel/wasi-compiler-rt23 Makefile

devel/wasi-compiler-rt23: add
DeltaFile
+6-0devel/wasi-compiler-rt23/Makefile
+1-0devel/Makefile
+7-02 files

FreeBSD/ports b25213cmail/thunderbird Makefile, www/firefox Makefile

devel/wasi-libc: bump consumer PORTREVISIONs after update
DeltaFile
+1-1www/tor-browser/Makefile
+1-0www/waterfox/Makefile
+1-0www/librewolf/Makefile
+1-0www/firefox/Makefile
+1-0www/firefox-esr/Makefile
+1-0mail/thunderbird/Makefile
+6-11 files not shown
+7-17 files

FreeBSD/ports 126e6a3devel/wasi-libc pkg-plist22 pkg-plist21

devel/wasi-libc: update to sdk-34

Changes:        https://github.com/WebAssembly/wasi-sdk/releases/tag/wasi-sdk-34
                https://github.com/WebAssembly/wasi-sdk/releases/tag/wasi-sdk-33

- sync CMAKE_ARGS from wasi-sdk
- consolidate wasi-libc's plists, they have been identical after cmake transition
- bump all existing WASI toolchain ports

Consumer PORTREVISIONs to be bumped
DeltaFile
+0-225devel/wasi-libc/pkg-plist22
+0-225devel/wasi-libc/pkg-plist21
+0-225devel/wasi-libc/pkg-plist20
+0-225devel/wasi-libc/pkg-plist19
+0-225devel/wasi-libc/pkg-plist18
+0-225devel/wasi-libc/pkg-plist17
+0-1,35017 files not shown
+273-1,37523 files

FreeBSD/src a416bbfshare/man/man4 ntb_hw_plx.4

ntb_hw_plx.4: Canonicalize

+ tag SPDX
+ canonicalize SYNOPSIS, LOADER TUNABLES, and HARDWARE
+ switch X to %d for clarity and consistency

MFC after:      3 days
DeltaFile
+25-28share/man/man4/ntb_hw_plx.4
+25-281 files

OpenBSD/src WZiZyLsbin/stty stty.c

   use TCSANOW (which is 0) for the 2nd parameter of tcsetattr instead of 0
VersionDeltaFile
1.23+2-2bin/stty/stty.c
+2-21 files

FreeBSD/src 9cdadb3share/man/man4 ntb.4

ntb.4: Canonicalize SYNOPSIS and LOADER TUNABLES

Also tag SPDX, and switch X to %d for clarity and consistency.

MFC after:      3 days
DeltaFile
+19-21share/man/man4/ntb.4
+19-211 files

FreeBSD/src 63ecc9ashare/man/man4 ntb_hw_amd.4

ntb_hw_amd.4: Canonicalize SYNOPSIS and SYSCTLs

Also tag SPDX.

MFC after:      3 days
DeltaFile
+17-20share/man/man4/ntb_hw_amd.4
+17-201 files