System Debuggers [ HP Pascal/iX Programmer's Guide ] MPE/iX 5.0 Documentation
HP Pascal/iX Programmer's Guide
System Debuggers
The compiler listing of your program is an indispensable debugging aid.
The following compiler options provide the listing with additional
information, as noted.
The system debuggers are adb on HP-UX and NM Debug on MPE/iX.
Compiler Option Effect
CODE_OFFSETS For the main program and each routine, the CODE_OFFSETS
option produces a table for every executable statement
in which the value of the program counter for the first
machine instruction that corresponds to the statement
appears beside the statement number. The tables appear
at the end of the compiler listing.
Each program counter value is offset from the entry
point of the procedure that contains the statement to
which it corresponds.
Program counter values are useful when debugging your
program.
LIST_CODE This option produces a mnemonic listing of the object
code for each routine in the program. The mnemonic
listing appears after the listing of the compilation
unit.
TABLES This option produces an identifier map for each routine
and main program that the compiler parsed while the
option was ON. An identifier map shows each identifier
that the block declares and its class, type, address or
constant value, size, alignment, and (if appropriate)
field offset.
NOTE Program counter values are not exact when you use optimization.
See the HP Pascal/iX Reference Manual or the HP Pascal/HP-UX Reference
Manual, depending on your implementation, for more information on the
compiler options CODE_OFFSETS, LIST_CODE, and TABLES.
You must debug your code before you compile it with optimization.
CODE_OFFSETS and SYMDEBUG cannot be used in an optimized program, because
the optimizer transforms the machine code so that the mapping of source
code to machine code is not one-to-one.
MPE/iX 5.0 Documentation