JIT ARM64-SVE2: Add IF_SVE_DQ_0A, IF_SVE_DR_1A, IF_SVE_DS_2A#95996
JIT ARM64-SVE2: Add IF_SVE_DQ_0A, IF_SVE_DR_1A, IF_SVE_DS_2A#95996amanasifkhalid merged 8 commits intodotnet:mainfrom
Conversation
|
Tagging subscribers to this area: @JulieLeeMSFT, @jakobbotsch Issue DetailsPart of #94549. This change implements the cstool output: cc @dotnet/arm64-contrib
|
|
cc @a74nh |
a74nh
left a comment
There was a problem hiding this comment.
LGTM, just needs the extra comments.
| dst += emitOutput_Instr(dst, code); | ||
| break; | ||
|
|
||
| case IF_SVE_DS_2A: // .........x.mmmmm ......nnnnn..... -- SVE conditionally terminate scalars |
There was a problem hiding this comment.
Could you add the display encoding (just copy/paste from the codegen tests) above the case:
// <R><n>, <R><m>
This makes is easy to group together the encoding groups with the same displays.
Same for the other two groups (SetFFR would be // none or something similar)
|
FYI, This PR will need rebasing - #96005 moved the codegen tests to a new file. |
|
@a74nh thank you for the review! I've added your suggested comments and merged in the unit test changes. |
Thanks. All LGTM now. |
kunalspathak
left a comment
There was a problem hiding this comment.
Changes looks good. One minor feedback.
src/coreclr/jit/emitarm64.cpp
Outdated
| * Add a SETFFR instruction: initialize first-fault register to all true. | ||
| */ | ||
|
|
||
| void emitter::emitInsSve_SetFFR() |
There was a problem hiding this comment.
We should probably reuse emitIns_I() for it. It encodes the instructions that don't take registers.
| static code_t insEncodeReg_R_21_to_17(regNumber reg); | ||
|
|
||
| // Return an encoding for the specified 'R' register used in '20' thru '16' position. | ||
| static code_t insEncodeReg_R_20_to_16(regNumber reg); |
There was a problem hiding this comment.
Thank you for letting me know. It looks like your PR will get merged in pretty soon, so I'll wait to merge your changes into mine.
There was a problem hiding this comment.
@amanasifkhalid - do you mind addressing #96082 (comment) in your PR, since you will have another round of CI run anyway?
There was a problem hiding this comment.
Sure thing, I'll update the assert.
|
@kunalspathak thank you for the review! I've consolidated the |
|
@kunalspathak I've updated the assert, PTAL |
Part of #94549. This change implements the
IF_SVE_DQ_0A,IF_SVE_DR_1A, andIF_SVE_DS_2Aencodings. JIT disasm output:cstool output:
cc @dotnet/arm64-contrib