7 Nokia Corporation - initial contribution. |
7 Nokia Corporation - initial contribution. |
8 Contributors: |
8 Contributors: |
9 --> |
9 --> |
10 <!DOCTYPE concept |
10 <!DOCTYPE concept |
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
11 PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
12 <concept id="GUID-CBC1E46A-E254-5A01-86AE-F5EB6135E3E3" xml:lang="en"><title>Vector |
12 <concept id="GUID-CBC1E46A-E254-5A01-86AE-F5EB6135E3E3" xml:lang="en"><title>Vector Floating Point (VFP)</title><shortdesc>ARM provide a hardware floating point coprocessor that |
13 Floating Point (VFP)</title><shortdesc>ARM provide a hardware floating point coprocessor that provides |
13 provides floating point computation that is fully compliant with IEEE |
14 floating point computation that is fully compliant with IEEE Std 754-1985.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
14 Std 754-1985.</shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody> |
15 <p> When a phone has this hardware, the base port must be configured to use |
15 <p> When a phone has this hardware, the base port must be configured |
16 it. </p> |
16 to use it. </p> |
17 <p>The ARM architecture is called the ARM Vector Floating Point Architecture |
17 <p>The ARM architecture is called the ARM Vector Floating Point Architecture |
18 (VFPv2), and the coprocessor is also called the <i>VFP unit</i>. </p> |
18 (VFPv2), and the coprocessor is also called the <i>VFP unit</i>. </p> |
19 <p>Symbian platform supports the use of VFPv2 on platforms where the required |
19 <p>Symbian platform supports the use of VFPv2 on platforms where the |
20 hardware is present in both <i>RunFast</i> mode and in <i>IEEE-without-exceptions</i> mode. |
20 required hardware is present in both <i>RunFast</i> mode and in <i>IEEE-without-exceptions</i> mode. See ARM's Vector Floating-point |
21 See ARM's Vector Floating-point Coprocessor Technical reference Manual for |
21 Coprocessor Technical reference Manual for more details on the coprocessor, |
22 more details on the coprocessor, its architecture, and its execution modes. </p> |
22 its architecture, and its execution modes. </p> |
23 <p>Applications and, in a more limited sense, kernel side code can use VFP |
23 <p>Applications and, in a more limited sense, kernel side code can |
24 in one of two ways: </p> |
24 use VFP in one of two ways: </p> |
25 <ul> |
25 <ul> |
26 <li id="GUID-D74E3541-3D8F-5338-A488-E40385D1C293"><p>indirectly through the |
26 <li id="GUID-D74E3541-3D8F-5338-A488-E40385D1C293"><p>indirectly through |
27 use of floating point support (helper) functions generated by the compiler. </p> </li> |
27 the use of floating point support (helper) functions generated by |
28 <li id="GUID-7316F251-5292-510C-9496-30C0B7A7A25C"><p>directly, either through |
28 the compiler. </p> </li> |
29 instructions generated by the compiler, or hand-written instructions written |
29 <li id="GUID-7316F251-5292-510C-9496-30C0B7A7A25C"><p>directly, either |
30 in assembler. </p> </li> |
30 through instructions generated by the compiler, or hand-written instructions |
|
31 written in assembler. </p> </li> |
31 </ul> |
32 </ul> |
32 <p>An application uses the <codeph>armfpu</codeph> statement in its <filepath>.mmp</filepath> file |
33 <p>An application uses the <codeph>armfpu</codeph> statement in its <filepath>.mmp</filepath> file to specify how it wants floating point to be |
33 to specify how it wants floating point to be handled. By choosing to use the |
34 handled. By choosing to use the floating point support functions, |
34 floating point support functions, an application does not need to know how |
35 an application does not need to know how they are implemented or even |
35 they are implemented or even whether these functions make use of a VFP unit. |
36 whether these functions make use of a VFP unit. However, if a device |
36 However, if a device does have a VFP unit, then the base port needs to replace |
37 does have a VFP unit, then the base port needs to replace the default |
37 the default floating point support functions with VFP-enabled functions if |
38 floating point support functions with VFP-enabled functions if applications |
38 applications are to take advantage of the hardware. </p> |
39 are to take advantage of the hardware. </p> |
39 </conbody><related-links> |
40 <section id="GUID-C20C78B4-62E4-403B-82F1-416539B50DD0"><title>See also</title><p><ul> |
40 <link href="GUID-D525B9A9-6B32-535B-A282-60C85A48D3FB.dita"><linktext>Floating |
41 <li><p>Floating point support in Symbian^3 Tools Guide |
41 point support</linktext></link> |
42 > Building</p></li> |
42 <link href="GUID-3046453A-AB3A-5491-87A0-00F3514D4768.dita"><linktext>Vector Floating |
43 <li><p><xref href="GUID-3046453A-AB3A-5491-87A0-00F3514D4768.dita">Vector |
43 Point Implementation Tutorial</linktext></link> |
44 Floating Point Implementation Tutorial</xref></p></li> |
44 </related-links></concept> |
45 </ul></p></section> |
|
46 </conbody></concept> |