[mlir][GPU] Split the dialect declaration (NFC)
Introduce a self-contained dialect declaration and use it in two consumers
that need registration but not the generated operation umbrella.
Across three controlled rebuilds of the affected TUs, median instructions fell
from 82.473B to 75.865B (-8.012%) and median wall time fell from 12.51s to
11.34s (-9.353%).
Assisted-by: Codex
[AMDGPU] Model LDS allocation granularity with subtarget features
Add numeric LDS allocation granularity features, expose them through the TargetParser feature bitset, and use them in the existing backend query.
Generic targets select the largest covered allocation granularity so their resource calculations remain conservative.
Change-Id: Icdd501d008c9d3cd566bdc8bde4a75d566ecb90a
[AMDGPU] Add getLDSAllocGranule to TargetParser
Expose the LDS allocation granule from GPUKind and subarch without an
MCSubtargetInfo. Use the dedicated granularity features and consolidate
backend users on the byte-valued query.
Change-Id: Ic0c9345e7657ec3c6978a646628598cb7608b390
[mlir][Linalg] Split the dialect declaration (NFC)
Introduce a self-contained dialect declaration and use it in five consumers
that need registration but not the generated operation umbrella.
Across three controlled rebuilds of the affected TUs, median instructions fell
from 130.162B to 114.154B (-12.298%) and median wall time fell from 20.30s to
17.85s (-12.069%).
Assisted-by: Codex
[libc] Add sys/file.h and flock function. (#222737)
`flock` is a BSD function that manages advisory locks on opened files
(see https://man7.org/linux/man-pages/man2/flock.2.html)
It has enough differences from `fcntl`-based locking mechanism, and is
provided and used on Linux platforms.
* Add `<sys/file.h>` public header on Linux platforms with `flock`
declaration
and proper macro used for `op` function argument.
* Provide a Linux implementation, which is a simple syscall wrapper
around
`SYS_flock` syscall.
Assisted by: automated tooling, human-reviewed
[mlir][ROCDL] Split the dialect declaration (NFC)
Introduce a self-contained dialect declaration and use it in three consumers
that need registration but not the generated operation umbrella.
Across three controlled rebuilds of the affected TUs, median instructions fell
from 129.372B to 111.587B (-13.748%) and median wall time fell from 20.62s to
17.72s (-14.064%).
Assisted-by: Codex
[mlir][Arith] Split dialect and support declarations to improve build time (NFC) (#222784)
Expose the Arith dialect, attributes, and interfaces without importing
generated operation classes. This lets registration and support-only
users avoid parsing the operation umbrella and its dependencies.
Across three controlled serial rebuilds of five dialect-only TUs, median
instructions fell from 49.429B to 39.665B (-19.755%) and wall time fell
from 7.40s to 5.85s (-20.946%). Across three -j16 rebuilds of 97 support
users, instructions fell from 1,686.265B to 1,531.867B (-9.156%) and
wall time fell from 29.17s to 28.07s (-3.771%).
Assisted-by: Codex
Merge tag 'thermal-7.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull thermal control fix from Rafael Wysocki:
"Replace snprintf() with scnprintf() in the thermal core sysfs code to
avoid compiler warnings about potential truncation of the names of the
sysfs attributes (Andy Shevchenko)"
* tag 'thermal-7.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
thermal: sysfs: switch to use scnprintf() to suppress truncation warning
[mlir][Tosa] Optimize compliance initialization for size (NFC)
The compliance-map constructor includes a 4,920-line generated initializer.
Mark it minsize because it runs only when creating the validation pass and
optimizing this single large function at -O3 is expensive.
LLVM pass timing attributes most of the saving to code generation. Greedy
register allocation fell from 7.070s to 1.348s as global live-range splitting
fell from 6.403s to 0.021s after the constructor became 47.6% smaller.
Across five controlled rebuilds of the affected TU, median instructions fell
from 205.087B to 66.157B (-67.742%) and median wall time fell from 19.83s to
7.95s (-59.909%).
Assisted-by: Codex
[mlir][NVVM] Split out the dialect declaration to improve build time (NFC) (#222783)
Move NVVMDialect to a self-contained declaration header and use it in
five consumers that do not need generated NVVM operations.
Across three controlled rebuilds of the affected TUs, median
instructions fell from 215.791B to 161.538B (-25.141%) and median wall
time fell from 33.40s to 24.66s (-26.168%).
Assisted-by: Codex
Merge tag 'pm-7.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull power management fixes from Rafael Wysocki:
"These harden the cpufreq core against races with sysfs during policy
creation, fix two issues in the OPP (Operating Performance Points)
library, and make OPP print symbolic error names:
- Zero-initialize the policy cpumask and initialize the policy rwsem
before exposing the policy sysfs interface (Runyu Xiao and Zhongqiu
Han)
- Fix potential multiplication overflow when calculating freq in OPP
core (Colin Ian King)
- Fix use after free in _update_opp_table_clk() (Peter Griffin)
- Use %pe to print symbolic error name in OPP (Sumeet Pawnikar)"
* tag 'pm-7.3-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
[5 lines not shown]
[mlir][LLVM] Split out the dialect declaration (NFC) (#222782)
Move LLVMDialect to a declaration header that retains its attribute and
type API but excludes generated operation classes. This narrows 12
dialect-only consumers.
Across three controlled rebuilds of the affected TUs, median
instructions fell from 207.570B to 176.073B (-15.174%) and median wall
time fell from 30.72s to 25.52s (-16.927%).
Assisted-by: Codex
[lldb][Fortran] Add TypeSystemFortran files (#218016)
This PR adds the foundational TypeSystemFortran class. To satisfy the
compiler, it implements all required pure virtual functions from the
base TypeSystem class as stubs (returning nullptr or 0).
Changes:
- Adds the TypeSystemFortran class.
- Provides stub implementations for all inherited pure virtual
functions.
Part of the Add Fortran support to LLDB GSoC 2026 project.
Relates to #109119.
build/pkgbase: preliminary support for OS updates through pkgbase
This is a rough estimate of what is necessary. Not overly stable
yet, but follows opnsense-update way of doing things by using our
product name and version/revision scheme. The latest batch is
kept if a previous older (does not detect going back but will assume
it is not) reference was found.
The incremental way has downsides in intermediate builds/reverts
but at least changes can be tracked pretty well. May also want a
comment as a hash. Also need to see how stable reproducible builds
are or of this requires a permanent state of /usr/obj and only
incrememtal builds thereafter (would really not be ideal).
Not planning to put this into production any time soon but may live
on the snapshot end for future testing.
[mlir][Tensor] Split out the dialect declaration to improve build time (NFC) (#222781)
Move TensorDialect to a self-contained declaration header and use it in
the two consumers that only need the dialect class.
Across three controlled rebuilds of the affected TUs, median
instructions fell from 25.499B to 21.072B (-17.363%) and median wall
time fell from 3.55s to 2.81s (-20.845%).
Assisted-by: Codex
[mlir][Tosa] Optimize compliance initialization for size (NFC)
The compliance-map constructor includes a 4,920-line generated initializer.
Mark it minsize because it runs only when creating the validation pass and
optimizing this single large function at -O3 is expensive.
Across five controlled rebuilds of the affected TU, median instructions fell
from 205.087B to 66.157B (-67.742%) and median wall time fell from 19.83s to
7.95s (-59.909%).
Assisted-by: Codex
[SSAF][PointerFlow] Drop unused TUSummaryExtractor param from translateDeclPointerLevel
TUSummaryExtractor is only needed to mint EntityIds when building an
EntityPointerLevel; translateDeclPointerLevel just walks the Expr and
returns raw DeclPointerLevels, so it never touched Extractor.
This is the second patch the radar below depends on:
rdar://187125348
[AMDGPU] Add getLocalMemorySize to TargetParser
Add getLocalMemorySize and getAddressableLocalMemorySize, both taking a
GPUKind or a Triple::SubArchType, so the LDS a work-group gets can be
queried from a GPU name alone without an MCSubtargetInfo. The first
returns the physical block available in the current mode, the second
caps it at what one work-group can address, mirroring the IsaInfo pair.
The number of SIMDs a work-group runs on is a per-kernel mode rather
than a property of the GPU, so it stays a parameter. GCNSubtarget
initializes its cached sizes from the new entry points. There is no
functional change.
Change-Id: Ib71428b66032a231ed491d6294122b359abfe7e2
Co-Authored-By: Claude Opus 5 (1M context) <noreply at anthropic.com>
[mlir][NVGPU] Split out the dialect declaration to improve build time (NFC) (#222767)
Move NVGPUDialect to a self-contained declaration header and use it in
three consumers that do not need generated NVGPU operations.
Median instructions fell from 221.225B to 166.874B (-24.568%) and wall
time from 34.31s to 25.61s (-25.357%).
Assisted-by: Codex