[SLP]Model gathers of extracted integer sub-fields as bitcast+permute+ext
Emit gathered zero-extended sub-fields of one wider integer scalar as a
bitcast to the field vector plus a permutation and an extension, instead
of an insertelement chain or a splat-shift+trunc tree.
Fixes #55693
Assisted-by: Cursor
Reviewers: RKSimon, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/224919
audio/ezstream: Update to 1.0.2
Add devel/check to build dependencies.
Use localbase in uses.
Add license information.
Pet port linters.
PR: 297893
Approved by: maintainer timeout (3+ weeks)
Do a prefix re-evaluation if the validation state of a route changes.
The validation state of a route does not change the route evaluation
but if the state changes the result of the outbound filters may change.
Because of this do the same dance we do for the filtered flag and
re-evaluate the prefix.
Move the validation state also into the middle of the re-evaluation dance
even though it is not strictly needed. At least that way it is more
consistent with the rest of the code.
Reported by N0zoM1z0
OK tb@
Slang is a shading language that makes it easier to build and
maintain large shader codebases in a modular and extensible fashion,
while also maintaining the highest possible performance on modern
GPUs and graphics APIs. Slang is based on years of collaboration
between researchers at NVIDIA, Carnegie Mellon University, Stanford,
MIT, UCSD and the University of Washington.
The Slang compiler can generate code for a wide variety of targets:
D3D12, Vulkan, Metal, D3D11, CUDA, and even generate code to run
on a CPU. For textual targets, such as Metal Shading Language (MSL)
and CUDA, Slang produces readable code that preserves original
identifier names, as well as the type and call structure, making
it easier to debug.
[AArch64] Fix accumulator chain opcode for SABAv2i32 (#226062)
A typo in `AArch64InstrInfo::getAccumulationStartOpcode` caused
`SABAv2i32` to be matched instead of `SABDv2i32`.
Fixes #225984
filesystems: use g_vfs_close_unlocked(9)
As result, we lock the devvp vnode around calls to VOP_FSYNC() on
unmount. For instance, the vn_fsync_buf() implementation of fsync()
needs exclusive lock on the vnode to guarantee that all dirty buffers
are indeed synced.
Reviewed by: markj
Tested by: pho
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Differential revision: https://reviews.freebsd.org/D59932
VFS: style
Wrap long lines, related to the nullfs mounts over regular files and
sockets type checks. Also fix indent.
Sponsored by: The FreeBSD Foundation
MFC after: 1 week
Unbreak build when KGDB is defined.
Add extern reference to kernel_pmap_
Remove mutex calls since no mutex is present in the pmap struct,
since pseg_get() has its own internal locking logic.
[SystemZ] Fix zero length PR section for zero size BSS globals (#225863)
PR sections must have a non zero length. This was already handled for
ADA sections via requiresNonZeroLength(), but not for BSS globals
declared with zero size. This change extends the existing inflation to
also cover BSS PR sections.
---------
Co-authored-by: Yusra Syeda <yusra.syeda at ibm.com>
[CodeGen] Use validated wave counts for AMDGPU spill costs
Lane-based block frequencies can understate the cost of a spill in
divergent GPU code: a wave still executes a block with only some lanes
active. Use measured block-wave counts to weight SpillPlacement's costs
relative to the original entry-wave count.
Opt in on AMDGPU only. Accept a measured count only when its IR block
maps uniquely to a machine block with matching predecessors and
successors. Keep the existing MBFI cost for unmeasured or rejected
blocks, and leave branch probabilities and general BFI unchanged.
[Transforms] Preserve wave profiles across CFG rewrites
HIP device PGO attaches measured wave counts to IR blocks. Later CFG
rewrites can drop counts from unchanged blocks or leave stale counts
on blocks that now execute differently. Either case makes the profile
unreliable for later optimizations.
Preserve counts through switch lowering, structurization, and loop
rotation only when a block still represents the same executions. Keep
unaffected counts and their IDs even when a loop header's count must be
invalidated. Transfer branch hints only for equivalent decisions, and
avoid assigning switch weights when default traffic cannot be traced
to one edge.
Import jemalloc 5.4.0 (previous was 5.3.1)
* 5.4.0 (Sep 17, 2026)
This release contains over 160 commits, focusing on the technical debts
cleaning including refactorings, bug fixes, test coverage improvement, and
option cleanups. The release also includes portability improvements per
upstream issues report.
New features:
- Add `EXTENT_ALLOC_FLAG_PINNED` so custom extent-allocation hooks can
mark non-reclaimable mappings, such as HugeTLB pages, for preferential
reuse outside the decay and purge pipeline. Add the mallctl interfaces
`stats.pinned`, `stats.arenas.<i>.pinned`,
`stats.arenas.<i>.extents.<j>.npinned`,
`stats.arenas.<i>.extents.<j>.pinned_bytes`, and
`stats.arenas.<i>.mutexes.extents_pinned.{counter}` to report
pinned-memory usage and mutex statistics. (@binliu19: be2de8cc)
- Allow resuming per-CPU arena selection via `thread.arena`.
[86 lines not shown]
[yaml2obj] Migrate to OptTable (#224964)
yaml2obj is one of three tools that parse with
cl::ParseCommandLineOptions(LongOptionsUseDoubleDash=true). Parse its
options with an OptTable instead, so that the mode can be removed from
cl::. Spellings follow the other migrated tools: -D<macro>=<v> and
-D <macro>=<v>, -o<file> and -o <file>, --docnum=<n> and --docnum <n>,
--max-size likewise, -E, -h/--help and --version. `-o=<file>` is no
longer accepted; the tests that used it are updated. `--help` lists
only yaml2obj's options.
LLM-aided
[lldb] Add plugin for Clang offload bundle object container (#222362)
## Summary
Clang supports embedding binaries using the clang offload bundler:
https://clang.llvm.org/docs/ClangOffloadBundler.html
This patch creates an ObjectContainer plug-in that allows us to get the
contained binaries within any executable.
### why we need this?
AMD/HIP host binaries may contain a .hip_fatbin section holding a Clang
offload bundle with one or more AMDGPU ELF code objects, typically for
different GPU architectures. Each ELF code object can contain multiple
ml kernels.
### Test
[11 lines not shown]