This is an archive of the discontinued LLVM Phabricator instance.

[ARM][LowOverheadLoops] Check live-out for InsertPt instead of Start
AbandonedPublic

Authored by samtebbs on Oct 16 2020, 6:18 AM.

Details

Summary

In TryAdjustInsertionPoint an insertion point has already been selected but the live out checks are done on Start instead. Most of the time Start == InserPt, but in other cases where this isn't the case, these live-out checks will fail as false negatives since there will be a mov lr after Start. This patch changes the live-out checks to use InsertPt instead.

Diff Detail

Event Timeline

samtebbs created this revision.Oct 16 2020, 6:18 AM
samtebbs requested review of this revision.Oct 16 2020, 6:18 AM

Can we add tests for this?

samparker added inline comments.Oct 19 2020, 2:50 AM
llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
1088

Start -> InsertPt for these two as well.

Can we add tests for this?

Ah yes, I'll add one.

llvm/lib/Target/ARM/ARMLowOverheadLoops.cpp
1088

I missed these, thanks.

samtebbs abandoned this revision.Oct 30 2020, 8:25 AM

The code that this change depends on has been reverted so I will delay close this and re-visit it once those changes have been re-worked.