This is an archive of the discontinued LLVM Phabricator instance.

[AArch64]]SME2 multi-vec to multi-vec FP/INT down convert 2/4 registers
ClosedPublic

Authored by CarolineConcatto on Oct 10 2022, 8:45 AM.

Details

Summary

This patch implements:
FCVTZS: Multi-vector floating-point convert to signed integer, rounding toward zero.
FCVTZU: Multi-vector floating-point convert to unsigned integer, rounding toward zero.
SCVTF: Multi-vector signed integer convert to floating-point.
UCVTF: Multi-vector unsigned integer convert to floating-point.
for 2 and 4 registers

The reference can be found here:

https://developer.arm.com/documentation/ddi0602/2022-09

Depends on: D135563

Diff Detail

Event Timeline

Herald added a project: Restricted Project. · View Herald TranscriptOct 10 2022, 8:45 AM
CarolineConcatto requested review of this revision.Oct 10 2022, 8:45 AM
Herald added a project: Restricted Project. · View Herald TranscriptOct 10 2022, 8:45 AM
CarolineConcatto edited the summary of this revision. (Show Details)Oct 10 2022, 8:45 AM
Matt added a subscriber: Matt.Oct 10 2022, 10:53 PM

It needs to be rebased to update the vector list print.
But I think it can be checked

sdesmalen added inline comments.Oct 21 2022, 4:04 AM
llvm/lib/Target/AArch64/AArch64SMEInstrInfo.td
365–372

Can you rename the suffix for these from _S -> _StoS ?

Address review comments
rebase

CarolineConcatto marked an inline comment as done.Oct 21 2022, 8:00 AM
sdesmalen accepted this revision.Oct 21 2022, 8:09 AM
This revision is now accepted and ready to land.Oct 21 2022, 8:09 AM
llvm/test/MC/AArch64/SME2/fcvtzs-diagnostics.s
10

Hi @CarolineConcatto , nothing to hold up this patch but out of interest do you know why this CHECK-NOT line exists? We repeat the same idiom for all SVE/SME negative tests but I don't know what's special about this specific pattern for us to care so much.

sdesmalen added inline comments.Oct 24 2022, 1:05 AM
llvm/test/MC/AArch64/SME2/fcvtzs-diagnostics.s
10

The CHECK-NOT line is historically there because in the past we'd ended up with duplicate printing of the asm due to a bug in the assembler (D39894)

paulwalker-arm added inline comments.Oct 24 2022, 3:09 AM
llvm/test/MC/AArch64/SME2/fcvtzs-diagnostics.s
10

I see. Thanks @sdesmalen.

This revision was landed with ongoing or failed builds.Oct 24 2022, 12:21 PM
This revision was automatically updated to reflect the committed changes.