Messages in this thread | | | Date | Wed, 18 Jun 2008 20:59:48 -0700 (PDT) | Subject | Re: stack overflow on Sparc64 | From | David Miller <> |
| |
From: Mikulas Patocka <mpatocka@redhat.com> Date: Wed, 18 Jun 2008 23:24:20 -0400 (EDT)
> BTW. what's the purpose of having 192-byte stack frame? There are 16 > 8-byte registers being saved per function call, so 128-byte frame should > be sufficient, shoudn't? The ABI specifies that some additional entries > must be present even if unused, but I don't see reason for them. Would > something bad happen if GCC started to generate 128-byte stacks?
The callee can pop the arguments into the area past the register window.
So you have the 128 byte register window save area, 6 slots for incoming arguments, which gives us 176 bytes. The rest is for some miscellaneous stack frame state, which I don't remember the details of at the moment. I'd have to read the sparc backend of gcc to remember.
| |