On Wed, May 25, 2016 at 02:30:54PM +0100, Dominik Vogt wrote: > On Tue, May 03, 2016 at 03:17:53PM +0100, Dominik Vogt wrote: > > Version two of the patch including a test case. > > > > On Mon, May 02, 2016 at 09:10:25AM -0600, Jeff Law wrote: > > > On 04/29/2016 04:12 PM, Dominik Vogt wrote: > > > >The attached patch removes excess stack space allocation with > > > >alloca in some situations. Plese check the commit message in the > > > >patch for details. > > > > > However, I would strongly recommend some tests, even if they are > > > target specific. You can always copy pr36728-1 into the s390x > > > directory and look at size of the generated stack. Simliarly for > > > pr50938 for x86. > > > > However, x86 uses the "else" branch in round_push, i.e. it uses > > "virtual_preferred_stack_boundary_rtx" to calculate the number of > > bytes to add for stack alignment. That value is unknown at the > > time round_push is called, so the test case fails on such targets, > > and I've no idea how to fix this properly. > > Third version of the patch with the suggested cleanup in the first > patch and the functional stuff in the second one. The first patch > is based on Jeff's draft with the change suggested by Eric and > more cleanup added by me. This is the updated funtional patch. Re-tested with limited effort, i.e. tested and bootstrapped on s390x biarch (but did not look for performance regressions compared to version 2 of the patch). Ciao Dominik ^_^ ^_^ -- Dominik Vogt IBM Germany