Specifications
Debugging a Device Driver
11.4 Troubleshooting Network Failures
Example 11–10 Using the Examine and Show Calls Commands
- 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
- PROMPT -error-program-prompt--------------------------------------------------
DBG> Scroll/Up
DBG> set break %Line 56
DBG> go
DBG> step
DBG> examine subrtnCount
DBG> show calls
DBG>
If you want to proceed because you are done debugging this code, first cancel
all the breakpoints and then enter the GO command. Notice however, that
you do not keep running but get a message that you have stepped to line 57.
This happens because the STEP command used earlier never completed. It was
interrupted by the breakpoint on line 56.
Note that the debugger remembers all step events and only removes them once
they have completed.
11–22