On Wed, Apr 24, 2013 at 08:16:03AM -0700, Juan Gómez wrote:
> Douglas Crosher (dougc on irc) asked few days ago about hardfp
> ABI [1] support on B2G. Well, we actually rely on AOSP mainstream
> toolchain (based on gcc 4.4.x) and this toolchain lacks support of
> ABI hardfp cause Android doesn't have hard-float ABI support.

The compiler we're using already recognizes -mfloat-abi=hard and
generates code that uses FP registers for parameter passing.  The
problem is everything it needs to be linked against (including all the
relevant crt*.o files).

> I'm pretty sure that supporting hard-float ABI would imply a large gain on 
> performance,

Possibly.  If I understand correctly, we're currently using
-mfloatabi=softfp, which uses the FPU for computation but transfers
floating-point values to/from integer registers when calling/returning
from functions.

> Someone on irc (jld?) told me that plugin-container could depends on
> propietary GL libraries, that will need to be recompiled/migrated with
> hardfp ABI support.

The main b2g process depends on the GL libraries, and the compositor
thread spends a nontrivial amount of its time in them.  I assume apps
that use WebGL would be in the same situation.

> As someone pointed on #b2g, it looks like vendors would love to see
> their drivers/libraries runs far more faster so I hope they could
> provide us both softp and hardfp ABI libraries.

That was me, and that was speculation on my part -- I haven't tried
talking with any relevant vendors about this yet.

> I'm now integrating Linaro Android Toolchain into the build
> system. It's based on gcc 4.6 so far, but the Linaro team told me that
> we should be able to compile with gcc 4.7, so this will be my next
> step.

Maybe: see https://bugzilla.mozilla.org/show_bug.cgi?id=854389 (which is
about the compiler for building tools run on the build host, but if the
same header is used in code that runs on the device, it would apply there
as well).

> It would be nice to create a meta bug that will depend on some other
> bugs/tasks that I have in mind (like integrating linaro toolchain or
> keep both softfp and hardfp in the build system) , so if we don't get
> any reason to not to continue with this, I'm going to file the bug and
> follow the discussion there.

It's generally better to file a bug, I think -- in the worst case it can
just be closed later.

--Jed

_______________________________________________
dev-b2g mailing list
[email protected]
https://lists.mozilla.org/listinfo/dev-b2g

Reply via email to