TNS/R Native Application Migration Guide

Introduction to Native Mode
TNS/R Native Application Migration Guide523745-001
1-9
Inspect and Visual Inspect Symbolic Debuggers and
Debug Facility
Inspect and Visual Inspect Symbolic Debuggers and Debug
Facility
The Inspect and Visual Inspect symbolic debuggers and the Debug tool can be used to
debug TNS and native processes. The Inspect, Visual Inspect, and Debug products
have been enhanced to support native processes. Most Inspect, Visual Inspect, and
Debug commands apply to both TNS and native processes.
For code compiled at optimization level 0 (no optimization) or optimization level 1
(intermediate optimizations), you can perform the same operations for native
processes as for TNS process, including:
Step through code
Set breakpoints
Display source
Display variables
Differences in the TNS and native process architectures result in differences in
registers and address ranges. Unlike TNS and accelerated code, TNS architecture-
specific constructs, such as TNS environment registers, do not exist in native mode
code.
At optimization level 2 (full optimization), machine-level debugging might be necessary
because of the effects of optimization. For example, variables might remain in registers
and never be written to memory. For more details on compiler optimization, see
Determining Optimization Levels on page 2-4.
The Inspect and Visual Inspect symbolic debuggers differ in these respects:
User interface
The Inspect debugger uses a line-oriented command interpreter, while the Visual
Inspect debugger uses a graphical environment consisting of menus and icons that
you can select and click to perform tasks.
Features and functions
Visual Inspect supports many but not all Inspect capabilities. Many commands
have become part of the graphical interface (for example, the ENV command).
For details on debugging capabilities, see:
Inspect Manual
Getting Started With Visual Inspect
Debug Manual
SQL Compiler
The NonStop SQL/MP compiler supports embedded SQL in native C and native
COBOL85. You cannot use embedded SQL in native C++ or pTAL source code. For
more information, see the NonStop SQL/MP documentation set.