On 25/11/15 12:45, Bernd Schmidt wrote:
On 11/25/2015 01:41 PM, Bernd Schmidt wrote:
/* arg.locate doesn't contain the pretend_args_size offset, it's part of
    argblock.  Ensure we don't count it in I.  */
#ifdef STACK_GROWS_DOWNWARD
   i -= crtl->args.pretend_args_size
#else etc.

Hmm, yours looks equivalent, just addressing the problem from the other 
direction, except for the STACK_GROWS_DOWNWARD thing. If you fix that, either 
approach is OK, but watch formatting here (needs extra parens):

Thanks, I'll go with your version, except that for GCC 6 we have removed 
conditional compilation on STACK_GROWS_DOWNWARD
so this would be written as:
if (STACK_GROWS_DOWNWARD)
  i -= crtl->args.pretend_args_size;

What should we do when we don't have STACK_GROWS_DOWNWARD? Do we need to write:
if (STACK_GROWS_DOWNWARD)
  i -= crtl->args.pretend_args_size;
else
  i += crtl->args.pretend_args_size;

?

Kyrill


+          int argblock_offset = arg->locate.offset.constant
+                     + crtl->args.pretend_args_size;

and a bit later it looks like there's a linebreak you could eliminate because 
things now fit into 80 characters.


Bernd


Reply via email to