comparison doc/manual/callconvs/callconv_sparc.tex @ 190:06ee88ce4962

- doc and comment fixes
author Tassilo Philipp
date Tue, 14 Mar 2017 00:07:31 +0100
parents e210193f6cf1
children 600bd90afdb7
comparison
equal deleted inserted replaced
189:b827c074b4da 190:06ee88ce4962
60 \item stack parameter order: right-to-left 60 \item stack parameter order: right-to-left
61 \item caller cleans up the stack 61 \item caller cleans up the stack
62 \item stack always aligned to 8 bytes 62 \item stack always aligned to 8 bytes
63 \item first 6 integers and floats are passed independently in registers using \%o0-\%o5 63 \item first 6 integers and floats are passed independently in registers using \%o0-\%o5
64 \item for every other argument the stack is used 64 \item for every other argument the stack is used
65 \item all arguments <= 32 bit are passed as 32 bit values 65 \item all arguments \textless=\ 32 bit are passed as 32 bit values
66 \item 64 bit arguments are passed like two consecutive <= 32 bit values 66 \item 64 bit arguments are passed like two consecutive \textless=\ 32 bit values
67 \item minimum stack size is 64 bytes, b/c stack pointer must always point at enough space to store all \%i* and \%l* registers, used when running out of register windows 67 \item minimum stack size is 64 bytes, b/c stack pointer must always point at enough space to store all \%i* and \%l* registers, used when running out of register windows
68 \item if needed, register spill area is adjacent to parameters 68 \item if needed, register spill area is adjacent to parameters
69 \item results are expected by caller to be returned in \%o0\%o1 (after reg window restore, meaning callee writes to \%i0\%i1) for integers, \%f0/\%f1 for floats, and for structs/unions a pointer to them is used as a hidden stack parameter (see below) 69 \item results are expected by caller to be returned in \%o0/\%o1 (after reg window restore, meaning callee writes to \%i0/\%i1) for integers, \%f0/\%f1 for floats, and for structs/unions a pointer to them is used as a hidden stack parameter (see below)
70 \end{itemize} 70 \end{itemize}
71 71
72 \paragraph{Stack layout} 72 \paragraph{Stack layout}
73 73
74 Stack directly after function prolog:\\ 74 Stack directly after function prolog:\\