LLVM/project 8307b46bolt/lib/RuntimeLibs RuntimeLibrary.cpp, bolt/test CMakeLists.txt lit.cfg.py

[BOLT] Support runtime libraries built as thin archives (#214292)

In some configurations, BOLT runtime libraries may be built as thin
archive. Use the more generic `Archive::create` to handle these.
DeltaFile
+22-0bolt/test/runtime/thin-archive.c
+4-3bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
+3-0bolt/test/lit.cfg.py
+1-0bolt/test/CMakeLists.txt
+30-34 files

FreeBSD/src 4f42ec2usr.sbin/prometheus_sysctl_exporter prometheus_sysctl_exporter.8 prometheus_sysctl_exporter.c

prometheus_sysctl_exporter: don't abort on bad labels

We can probaby consider these kernel bugs, in which case asserting is
not the most helpful thing we can do.  Let's emit the necessary details
to stderr and exit non-zero to aid debugging these without completely
blocking the ability to export all of the well-formed metrics.

Reviewed by:    rew
Differential Revision:  https://reviews.freebsd.org/D57983
DeltaFile
+40-14usr.sbin/prometheus_sysctl_exporter/prometheus_sysctl_exporter.c
+6-1usr.sbin/prometheus_sysctl_exporter/prometheus_sysctl_exporter.8
+46-152 files

LLVM/project c6eb5e3clang/docs ClangFormat.md ClangFormatStyleOptions.md, clang/docs/tools dump_format_help.py dump_format_style.py

[docs][clang-format] Migrate generated clang-format docs to markdown (#211398)

Tracking issue: #201242
See the [migration guide] for more information. 

This is a stacked PR based on #211397 , which will be a standalone
commit that
renames *.rst -> *.md before this PR lands for history preservation
purposes.

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

First, the generator was updated to generate markdown constructs, and
then the Doxygen comments in `Format.h` and `IncludeStyle.h` were also
modified to use markdown constructs. Mostly this means using single
backticks instead of double backticks, which is the Doxygen-native way
of expressing code font blocks anyway, so that's good.


    [3 lines not shown]
DeltaFile
+5,522-5,344clang/docs/ClangFormatStyleOptions.md
+404-404clang/include/clang/Format/Format.h
+241-260clang/docs/ClangFormat.md
+109-27clang/docs/tools/dump_format_style.py
+34-33clang/include/clang/Tooling/Inclusions/IncludeStyle.h
+3-11clang/docs/tools/dump_format_help.py
+6,313-6,0796 files

FreeBSD/src 6404ef1share/man/man4 ix.4, sys/dev/ixgbe ixgbe_sriov.h ixgbe.h

ixgbe: implement VF secondary MAC filters

The PF advertises the legacy SET_MACVLAN mailbox request but always
rejects it. The request installs secondary unicast addresses.

Allocate an owned RAR pool for VF secondary addresses, reserve low
entries for PF filters, and place VF-primary addresses at the top of
the usable RAR range. Reject address collisions and cap each VF at
three secondary filters so one guest cannot exhaust the shared table.

Clear secondary filters on VF or PF reset and on SR-IOV teardown. This
hardware can anti-spoof only the VF primary source address. Reject
secondary filters while MAC anti-spoofing is configured, so installing
them requires an explicit administrative policy choice. Report optional
filter-table allocation failure without disabling SR-IOV.

Adapt the owned-RAR allocation and reset-cleanup model from igb(4) in
a2ed165f0049 to DPDK's ixgbe SET_MACVLAN mailbox semantics.


    [2 lines not shown]
DeltaFile
+149-5sys/dev/ixgbe/if_sriov.c
+10-0sys/dev/ixgbe/ixgbe.h
+10-0share/man/man4/ix.4
+2-0sys/dev/ixgbe/ixgbe_sriov.h
+171-54 files

FreeBSD/src 660ea2csys/dev/ixgbe ixgbe_vf.c ixgbe.h

ixgbe: enforce VF promiscuity and multicast policy

The allow-promisc IOV property is advertised but ignored, and the PF
rejects the xcast request used by modern VFs. Negotiate mailbox APIs
1.2 and 1.3, implement pool-scoped xcast modes, and require
allow-promisc for requested all-multicast or unicast-promiscuous modes.

The VF mailbox can carry only 30 multicast hashes. When ixv has a
larger list, request the API 1.2 all-multicast xcast mode instead of
extending the legacy SET_MULTICAST message. The PF grants that fallback
only to VFs configured with allow-promisc; otherwise ixv reports that
only the first 30 addresses are active.

Reset xcast state with the VF and have ixv replay the mode implied by
its interface flags after multicast updates.

Follow DPDK's ixgbe API 1.2/1.3 xcast contract, with allow-promisc
policy adapted from igb(4) in a2ed165f0049.


    [2 lines not shown]
DeltaFile
+90-26sys/dev/ixgbe/if_sriov.c
+48-1sys/dev/ixgbe/if_ixv.c
+3-0sys/dev/ixgbe/ixgbe_sriov.h
+1-1sys/dev/ixgbe/ixgbe_vf.c
+2-0sys/dev/ixgbe/ixgbe.h
+144-285 files

FreeBSD/src caa08edsys/dev/ixgbe ix_txrx.c if_sriov.c

ixgbe: Preserve priority-tagged traffic with SR-IOV

VID 0 carries only 802.1p priority and does not identify VLAN
membership. Keep VFTA bit zero in the persistent PF shadow table so
reset and SR-IOV replay admit priority-tagged frames while VLAN
filtering is enabled.

In virtualization mode, also reserve VLVF slot zero and restore PF and
eligible VF pool memberships. A VFTA hit alone admits the tag globally
but does not deliver it to the correct pools.

This matches the priority-tag treatment in em/igb.

MFC after:      1 week
DeltaFile
+10-1sys/dev/ixgbe/if_ix.c
+4-2sys/dev/ixgbe/if_sriov.c
+3-2sys/dev/ixgbe/ix_txrx.c
+17-53 files

FreeBSD/src a81f97ashare/man/man4 ix.4, sys/dev/ixgbe ixgbe.h ix_txrx.c

ixgbe: preserve VLAN ownership with SR-IOV

The VF VLAN capability is checked but never granted, and no SR-IOV
configuration property exposes the existing default-VLAN support. PF
VLAN updates also replace VFTA registers from a PF-only shadow, erasing
live VF filters.

Expose access VLAN and trunk policy through the IOV schema. Track each
VF VLAN as desired state, restore the administrative VLAN after reset,
and use the native VLVF helper for incremental PF and VF ownership
changes.

Keep VLAN filtering enabled while SR-IOV is active. When PF hardware
filtering is disabled, admit every VLAN to the PF without bypassing
per-pool VF isolation. Reconstruct VLVF and the shared VFTA from PF and
VF desired state after reset or a filtering-mode transition, and
restore PF-only state on teardown.

When the last VF leaves a VLAN still owned by the PF, free its VLVF

    [14 lines not shown]
DeltaFile
+201-21sys/dev/ixgbe/if_sriov.c
+149-69sys/dev/ixgbe/if_ix.c
+23-1share/man/man4/ix.4
+15-3sys/dev/ixgbe/ix_txrx.c
+5-1sys/dev/ixgbe/ixgbe.h
+393-955 files

FreeBSD/src 7d3d630sys/dev/ixgbe ixgbe_sriov.h if_sriov.c

ixgbe: enforce configured VF anti-spoofing

The SR-IOV schema advertises MAC anti-spoofing and enables it by
default, but the VF configuration was never consumed and the hardware
policy remained disabled.

Record the configured policy and apply MAC and VLAN anti-spoofing
throughout VF initialization and reset. On X550-family devices, also
protect the LLDP and flow-control Ethertypes and enable per-VF
spoof-event accounting. Remove the driver-owned state during SR-IOV
teardown.

Adapt the anti-spoof configuration lifecycle used by igb(4) in
a2ed165f0049 to the ixgbe hardware controls.

MFC after:      1 week
Relnotes:       yes
DeltaFile
+50-0sys/dev/ixgbe/if_sriov.c
+1-0sys/dev/ixgbe/ixgbe_sriov.h
+51-02 files

LLVM/project 56a654bllvm/include/llvm/CodeGen TargetLowering.h, llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp

[DAG] Change `isExtractSubvectorCheap` into `getExtractSubvectorCost` (#213614)

This changes `isExtractSubvectorCheap` into `getExtractSubvectorCost`.

This is preparing for #201056 in order to remove `isNarrowingProfitable`
bail out for `narrowInsertExtractVectorBinOp`.

The reason is `isNarrowingProfitable` should be applying on scalar
variable instead of vectors.

---------

Co-authored-by: shore <shorshen at amd.com>
DeltaFile
+17-11llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+20-7llvm/include/llvm/CodeGen/TargetLowering.h
+17-9llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+15-8llvm/lib/Target/X86/X86ISelLowering.cpp
+10-4llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+8-5llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
+87-4411 files not shown
+130-7717 files

LLVM/project 1b8dcb4llvm/lib/Target/NVPTX NVPTXISelLowering.cpp NVPTXInstrInfo.td

[NVPTX] Model SM architectures as subtarget features (NFC) (#214335)
DeltaFile
+170-170llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
+89-121llvm/lib/Target/NVPTX/NVPTXSubtarget.h
+93-82llvm/lib/Target/NVPTX/NVPTX.td
+64-97llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
+50-78llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
+38-39llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
+504-5873 files not shown
+512-5949 files

LLVM/project 1c0eda0llvm/lib/Analysis ScalarEvolution.cpp, llvm/unittests/Analysis ScalarEvolutionTest.cpp

Revert "[SCEV] Speed up forgetLoop by avoiding def-use walk for loop-header PHIs" (#212485)

Reverts https://github.com/llvm/llvm-project/pull/201572
Multiple miscompilations are reported, see
https://github.com/llvm/llvm-project/issues/207744,
https://github.com/llvm/llvm-project/issues/212027

That commit made forgetLoop() rely on LoopUsers[L] and stop walking the
def-use chain of the loop-header PHIs. This is insufficient, because
some cached data is derived from the underlying IR of SCEVUnknown, it is
not reachable from LoopUsers[L].
After that commit, forgetLoop() no longer invalidated them, so stale
UnsignedRanges / SignedRanges, ConstantMultipleCache, ValuesAtScopes
cause miscompilations.
DeltaFile
+0-39llvm/unittests/Analysis/ScalarEvolutionTest.cpp
+16-6llvm/lib/Analysis/ScalarEvolution.cpp
+16-452 files

NetBSD/pkgsrc Bxa7oendoc CHANGES-2026

   doc: Updated cad/klayout to 0.30.10
VersionDeltaFile
1.5042+2-1doc/CHANGES-2026
+2-11 files

NetBSD/pkgsrc pGze3XScad/klayout distinfo Makefile, cad/klayout/patches patch-src_klayout.pri patch-src_tl_tl_tlTimer.cc

   (cad/klayout) Updated 0.29.12 to 0.30.10, based on wip/klayout by Atsushi Toyokura

   (pkgsrc)
   - Add two experimental patches for Timer::memory_size () at:
      src/tl/tl/tlTimer.cc
      src/klayout.pri

   - To test the code inserted above, we have to know when the function is called.
     By asking chatGPT,
    **KLayout 0.30.10**, `tl::Timer::memory_size()` is called automatically when an **enabled `tl::SelfTimer` is destroyed and writes its performance report**

   --------------------------------------
   SelfTimer goes out of scope / is deleted
           v
   SelfTimer::~SelfTimer()
           v
   stop()
           v
   report()

    [419 lines not shown]
VersionDeltaFile
1.1+56-0cad/klayout/patches/patch-src_tl_tl_tlTimer.cc
1.11+28-1cad/klayout/PLIST
1.1+16-0cad/klayout/patches/patch-src_klayout.pri
1.108+9-5cad/klayout/Makefile
1.53+6-4cad/klayout/distinfo
+115-105 files

LLVM/project 7f298d7llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

Update for comments
DeltaFile
+4-5llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+4-51 files

LLVM/project 5be66d0llvm/lib/Target/AMDGPU SIModeRegisterDefaults.h SIISelLowering.h

[NFC][AMDGPU] Let IR level callers query the FMA/FMAD predicates (#213310)

isFMADLegal and isFMAFasterThanFMulAndFAdd read the denormal mode out of
the MachineFunction, so nothing before instruction selection can ask
them whether an fmul/fadd pair will be fused. Take an explicit
DenormalFPEnv instead, and make the existing MachineFunction /
SelectionDAG / MachineInstr entry points thin wrappers over it.

Also override the IR level isFMAFasterThanFMulAndFAdd hook. The two
views agree by construction, since SIModeRegisterDefaults copies its
denormal fields out of getDenormalFPEnv.

isFMADLegal uses VT as written and does not look through vectors, so a
vector type reports false, as in the SelectionDAG overload it was
extracted from.

The patch is preparation for querying these from getArithmeticInstrCost
and a revived isProfitableToSinkOperands.


    [2 lines not shown]
DeltaFile
+41-19llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+10-0llvm/lib/Target/AMDGPU/SIISelLowering.h
+5-0llvm/lib/Target/AMDGPU/SIModeRegisterDefaults.h
+56-193 files

LLVM/project a432964llvm/lib/Target/AMDGPU VOP3PInstructions.td, llvm/test/CodeGen/AMDGPU mad-mix-lo-bf16.ll mad-mix-lo.ll

[AMDGPU] Fix sign of zero in fpround(fmul) -> V_{MAD,FMA}_MIX{LO,HI} (#214544)

The isel patterns lowering `fptrunc (fmul float %a, %b)` to a mix
instruction passed +0.0 as the FMA addend. Under round-to-nearest fma(a,
b, +0.0) is +0.0 whenever a * b is -0.0, so the sign of zero was lost:
on gfx90a, `(half)(-1.0f * 0.0f)` returned +0.0.

Use a -0.0 addend instead, which is the correct multiplicative identity
for an FMA and is what the f32 sibling pattern in MadFmaMixFP32Pats has
always done.

Verified on gfx90a: (half)(-1.0f * 0.0f) now returns 0x8000.
DeltaFile
+76-76llvm/test/CodeGen/AMDGPU/llvm.log10.ll
+76-76llvm/test/CodeGen/AMDGPU/llvm.log.ll
+11-11llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
+4-4llvm/test/CodeGen/AMDGPU/mad-mix-lo-bf16.ll
+3-3llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+170-1705 files

LLVM/project 668134ellvm/include/llvm/DebugInfo/GSYM GsymReader.h FunctionInfo.h, llvm/lib/DebugInfo/GSYM FunctionInfo.cpp GsymReader.cpp

[gsymutil] Add `--statistics` option (#186495)

# Motiviation

Currently, if one wants to know the size of the sections in a gSYM (e.g.
to check if they exceed 4GB), they have to dump the whole gSYM in the
text form, then process that huge text to get the sizes.

# New option `--statistics[=<format>]`

This patch adds a `llvm-gsymutil --statistics[=<format>]` option to
print the size info for all sections. It supports three formats:
* `text`: Default.
* `json`: Dense JSON.
* `pretty-json`: Pretty-printed JSON.

See example output below.

# Examples

    [67 lines not shown]
DeltaFile
+397-0llvm/unittests/DebugInfo/GSYM/GSYMTest.cpp
+204-0llvm/lib/DebugInfo/GSYM/GsymReader.cpp
+79-0llvm/lib/DebugInfo/GSYM/FunctionInfo.cpp
+38-0llvm/include/llvm/DebugInfo/GSYM/FunctionInfo.h
+25-0llvm/tools/llvm-gsymutil/llvm-gsymutil.cpp
+18-0llvm/include/llvm/DebugInfo/GSYM/GsymReader.h
+761-03 files not shown
+776-09 files

OpenBSD/src 2IaC4Qzusr.sbin/npppd/npppd lcp.c

   Fix LCP MRU option handing.  Pointed out by Arthur Chan.

   ok mvs deraadt
VersionDeltaFile
1.19+4-6usr.sbin/npppd/npppd/lcp.c
+4-61 files

LLVM/project d39a398clang/docs ClangFormat.md ClangFormatStyleOptions.md, clang/docs/tools dump_format_help.py dump_format_style.py

[docs][clang-format] Migrate generated clang-format docs to markdown

The challenge here is that the documentation is generated from Doxygen
comments in headers, `Format.h` and `IncludeStyle.h`.

First, the generator was updated to generate markdown constructs, and
then the Doxygen comments were also modified to use markdown constructs.
Mostly this means using single backticks instead of double backticks,
which is the Doxygen-native way of expressing code font blocks anyway,
so that's good.

To validate, I built the Sphinx docs and the doxygen, and I confirmed
that the generator script is idempotent, meaning it doesn't change the
markdown output. When I add a new option to clang-format, it shows up in
the help text block, so it works.

Before/after validation links:
| Source file | Before HTML | After HTML |
| --- | --- | --- |

    [4 lines not shown]
DeltaFile
+5,424-5,444clang/docs/ClangFormatStyleOptions.md
+401-400clang/include/clang/Format/Format.h
+236-259clang/docs/ClangFormat.md
+87-27clang/docs/tools/dump_format_style.py
+34-33clang/include/clang/Tooling/Inclusions/IncludeStyle.h
+3-11clang/docs/tools/dump_format_help.py
+6,185-6,1746 files

LLVM/project 330f7fdclang/docs ClangFormatStyleOptions.md, clang/docs/tools dump_format_style.py

Fix dump_format_style.py blank lines and trailing whitespace, regenerate

The reindent_fenced_blocks() change in the previous commit introduced two
output issues when regenerating ClangFormatStyleOptions.md:

1. Empty lines inside code blocks got an indentation prefix added, producing
   trailing whitespace. Fix by skipping the prefix for whitespace-only lines.

2. The blank line that separates a description sentence from the following
   code fence was lost. This blank line is necessary for correct CommonMark
   loose-list rendering. Fix by inserting a blank line before any opening
   code fence (triple-backtick with a lang word, or ::: with a directive)
   that immediately follows a non-blank line.

Regenerate ClangFormatStyleOptions.md with the corrected generator.
DeltaFile
+263-64clang/docs/ClangFormatStyleOptions.md
+3-4clang/include/clang/Format/Format.h
+6-1clang/docs/tools/dump_format_style.py
+272-693 files

LLVM/project 0ce2c97clang/docs ClangFormatStyleOptions.md ClangFormat.md, clang/docs/tools dump_format_style.py

fix link word wrapping
DeltaFile
+26-9clang/docs/tools/dump_format_style.py
+9-5clang/docs/ClangFormat.md
+0-1clang/docs/ClangFormatStyleOptions.md
+35-153 files

LLVM/project 77b44ebclang/docs ClangFormat.rst ClangFormat.md, clang/lib/Format CMakeLists.txt

[docs][clang-format] Rename clang-format docs *.rst -> *.md, update refs (#211397)

Tracking issue: #201242
See the [migration guide] for more information. 

[migration guide]:
https://llvm.org/docs/SphinxQuickstartTemplate.html#markdown-migration-guidelines

This is the initial straight rename commit. It will probably break the
docs build, but it has to be a separate PR for blame preservation
purposes.

---------

Co-authored-by: owenca <owenpiano at gmail.com>
DeltaFile
+0-8,043clang/docs/ClangFormatStyleOptions.rst
+8,043-0clang/docs/ClangFormatStyleOptions.md
+0-366clang/docs/ClangFormat.rst
+366-0clang/docs/ClangFormat.md
+2-2clang/test/Format/docs_updated.test
+2-2clang/lib/Format/CMakeLists.txt
+8,413-8,4132 files not shown
+8,417-8,4178 files

LLVM/project 9219721llvm/test/CodeGen/NVPTX cache-hint-load-store.ll cache-hint-intrinsics.ll

[NVPTX] Fix broken cache hint metadata lit tests (#214600)

I just merged https://github.com/llvm/llvm-project/pull/204067 and
unfortunately forgot to locally compile all the PTX I was generating
from cache hint metadata in lit tests.

- I didn't know that .L2::cache_hint isn't valid on PTX volatile loads.
We need to drop the metadata then for volatile loads. I'll put this up
in a PR later, but for now just delete the lit test that generates the
invalid PTX. I'll add it back in the follow up.

- I forgot to provide SM version and PTX version when invoking ptxas for
the lit tests.
DeltaFile
+1-14llvm/test/CodeGen/NVPTX/cache-hint-transforms.ll
+1-1llvm/test/CodeGen/NVPTX/cache-hint-load-store.ll
+1-1llvm/test/CodeGen/NVPTX/cache-hint-intrinsics.ll
+1-1llvm/test/CodeGen/NVPTX/cache-hint-cache-policy.ll
+1-1llvm/test/CodeGen/NVPTX/cache-hint-atomics.ll
+5-185 files

FreeBSD/doc dd46824website/content/en/releng _index.adoc

14.5: Add to code freeze table

Approved by:    re (implicit)
Sponsored by:   OpenSats Initiative
DeltaFile
+1-0website/content/en/releng/_index.adoc
+1-01 files

FreeBSD/doc 1693317website/content/en/releases/14.5R hardware.adoc

14.5: Regenerate hardware notes

Approved by:    re (implicit)
Sponsored by:   OpenSats Initiative
DeltaFile
+70-33website/content/en/releases/14.5R/hardware.adoc
+70-331 files

FreeNAS/freenas 54a0b18src/middlewared/middlewared/alembic/versions/26.0 2026-08-06_12-00_normalize_nic_mac.py, src/middlewared/middlewared/api/base/types network.py

Reject and normalize non-colon NIC MAC addresses

## Problem
The NIC `mac` field accepted dash-separated, no-separator and mixed forms, but libvirt's `defineXML` only parses colon-separated MACs — so a VM or container configured that way was accepted by the API and then failed to start with an XML parse error. Existing installs can already have such addresses stored.

## Solution
- **Colon-only validation.** The shared `MACAddress` type now matches colon-separated hex only. It is anchored with `\Z` rather than `$`, because Python's `$` also matches before a trailing newline and would otherwise let through a value libvirt still cannot parse.
- **Lowercase normalization.** MAC addresses are case-insensitive, but every comparison we make against one is a plain string compare, so an uppercase spelling was a distinct value to the per-instance duplicate check. The type now lowercases, and `device_uniqueness_check` case-folds the NIC identity so rows written before this still compare correctly.
- **Migration for stored addresses.** Existing `vm_device` / `container_device` NIC rows are rewritten to the canonical form. Anything not carrying a valid 48-bit address is replaced with a freshly generated MAC — that includes non-string values, which an incus migration can leave behind when PyYAML resolves an unquoted address such as `52:54:00:12:34:56` as a YAML 1.1 base-60 integer.

Frozen API versions keep their original pattern, so a client pinned to 25.10 that sends a dash-separated MAC is now rejected at validation instead of failing later at start.
DeltaFile
+67-0src/middlewared/middlewared/alembic/versions/26.0/2026-08-06_12-00_normalize_nic_mac.py
+63-0src/middlewared/middlewared/pytest/unit/api/base/types/test_mac_address.py
+24-0src/middlewared/middlewared/pytest/unit/plugins/test_libvirt_device_uniqueness.py
+7-3src/middlewared/middlewared/api/base/types/network.py
+5-1src/middlewared/middlewared/utils/libvirt/utils.py
+2-3src/middlewared/middlewared/api/v26_0_0/vm_device.py
+168-71 files not shown
+170-107 files

LLVM/project 5200600clang-tools-extra/include-cleaner/lib WalkAST.cpp, clang-tools-extra/include-cleaner/unittests WalkASTTest.cpp

[include-cleaner] Ensure receiver headers are kept when accessing ObjC properties (#212633)

When accessing Objective-C properties via dot-notation (e.g., obj.foo),
include-cleaner was previously only recording the usage of the property
itself or its underlying getter/setter methods. This could lead to cases
where the header declaring the receiver's type (Interface or Protocol)
was incorrectly flagged as unused if no other standard methods were
invoked on it.
DeltaFile
+304-6clang-tools-extra/include-cleaner/unittests/WalkASTTest.cpp
+13-2clang-tools-extra/include-cleaner/lib/WalkAST.cpp
+317-82 files

LLVM/project 9c121cdllvm/include/llvm/DebugInfo/DWARF DWARFExpressionPrinter.h, llvm/lib/DebugInfo/DWARF DWARFExpressionPrinter.cpp

[DebugInfo] Fix compact DWARF expression failure handling (#213391)

printDwarfExpressionCompact has two pre-existing failure paths that
silently produce bad output.

The register-name callback is optional, but the short DW_OP_reg* and
DW_OP_breg* paths call it directly, so a missing callback falls over.
Use resolveRegName for every register form and report an unknown
register only after both name-resolution paths fail.

DW_OP_entry_value has the same problem: it ignores a failed recursive
print, wraps the partial output in entry(...), and returns true. Print
entry-value subexpressions into a temporary buffer and propagate failure
before adding entry(...), so a failed subexpression can't come back as
successful output.

While here, GetRegName in llvm-objdump has a latent ordering issue: it
writes an unknown-register diagnostic as soon as target lookup misses,
even though resolveRegName can still decode an ASCII-packed

    [13 lines not shown]
DeltaFile
+109-55llvm/unittests/DebugInfo/DWARF/DWARFExpressionCompactPrinterTest.cpp
+50-0llvm/test/tools/llvm-objdump/ELF/ARM/debug-vars-ascii-packed-reg.s
+28-9llvm/lib/DebugInfo/DWARF/DWARFExpressionPrinter.cpp
+3-1llvm/include/llvm/DebugInfo/DWARF/DWARFExpressionPrinter.h
+1-2llvm/tools/llvm-objdump/SourcePrinter.cpp
+191-675 files

FreeNAS/freenas d34f659src/middlewared/middlewared/plugins/apps crud.py, src/middlewared/middlewared/plugins/apps/ix_apps query.py

NAS-141749 / 27.0.0-BETA.1 /  Report apps whose metadata is unusable so they can be deleted (#19457)

## Problem

An app whose `metadata.yaml` we cannot read or make sense of was skipped
outright by `list_apps`, so it never appeared in `app.query`. That left
no way to get rid of it: `app.delete` resolves the app first and failed
with `[ENOENT] App X does not exist`, while the directory, the ix-volume
dataset and often a set of still-running containers stayed behind
indefinitely. The only way out was to delete things by hand over SSH.

Digging into it turned up something worse and independent of the above:
the damage from one broken app was never contained to that app.
`_load_app_yaml` did not catch `OSError`, so an unreadable file killed
`app.metadata_generate`, and `get_current_app_config` is a bare `open()`
outside any try, so metadata pointing at a missing version directory
killed the job too. Every lifecycle path waits on that job with
`raise_error=True`, so a single broken app meant install, update,
upgrade, rollback and delete all failed for every app on the system.

    [84 lines not shown]
DeltaFile
+378-0src/middlewared/middlewared/pytest/unit/plugins/apps/test_list_apps_error_state.py
+287-0src/middlewared/middlewared/pytest/unit/plugins/apps/test_apps_crud.py
+237-0src/middlewared/middlewared/pytest/unit/plugins/apps/test_app_metadata_error.py
+143-42src/middlewared/middlewared/plugins/apps/ix_apps/query.py
+153-21src/middlewared/middlewared/plugins/apps/crud.py
+138-0src/middlewared/middlewared/pytest/unit/plugins/apps/test_app_metadata_generate.py
+1,336-6321 files not shown
+1,948-11127 files

LLVM/project 3e9646alld/test/wasm shared-synthetic-symbols.s, lld/wasm Driver.cpp

[lld][WebAssembly] Allow linker-synthetic symbols to be undefine when building shared libraries (#153537)

Fixes: #103592
DeltaFile
+75-0lld/test/wasm/shared-synthetic-symbols.s
+21-10lld/wasm/Driver.cpp
+96-102 files