Accelerator Manual (G06.27+, H06.04+, J06.03+)

Preparing Your Program for TNS/R Systems
Accelerator Manual527303-003
2-14
Misalignment Tracing Facility
The behavior of TNS programs with misaligned addresses on TNS/R processors is
almost impossible to predict. If you are not sure that your program has only aligned
addresses, you can use the tracing facility to detect whether programs are using
misaligned pointers, and if so, where. You should then change the programs to avoid
misalignment.
In addition to the Accelerator, the data misalignment issue might affect the following
HP compilers. If you use these compilers, see the appropriate data alignment
addenda:
Misalignment Tracing Facility
The misalignment tracing facility is enabled or disabled on a system-wide basis (that is,
for all processors in the node). By default, it is enabled (set to ON). It can be disabled
(set to OFF) only by the persons who configure the system, by means of the
Subsystem Control Facility (SCF) attribute MISALIGNLOG. Instructions are in the SCF
Reference Manual for the Kernel Subsystem.
When a misaligned address causes an exception that RVUs prior to G06.17 would
have rounded down, the tracing facility traces the exception.
While a process runs, the tracing facility:
Counts the number of misaligned-address exceptions that the process causes (the
exception count)
Records the program address and code-file name of the instruction that causes the
first misaligned-address exception
Compiler T Number Addendum
TNS C T9255 C/C++ Programmer’s Guide Data Alignment Addendum
TNS COBOL85 T9257 COBOL85 Manual Data Alignment Addendum
TNS/R pTAL T9248 pTAL Reference Manual Data Alignment Addendum
TNS TAL T9250 TAL Programmer’s Guide Data Alignment Addendum
Note. HP recommends that the MISALIGNLOG attribute be left ON (its default setting) so that
any process that is subject to rounding of misaligned addresses will generate log entries,
facilitating diagnosis and repair of the code. Only if the volume of misalignment events
becomes burdensome should this attribute be turned OFF.
Note. The tracing facility does not count and trace every misaligned address, only those that
cause round-down exceptions. Other accesses that use misaligned addresses without
rounding them down do not cause exceptions and are not counted or traced. Also, only a
periodic sample of the counted exceptions are traced by means of their own EMS event
messages.