<p dir="ltr"><br>
On 11 Dec 2017 11:44 PM, "Florian Klämpfl" <<a href="mailto:florian@freepascal.org">florian@freepascal.org</a>> wrote:<br>
><br>
> Am 11.12.2017 um 21:58 schrieb Christo:<br>
> > It appears from the generated code as if the function result location is assigned before the<br>
> > function is called, with the reference to the function result passed as first parameter (in<br>
> > R24:R25) and the reference to s passed as the second parameter (in R22:R23). Is this indeed the<br>
> > current parameter handling for shortstring function result type?<br>
><br>
> Yes.<br>
><br>
> ><br>
> > If so it probably warrants a mention on the AVR wiki page.  Are there any other data types that<br>
> > deviates from the GCC AVR calling convention in this way?<br>
><br>
> Where do the GCC AVR calling say something about how to pass shortstrings? FPC always use a first<br>
> "hidden" parameter to pass e.g. pointers to storage space for data types not being returned in<br>
> registers.</p>
<p dir="ltr">Thanks Florian. First time I'm working with more  complex data in assembly, so it's a concept that is new to me. </p>