This is an archive of the discontinued LLVM Phabricator instance.

[ARM] Simplify extract of VMOVDRR
ClosedPublic

Authored by dmgreen on Jan 19 2021, 11:47 AM.

Details

Summary

Similar to D94989, under softFP calling conventions we can be left with extract(bitcast(BUILD_VECTOR(VMOVDRR(a, b), ..))) patterns that can simplify to a or b, depending on the extract lane.

Diff Detail

Event Timeline

dmgreen created this revision.Jan 19 2021, 11:47 AM
dmgreen requested review of this revision.Jan 19 2021, 11:47 AM
Herald added a project: Restricted Project. · View Herald TranscriptJan 19 2021, 11:47 AM
SjoerdMeijer added inline comments.Jan 27 2021, 8:23 AM
llvm/lib/Target/ARM/ARMISelLowering.cpp
13982

Sorry for the kind of usual test nag question, but I see isLittle here and was wondering if we have or need tests for BE?

dmgreen updated this revision to Diff 319603.Jan 27 2021, 10:53 AM

Yeah good point! I've updated the test to run BE too, and I ran some tests back when I wrote this which seemed to show it was OK.

SjoerdMeijer accepted this revision.Jan 28 2021, 5:18 AM

Thanks, LGTM.

This revision is now accepted and ready to land.Jan 28 2021, 5:18 AM
This revision was automatically updated to reflect the committed changes.