ICS ; armv5 build fails

1,240 views
Skip to first unread message

JJ

unread,
Jun 18, 2012, 11:36:54 PM6/18/12
to Android Building
I'm unable to build for armv5te. We fail with the following:
============================================
PLATFORM_VERSION_CODENAME=AOSP
PLATFORM_VERSION=4.0.4.0.4.0.4
TARGET_PRODUCT=generic_armv5
TARGET_BUILD_VARIANT=eng
TARGET_BUILD_TYPE=release
TARGET_BUILD_APPS=
TARGET_ARCH=arm
TARGET_ARCH_VARIANT=armv5te
HOST_ARCH=x86
HOST_OS=linux
HOST_OS_EXTRA=Linux-3.0.0-19-generic-x86_64-with-Ubuntu-11.10-oneiric
HOST_BUILD_TYPE=release
BUILD_ID=OPENMASTER
OUT_DIR=out
============================================
target arm C: libwebrtc_spl <= external/webrtc/src/common_audio/
signal_processing_library/main/source/auto_corr_to_refl_coef.c
/tmp/cc77IyiG.s: Assembler messages:
/tmp/cc77IyiG.s:220: Error: selected processor does not support ARM
mode `qadd16 r0,r2,ip'
/tmp/cc77IyiG.s:260: Error: selected processor does not support ARM
mode `qadd16 r2,r2,r7'
/tmp/cc77IyiG.s:279: Error: selected processor does not support ARM
mode `qadd16 r5,r5,r6'
make: *** [out/target/product/generic_armv5/obj/STATIC_LIBRARIES/
libwebrtc_spl_intermediates/auto_corr_to_refl_coef.o] Error 1

Reading the code, it's easy enough to see that the inline instructions
are not armv5te compatible and there appears to be no provision for
supporting armv5 there.

Is armv5te support being deprecated or might we expect a fix for these
problems in the near term?

Thanks,

Jerry Hicks.

Jean-Baptiste Queru

unread,
Jun 19, 2012, 8:36:10 AM6/19/12
to android-...@googlegroups.com
I think it's deeply deprecated at this point. The last Android version
to ship on an ARMv5 flagship device was Froyo, quite exactly 2 years
ago.

JBQ
> --
> You received this message because you are subscribed to the "Android Building" mailing list.
> To post to this group, send email to android-...@googlegroups.com
> To unsubscribe from this group, send email to
> android-buildi...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/android-building?hl=en



--
Jean-Baptiste M. "JBQ" Queru
Technical Lead, Android Open Source Project, Google.

Questions sent directly to me that have no reason for being private
will likely get ignored or forwarded to a public forum with no further
warning.

JJ

unread,
Jun 20, 2012, 1:02:22 AM6/20/12
to Android Building
Thanks for the advice JBQ.

Regards,

Jerry Hicks.

Jean-Baptiste Queru

unread,
Jun 20, 2012, 12:31:55 PM6/20/12
to android-...@googlegroups.com
In the big picture of Android, the next major release is expected to
use V8 exclusively as its ECMAScript engine and to remove support for
JSC. V8 requires ARMv7, so the hurdles toward ARMv5 will be far
greater at that point. I don't think it makes sense in the context of
Android to currently try to get back to ARMv5.

JBQ

On Wed, Jun 20, 2012 at 9:17 AM, Leo Wang <leoz...@google.com> wrote:
> This problem should have been fixed at some point in
> webrtc, https://code.google.com/p/webrtc
> But I have less interest maintaining webrtc armv5 build in long run.

Jack Mayerz

unread,
Jun 20, 2012, 12:31:47 PM6/20/12
to android-...@googlegroups.com

Out of curiosity, what ARMV5 are you trying to make a build for? These are extinct!

On 2012 6 20 18:29, "Leo Wang" <leoz...@google.com> wrote:
This problem should have been fixed at some point in webrtc, https://code.google.com/p/webrtc
But I have less interest maintaining webrtc armv5 build in long run.

On Tuesday, June 19, 2012 10:02:22 PM UTC-7, JJ wrote:

--

Jack Mayerz

unread,
Jun 20, 2012, 12:36:36 PM6/20/12
to android-...@googlegroups.com

Ok, I didn't get all that.
What does V8 has to do with ARMV5?
And why does V8 require ARMV7? Shouldn't that be V11?

Jean-Baptiste Queru

unread,
Jun 20, 2012, 12:49:25 PM6/20/12
to android-...@googlegroups.com
V8 is the WebView scripting engine, and it has a JIT. On ARM, that JIT
outputs ARMv7 instructions, so it can't be used on processors that
don't support those instructions.

This is related to the instruction set, not to the processor architecture.

JBQ

Jack Mayerz

unread,
Jun 20, 2012, 12:53:35 PM6/20/12
to android-...@googlegroups.com

I still don't get what it has to do with V.5!

Jean-Baptiste Queru

unread,
Jun 20, 2012, 1:02:59 PM6/20/12
to android-...@googlegroups.com
When the scripting engine runs, it dynamically generates code that
uses ARMv7 instructions. That generated code won't work on a processor
that only implements ARMv5 instructions.

JBQ

Jack Mayerz

unread,
Jun 20, 2012, 1:12:32 PM6/20/12
to android-...@googlegroups.com

So, V8 has nothing to do with ARM5!!
What I'm wondering about is why Android would ever get back to ARM5 because of V8, while V8 doesn't work for 5?
Maybe I got you wrong, but you said that the hurdle towards ARM5 would be greater, what did you mean by that?

Jean-Baptiste Queru

unread,
Jun 20, 2012, 1:17:47 PM6/20/12
to android-...@googlegroups.com
V8 has nothing to do with ARM5, but it doesn't work on ARMv5. That's
different. I didn't make those names, sorry, they're very confusing.

In IceCreamSandwich, using V8 isn't mandatory, so if you switch back
to the older and slower JSC, you could get that to run on an ARMv5,
and you'd "only" have to deal with the issues in the other modules.

In the next major release, switching back won't be an option any more,
and the amount of work to make V8 work on ARMv5 is probably
insurmountable.

JBQ

Jack Mayerz

unread,
Jun 20, 2012, 1:19:57 PM6/20/12
to android-...@googlegroups.com

Aha, now I understand what you're talking about. Thanks for the illustration.

JJ

unread,
Jun 25, 2012, 12:52:10 PM6/25/12
to Android Building
They're not extinct for embedded systems, not by a long shot.

On Jun 20, 11:31 am, Jack Mayerz <jackmayer...@gmail.com> wrote:
> Out of curiosity, what ARMV5 are you trying to make a build for? These are
> extinct!
Reply all
Reply to author
Forward
0 new messages