This is an archive of the discontinued LLVM Phabricator instance.

[ARM] Add FP handling for MVE lane interleaving
ClosedPublic

Authored by dmgreen on Feb 23 2021, 7:15 AM.

Details

Summary

FP16 to FP32 converts can be handled in MVE lane interleaving, much like the sext/zext lowering we do. This expands the pass with fpext and fptrunc handling, and basic fp operations allowing more efficient lowering of fp vectors.

Diff Detail

Event Timeline

dmgreen created this revision.Feb 23 2021, 7:15 AM
dmgreen requested review of this revision.Feb 23 2021, 7:15 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 23 2021, 7:15 AM
SjoerdMeijer added inline comments.Apr 12 2021, 12:42 AM
llvm/lib/Target/ARM/MVELaneInterleavingPass.cpp
127

Can you clarify this a bit? I am no following the "extra VCVT's" => "cheap" reasoning. I am guessing you meant expensive?

dmgreen updated this revision to Diff 336792.Apr 12 2021, 3:35 AM

Yep. "cheap" -> "beneficial to convert"

SjoerdMeijer accepted this revision.Apr 12 2021, 3:39 AM

Thanks, LGTM

This revision is now accepted and ready to land.Apr 12 2021, 3:39 AM
This revision was automatically updated to reflect the committed changes.