[Flang] Add target-abi to CodegenSpecifics (#201539)
This sets the target-abi, specified in TargetOptions on the MLIR-Module.
This allows it to be used by CodegenSpecifics in the TargetRewritePass.
Currently this is only needed by RISCV64, but can also be used by other
targets. This allows to reuse the logic from clang when determining the
ABI, needed for patch
https://github.com/llvm/llvm-project/pull/198335#discussion_r3272341234.
hwpmc_ibs: Add Zen6 IBS ctl2 filters and alternate disable
Add kernel and userland support for Zen6 IBS extensions per AMD pub
69205 (rev 1.00, March 2026): alternate fetch/op disable via ctl2[0],
fetch latency filtering, virtual address bit 63 filtering, and
streaming-store filtering. Decode the new IbsOpData2 StrmSt and
RmtSocket bits. Update libpmc, pmcstat and manpage.
Pre-Zen6 systems work unchanged with ibs_ctl2 == 0.
Signed-off-by: Andre Silva <andasilv at amd.com>
Reviewed by: Ali Mashtizadeh <ali at mashtizadeh.com>, mhorne
Sponsored by: AMD
Differential Revision: https://reviews.freebsd.org/D56914
usb: implement attach kernel driver feature
FreeBSD's USB framework supports detaching kernel drivers to allow
user space applications to exclusively claim USB interfaces. However,
it lacked support for reattaching the kernel driver afterward.
This commit adds the missing functionality, enabling user space
to return control of the device back to the kernel.
Reviewed by: lwhsu
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D52122
[LoopInterchange] Add test for extra reduction use in inner loop (NFC) (#203240)
Add test cases that cover the uses of outer loop reductions. On of them,
`@extra_reduction_use_in_inner0` is taken from #203104, which is causing
miscompilation now. This will be fixed by the follow-up patch #203241.
[lit] Deprecate execute_external=True in ShTest (#201732)
Implementing the deprecation part of
https://discourse.llvm.org/t/rfc-removal-of-the-lit-external-shell/90951.
I made this a hard error with an additional keyword argument to opt out
of the warning behavior given we don't have the facilities to trivially
log within ShTest like we do in the rest of lit, and I think forcing
people to explicitly acknowledge that things are deprecated is not a bad
thing.
[Offload] Pass `-nostdlibinc` to the device unit test files (#203275)
Summary:
We need this flag so we can include `stdint.h` without potentially going
through to the system interface. this flag removes all default include
paths excepts the resource directory, which is the intention here.
[LSR] Keep ICmpZero comparisons in integer domain to avoid inttoptr casts (#201970)
When LSR expands ICmpZero fixups with pointer-typed operands, override
OpTy to the integer type so both icmp sides stay in the integer domain,
eliminating redundant inttoptr casts.
NAS-141321 / 26.0.0-RC.1 / Suspend VMs on snapshot by default (#19091)
Change the default value of the per-VM `suspend_on_snapshot` setting
from `false` to `true`, so that newly created VMs — and existing ones
that never explicitly set it — are quiesced while a periodic snapshot of
their disk dataset is taken. This produces crash-consistent disk images
instead of snapshotting a running VM's storage live.
This restores the effective behavior that existed before #19053. Prior
to that PR, `vm.suspend_vms` suspended every running VM on its dataset's
snapshot regardless of the per-VM `suspend_on_snapshot` value — so in
practice running VMs were *always* suspended. #19053 fixed the flag so
it is actually honored. But because the field defaulted to `false`,
honoring it meant most VMs would no longer be suspended on snapshot — a
regression from the long-standing behavior. Flipping the default to
`true` keeps suspend-on-snapshot as the out-of-the-box behavior while
still letting users opt out per VM.
On upgrade, every existing VM has `suspend_on_snapshot` set to `true`,
[5 lines not shown]
[llvm] Fix most LLVM_ABI annotations in SandboxIR (#203266)
This updates most LLVM_ABI annotations in the SandboxIR headers to match
expected usage:
* All public APIs should be properly annotated.
* Inlined functions should not be annotated.
These changes were done by a script fixing annotations on LLVM public
headers and manually checked.
This effort is tracked in #109483.
NAS-141321 / 26.0.0-RC.1 / Suspend VMs on snapshot by default (#19091)
## Summary
Change the default value of the per-VM `suspend_on_snapshot` setting
from `false` to `true`, so that newly created VMs — and existing ones
that never explicitly set it — are quiesced while a periodic snapshot of
their disk dataset is taken. This produces crash-consistent disk images
instead of snapshotting a running VM's storage live.
This restores the effective behavior that existed before #19053. Prior
to that PR, `vm.suspend_vms` suspended every running VM on its dataset's
snapshot regardless of the per-VM `suspend_on_snapshot` value — so in
practice running VMs were *always* suspended. #19053 fixed the flag so
it is actually honored. But because the field defaulted to `false`,
honoring it meant most VMs would no longer be suspended on snapshot — a
regression from the long-standing behavior. Flipping the default to
`true` keeps suspend-on-snapshot as the out-of-the-box behavior while
still letting users opt out per VM.
[6 lines not shown]
gdal-lib: Enable support for reading GeoPDF
gdal-lib could previously write GeoPDF, but could not read it. bl3 on
poppler, as upstream's preferred choice of the possibities that are
already in pkgsrc. This make's gdal-lib's dependencies a bit heavier,
but it's not a large fractional increase.
Tested in that opening a GeoPDF in qgis did not crash or have other
bad behavior. While georeferencing was off, it's not clear if that is
a write-side issue.
[flang][OpenMP] Fix the privatization of common blocks (#200446)
Common block objects were being replaced on every privatization,
which caused errors for distinct privatizations on nested constructs.
Modifying a common block clone, instead of the original one, fixes the
issue. Cloning is limited to DSA flags because target mapping lowering
expects to find the common block address, through its defining
operation.
Fixes #178790
[LoopInterchange] Reject if inner loop IV has outer-variant step (#202751)
In the legality check, there is a routine to detect and verify the
induction variables of the inner loop. However, the validation was
insufficient, specifically when the step values of the induction
variables are not loop-invariant with respect to the outer loop.
This patch adds an additional check to ensure that the step values of
those induction variables are also loop-invariant with respect to the
outer loop.
Fixes #202383 and #202401.