[mlir] Avoid rewriting unreachable blocks in the greedy driver
A rewrite can disconnect a block after the iteration's initial CFG sweep.
Track reachability through rewriter notifications and skip worklist
operations in unreachable blocks until the next iteration removes them.
Cache reachability per region and compare final successors after each
rewrite. Preserve the cache for successor-equivalent changes, added edges,
and block merges that keep surviving blocks reachable. Recompute for other
CFG changes, including entry changes and cross-region block moves.
Keep cache updates separate from reachability queries, returning failure
when a full traversal is required. Collect each successor set once for
validation and retain compact vector snapshots in the cache. Check
containing blocks when querying operations in nested regions.
Cover inserted and redirected blocks, blocks connected before rewrite
completion, nested regions, block moves and merges, and explicit op lists.
Use observer diagnostics to check whether affected operations are processed
[5 lines not shown]
amd64: gate WRMSRNS immediate form on compiler support
This support was introduced in LLVM 20 and we still support releases
with LLVM 19 so it's too early to require LLVM 20. Decay to the
non-immediate form when the compiler it too old. This makes the ifunc
pointless, but limits the need for other ifdefs.
Reviewed by: kib
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D60023
amd64: gate WRMSRNS immediate form on compiler support
This support was introduced in LLVM 20 and we still support releases
with LLVM 19 so it's too early to require LLVM 20. Decay to the
non-immediate form when the compiler it too old. This makes the ifunc
pointless, but limits the need for other ifdefs.
Reviewed by: kib
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D60023
[orc-rt] SimpleRemoteCAOverSocket: require a stream socket. (#226676)
SimpleRemote framing reads each message in as many parts as the socket
delivers it, which a socket that preserves message boundaries (datagram,
seqpacket) would truncate. Check SO_TYPE up front and reject anything
but SOCK_STREAM; the socket is owned by then, so it is closed on
failure.
Assisted-by: Claude
[AArch64] Use SVE rev for full reverse shuffles with SVE128 (#224589)
When the vscale_range is always 1, we can make use of the SVE rev
instruction to perform a full 128bit vector reverse.
Sidesteps #223597 for SVE128
py-poetry-core: update to 2.5.0.
poetry-core (2.5.0)
Add Python 3.15 to the automatically generated classifiers (#961).
Fix an issue where a <V version constraint wrongly allowed pre-releases of V in some cases (#939).
Fix an issue where version ranges with coincident bounds were not recognized as empty (#939).
Fix an issue where the string representation of a version union did not describe the same constraint after being parsed again (#939).
Fix an issue where the intersection of a version range with a local version resulted in a wrong constraint (#949).
Fix an issue where the union of a version range and a public version did not include all local versions of the public version (#950).
Fix an issue where the union of a public version and one of its local versions did not result in the public version (#966).
Fix an issue where the difference between a public version and one of its local versions still allowed the local version, which could result in an infinite loop during dependency resolution (#953).
Fix an issue where a version range that excluded some local versions of a public version was wrongly considered to allow all versions of the public version (#959).
Fix an issue where a != <value> constraint was wrongly considered to allow all values of a <value> not in constraint (#955).
Fix an issue where merging platform_release markers with incompatible constraint types failed (#956).
Fix an issue where the string representation of a version range whose upper bound only consists of zeros raised an IndexError (#964).
Fix an issue where formatting a Python constraint that only allows unknown Python versions raised an IndexError (#971).
Fix an issue where marker values containing spaces could not be parsed (#972).
Fix an issue where the upper bound of a ~= constraint was wrong for versions with more than three release segments (#973).
Fix an issue where the filename of a link created from a Windows path was wrong and reject filenames containing path separators (#974).
uio: make *copyinuio take a void *
This aligns with copyinuio_t and avoids some hypothetical undefined
behavor around calling functions with mismatched types.
Reviewed by: kib
Effort: CHERI upstreaming
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D60024
uio: make *copyinuio take a void *
This aligns with copyinuio_t and avoids some hypothetical undefined
behavor around calling functions with mismatched types.
Reviewed by: kib
Effort: CHERI upstreaming
Sponsored by: Innovate UK
Differential Revision: https://reviews.freebsd.org/D60024
lean4: update to 4.34.1.
4.34.1
This patch release contains multiple runtime fixes
4.34.0
Lean 4.34.0 focuses on the kernel: three soundness issues, found
with AI adversarial testing, have been analyzed and fixed, and a
series of additional defensive checks have been implemented for
further reinforcement. In the automation side, bv_decide gets
integrated with sym and grind interactive modes, while being ported
to the SymM preprocessor that makes it up to six times faster. Work
has continued on the floating-point API after Float and Float32
models being introduced in 4.33.0; linters can now carry state
across commands and attach code actions to their warnings, and Lake
improves its linting, caching, and error reporting.
[2 lines not shown]