SH-3 Prolog and Epilog

The SH-3 prolog is a code segment that sets up the stack frame for a routine. The epilog removes the routine frame and returns from the routine.

To reconstruct the context that existed on entry to a routine, Structured Exception Handling (SEH) uses process called virtual unwinding to emulate a small subset of the instructions in prolog and epilog code. Starting with a context record and an instruction address, the unwinding process interprets instructions in the prolog or epilog to reconstruct the context, as it existed before the function call. The subset of prolog and epilog code that the Virtual Unwinder emulates includes:

  • Adding or subtracting a value from a register
  • Loading or storing a register on the stack frame
  • Loading integer constants into registers
  • Moving between integer registers
  • Copying the PR register to an integer register

The Virtual Unwinder ignores other instructions found in the prolog or epilog sequences.

See Also

SH-3 Calling Sequence Specification | SH-3 Prolog | SH-3 Epilog | SH-3 pdata Format | SH-3 Prolog and Epilog Examples

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.