LLVM/project 5a9da12 — clang-tools-extra/clangd/unittests FindTargetTests.cpp, clang/include/clang/AST RecursiveASTVisitor.h

[clang] Fix incorrect PackIndexingTypeLoc traversal in RecursiveASTVisitor (#231191)

Fixes [clangd/clangd#2713](https://github.com/clangd/clangd/issues/2713)

Assisted-by: Claude
DeltaFile
+20-0clang/unittests/AST/SourceLocationTest.cpp
+9-0clang-tools-extra/clangd/unittests/FindTargetTests.cpp
+1-1clang/include/clang/AST/RecursiveASTVisitor.h
+30-13 files

Linux/linux 58161ea — drivers/gpu/drm drm_exec.c, drivers/gpu/drm/amd/amdgpu amdgpu_debugfs.c sdma_v3_0.c

Merge tag 'drm-fixes-2026-10-17' of https://gitlab.freedesktop.org/drm/kernel

Pull drm fixes from Dave Airlie:
 "Last set of fixes, mostly amdgpu, some i915 and xe.

  I think the dma-buf revert is probably the most important: while it is
  technically correct the fallout from it means we shouldn't enable
  DMABUF_DEBUG like that yet, and fix the fallout first.

  Summary:

  MAINTAINERS update

  dma-buf:
   - revert dma-debug y on debug kernel due to msm interaction

  core:
   - fix drm_exec prelocked object interaction


    [60 lines not shown]
DeltaFile
+45-32drivers/gpu/drm/drm_exec.c
+71-5drivers/gpu/drm/i915/display/intel_dmc.c
+54-1drivers/gpu/drm/amd/pm/swsmu/smu14/smu_v14_0_2_ppt.c
+28-3drivers/gpu/drm/xe/xe_vm.c
+21-4drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c
+4-19drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c
+223-6424 files not shown
+348-13230 files

Linux/linux a3bb7a0 — sound/soc/amd/yc pci-acp6x.c, sound/soc/codecs cs42l52.c wm8978.c

Merge tag 'sound-7.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound

Pull sound fixes from Takashi Iwai:
 "Here are the (hopefully) last bits for 7.3.

  At this time, all changes are small and device-specific ASoC fixes.
  Not super-urgent, but should be fairly safe to take"

* tag 'sound-7.3' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
  ASoC: amd: yc: disable MSI on resume
  ASoC: nau8822: Fix the 128x oversampling switch bits
  ASoC: wm8978: Fix the 128x oversampling switch bits
  ASoC: max98371: Fix the Speaker DHT Min Volume bits
  ASoC: pcm3168a: Fix the DAC zero flag polarity bit
  ASoC: cs42l52: Fix the NG Type Switch bit
  ASoC: cs42l56: Put the Limiter Cushion control on the limiter register
  ASoC: stm32: spdifrx: fix synchronization state check
  ASoC: Intel: avs: Reset the stream unless it is already prepared
  ASoC: SOF: sof-client: Use event-handler mutex consistently
  ASoC: SOF: ipc4-topology: Fix shift-out-of-bounds for aggregated ALH capture
DeltaFile
+36-2sound/soc/amd/yc/pci-acp6x.c
+6-3sound/soc/sof/ipc4-topology.c
+3-3sound/soc/sof/sof-client.c
+2-2sound/soc/codecs/wm8978.c
+2-2sound/soc/codecs/nau8822.c
+1-1sound/soc/codecs/cs42l52.c
+50-135 files not shown
+55-1811 files

LLVM/project c9ab784 — clang/docs/CIR/_raw PostProcessCIRDocs.py, clang/include/clang/CIR/Dialect CMakeLists.txt

[CIR][Docs][www] Generate and publish the CIR dialect reference docs (#232912)

Wire up a consolidated CIR dialect reference page: the existing
-gen-dialect-doc output (operations, types, attributes, enums) plus a
passes section generated from Passes.td (-gen-pass-doc), merged ahead of
the other sections with an explicit index of the page sections.

The landing page grows a "CIR Dialect Reference" section right after
"Using ClangIR", showing an index into the reference page.

Also fix the doc tablegen include roots: the `MLIR_*_INCLUDE_DIR`
variables are still empty when Clang configures (MLIR configures later),
so derive the same roots from LLVM dirs instead; without this the
tablegen cannot find `mlir/*.td`.
DeltaFile
+72-19clang/docs/CIR/_raw/PostProcessCIRDocs.py
+7-1clang/include/clang/CIR/Dialect/CMakeLists.txt
+79-202 files

LLVM/project 6432929 — clang/include/clang/Sema Sema.h, clang/lib/Parse ParseDecl.cpp

[BoundsSafety] Don't orphan a shared counted_by node when one declarator nests it

A late-parsed counted_by-family attribute in declaration-specifier position is
shared by every declarator in the declaration, so they share one incomplete
CountAttributedType. When one declarator nests the node, as `*b` does in
`IP __counted_by(n) a, *b;`, it is rejected and the node is marked rejected.
The completion pass then skipped the node for every declarator, so `a` kept a
CountAttributedType without a count and crashed on use in
FieldDecl::findCountedByField.

Make the rejection apply to the declarator only. The parser checks and clears
the mark after each declarator, and doesn't pair a rejected declarator's field
with the attribute. The completion pass skips an attribute with no fields left,
still without parsing its argument.

Assisted-by: Opus 5.5
DeltaFile
+32-0clang/test/Sema/attr-counted-by-late-parsed-regressions.c
+17-6clang/lib/Parse/ParseDecl.cpp
+8-6clang/include/clang/Sema/Sema.h
+57-123 files

LLVM/project e7a79e3 — clang/include/clang/Parse Parser.h, clang/lib/Sema SemaBoundsSafety.cpp SemaType.cpp

Address review #8
DeltaFile
+60-0clang/test/Sema/attr-counted-by-multiple-on-pointer.c
+41-0clang/test/PCH/attr-counted-by-late-parsed-parse-error.c
+32-0clang/test/Sema/attr-counted-by-late-parsed-rejected-once.c
+14-13clang/lib/Sema/SemaType.cpp
+11-0clang/lib/Sema/SemaBoundsSafety.cpp
+7-1clang/include/clang/Parse/Parser.h
+165-143 files not shown
+177-199 files

LLVM/project e4d7bb4 — clang/test/Modules bounds-safety-attributed-type-late-parsed.c, clang/test/PCH bounds-safety-attributed-type-late-parsed.c

[BoundsSafety][test] Add late-parsed counted_by type-attribute coverage

New tests exercising the late-parse fill-in mechanism:
  - Sema/attr-counted-by-weird-type-positions{,-late-parsed}.c: counted_by
    in assorted type positions, nested pointers, and rejection cases.
  - Sema/attr-bounds-safety-function-ptr-param.c: attributes on
    function-pointer-typed members.
  - Modules/ and PCH/ bounds-safety-attributed-type-late-parsed: the
    resolved type round-trips through serialization.

  - Sema/attr-counted-by-late-parsed-regressions.c: guards against the
    double-free on a nested-record decl-spec attribute and the null-count
    escape on a free-function parameter.
DeltaFile
+456-0clang/test/Sema/attr-counted-by-weird-type-positions-late-parsed.c
+454-0clang/test/Sema/attr-counted-by-weird-type-positions.c
+173-0clang/test/Sema/attr-bounds-safety-function-ptr-param.c
+111-0clang/test/Modules/bounds-safety-attributed-type-late-parsed.c
+104-0clang/test/Sema/attr-counted-by-late-parsed-regressions.c
+69-0clang/test/PCH/bounds-safety-attributed-type-late-parsed.c
+1,367-04 files not shown
+1,517-010 files

LLVM/project 5799d3f — clang/lib/Parse ParseDecl.cpp

Attach RecoveryExpr for invalid count argument
DeltaFile
+21-6clang/lib/Parse/ParseDecl.cpp
+21-61 files

LLVM/project 3abaa75 — clang/include/clang/Basic DiagnosticSemaKinds.td, clang/lib/Sema SemaType.cpp

Properly reject attributes on a function return type
DeltaFile
+55-0clang/test/Sema/attr-counted-by-return-type.c
+42-4clang/lib/Sema/SemaType.cpp
+2-0clang/include/clang/Basic/DiagnosticSemaKinds.td
+99-43 files

LLVM/project bd92501 — clang/lib/Parse ParseDecl.cpp, clang/test/Sema attr-counted-by-late-parsed-anon-stmt-expr.c

Address review 3
DeltaFile
+29-0clang/test/Sema/attr-counted-by-late-parsed-anon-stmt-expr.c
+7-1clang/lib/Parse/ParseDecl.cpp
+36-12 files

LLVM/project 77a58d1 — clang/test/Sema attr-counted-by-late-parsed-block-pointer.c attr-counted-by-late-parsed-non-member.c

Add some tests
DeltaFile
+42-0clang/test/Sema/attr-counted-by-late-parsed-non-member.c
+36-0clang/test/Sema/attr-counted-by-late-parsed-block-pointer.c
+78-02 files

LLVM/project f1e2d08 — clang/lib/Parse ParseDecl.cpp

Fix review #1
DeltaFile
+5-2clang/lib/Parse/ParseDecl.cpp
+5-21 files

LLVM/project b2e5bb3 — clang/include/clang/Parse Parser.h, clang/lib/Parse ParseDecl.cpp

Address review #2
DeltaFile
+16-21clang/lib/Parse/ParseDecl.cpp
+11-0clang/include/clang/Parse/Parser.h
+27-212 files

LLVM/project 6a3fb0c — clang/lib/Parse ParseDecl.cpp, clang/lib/Sema SemaType.cpp

[BoundsSafety] Create incomplete counted_by types and wire up the refill

Activate late parsing for the counted_by family (counted_by / sized_by and
their _or_null variants) in type-attribute position, under
-fexperimental-late-parse-attributes, on top of the type-attribute handling,
the validation helper and the refill machinery added in the previous commits.

When such an attribute is seen during type construction and its argument
can't be resolved yet, build the CountAttributedType immediately with
getIncompleteCountAttributedType and record it against the enclosing record;
its count expression is filled in at the closing brace via the refill logic.
Because enclosing types refer to the node by pointer, completing it in place
leaves the type chain untouched.
DeltaFile
+189-20clang/lib/Parse/ParseDecl.cpp
+29-50clang/test/Sema/attr-counted-by-late-parsed-struct-ptrs.c
+14-50clang/test/Sema/attr-counted-by-or-null-late-parsed-struct-ptrs.c
+60-0clang/lib/Sema/SemaType.cpp
+11-42clang/test/Sema/attr-sized-by-or-null-late-parsed-struct-ptrs.c
+10-42clang/test/Sema/attr-sized-by-late-parsed-struct-ptrs.c
+313-20411 files not shown
+462-31617 files

LLVM/project 62c4ed5 — clang/test/AST attr-counted-by-or-null-struct-ptrs.c attr-sized-by-struct-ptrs.c, clang/test/Sema attr-counted-by-struct-ptrs.c attr-counted-by-or-null-struct-ptrs.c

Update tests
DeltaFile
+0-26clang/test/AST/attr-counted-by-struct-ptrs.c
+0-24clang/test/AST/attr-sized-by-struct-ptrs.c
+0-24clang/test/AST/attr-sized-by-or-null-struct-ptrs.c
+0-23clang/test/AST/attr-counted-by-or-null-struct-ptrs.c
+11-5clang/test/Sema/attr-counted-by-struct-ptrs.c
+11-5clang/test/Sema/attr-counted-by-or-null-struct-ptrs.c
+22-1074 files not shown
+56-12710 files

LLVM/project 3927b6d — clang/lib/Sema SemaType.cpp SemaDeclAttr.cpp

Remove deprecated declaration-position counted_by attribute handler
DeltaFile
+0-38clang/lib/Sema/SemaDeclAttr.cpp
+3-8clang/lib/Sema/SemaType.cpp
+3-462 files

LLVM/project 7a4a175 — clang/lib/Sema SemaDecl.cpp SemaDeclAttr.cpp

[BoundsSafety] Handle the counted_by family as a type attribute

counted_by / sized_by (and their _or_null variants) were handled as a
declaration-position attribute through handleCountedByAttrField.

Build the type during type construction instead and properly handle as a
type-position attribute. Building the node in type position also allows
the new way of late-parsing for type attributes: creates a type node
in place and fills it in once late parsing is done, which will be
enabled in the follow-up commits.

Assisted-by: Opus 4.8
DeltaFile
+3-106clang/lib/Sema/SemaBoundsSafety.cpp
+87-1clang/lib/Sema/SemaType.cpp
+21-27clang/lib/Sema/SemaDeclAttr.cpp
+19-0clang/lib/Sema/SemaDecl.cpp
+130-1344 files

LLVM/project 5fe5ab1 — clang/include/clang/Parse Parser.h, clang/include/clang/Sema DeclSpec.h

[BoundsSafety][NFC] Add late-parsed type attribute lists to declarators

This is groundwork for late-parsing type attributes in every type
position where an ordinary type attribute can appear. Ordinary type
attributes are kept on the DeclSpec, on each DeclaratorChunk and on the
Declarator. Give late-parsed type attributes the same three homes, with
nothing producing or consuming them yet:

  - Move CachedTokens and LateParsedAttrList earlier in DeclSpec.h so
    that DeclSpec, Declarator and DeclaratorChunk can hold one. Add
    LateParsedAttrList::forTypeAttrs() to create those lists.
  - Give DeclSpec, Declarator and DeclaratorChunk a LateParsedAttrList,
    and let Declarator::AddTypeInfo carry one onto the chunk it appends.
  - Give ParseSpecifierQualifierList and ParseTypeQualifierListOpt an
    optional LateParsedAttrList parameter. The former passes it to
    ParseDeclarationSpecifiers, the latter to ParseGNUAttributes.

No functional change: no caller passes a list yet, so the lists stay
empty. The next commit populates them.
DeltaFile
+62-32clang/include/clang/Sema/DeclSpec.h
+14-9clang/include/clang/Parse/Parser.h
+10-4clang/lib/Parse/ParseDecl.cpp
+86-453 files

LLVM/project 831d93d — clang/include/clang/Parse Parser.h, clang/include/clang/Sema Sema.h

[BoundsSafety][NFC] Build an incomplete CountAttributedType for a late-parsed attribute

Add Sema::ProcessLateParsedTypeAttr. It validates a late-parsed
counted_by-family attribute in type position and wraps the type in a
CountAttributedType whose count is filled in once the enclosing record
is complete.

LateParsedTypeAttribute is owned by the Parser, which Sema cannot depend
on. Sema therefore reads the attribute's kind, location and type slot
through a callback.

No functional change: nothing creates late-parsed type attributes yet,
so ProcessLateParsedTypeAttr is never invoked. The next commit wires it
up.

Assisted-by: Opus 5.5
DeltaFile
+32-0clang/lib/Sema/SemaType.cpp
+17-3clang/include/clang/Sema/Sema.h
+12-3clang/include/clang/Parse/Parser.h
+10-0clang/lib/Parse/ParseDecl.cpp
+3-0clang/lib/Parse/Parser.cpp
+74-65 files

FreeBSD/ports df7f9a4 — www/hypermail distinfo Makefile, www/hypermail/files patch-Makefile.in patch-memory-fixes

www/hypermail: Update 2.4.0 => 2.4.1

Changelog:
https://github.com/hypermail-project/hypermail/releases/tag/v2.4.1

- Fix warnings from portclippy.
- Add active upstream to WWW.
- Sort USES.
- Replace CONFIGURE_ENV with CFLAGS.
- Remove upstreamed patches.

Sponsored by:   UNIS Labs
MFH:            2026Q4

(cherry picked from commit fac34c42aff1531ecc0656688ca68d652cf459fe)
DeltaFile
+0-60www/hypermail/files/patch-memory-fixes
+0-21www/hypermail/files/patch-Makefile.in
+8-10www/hypermail/Makefile
+3-3www/hypermail/distinfo
+11-944 files

LLVM/project 58a9fdb — llvm/test/CodeGen/NVPTX mul-with-overflow.ll mulwide.ll

[NVPTX] Forward-fix tests for SelectionDAG argument lowering change (#232989)

Fix the NVPTX FileCheck failures after #228285 and #230234 landed with
expectations predating #232309's change to argument lowering at `-O0`.

Refresh `mulwide.ll` for folded parameter loads and extensions, and
update `mul-with-overflow.ll` for the parameter-load order. Test IR, RUN
lines, and effective `-O3` checks are unchanged.

Validation:

- Reproduced both failures on main (`83ee07799c34`).
- Both affected tests pass after the updates.
- Full NVPTX CodeGen lit suite: **656/656 passed**.

Assisted-by: Codex
DeltaFile
+146-307llvm/test/CodeGen/NVPTX/mulwide.ll
+1-1llvm/test/CodeGen/NVPTX/mul-with-overflow.ll
+147-3082 files

FreeBSD/ports fac34c4 — www/hypermail distinfo Makefile, www/hypermail/files patch-Makefile.in patch-memory-fixes

www/hypermail: Update 2.4.0 => 2.4.1

Changelog:
https://github.com/hypermail-project/hypermail/releases/tag/v2.4.1

- Fix warnings from portclippy.
- Add active upstream to WWW.
- Sort USES.
- Replace CONFIGURE_ENV with CFLAGS.
- Remove upstreamed patches.

Sponsored by:   UNIS Labs
MFH:            2026Q4
DeltaFile
+0-60www/hypermail/files/patch-memory-fixes
+0-21www/hypermail/files/patch-Makefile.in
+8-10www/hypermail/Makefile
+3-3www/hypermail/distinfo
+11-944 files

LLVM/project 9cdc536 — clang/test/OpenMP declare_variant_isa_selectors.c, llvm/include/llvm/Frontend/OpenMP OMPContext.h

[clang][OpenMP] Match device and target_device ISA names separately

A context selector can name ISAs in both device={isa(...)} and
target_device={isa(...)}. These are separate selectors, but their ISA
names were checked together, so an ISA that the target does not support
made both selectors fail. The default match_all needs both selectors
anyway, but the match_any and match_none extensions selected the wrong
variant. For example, on x86-64:

  #pragma omp declare variant(variant) \
      match(device = {isa(sse2)}, target_device = {isa(bogus_isa)}, \
            implementation = {extension(match_any)})

did not select variant, although device={isa(sse2)} matches. Likewise,
match_none accepted a variant whose target_device ISA matched.

This patch records which selector each ISA name belongs to and check
each selector against its own names only. Because begin declare variant
only looks at the device and implementation sets, a target_device ISA

    [5 lines not shown]
DeltaFile
+35-0clang/test/OpenMP/declare_variant_isa_selectors.c
+32-0llvm/unittests/Frontend/OpenMPContextTest.cpp
+10-5llvm/include/llvm/Frontend/OpenMP/OMPContext.h
+4-7llvm/lib/Frontend/OpenMP/OMPContext.cpp
+81-124 files

LLVM/project a078b2e — llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/lib/Transforms/Vectorize/SLPVectorizer SLPMemoryUtils.cpp

[SLP] Handle REVEC when costing expanded compress mask

With REVEC the scalars are vectors. The masked-load-compress shuffle that is
emitted uses the compress mask expanded to the elements of those vectors
(transformScalarShuffleIndiciesToVector), but the cost was computed with the
unexpanded per-vector mask, so a shuffle such as <24 x i8> -> <16 x i8> was
costed as a <2 x i8> shuffle. This made the compress sequence looked cheaper
than it is.

Assisted-By: Claude Sonnet 5.5
DeltaFile
+13-9llvm/test/Transforms/SLPVectorizer/RISCV/revec-compress-mask-cost.ll
+7-2llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+6-2llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPMemoryUtils.cpp
+26-133 files

LLVM/project b6f2ae8 — llvm/lib/Target/AMDGPU SIInsertHardClauses.cpp GCNFeatures.td, llvm/test/CodeGen/AMDGPU hard-clauses-gfx13.mir hard-clauses-load-monitor.mir

[AMDGPU] Stop merging loads and stores in clauses on gfx1250 (#231269)

In CDNA5 the spec states "Once the clause type is determined, any
instruction encountered within the clause that is not of the same type
(and not an internal instruction described below) is illegal and may
lead to undefined behaviour". For GFX10, VMEM/FLAT loads and stores are
mapped to one shared type. However, for CDNA5 these become two
conflicting instruction types and therefore this is undefined behavior.
DeltaFile
+30-138llvm/test/CodeGen/AMDGPU/hard-clauses-gfx1250.mir
+54-0llvm/test/CodeGen/AMDGPU/hard-clauses-gfx1030.mir
+13-25llvm/test/CodeGen/AMDGPU/hard-clauses-load-monitor.mir
+23-0llvm/test/CodeGen/AMDGPU/hard-clauses-gfx13.mir
+5-4llvm/lib/Target/AMDGPU/SIInsertHardClauses.cpp
+8-1llvm/lib/Target/AMDGPU/GCNFeatures.td
+133-1686 files not shown
+138-18212 files

LLVM/project d09950f — llvm/test/Transforms/SLPVectorizer/RISCV revec-compress-mask-cost.ll

[SLP] Precommit test for expanded compress mask fix (#232832)

Assisted-By: Claude Sonnet 5.5
DeltaFile
+39-0llvm/test/Transforms/SLPVectorizer/RISCV/revec-compress-mask-cost.ll
+39-01 files

LLVM/project f79fa27 — mlir/lib/Transforms/Utils GreedyPatternRewriteDriver.cpp

[mlir] Check greedy rewrite change flag against fingerprints

Compare the driver’s local changed result against whether the enclosing operation fingerprint changed. Keep the result separate from the optional output parameter so the check validates this invocation even when the caller reuses the output variable.
DeltaFile
+15-14mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
+15-141 files

NetBSD/pkgsrc-wip a2823f9 — semi Makefile

(devel/semi) UNBROKEN, set WRKSRC
DeltaFile
+2-2semi/Makefile
+2-21 files

LLVM/project 8049513 — llvm/test/CodeGen/AMDGPU clmul.ll amdgcn.bitcast.1024bit.ll, llvm/test/CodeGen/NVPTX atomicrmw-elementwise-sm90.ll atomicrmw-elementwise-sm70.ll

Merge branch 'main' into users/lukel97/riscv/optimized-nf3-nf4
DeltaFile
+31,848-0llvm/test/CodeGen/NVPTX/atomicrmw-elementwise-sm60.ll
+31,310-0llvm/test/CodeGen/NVPTX/atomicrmw-elementwise-sm70.ll
+22,710-0llvm/test/CodeGen/NVPTX/atomicrmw-elementwise-sm90.ll
+7,716-7,532llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+5,611-5,555llvm/test/CodeGen/RISCV/clmul.ll
+2,795-3,867llvm/test/CodeGen/AMDGPU/clmul.ll
+101,990-16,9544,734 files not shown
+328,892-128,8984,740 files

GhostBSD/ports f8dba73 — sysutils/setup-station Makefile distinfo

sysutils/setup-station: Update to 0.6

Bump PORTVERSION to 0.6 and regenerate distinfo for the new release.
DeltaFile
+3-3sysutils/setup-station/distinfo
+1-1sysutils/setup-station/Makefile
+4-42 files