This is an archive of the discontinued LLVM Phabricator instance.

[MachineBlockPlacement] Do not move block to the end of a loop if it's branch is unanalyzable
AbandonedPublic

Authored by dmgreen on Oct 28 2020, 3:54 PM.

Details

Summary

If a blocks branches are not analyzable then moving the block to the top of a loop may well not create any new fallthrough edges. In those cases just leave the loop in a more standard order.

Some SystemZ atomix tests have changed. They look smaller to me, but may or may not be better.

On ARM this helps to slightly more reliably lower low overhead loops.

Diff Detail

Event Timeline

dmgreen created this revision.Oct 28 2020, 3:54 PM
Herald added a project: Restricted Project. · View Herald TranscriptOct 28 2020, 3:54 PM
dmgreen requested review of this revision.Oct 28 2020, 3:54 PM
dmgreen abandoned this revision.Dec 14 2020, 12:37 AM