HP aC++/HP C A.06.25 Programmer's Guide
You must specify one of the optimization level options on the aCC command, otherwise
this pragma is ignored. This pragma cannot be used within a function.
FLOAT_TRAPS_ON Pragma
#pragma FLOAT_TRAPS_ON [function {,function}]
This pragma informs the compiler that the specified functions may enable floating-point
trap handling. When the compiler is so informed, it will not perform loop invariant
code motion (LICM) on floating-point operations in the functions named in the pragma.
This pragma is required for proper code generation when floating-point traps are
enabled.
NOTE: This pragma is not supported in C++. It is deprecated for HP C and C++
C-mode. You should use#pragma STDC FENV_ACCESS ON instead.
For example,
#pragma FLOAT_TRAPS_ON xyz,abc
informs the compiler and optimizer that xyz and abc have floating-point traps turned
on and therefore LICM optimization should not be performed. A dummy name _ALL
represents all functions.
[NO]INLINE Pragma
#pragma [NO]INLINE sym[,sym]
The [NO]INLINE pragma enables[disables] inlining for all functions or specified
function names.
For example, to specify inlining of the two subprograms checkstat and getinput,
use:
#pragma INLINE checkstat, getinput
To specify that an infrequently called routine (opendb, for example) should not be
inlined when compiling at optimization level 3 or 4, use:
#pragma NOINLINE opendb
Usage Notes for C++:
• Use the unmangled name of the function.
• All overloaded versions of the function will be affected.
• The pragma can affect "inline functions"---class member functions defined in the
class definition; these have the same treatment as functions declared with the
inline keyword.
Usage Notes for both C and C++:
Optimization Pragmas 137