Symbian3/SDK/Source/GUID-947317B7-7E12-509B-9A16-F0604D7F8BA2.dita
author Dominic Pinkman <Dominic.Pinkman@Nokia.com>
Thu, 21 Jan 2010 18:18:20 +0000
changeset 0 89d6a7a84779
permissions -rw-r--r--
Initial contribution of Documentation_content according to Feature bug 1266 bug 1268 bug 1269 bug 1270 bug 1372 bug 1374 bug 1375 bug 1379 bug 1380 bug 1381 bug 1382 bug 1383 bug 1385

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-947317B7-7E12-509B-9A16-F0604D7F8BA2" xml:lang="en"><title>armfpu</title><prolog><metadata><keywords/></metadata></prolog><conbody>
<p> <codeph>armfpu [ vfpv2 | softvfp ]</codeph>  </p>
<p>Use the <codeph>armfpu</codeph> statement to specify how the compiler is
to deal with floating point instructions. </p>
<p>There are two ways in which floating point instructions can be handled
on an ARM processor: </p>
<ul>
<li id="GUID-929D9EEB-1D4A-58DD-8E62-7E14EAB6566B"><p>through the use of floating
point support functions. </p> </li>
<li id="GUID-B28E550A-0785-50B5-B260-7F8C85F1CA2A"><p>directly on a hardware
floating point co-processor, the Vector Floating Point (VFP) unit. </p> </li>
</ul>
<table id="GUID-A0C3733D-2744-5094-AF89-EF15737C68E9">
<tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/>
<tbody>
<row>
<entry><p> <codeph>softvfp</codeph>  </p> </entry>
<entry><p>This keyword specifies that floating point instructions are handled
by floating point support functions. </p> <p>On a device without a VFP unit,
floating point support functions are implemented in software and operate slowly.
On a device with a VFP unit, the floating point support functions are handled
by the VFP unit, and operate faster than when implemented in software. </p> <p>Note
that applications do not need to make any changes to take advantage of VFP-enabled
floating point support functions, if they are provided in the device's ROM.
Such functions are used automatically at run time. </p> <p>If <codeph>armfpu</codeph> is
not specified in a <filepath>.mmp</filepath> file, then <codeph>armfpu softvfp</codeph> is
assumed by default. </p> </entry>
</row>
<row>
<entry><p> <codeph>vfpv2</codeph>  </p> </entry>
<entry><p>This keyword specifies that VFP specific code is to be generated
at compile time whenever floating point instructions are used. </p> <p>On
a device with a VFP unit, this option results in code that runs faster than
the floating point support functions generated by <codeph>softvfp</codeph>.
Note, however, that binaries produced with VFP specific code do not work on
devices without a VFP unit. <i>Software Install</i> attempts to prevent their
installation, but if any such binaries are installed onto a device in some
other way, for example by inclusion into the ROM at device creation time,
then a call to VFP specific code results in a KERN-EXEC 3 panic (see also <xref href="GUID-0AF47934-0A16-51A2-9254-992D7C6B322B.dita">Application Installation
Guide</xref>). </p> </entry>
</row>
</tbody>
</tgroup>
</table></conbody></concept>