> On Monday 08 June 2009 21:35:05 matthieu castet wrote:
>> Michael Buesch wrote:
>> > On Sunday 07 June 2009 11:28:50 matthieu castet wrote:
>> >> Hi,
>> >>
>> >> I wonder with openwrt for bcm47xx is not build with "-msoft-float".
>> >> The cpu doesn't have fpu and the current floating code get emulated by the
>> >> kernel emulator instead of using the gcc emulation support (that is 
>> >> cheaper
>> >> because there is no kernel trap).
>> >
>> > Well, I guess on a typical bcm47xx setup there's hardly any application 
>> > that uses
>> > floating point math.
>> note that dropbear seems to use some, but that not critical.
>>
>> > Does -msoft-float increase the binary/image size? If so, I'd
>> > vote for _not_ adding -msoft-float. If it doesn't make a size difference, 
>> > we should
>> > probably add it.
>> >
>> That shouldn't increase size of application that don't use float.
>> I did a quick test with dropbear that contain very few float.
>> Here are the results (sfloat means -msoft-float, sgcc mean -shared-libgcc)
>>
>>
>> $size /tmp/dropbear*
>>     text    data     bss     dec     hex filename
>>   226924    4252    1744  232920   38dd8 /tmp/dropbear
>>   234719    4328    1744  240791   3ac97 /tmp/dropbear_sfloat
>>   220781    4192    1744  226717   3759d /tmp/dropbear_sfloat_sgcc
>>   219956    4152    1744  225852   3723c /tmp/dropbear_sgcc
>>
>> As you can see with a static libgcc the size of the softfloat binary
>> increase (8k) because all float emulation code is duplicated in the binary.
>> With a shared libgcc the softfloat binary is smaller, the increase size
>> is less than 1k.
>>
>> I don't know the impact for whole binary. I should try to build a
>> typical bcm47xx setup and see the impact.
>
> Ok. It still smells like we're trying to solve a problem that does not exist.
> Is the performance of any app increased in real life?

FWIW, I'd be interested to get faster floating point operations in an
app I wrote that runs on openwrt. I'm running kernel 2.4 on brcm53xx
-- if that's a relevant testing platform for this question, I could
try some tests to see how much it speeds things up. If yes, then
please let me know how to use the different floating point library (do
I need to build a new toolchain? or is it an option in make
menuconfig?)

Dan
_______________________________________________
openwrt-devel mailing list
openwrt-devel@lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to