[X86] Allow more call sequences to use push instructions for argument passing
authorMichael Kuperstein <michael.m.kuperstein@intel.com>
Mon, 22 Jun 2015 08:31:22 +0000 (08:31 +0000)
committerMichael Kuperstein <michael.m.kuperstein@intel.com>
Mon, 22 Jun 2015 08:31:22 +0000 (08:31 +0000)
commitfc21951cd7fb7a680e81dd138e6e97c8248785a5
tree09ea190903be0df098ffb445d9f2f266cbd89eb2
parente77566112c8f6d3d4c57844958d4a0e2516be684
[X86] Allow more call sequences to use push instructions for argument passing

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 (e.g. thiscall) are now supported.

Differential Revision: http://reviews.llvm.org/D10500

llvm-svn: 240257
llvm/lib/Target/X86/X86CallFrameOptimization.cpp
llvm/test/CodeGen/X86/movtopush.ll