This is an archive of the discontinued LLVM Phabricator instance.

[X86] Allow more call sequences to use push for argument passing
ClosedPublic

Authored by mkuper on Jun 17 2015, 4:17 AM.

Details

Summary

This allows more call sequences to use pushes instead of movs when optimizing for size.
In particular, calling conventions that pass some parameters in registers are now supported.

(This still needs more testing to make sure it doesn't break anything. Reid, if you have anything specific in mind that you think may go wrong, let me know.)

Diff Detail

Repository
rL LLVM

Event Timeline

mkuper updated this revision to Diff 27825.Jun 17 2015, 4:17 AM
mkuper retitled this revision from to [X86] Allow more call sequences to use push for argument passing.
mkuper updated this object.
mkuper edited the test plan for this revision. (Show Details)
mkuper added a reviewer: rnk.
mkuper added a subscriber: Unknown Object (MLST).
rnk accepted this revision.Jun 18 2015, 8:56 AM
rnk edited edge metadata.

lgtm

This revision is now accepted and ready to land.Jun 18 2015, 8:56 AM
This revision was automatically updated to reflect the committed changes.