Hi Rodolph,

I see, thanks. Do you know if this also applies to the android_arm target? The 
Makefile.android states that v7 is active and neon off. Would I have to change 
the Makefile to create an armv5 build?

Cheers,
Kevin

On 03.09.2012, at 13:16, Rodolph Perfetta wrote:

> Hi Kevin,
> 
> The standalone V8 for ARM builds for armv7+vfpv3 by default using gyp.
> 
> V8 has two compilers, one non optimising which compiles everything the
> first time and an optimising compiler (crankshaft) for hotspots. To
> use crankshaft on ARM you need armv7+vfpv3. The non optimising
> compiler works on armv5 (and probably armv4). If performance is
> important then crankshaft is a must.
> 
> Note that V8 will check the CPU at runtime so even if statically
> compiled for armv5 it may use cranckshaft when running.
> 
> NEON is a SIMD engine and JS VM currently don't emit SIMD like code.
> 
> Cheers,
> Rodolph.
> 
> On 2 September 2012 22:15, Paul Lind <[email protected]> wrote:
>> Hi Kevin -
>> 
>> Regarding your MIPS question, you are best off pulling from Google's release
>> branches, which match up to major Chrome releases. Those will have received
>> the most testing, on all platforms. The latest right now is 3.12, and
>> Android Jelly Bean is using 3.9, if that matters to you at all.
>> 
>> As you may or may not know, the MIPS port is developed by our outside team,
>> and on any given day we may not have finished porting necessary to work with
>> recent changes the Google team has made. Roughly once a week, they push to
>> trunk, and we currently don't sync up with them on these pushes. So MIPS may
>> be broken in trunk. We definitely do sync up on the release branches, and
>> get everything thoroughly tested.
>> 
>> We do keep the code at our own repo (https://github.com/paul99/v8m-rb)
>> working and our bleeding_edge branch will match theirs (though possibly a
>> day or two behind as port changes). So far there has not been demand for
>> keeping 'trunk' in sync for MIPS. But again, our bleeding_edge and theirs
>> can be broken at a given moment in time, so release branches are your best
>> bet for product development.
>> 
>> I don't know the answer to all your ARM questions, but I do know that Neon
>> is not used in v8, however the VFP3 floating point is required for the
>> optimizing (crankshaft) compiler.
>> 
>> thanks,
>> 
>> paul
>> 
>> 
>> 
>> On Sep 2, 2012, at 10:55 AM, Kevin Read wrote:
>> 
>> Hi all,
>> 
>> I succeeded in using v8 via JNI and the ndk from within my android app. The
>> idea here is to reuse existing JS code but with performance improvements. I
>> have some questions regarding the build flags for the different
>> architectures.
>> 
>> I was under the impression that v8 builds for ARMv5 by default. Is that
>> correct? I also read somewhere that when compiled for ARMv5 v8 would not use
>> the JIT and so performance would suffer. In any case, how would I go about
>> compiling for ARMv5 or ARMv7 explicitly?
>> Would it make sense to compile v8 with softfp and/or neon? I'm working with
>> fairly math intensive code.
>> 
>> I would also like to investigate building for MIPS, so that I have all
>> tablet hardware covered. Can I use trunk for that at the moment, or should I
>> try to work with the code from https://github.com/paul99/v8m-rb/?
>> 
>> Thanks for your input, and for this best of JS VMs :)
>> 
>> Regards,
>> Kevin
>> 
>> 
>> --
>> v8-users mailing list
>> [email protected]
>> http://groups.google.com/group/v8-users
>> 
>> 
>> --
>> v8-users mailing list
>> [email protected]
>> http://groups.google.com/group/v8-users
> 
> -- 
> v8-users mailing list
> [email protected]
> http://groups.google.com/group/v8-users

-- 
v8-users mailing list
[email protected]
http://groups.google.com/group/v8-users

Reply via email to