Table 10 Values for the +FP option (continued)

Value Meaning

ITrap on floating-point operations that produce inexact results. Inexact result traps may occur whenever roundoff is necessary to produce the result. For example, the fraction 1.0/3.0 produces an inexact trap because there is no exact floating-point representation for this fraction.

DEnable sudden underflow (flush to zero) of denormalized values on those PA-RISC systems greater than version 1.0 that have implemented sudden underflow. (That is, +FPD enables sudden underflow only if it is available on the processor that is used at run time.) Denormalized values are those values whose absolute value is very close to zero. For IEEE single precision data types, the largest denormalized value is approximately equal to 2-126. For IEEE double precision data types, such values are approximately equal to 2 -1022. Sudden underflow will cause some floating-point applications to run faster, with a possible loss of numerical accuracy on numbers very close to zero.

+[no]fp_exception +fp_exceptionis a compile time flag. It causes a descriptive message and a procedure traceback to be issued to standard error when the HP-UX signals listed in Table 2-5 are generated.

For a description of these signals, see signal(2) and signal(5) in the HP-UX Reference. For information about floating-point exceptions and error handling, see the HP-UXFloating-Point Guide.

You can also use the ON statement to write your own trap procedures. For information about the syntax of the ON statement, see “Using the ON statement” (page 81).

The default,+nofp_exception , disables traceback information.

Table 11 Signals recognized by the +fp_exception option

Signal

 

Meaning

SIGILL

 

Illegal instruction

 

 

 

SIGFPE

 

Floating-point exception

 

 

 

SIGBUS

 

Bus error instruction

 

 

 

SIGSEGV

 

Segmentation violation

 

 

 

SIGSYS

 

Bad argument to system call

 

 

 

-g

-gcauses the compiler to generate information for use by the HP WDB debugger. The -goption

 

can be used to prepare code for debugging that has been compiled with optimization

 

options-O,-O1/+O1, , but not O3/+O3or higher.

-G

+getarg0and +getarg1control the behavior of the getarg intrinsic subroutine. +getarg0

 

requests the industry standard behavior for getarg, where an index value of zero causes the

 

program name to be returned. HP’s FORTRAN 77 getarg intrinsic also implements this industry

 

standard convention. +getarg1is used to request non-standard behavior, where an index value

 

of one causes the program name to be returned (older releases of HP Fortran behaved in this

 

manner). The default is +getarg0.

gformat77

gformat77 requests the FORTRAN 77 style of formatting a value of zero with the G edit

 

descriptor. Fortran 90 uses an F edit descriptor when the value being written is zero, while

 

FORTRAN 77 uses an E edit descriptor.

+[no]gprof

+gprof prepares object code files for profiling with gprof. The default is +nogprof. gprofis

 

provided as part of the “HP-UX General Programming Tools” product; see gprof(1). The

 

-Goption can be used to perform the same function as +gprof.

+hugecommon

+hugecommon instructs the compiler to place the specified COMMON block into a huge data

 

segment. The format for this option is: +hugecommon=name

 

where name is the name of a COMMON block. By default, only COMMON blocks larger than

 

2 gigabytes are placed into huge data segments.

 

For example:

28 Compiling and linking