[fpc-pascal] Question about functions returning a string
Ewald
ewald at yellowcouch.org
Sat Nov 29 13:56:41 CET 2014
On 11/29/2014 12:41 AM, Flávio Etrusco wrote:
> Are you sure it's not the result that is passed in the first parameter?
>
> http://en.wikipedia.org/wiki/X86_calling_conventions#cdecl
Good question, but I don't think so. The first few lines of assembly
from this function seem to read three arguments you see:
44b360: 53 push %rbx
44b361: 41 54 push %r12
44b363: 41 55 push %r13
44b365: 48 89 fb mov %rdi,%rbx <-- first
argument, %rdi
44b368: 41 89 f4 mov %esi,%r12d <-- second
argument, %rsi
44b36b: 49 89 d5 mov %rdx,%r13 <-- third
argument, %rdx
What I forgot to mention was that this is on a x86_64 architecture, so I
based myself on the table found at
http://wiki.osdev.org/Calling_Conventions .
--
Ewald
More information about the fpc-pascal
mailing list