Using PERFORM is generally very efficient, and is a very good way of keeping the size of your program down as well as giving it an easy-to-maintain structure. The following rules enable you to use PERFORM in the most efficient ways.
Apart from being good coding practice, this saves space.
The range of an out-of-line PERFORM statement should not contain the end of another perform range. If it does, the program is said to trickle, that is execution is allowed to go past the end of a perform range. Applying the rule above ensures that this does not happen.
If your program does not trickle, you can compile it with the directive NOTRICKLE which causes the Compiler to produce more efficient code since PERFORM is implemented as a machine code CALL instruction with a corresponding RET at the end of the perform range. If NOTRICKLE is used where two perform ranges overlap, results are unpredictable.
For example, do not use code in the following form: