PowerPC BSP mvme5500 and hardfloat.

Kate Feng kate007.feng at gmail.com
Thu Dec 12 05:44:22 UTC 2013


Using -msoft-float is slower than using the hardware FPU.
The former one will kill real-time performance. -msoft-float is not
recommended to be used at the BSP level, unless the board does not
support hardware FP registers.  See more below......

On Tue, Dec 10, 2013 at 12:36 PM, Joel Sherrill
<Joel.Sherrill at oarcorp.com>wrote:

>  GCC for the PowerPC will use floating point registers when you don't
> expect. Because of this all tasks are implicitly float on PPC. But in the
> bsp, there is concern for accidentally using the FPU in an ISR. This may be
> the sole reason soft float is used here.
>
If the usage of the FPU could not be avoided in an ISR, then one
should explicitly save and restore the FP registers in the ISR.

Cheers,
Kate Feng

> Would love to hear from Kate or another PowerPC BSP folks.
> On Dec 10, 2013 9:05 AM, Chirayu Desai <chirayudesai1 at gmail.com> wrote:
>  Sorry for not being clear earlier, I want to know whether -msoft-float
> is required or not.
> If someone using the git HEAD (or RTEMS 4.10 or above) can verify that it
> is working without a problem, that would be great.
> -msoft-float was removed in rtems.git
> commit 7425411ff581a8f5c92a1266085e7eb1f4debd2b,
>
>
> On 10 December 2013 22:29, Chirayu Desai <chirayudesai1 at gmail.com> wrote:
>
>> Hi,
>>
>>  https://www.rtems.org/bugzilla/show_bug.cgi?id=1323
>>  There is still an uncertainty regarding that bug, as the hardware does
>> have a FPU, but looks like it was removed for some reason.
>>
>>  git says this was introduced by commit ee732739bf9021a7a22de95eca9095c49b1d9169
>>
>> commit ee732739bf9021a7a22de95eca9095c49b1d9169
>> Author: Joel Sherrill <joel.sherrill at OARcorp.com>
>> Date:   Thu Sep 13 14:26:24 2007 +0000
>>
>>     2007-09-07      Kate Feng <feng1 at bnl.gov>
>>
>>         * ChangeLog, Makefile.am, README, README.booting, README.irq,
>>         preinstall.am, GT64260/MVME5500I2C.c, include/bsp.h, irq/irq.c,
>>         irq/irq.h, irq/irq_init.c, pci/detect_host_bridge.c, pci/pci.c,
>>         pci/pci_interface.c, pci/pcifinddevice.c, start/preload.S,
>>         startup/bspclean.c, startup/bspstart.c, startup/pgtbl_activate.c,
>>         startup/reboot.c, vectors/bspException.h, vectors/exceptionhandler.c:
>>         Merge my improvements in this BSP including a new network
>>         driver for the 1GHz NIC.
>>         * network/if_100MHz/GT64260eth.c, network/if_100MHz/GT64260eth.h,
>>         network/if_100MHz/GT64260ethreg.h, network/if_100MHz/Makefile.am,
>>         network/if_1GHz/Makefile.am, network/if_1GHz/POSSIBLEBUG,
>>         network/if_1GHz/if_wm.c, network/if_1GHz/if_wmreg.h,
>>         network/if_1GHz/pci_map.c, network/if_1GHz/pcireg.h: New files.
>>
>> Anybody here who can test this on actual hardware and verify what is wrong with this?
>>
>> Thanks.
>>
>>  Chirayu Desai
>>
>>
>
> _______________________________________________
> rtems-users mailing list
> rtems-users at rtems.org
> http://www.rtems.org/mailman/listinfo/rtems-users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20131212/0eba666a/attachment-0001.html>


More information about the users mailing list