[HLSLSemanticSignatures] Implement the stacked packing of elements (#218060)
This change defines a testing harness for the packing algorithms of
semantic signatures.
Then implements the stacked packing algorithm.
Resolves: https://github.com/llvm/llvm-project/issues/205875
Assisted by: Claude Opus 5 and GPT-5.6 Sol
[lldb][Fortran] Added DWARFASTParser for Fortran (#218024)
This PR adds the DWARFASTParserFortran class returning nullptr. This is
intended to add the necessary classes for subsequent PRs to add
features.
Changes:
- Adds DWARFASTParserFortran class.
Part of the Add Fortran support to LLDB GSoC 2026 project.
Relates to #109119.
if_bridge: pull up only the headers bridge_pfil() inspects
bridge_pfil() pulled up min(m_pkthdr.len, max_protohdr) bytes. When the
mapped head is shorter than that and followed by an unmapped (M_EXTPG)
mbuf -- a sendfile(2) or KTLS segment from a member advertising
IFCAP_MEXTPG -- m_pullup() ran into it and dereferenced a NULL mtod(),
panicking the kernel.
Pull up the Ethernet header first, and the SNAP/LLC header only for an
802.3 frame. This is similar to pf and ip_output().
m_pullup() and m_copyup() asserted only the first mbuf; assert inside both
copy loops so the shape trips the check.
Fixes: c38abd64dbc1 ("if_epair: support IFCAP_MEXTPG")
Suggested by: markj
Reviewed by: markj, gallatin
Assisted-by: Claude Code (Fable 5, Opus 5)
if_bridge: count the drops on the fragmentation path
bridge_pfil() returned a fragmentation failure without counting it,
and bridge_fragment() dropped a chain on three allocation failures
without counting those either.
Count the first on the filtered interface and the others with
ips_odropped, which is what ip_fragment() uses for the same failure
and what bridge_fragment() already uses for its success case.
Reviewed by: gallatin
Differential Revision: https://reviews.freebsd.org/D59391
Assisted-by: Claude Code (Fable 5, Opus 5)
zfs: spa_sync_upgrades() should only take lock when needed
"zfs get -Hp ..." command got into waiting for memory allocation
while holding READER lock as dmu_objset_hold holds dp_config_rwlock READ
via dsl_pool_hold.
pageout was freeing memory by pushing some pages to swap zvol,
but got waiting for txg_wait_synced() and the memory was not freed.
txg_sync thread: spa_sync -> spa_sync_upgrades ->
rrw_enter(&dp->dp_config_rwlock, RW_WRITER) blocked.
This scenario did lead to investigation if spa_sync_upgrades() is
actually correct about requiring writer lock and it turns out that
we only do need write lock for three cases, where upgrade does change
DSL name space.
In other cases, and to check uberblock versions, we do not need
to set this lock.
[3 lines not shown]
ZTS: inject latency into initialize online/offline test
Fast vdevs can finish initialization before the online/offline test
checks progress and suspends it. Moving the suspend command earlier
only narrows this race window.
Inject a 20 ms write delay with one lane on the disk being initialized
so the test can observe progress and suspend initialization. Keep the
original online/offline assertions and clear the injection during
cleanup before destroying the pool.
Reviewed-by: Brian Behlendorf <behlendorf1 at llnl.gov>
Signed-off-by: Matthias Goergens <matthias.goergens at gmail.com>
Closes #19024
Decline Direct I/O reads on a file handle after a benign verify failure
A Direct I/O read verifies the block checksum over the caller's buffer
after the read completes, to catch the buffer being modified while the
read is in flight. When an application recycles its O_DIRECT read
buffers across concurrent requests -- QEMU's block layer does this -- a
queued read can overwrite the buffer before the previous read's verify
runs. The verify then fails even though the data on disk is correct:
ZFS discards the direct read, re-reads the block through the ARC, and
emits an ereport.fs.zfs.dio_verify_rd. The returned data is correct and
the pool stays healthy, but under concurrent load the stream of failed
verifies and buffered re-reads is a real cost and can stall the
workload (#18610).
Once a file handle hits one of these benign failures -- a DIO read
verify that failed but whose buffered re-read then succeeded, proving
the on-disk data good and the buffer caller-modified -- decline Direct
I/O for reads on that handle for the rest of its life and route them
through the existing uncached buffered path. An application that uses a
[29 lines not shown]
[lldb] Add test variants to build directory name (#222792)
Fix testing with shared build directories to no longer share build
directories between build variants.
For example, use a different build directory for dwarf and dsym
variants, to prevent one variant's build artifacts from being used by
the other.
Assisted-by: claude
[LLVM] Add zlib compressed data magic to LLVM magic
RFC 1950 CMF/FLG with a 32K window is four well-defined headers, which
is what LLVM's compress2 emits. Recognize those the same way as zstd so
callers can name either stream without defaulting unknown bytes to zlib.
[Offloading] Add support for compressed OffloadBinary types
Summary:
Offload binaries are used to store many heterogenous architectures into
a singel offloading blob. These lists can get very large so this PR adds
the option to compress them with the LLVM provided compression
libraries.
The implementation is quite simple, we simply compress all the buffers
after the header into a single compressed blob, then re-construct the
header. Extracting is the reverse.
The biggest change is that the offload binary now **owns** the memory,
whereas before we simply took a reference to it. This is necessary
because the decompression must create new memory compared to what the
user provided. This adds an extra copy internally, but it also
simplifies the V2 additions.
This does not wire up any clang/HIP support, just providing the
functionality.
[LLVM] Add zstd compressed frame magic to LLVM magic
Summary:
ZSTD uses magic to indentify compressed frames in the bitstream. Add
this as a recognized file magic type so that we can identify compressed
streams that LLVM creates.
[NFC][Attributor] Drop the comment on the indirect-call address space cast (#222139)
Follow-up to #222097, which merged before this was addressed.
@efriedma-quic pointed out that the comment described the change rather
than the
code, and that address space zero is not relevant to the fixed code.
Removing
it; `getProgramAddressSpace()` and the cast say what is happening.
[flang][acc] Let getVariableName choose mangled or source names (#222815)
OpenACCSupport can now ask for the name the source spells or the name
the variable is emitted under. Recover names from acc.map_info and
globals, and teach Flang to demangle FIR symbols while still walking the
referenced variable for a mangled data-clause name.
Rename my office hours; NFC (#222982)
Other Clang maintainers routinely come to my office hours to help field
questions, so instead of claiming these are my office hours, I'm turning
them into a more general "Clang Maintainers" office hours. I will
continue to chair them as usual, but this is a more accurate way of
describing the office hours and will hopefully encourage other Clang
maintainers to attend periodically if they have time and interest in
doing so.
[Clang] Refactor instantiation of declarations within concepts (#221707)
After implementation of CWG2369, declarations are instantiated on demand
when evaluating a concept.
This was hinged on TemplateInstantiator, where we intercepted most calls
that need an instantiated declaration. This is almost identity to
SetupConstraintScope, which tries to re-instantiate any declarations to
the current scope. This patch removes SetupConstraintScope because we
can instantiate anything on demand.
The concept normalization patch brings us more troubles when we have to
deal with sugars: declarations instantiated outside of the scope (e.g. a
typedef declaration) are never added/instantiated during instantiation
of concepts: this patch makes that function also look up outer scopes
for those declarations. Note that we couldn't simply make the scope of
concepts 'transparent', since we don't want clashes of instantiated
function parameters.
[4 lines not shown]
[clangd] Add missing SymbolKind cases to YAML serialization (#222070)
The YAML index writer maps index::SymbolKind to strings through a list
of enumCase calls that was not updated when Concept, IncludeDirective,
and the template parameter kinds were added to the enum. Writing a
symbol with one of these kinds matches no case, so nothing is emitted
for the value and the next key lands on the same line, producing Kind:
Lang: C. With assertions enabled, the writer aborts rather than emitting
malformed YAML. This affects clangd-indexer --format=yaml when indexing
C++20 concepts.
Add the missing cases so the list mirrors the enum, drop the duplicate
Function entry, and add a test that round-trips every current SymbolKind
through YAML. The binary index format stores the kind as a raw byte and
is unaffected.
Fixes #206875
[SelectionDAG] Remove dead accessors, variables, and init parameters (NFC) (#222864)
This patch removes several dead accessors in SelectionDAG. It also
adjusts init() and its callers to remove transitively dead variables
and parameters.
SDAGISelPass / getPass:
The last use of SelectionDAG::getPass was removed on February 23, 2026
in commit 9e6a6be8a84f32072e40b27e146fa9076560274e.
RuntimeLibcallInfo / getRuntimeLibcallInfo:
Introduced on January 16, 2026 in commit
01e6245af481dac4604e8a25be6bec0dbe36f99d without any callers, and never
initialized or assigned anywhere.
ORE / getORE:
Introduced on March 30, 2017 in commit
6dd6082472d11b1e1af21e4e4e0789e49de56537 without any callers
for getORE in or out of tree.
[5 lines not shown]
[SystemZ][z/OS] Align constant pool
Follow-up to #222128: The call to emit the alignment was places on
the wrong line but the test did not catch it because it checked
only the textual output (which never emits the error message).
Fix is to move the call and update the test.
mpv: don't force a dep on yt-dlp, it is perfectly usable as a player
for local files without this (which pulls in restricted-arch packages
for solving javascript challenges). update the error message when
this is not found to mention yt-dlp as well as youtube-dl to give a
better clue to users. ok tb@, other feedback lraab