HLASM Toolkit Feature Interactive Debug Facility User's Guide
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Controlling single-stepping your program

HLASM Toolkit Feature Interactive Debug Facility User's Guide
GC26-8709-07

If STOPSTMT OFF is in effect, the ASMLANGX data is not automatically loaded while the STMTSTEP process is in control. If STOPSTMT OFF is in effect when STMTSTEP is at a code location for which no extract data is loaded, then language extract AUTOLOAD is not performed. At the start of the session with no LANGUAGE LOAD done, when the STMTSTEP is issued - it will load the extract data for the current CSECT and then go into STMTSTEP process mode. Once in this process no further loads will occur. This allows for all CSECTS to have language extract data available at all times. When running a debug session in which only particular CSECTs are to be examined by STMTSTEPping, then set STOPSTMT OFF and LANGUAGE LOAD the CSECTs required prior to starting - there is no need to manipulate the members available in the ASMLANGX data set.

With STOPSTMT OFF, a STMTSTEP on a call to another CSECT will still perform single-stepping on each instruction in the called routine (without updating the display) until an instruction for which language extract data was loaded is encountered. This may involve many thousands of instructions before such an instruction is encountered, and may give the appearance that the program is in a loop because the display is locked during this process.

If the STEP command is issued by a macro, it does not take effect until the macro exits. The MSTEP command can be used to execute target instructions before returning control to the invoking macro.

If you have subroutines within the program which you do not want to step through, use the SKIPSTEP command. The SKIPSTEP command causes IDF to skip stepping when it comes to a subroutine call to a subroutine that was added to the list of subroutines being skipped. For the purposes of stepping, the skipped subroutine is treated as one instruction, the subroutine call instruction itself. If a breakpoint or a watchpoint whose condition is true is placed within the execution path of the subroutine being skipped, execution stops at that breakpoint or watchpoint.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014