https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116833

--- Comment #6 from Fiodar <fedor_qd at mail dot ru> ---
I look for floating modes in symbian SDK docs.

Here link(now that site and webarchive down) -
https://docs.huihoo.com/symbian/nokia-symbian3-developers-library-v0.8/GUID-D525B9A9-6B32-535B-A282-60C85A48D3FB.html

Citate from local docs:

Symbian OS supports the use of VFPv2 on platforms where the required hardware
is present in both RunFast mode and in IEEE-without-exceptions mode. See ARM's
Vector Floating-point Coprocessor Technical reference Manual for more details
on the coprocessor, its architecture, and its execution modes.

Note that Symbian OS does not support floating point exceptions in any mode.

An application can set (and check) the execution mode at run time by calling
User::SetFloatingPointMode(), and passing one of the TFloatingPointMode enum
values, which represent the possible modes.

Description
Sets the hardware floating point mode for the current thread. This does not
affect software floating point calculations. The rounding mode can also be set.
New threads created by this thread will inherit the mode, thus to set the mode
for a whole process, call this method before you create any new threads.

That class member has declaration:
static IMPORT_C TInt SetFloatingPointMode(TFloatingPointMode aMode,
TFloatingPointRoundingMode aRoundingMode=EFpRoundToNearest);

Return value:
KErrNone if successful, KErrNotSupported if the hardware does not support the
chosen mode, or there is no floating point hardware present.

TFloatingPointMode declares two states: EFpModeRunFast and
EFpModeIEEENoExceptions.

EFpModeRunFast - Run in the fastest mode available - results of calculations
may not be exactly as the IEEE standard in some cases. On ARM VFPv2 hardware
this corresponds to RunFast mode.

EFpModeIEEENoExceptions - Perform all calculations as specified in the IEEE
standard, but do not generate floating point exceptions. This is compatible
with the Java floating point model. This is the default.

TFloatingPointRoundingMode declares four states:EFpRoundToNearest,
EFpRoundToPlusInfinity, EFpRoundToMinusInfinity, EFpRoundToZero.

Reply via email to