NAS-143935 / 27.0.0-BETA.1 / Include S3 buckets in usage share gathering (#19808)
Each bucket reports its settings, excluding its name, dataset, owner,
and grants. Whether auditing is enabled is also included.
(cherry picked from commit 54e7ef4fec7b2139992aae5d2eb3224a52ce88e8)
[SLP]Emit loop-carried horizontal reductions as loop vector accumulator
A reduction whose root is the backedge value of a loop accumulator phi
is emitted as a lane-wise vector accumulator in the loop plus a single
reduction in the exit blocks, instead of a horizontal reduction on every
iteration. The loop-carried dependency chain becomes lane-wise and the
reduction is paid once per loop execution.
Note: It is partial vectorization within the loop, LV cannot handle it.
SLP already does something similar with multi-register reductions,
this adds another level - phi-based loop accumulator reductions.
Reviewers: RKSimon, bababuck
Pull Request: https://github.com/llvm/llvm-project/pull/221598
X86: Stop overriding getRegClass
Making TargetInstrInfo::getRegClass virtual was an AMDGPU hack that should not
spread to other backends (X86 overrode it in #70958). The override kept GPR
operands out of the *_NOREX2 subclasses for instructions that cannot encode
r16-r31 with EGPR. Express this constraint with RegClassByHwMode instead, which
allows dropping the virtual.
This also enables the machine verifier to enforce the constraint, which was
previously ignored. Also fixes missing assembler tests enforcing the constraint.
There is custom assembler code for this case which may be deletable after this.
I don't really know about all the X86isms here, AI did most of that.
Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
[SPIR-V] Add storage class bits to fence and generic atomic semantics (#223023)
A barrier only orders the memory it names, and we named none, so fences
ordered nothing
Name every class the target can reach, generic pointers had the same gap
in atomics
fix T and its KIND mismatch
Two different kinds
Remove commit-relative comment
trKind -> rKind
Fix KIND mismatch folding
Silence compiler warning
Use CompareSigned directly for operator overloads
get instead of coerce
Coerce -> getWord
incompatible instead of incomparable
[16 lines not shown]
Silence compiler warning
Use CompareSigned directly for operator overloads
get instead of coerce
Coerce -> getWord
incompatible instead of incomparable
Do no allow implicit conversion
Method name capitalization
Use GetBasicString and permit nullstate behavior
Hide constant template
Remove stray backstlash
[2 lines not shown]
NAS-143965 / 26.0.0 / Update S3 snapshot version tests for the new id format and name cache (by anodos325) (#19825)
The daemon now spells a snapshot version id as zfs.<created>.<hex(name)>
and checks the instant against the snapshot's creation, and its
snapshot-name cache is invalidated by .zfs/snapshot's change time rather
than a timer. The tests still used the old zfs.<hex(name)> id and
asserted that a recreated snapshot served under the old id.
- Build ids from `zfs get creation`; check listed ids decode to the
snapshot name and creation.
- Reject the old spelling, non-canonical instants and a wrong instant.
- After destroy and same-name recreate: old id is NoSuchVersion, new id
serves and lists. Wait past the creation second first, since ZFS stamps
creation in whole seconds.
- A snapshot created, renamed, or destroyed under the running daemon
appears in / leaves the next listing. Rename keeps the creation.
- Drop the destroy retry loop and lazy umount; an EBUSY here is a bug.
Original PR: https://github.com/truenas/middleware/pull/19821
Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
PowerPC: Remove LiveVariables dependency from PPCMIPeephole (#222416)
PPCMIPeephole only used LiveVariables to keep kill/dead flags valid
after its transforms, and made no real use of the analysis.
A later LiveVariables run recomputes those flags from scratch anyway, so
just clear possbly stale kill/dead flags on changed registers.
PPCMIPeephole was the only user of LiveVariables at this point in the
pipeline, so also drop the explicit LiveVariables run before
PPCTLSDynamicCallPass, whose comment references a > 10 year old build
bot failure.
Co-authored-by: Claude (Claude-Opus-4.8)