Yeah, I've certainly never had to mark leaf's before...
Turns out it was my bad, wrong options, although SH4 is broken, which is what started me scratching my head in the first place.


On 5 March 2013 03:40, David Nadlinger <see@klickverbot.at> wrote:
On Monday, 4 March 2013 at 17:35:45 UTC, Iain Buclaw wrote:
On Mar 4, 2013 3:27 PM, "Manu" <turkeyman@gmail.com> wrote:

I'm doing a lot of experiments with GDC, and I'm noticing that leaf
functions are still generating a stack frame and doing pointless work...

int leaf() pure nothrow
{
  return 0;
}

compile with -frelease -finline -O3, etc

I expect 2 opcodes, load immediate and return, but I get a whole
pointless function including memory access O_O

Any ideas? Is this normal?

I'd expect so.

?!

I think you are seriously underestimating GCC here... ;)

David