On 10/10/13 04:00, Andreas Krebbel wrote:
On 09/10/13 21:46, Jeff Law wrote:
On 08/21/13 03:21, Andreas Krebbel wrote:
[RFC] Allow functions calling mcount before prologue to be leaf functions
http://gcc.gnu.org/ml/gcc-patches/2013-04/msg00993.html
I don't think this is necessarily correct for all targets.  ISTM the
ability to consider a function calling mcount as a leaf needs to be a
property of the target.

We have already "profile_before_prologue" as a target property. Shouldn't this 
be enough to decide
upon this? When a function calls mcount before the prologue it shouldn't matter 
whether the function
is leaf or not.
I don't think so, I think it'd break the PA's 32 bit ABI, maybe the 64 bit ABI as well. It's the caller's responsibility to build a mini stack frame if the function makes any calls. If the code in the prologue expander uses "leafness" to make the decision about whether or not to allocate the mini frame, then it'd do the wrong thing here.

I'm just using that as an example, there may be others. Hence my recommendation this become a target hook with the default off so that ports can be appropriately audited.

Jeff

Reply via email to