Inspect Manual
Using Inspect on a TNS/R System
Inspect Manual—429164-006
15-6
Debugging Accelerated Programs
The contents of memory might be stale, that is, data may be stored in registers and
will be stored in memory later.
Data may be pre-fetched from memory into registers, causing the modification of
memory to have no effect on program behavior.
The TNS registers may not be up to date.
The run-time differences between running programs on TNS and TNS/R systems,
some of which can have an important effect on debugging, are described in the
Accelerator Manual. As that manual notes, programs executed on the TNS/R systems
might fail differently than when executed on a TNS system; for example, traps can be
detected at different locations.
Recommendations
To simplify debugging:
Complete application development and debugging before using the accelerator.
Optimize a version of the program containing symbols with the accelerator, using
the default debugging option, ProcDebug, and perform final testing.
Examine your program for variances if there are differences in program behavior.
Debugging Accelerated Programs at the Source Level
Debugging accelerated programs at the source level is very similar to debugging TNS
programs at the source level, with these exceptions:
Data breakpoints, also referred to as memory-access breakpoints, may be reported
at different locations.
Some statement boundaries may have been deleted (for example, code for one
statement may be combined with code for an adjacent statement).
Stepping may leave a program at a different location when statements have been
deleted and for some loop constructs.
The locations to which execution can be arbitrarily resumed are limited.
At some statements, memory modification could have no effect.
After data breakpoints, displayed memory may be out of date.
Debugging Accelerated Programs at the TNS Machine Level
When debugging accelerated programs at the TNS machine level, you will notice these
significant differences and limitations:
Code breakpoints cannot be set at most instructions that are not at the beginning
of statements.