[oe] iwmmxt optimization and soft float in OE on PXA270
Hasjim Williams
openembedded-devel at lists.futaris.org
Thu Mar 20 06:03:15 UTC 2008
On Mon, 03 Mar 2008 08:29:04 +0100, "Koen Kooi"
<koen at dominion.kabel.utwente.nl> said:
> Stanislav Brabec schreef:
>
> | 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).
>
> Angstrom already enables softfloat (for FPU-less systems) and -Os by
> default *and* enables iwmmxt (if you have MACHINE_FEATURES = "iwmmxt")
> for apps which have been proven to benefit from iwmmxt (e.g. mplayer).
>
> I still get mysterious segfaults when running an all iwmmxt glibc system
> (uclibc is even worse), so I don't think flipping the global switch is a
> good idea.
You won't be able to use iwmmxt with everything. The unwind / exception
support for iwxmmt isn't there in gcc. Anything using C++ exceptions
won't work correctly.
infocenter.arm.com/help/topic/com.arm.doc.ihi0038a/IHI0038A_ehabi.pdf
explains about the unwind / exceptions.
This is also one of the issues that Cirrus's MaverickCrunch currently
has.
The only ARM coprocessor that is fully supported (by gcc) is VFP.
In summary, we'd have to modify:
gcc/config/arm/pr-support.c
gcc/config/arm/unwind-arm.h
gcc/config/arm/unwind-arm.c
for proper iwmmxt Unwind_VRS_Pop support.
NB, I'm the guy that has done the MaverickCrunch gcc patches...
I could write/test these patches, I guess, but the only PXA270 machine
that I have access to is a HTC Magician (XDA Mini).
Hasjim Williams
More information about the Openembedded-devel
mailing list