side effects of the compiler-generated calls

Tobias Schlüter Tobias.Schlueter@physik.uni-muenchen.de
Wed Jul 18 13:07:00 GMT 2007


David Livshin wrote:
> gfortran generated code uses calls to routines with the names that begin 
> with “_gfortran_”, e.g. “_gfortran_set_std”, “_gfortran_st_write” etc. 
> What are the side effects of these routines? What registers are 
> used/affected by them? And most importantly, do they affect the value of 
> the stack pointer ( %esp )?

They are normal function calls in the C sense, so arguments are pushed 
on the stack by the caller, and the caller pops them off the stack after 
the callee has returned, so it's a bit of a matter of definition to say 
if the call affects %esp or not, but the _callee_ will return it unchanged.

But maybe that's not your question, could you give more detail on what 
you're trying to achieve?

Cheers,
- Tobi



More information about the Fortran mailing list