This is an archive of the discontinued LLVM Phabricator instance.

[GlobalISel][AArch64] Handle tail calls with non-void return types
ClosedPublic

Authored by paquette on Sep 6 2019, 8:58 AM.

Details

Summary

Just return once you emit the call, which is exactly what SelectionDAG does in this situation.

Update call-translator-tail-call.ll to show that we now do this properly.

Also update dllimport.ll to show that we tail call here in GISel again. Add -verify-machineinstrs to the GISel line too, to defend against verifier failures.

Diff Detail

Repository
rL LLVM

Event Timeline

paquette created this revision.Sep 6 2019, 8:58 AM
aemerson accepted this revision.Sep 6 2019, 9:24 AM

LGTM.

This revision is now accepted and ready to land.Sep 6 2019, 9:24 AM
This revision was automatically updated to reflect the committed changes.