On 21/06/17 09:44, Andreas Schwab wrote: > On Jun 21 2017, "Richard Earnshaw (lists)" <richard.earns...@arm.com> wrote: > >> A mere 256 bytes for the caller would permit 32 x 8byte arguments on the >> stack which, with at least 8 parameters passed in registers, would allow >> for calls with 40 parameters. There can't be many in that space. Any >> function making calls with more than that might need additional probes, >> but that's going to be exceedingly rare. > > With passing structures by value you can have arbitrary large > parameters. > > Andreas. >
No. Those are passed by copies which appear in the locals portion of the frame (so are covered by normal allocation priniciples). Only structures of less than 16 bytes are passed by direct copy. R.