OpenVMS Alpha and OpenVMS I64 only Directs the compiler to make additional assumptions about the behavior of the program. [NO]ACCURACY_SENSITIVE Specifies whether certain code transformations that affect floating-point operations are allowed. These changes may or may not affect the accuracy of the program's results. If you specify NOACCURACY_SENSITIVE, the compiler is free to reorder floating-point operations based on algebraic identities (inverses, associativity, and distribution). This allows the compiler to move additional floating-point operations outside of loops or reduce or remove floating-point operations totally, thereby improving performance. The default, ACCURACY_SENSITIVE, directs the compiler to avoid certain floating-point trasformations that might slighly affect the program's accuracy. [NO]BYTE_ALIGNED_POINTERS Specifies that the compiler should assume that all pointers point to memory that is only aligned on byte boundaries. Normally, the compiler assumes that pointer variables are initialized by a call to the NEW predeclared routine. The memory returned by NEW is at least quadword aligned. The compiler can take advantage of that alignment to generate better code. However, if the program initializes the pointers by some other means such as IADDRESS or typecasting with values that are not quadword aligned, then the generated code may produce alignment faults. While the alignment faults are silently handled by OpenVMS, the resulting performance loss might be significant. By specifying BYTE_ALIGNED_POINTERS, the compiler will generate slightly slower code to fetch the value. However, compared to the overhead of correcting the alignment faults, this additional overhead is very small. The preferred solution is to ensure that all pointers contain quadword aligned addresses and use the default of NOBYTE_ALIGNED_POINTERS. [NO]LONG_CALLS (OpenVMS I64 only) Specifies that the compiler should assume that calls to external routines require the Itanium 'brl.call' instruction instead of the shorter 'br.call' instruction. This option is only needed if the OpenVMS I64 linker cannot process a PCREL21B relocation for the default shorter instruction. [NO]REDUCED_RELOCATIONS (OpenVMS I64 only) Specifies that the compiler should generate additional instructions in order to minimize the number of address constants required. Normally, the compiler may ask the linker for many address constants. However, for large applications, the linker may not be able to produce all requested address constants. This option is only needed if the OpenVMS I64 linker overflows the limit of address constants for the image. /ASSUME=(ACCURACY_SENSITIVE, NOBYTE_ALIGNED_POINTERS, NOLONG_CALLS, NOREDUCED_RELOCATIONS) is enabled by default. You cannot specify /ASSUME without options.