Procedure Splitting

Program-Transformation.Org: The Program Transformation Wiki
With this technique, procedures are split into two parts, the main part (predicted to be executed frequently), and the "fluff" (code such as error recovery that is predicted to be executed infrequently). The fluff for several procedures is collected into one special procedure; special precautions are taken to avoid the usual procedure invocation overhead.

The idea is to keep as many of the hot parts of procedures in the machine's instruction cache, and to keep the cold code away from that cache. Ideally, the cold code will never even be paged into memory, and the machine's cache contains most of the hot code.

-- MikeVanEmmerik - 01 Dec 2001