Skip to content

ARM64-SVE: Use predicate versions of instructions #101970

@a74nh

Description

@a74nh

Some instructions provide versions which work on predicates. Eg, the final variant here:

BIC Ztied1.B, Pg/M, Ztied1.B, Zop2.B
BIC Zresult.D, Zop1.D, Zop2.D
BIC Presult.B, Pg/Z, Pop1.B, Pop2.B

Currently, when passing in a mask vector, coreclr will convert the mask to a normal vector and use the vector variant of the instruction.
Instead, coreclr should spot it's a mask and use the predicate variant.

If we don't do this, then instead we should remove the predicate variants from the summaries in Sve.cs

Edit: Similar observation for other instruction: #103078 and in #101598

Metadata

Metadata

Assignees

Labels

Priority:1Work that is critical for the release, but we could probably ship withoutarea-CodeGen-coreclrCLR JIT compiler in src/coreclr/src/jit and related components such as SuperPMIarm-sveWork related to arm64 SVE/SVE2 support

Type

No type

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions