4.6. NOSTACK

Format:


        PRAGMA NOSTACK
      
Used within a procedure, the procedure will not be called using the normal call/return instructions. Instead, the return address will be stored in a procedure-local variable, '_return,' and the call will be executed by jumping to the start of the procedure. The return will be executed by jumping to the first statement after the call.

The overhead for this is two or three data bytes, four to six instructions for the return, and eight to ten instructions for the call. Currently re-entrant functions and functions called indirectly cannot use this pragma.