Leaf routines

Leaf routines are routines that do not call any other routines (with the possible exception of routines that are inlined). Leaf routines that have the following characteristics do not need to allocate a stack frame. Such routines are called Sleaf routines and they may use truncated prologs and epilogs:
  • whose work area requirements may be obtained from the stack segment pad
  • which are not vararg
  • which do not perform stack frame extension
  • which are not bilingual
Note: When entered at the +16 Entry Point, the value of the NAB in the caller's DSA provides 256 bytes of pad area that can be used by the current routine to store data into.