Specifications

Debugging a Device Driver
11.4 Troubleshooting Network Failures
Example 11–12 Using the Step Command
- SRC: module C_TEST_ROUTINES -scroll-source------------------------------------
46: Source line not available
47: #pragma noinline(test_c_code,test_c_code2,test_c_code3)
48: extern volatile int64 xdt$fregsav[34]; /* Lie and say these are integer
49: use iregsav because the debugger will r
50: be using those!*/
51:
52: int test_c_code3(int subrtnCount)
53: {
54: subrtnCount = subrtnCount - 1;
55: if (subrtnCount != 0)
-> 56: subrtnCount = test_c_code3(subrtnCount);
57: return subrtnCount;
58: }
59: int test_c_code2(int64 in64,int in32, int64 test, int64* pVar)
60: {
61: xdt$fregsav[5] = in64;
62: xdt$fregsav[6] = in32;
63: if (xdt$fregsav[9] > 0)
64: *pVar = (*pVar + xdt$fregsav[17])%xdt$fregsav[9];
65: else
66: *pVar = (*pVar + xdt$fregsav[17]);
67: xdt$fregsav[7] = test_c_code3(10);
- OUT -output-------------------------------------------------------------------
break at C_TEST_ROUTINES\test_c_code3\%LINE 56
break at C_TEST_ROUTINES\test_c_code3\%LINE 56
C_TEST_ROUTINES\test_c_code3\subrtnCount: 8
module name routine name line rel PC abs PC
*C_TEST_ROUTINES test_c_code3 56 0000002C 8002A7CC
*C_TEST_ROUTINES test_c_code3 56 0000003C 8002A7DC
*C_TEST_ROUTINES test_c_code2 67 000000AC 8002A8A4
*C_TEST_ROUTINES test_c_code 80 00000084 8002A960
00000000 8234A244
00000000 8234A0C0
SHARE$EXEC_INIT 00000000 82379BC4
stepped to C_TEST_ROUTINES\test_c_code3\%LINE 57
stepped to C_TEST_ROUTINES\test_c_code3\%LINE 56
- PROMPT -error-program-prompt--------------------------------------------------
DBG> step
DBG> examine subrtnCount
DBG> show calls
DBG> cancel break/all
DBG> go
DBG> step
DBG>
The STEP/RETURN command, a different type of step command, single steps
assembly code until it finds a return instruction. This command is useful if you
want to see the return value for the routine, which is done here by examining the
R0 register.
For more information about using other STEP command qualifiers, see the
OpenVMS Debugger Manual. For other useful STEP qualifiers, see the DEBUG
documentation for more details.
11–24