[prev] 23 [next]

Rendering C in MIPS: Functions

When we call a function   (e.g. fun(x+1,5,&y)):
  • the arguments (actual parameters) are evaluated
  • argument values are made available for the function
  • control is transferred to the code for the function
  • local variables are created
  • the function code is executed in this environment
  • the return value is set up
  • control transfers back to where the function was called from
  • the caller receives the return value