This is an archive of the discontinued LLVM Phabricator instance.

[RDA][ARM] collectKilledOperands across multiple blocks
ClosedPublic

Authored by samparker on Feb 26 2020, 4:44 AM.

Details

Summary

Use MIOperand in collectLocalKilledOperands to make the search global, as we already have to search for global uses too. This allows us to delete more dead code when tail predicating.

Diff Detail

Event Timeline

samparker created this revision.Feb 26 2020, 4:44 AM
Herald added a project: Restricted Project. · View Herald TranscriptFeb 26 2020, 4:44 AM
samparker updated this revision to Diff 247216.Feb 28 2020, 4:31 AM

Rebased and changed the way we collect the IT blocks.

samparker updated this revision to Diff 247252.Feb 28 2020, 6:37 AM
  • Fixed a bug in getUniqueReachingMIDef.
  • During operand collection, visit all uses and not just killed ones.
SjoerdMeijer accepted this revision.Mar 2 2020, 7:52 AM

Nice optimisation, looks very reasonable to me: LGTM

This revision is now accepted and ready to land.Mar 2 2020, 7:52 AM
This revision was automatically updated to reflect the committed changes.