[oe] iwwmmxt optimization and soft float in OE on PXA270

Stanislav Brabec utx at penguin.cz
Sun Mar 2 21:47:15 UTC 2008


Hallo.

What is your opinion on enabling of iwmmxt optimization on >=PXA270
devices, and optionally also soft floats?

I read old posts talking regarding broken iwmmxt support in gcc.

I also read something about float emulation options for PXA270, its
speed and ABI breakage. It seems, that soft float should be the fastest
option for devices without hardware FPU.

I wanted to test it and I have recompiled everything I am using with:
-march=iwmmxt -mcpu=iwmmxt -mtune=iwmmxt -Os -funswitch-loops -fgcse-after-reload -msoft-float

It should be the best possible optimization for PXA270 (compiled for
iwmmxt, use soft float instead of exception based kernel driver, use -Os
to make binaries as small as possible and add optimizations from -O3).

Then I have created a spitz feed based on the latest OE.dev and
installed.

Here is iwmmxt soft float Spitz feed:
http://www.penguin.cz/~utx/zaurus/feed/
(You have to degrade or remove xorg-kdrive before boot - known bug. You
have to replace the default feed by the experimental one. And finally,
2.6.24 is available in the feed and you can upgrade.)

Problems relevant to iwmmxt:
- qemu does not work properly and fails to compile locales, timezones
  and emacs.
- minimo compilation fails (not yet analyzed)

Problems relevant to soft float:
- Breaks ABI of applications using math.

I am now using it for several days, and I don't see any problems, which
were not known with the default compiler.

Other results:
- Os does not create significantly smaller binaries when compared with
  the default -O2.
- Some applications seems to run a bit faster (MPlayer).


________________________________________________________________________
Stanislav Brabec
http://www.penguin.cz/~utx/zaurus





More information about the Openembedded-devel mailing list