Source-level debug additional capabilities
IDF provides a significant debug capability for application programs at the disassembly (object code) level without any more preparation. For trivial debug situations, this is often enough.
Programmers write programs at the source level. It follows that
when the reason for a problem is not immediately visible, it is advantageous
to also debug at the source level. The addition of the ASMLANGX step
to the program development process means that IDF Language extract
data is available for the program compile units. When this data is
loaded using the IDF LOAD LANGUAGE or STEP or STMTSTEP commands, you
can perform these extra functions:
-
- Selectively enable and disable the display of variable declaration statements with SHOW DCLS and HIDE DCLS commands.
- Selectively enable and disable the display of block comments with SHOW COMMENTS and HIDE COMMENTS commands.
- Selectively enable and disable the display of macro definitions and macro expansions with SHOW MACROS and HIDE MACROS commands.
- Perform source text searches
- You can find and display the desired area of the source code.
- The search can be up or down.
- Both LOCATE (like the XEDIT Locate command) and FIND (like the ISPF Editor Find command) commands are supported.
- Set breakpoints on program statements
- The breakpoint can be at the start of, or within, any program statement.
- Single-step your program
- You can use the STMTSTEP command to single-step at the program statement level.
- You can use the STEP command to single-step at the program instruction level.
- Program variable data display (with optional typeover alteration)
- Supported for any program variable that is "known" in the currently executing program block.
- There are many types of variables. These are displayed with different
IDF Language Support commands:
- To display simple variables, the VARIABLE command is used.
- To display structures and their components, the STRUCTURE command is used.
- To display array elements, the ARRAY command is used.
- To display variables type attributes, the TYPE command is used.
- To display the names of variables for which a pointer (or locator)
variable is a valid base address, the PLOCATES command is used.
For more details, see Displaying and changing items.
- The various forms of program variable display support complex expressions. See Variable expressions for more details.
- Program variable name display
- The names of the program variables matching a particular pattern can be displayed.
- The names of all program variables can be displayed.
See Displaying variable names for more details.
- Program caller hierarchy display
- For each generation:
- For those programs for which IDF Language information is available, the program module, code section, source statement number, and source statement number are shown
- For those programs without IDF Language information, the program module, code section, and offset from the start of this code section are shown.
See Displaying CALLERS for more details.
- For each generation: