Triggering

To verify that all stacks and registers are restored correctly before exiting a subroutine

To verify that all stacks and registers are restored correctly before exiting a subroutine

The exit code for a function will often contain instructions for deallocating stack storage for local variables and restoring registers that were saved during the function call. Some language implementations vary on these points, with the calling function doing some of this work, so you may need to adapt the procedure to suit your system.

1Select the state analyzer Trigger menu.

2Define terms SR_START and SR_END to represent the start and end addresses of the subroutine.

3Under State Sequence Levels, enter the following sequence specification:

While storing “anystate” Find “SR_START” 1 time

While storing “anystate” Then find “SR_END” 1 time

While storing “anystate” TRIGGER on “SR_START” 1 time Else on “SR_START” go to level 2

Store “anystate”

Verifying Correct Return from a Function Call

1–12

Page 22
Image 22
HP 16501A LOGIC, 16500C manual Verifying Correct Return from a Function Call