--fpmode=model

This option specifies the floating-point model, and sets library attributes and floating-point optimizations to select the most suitable library when linking.

Note

This does not cause any changes to the code that you write.

model can be one of:

none

Source code is not permitted to use any floating-point type or floating point instruction. This option overrides any explicit --fpu=name option.

ieee_full

All facilities, operations, and representations guaranteed by the IEEE standard are available in single and double-precision. Modes of operation can be selected dynamically at runtime.

ieee_fixed

IEEE standard with round-to-nearest and no inexact exception.

ieee_no_fenv

IEEE standard with round-to-nearest and no exceptions. This mode is compatible with the Java floating-point arithmetic model.

std

IEEE finite values with denormals flushed to zero, round-to-nearest and no exceptions. It is C and C++ compatible. This is the default option.

Finite values are as predicted by the IEEE standard. It is not guaranteed that NaNs and infinities are produced in all circumstances defined by the IEEE model, or that when they are produced, they have the same sign. Also, it is not guaranteed that the sign of zero is that predicted by the IEEE model.

fast

Some value altering optimizations, where accuracy is sacrificed to fast execution. This is not IEEE compatible, and is not standard C.

Show/hideExample

armasm --fpmode ieee_full inputfile.s

Show/hideSee also

Copyright © 2010-2011 ARM. All rights reserved.ARM DUI 0489F
Non-ConfidentialID091611