On Saturday 23. October 2010 11.56.55 [email protected] wrote: > The point is that for MeeGo to be competitive enough we must use what > the hw has to provide, and now it should be possible to use hardfb as well, > when some work has been done with the toolchain.
The problem with using softfp is that, even if the HW is used to make the
floating point operations, when calling a function those VFP registers need to
be spilled to the ARM core. That means the processor and the coprocessor must
synchronise, which implies a non-negligible stall.
I have a report from one Nokia team who has done a research on the subject.
Unfortunately, I can't share it with the world, so you'll have to trust me on
this.
It's significant for us because all GL and Graphics View operations are done in
floating point (single precision even, which is another problem we'll have to
fix at one point). We're depending on the compiler figuring out that certain
function calls can be inlined and the arguments don't need to be transferred
from one processor to another.
If GCC supported an __attribute__((softfpregparm)) we'd add that to the Qt API
and compile the rest (the internals) in hardfp.
> I propose, that we don't specify softfp as the baseline for complience,
> but rather say that current softfp is temporary phase and we will move
> to hardfp as soon as possible, potentially in 1.1 update if we will have
> such a thing.
I think that's a bad idea. We can't switch to hardfp without a full binary
compatibility break. So it should be done at the new release, 1.2.
That also means devices upgrading from MeeGo 1.1 to 1.2 will need a full
reinstall/flashing. No applications from any repository or store will survive
and need to be recompiled.
--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
Senior Product Manager - Nokia, Qt Development Frameworks
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
signature.asc
Description: This is a digitally signed message part.
_______________________________________________ MeeGo-dev mailing list [email protected] http://lists.meego.com/listinfo/meego-dev
