This is an archive of the discontinued LLVM Phabricator instance.

Mark FMOV constant materialization as being as cheap as a move.
ClosedPublic

Authored by resistor on Sep 8 2020, 11:45 AM.

Details

Summary

This prevents us from doing things like LICM'ing it out of a loop,
which is usually a net loss because we end up having to spill a
callee-saved FPR to accomodate it.

This does perturb instruction scheduling around this instruction,
so a number of tests had to be updated to account for it.

Diff Detail

Event Timeline

resistor created this revision.Sep 8 2020, 11:45 AM
Herald added a project: Restricted Project. · View Herald TranscriptSep 8 2020, 11:45 AM
resistor requested review of this revision.Sep 8 2020, 11:45 AM
t.p.northover accepted this revision.Sep 10 2020, 1:55 AM

Looks fine to me.

This revision is now accepted and ready to land.Sep 10 2020, 1:55 AM
This revision was landed with ongoing or failed builds.Sep 10 2020, 9:39 AM
This revision was automatically updated to reflect the committed changes.