This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Correct resource cycles for vzext/vsext in SiFive7 scheduler.
ClosedPublic

Authored by craig.topper on Jul 11 2023, 1:13 PM.

Details

Summary

The instructions produce DLEN bits per cycle. The vsetvli LMUL for these
instructions is the output EMUL. The input EMUL is scaled down by
the vector factor suffix on the instruction name.

So for LMUL=1 there are 2*DLEN bits of result produced over 2 cycles.
This makes SiFive7GetCyclesDefault the correct resource cycles.

Diff Detail

Event Timeline

craig.topper created this revision.Jul 11 2023, 1:13 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 11 2023, 1:13 PM
craig.topper requested review of this revision.Jul 11 2023, 1:13 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 11 2023, 1:13 PM
This revision is now accepted and ready to land.Jul 12 2023, 5:27 PM