This is an archive of the discontinued LLVM Phabricator instance.

ARM: don't return by popping PC if we have to adjust the stack afterwards.
ClosedPublic

Authored by t.p.northover on Jul 7 2021, 4:58 AM.

Details

Reviewers
Gerolf
Summary

In mandatory tail calling conventions we might have to deallocate stack space used by our arguments before return. This happens after popping CSRs, so the pop cannot be turned into the return itself in this case.

The else branch here was already a nop, so removing it as a tidy-up.

Diff Detail

Event Timeline

t.p.northover created this revision.Jul 7 2021, 4:58 AM
t.p.northover requested review of this revision.Jul 7 2021, 4:58 AM
Herald added a project: Restricted Project. · View Herald TranscriptJul 7 2021, 4:58 AM
Gerolf accepted this revision.Jul 16 2021, 2:18 PM
Gerolf added a subscriber: Gerolf.

Nice cleanup, too. LGTM.

This revision is now accepted and ready to land.Jul 16 2021, 2:18 PM
t.p.northover closed this revision.Jul 21 2021, 1:35 AM

Thanks Gerolf, committed as 19d2e42be2cd.