Hi, Thanks for responding. The only thing it may stop me from changing to a more recent version is the Webkit Compatibility. The Webkit version using by the Android build is
http://src.chromium.org/svn/releases/5.0.328.0/DEPS http://svn.webkit.org/repository/webkit/trunk@54731 Do you think a more recent V8 would work with that Webkit? your build option include '-mtune=arm1136jf-s' the f is for VFP but in > theory this should have no bearing as it is passed as a pipeline tuning > setting. Do you mean I should remove such an option? thanks 2011/7/12 Rodolph Perfetta <[email protected]> > Am I correct in thinking you are using bleeding_edge revision 3784. This is > very old, current bleeding edge is around revision 8600. Anything stopping > you to use a more recent bleeding_edge? > > your build option include '-mtune=arm1136jf-s' the f is for VFP but in > theory this should have no bearing as it is passed as a pipeline tuning > setting. > > Rodolph. > > On 12 July 2011 10:44, Jose Manuel Cantera Fonseca < > [email protected]> wrote: > >> The problem is still there. Below you can find the compilation options my >> Android build is using. >> >> On the other hand the options mentioned by Soren do not appear on my >> contants-arm-h file. This is an Android build and the upstream v8 version >> used is http://v8.googlecode.com/svn/branches/bleeding_edge@3784 >> >> CAN_USE_THUMB_INSTRUCTIONS defined as 1. >>> Are you defining CAN_USE_UNALIGNED_ACCESSES to 1 when compiling? >> >> >> >> ------ Compilation options start here ----- >> >> target thumb C++: libv8 <= external/v8/src/accessors.cc >> prebuilt/linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-g++ -c >> -fno-exceptions -Wno-multichar -msoft-float -fpic -ffunction-sections >> -funwind-tables -fstack-protector -fno-short-enums -march=armv6j >> -mtune=arm1136jf-s -pipe -fomit-frame-pointer -D__ARM_ARCH_5__ >> -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -mthumb-interwork >> -DANDROID -fmessage-length=0 -W -Wall -Wno-unused -Winit-self >> -Wpointer-arith -Werror=return-type -Werror=non-virtual-dtor -Werror=address >> -Werror=sequence-point -DNDEBUG -g -Wstrict-aliasing=2 -finline-functions >> -fno-inline-functions-called-once -fgcse-after-reload -frerun-cse-after-loop >> -frename-registers -DNDEBUG -UDEBUG -fvisibility-inlines-hidden -DANDROID >> -fmessage-length=0 -W -Wall -Wno-unused -Winit-self -Wpointer-arith >> -Wsign-promo -Werror=return-type -Werror=non-virtual-dtor -Werror=address >> -Werror=sequence-point -DNDEBUG -UDEBUG -mthumb -Os -fomit-frame-pointer >> -fno-strict-aliasing -finline-limit=64 -fno-rtti -Wno-endif-labels >> -Wno-import -Wno-format -fno-exceptions -DENABLE_DEBUGGER_SUPPORT >> -DV8_NATIVE_REGEXP -fpic -funwind-tables -fstack-protector -fno-short-enums >> -fmessage-length=0 -finline-functions -fno-inline-functions-called-once >> -fgcse-after-reload -frerun-cse-after-loop -frename-registers >> -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -MD * >> -mfloat-abi=soft* -DARM -DV8_TARGET_ARCH_ARM -MD >> >> >> >> >> 2011/7/11 Søren Gjesse <[email protected]> >> >>> You can take a look at the SConstruct file for building with SCons on the >>> root of the V8 repository. It has the following handling of the different >>> floating point options supported by V8. >>> >>> 'armeabi:soft' : { >>> 'CPPDEFINES' : ['USE_EABI_HARDFLOAT=0'], >>> 'simulator:none': { >>> 'CCFLAGS': ['-mfloat-abi=soft'], >>> } >>> }, >>> 'armeabi:softfp' : { >>> 'CPPDEFINES' : ['USE_EABI_HARDFLOAT=0', >>> 'CAN_USE_VFP_INSTRUCTIONS'], >>> 'simulator:none': { >>> 'CCFLAGS': ['-mfloat-abi=softfp'], >>> } >>> }, >>> 'armeabi:hard' : { >>> 'CPPDEFINES' : ['USE_EABI_HARDFLOAT=1', >>> 'CAN_USE_VFP_INSTRUCTIONS'], >>> 'simulator:none': { >>> 'CCFLAGS': ['-mfloat-abi=hard'], >>> } >>> } >>> >>> Regards, >>> Søren >>> >>> >>> On Mon, Jul 11, 2011 at 12:28, Rodolph Perfetta < >>> [email protected]> wrote: >>> >>>> At first glance it looks like you are trying to run VFP code on a CPU >>>> which does not have VFP. The JIT checks the CPU at runtime, so I presume >>>> you >>>> are compiling the C++ code with VFP support. Try updating the build system >>>> to pass -'mfloat-abi=soft -mfpu=none' to the compiler. (and remove the >>>> '-mfloat-abi=softfp' option). >>>> >>>> Cheers, >>>> Rodolph,. >>>> >>>> >>>> On 11 July 2011 10:47, Jose Manuel Cantera Fonseca < >>>> [email protected]> wrote: >>>> >>>>> Hi there, >>>>> >>>>> Thank you for your responses. Trying to isolate the problem, I'm now >>>>> using v8 outside webkit, i.e. through the 'v8shell' helper program, >>>>> >>>>> I have discovered that v8 is working fine but when an incorrect >>>>> expression is given to the v8 shell, for instance a variable that does not >>>>> exist, a fault occurs and the v8shell process dies. The log trace is >>>>> below. >>>>> >>>>> Any idea? >>>>> >>>>> many thanks >>>>> >>>>> best >>>>> >>>>> >>>>> ---- Log Trace --- >>>>> >>>>> *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** >>>>> Build fingerprint: >>>>> 'tmobile/opal/sapphire/sapphire:2.2.1/FRG83/60505:user/release-keys' >>>>> pid: 511, tid: 511 >>> v8shell <<< >>>>> signal 4 (SIGILL), fault addr 40860360 >>>>> r0 00000000 r1 408453b5 r2 408453b5 r3 00000000 >>>>> r4 00000002 r5 4040a2a5 r6 4087e1e1 r7 00000000 >>>>> r8 4040a13d r9 4083e12d 10 0013f620 fp beba66f4 >>>>> ip 0014b5dc sp beba66dc lr 408ccd2c pc 40860360 cpsr 40000010 >>>>> #00 pc 40860360 >>>>> #01 lr 408ccd2c <unknown> >>>>> >>>>> code around pc: >>>>> 40860340 e5104001 e5d44007 e3540084 1affffc3 >>>>> 40860350 e2407001 ed977b01 ea000002 e1a070c0 >>>>> 40860360 ee077a90 eeb87be7 e3110001 0a000006 >>>>> 40860370 e5114001 e5d44007 e3540084 1affffb7 >>>>> 40860380 e2417001 ed976b01 ea000002 e1a070c1 >>>>> >>>>> code around lr: >>>>> 408ccd0c e52d0004 e59f0260 e52d0004 e598200b >>>>> 408ccd1c e5920027 e49d1004 e1a0e00f e59ff24c >>>>> 408ccd2c e52d0004 e59f2248 e1a0e00f e59ff244 >>>>> 408ccd3c e51b8004 e52d0004 e598200b e5920023 >>>>> 408ccd4c e52d0004 e59f2230 e1a0e00f e59ff22c >>>>> >>>>> stack: >>>>> beba669c 0009b1c9 /system/bin/v8shell >>>>> beba66a0 00000002 >>>>> beba66a4 beba66dc [stack] >>>>> beba66a8 beba66f4 [stack] >>>>> beba66ac beba66d0 [stack] >>>>> beba66b0 beba66f4 [stack] >>>>> beba66b4 00000002 >>>>> beba66b8 0009b19d /system/bin/v8shell >>>>> beba66bc 4085e234 >>>>> beba66c0 4085e234 >>>>> beba66c4 4085e1c1 >>>>> beba66c8 beba66f4 [stack] >>>>> beba66cc beba66e0 [stack] >>>>> beba66d0 df002777 >>>>> beba66d4 e3a070ad >>>>> beba66d8 408453b5 >>>>> #00 beba66dc 40844945 >>>>> beba66e0 40834e69 >>>>> beba66e4 4082ec2d >>>>> beba66e8 4083e12d >>>>> beba66ec 4083441d >>>>> beba66f0 4040a13d >>>>> beba66f4 beba6714 [stack] >>>>> beba66f8 408cc5b4 >>>>> beba66fc 40407ac9 >>>>> beba6700 40844945 >>>>> beba6704 4082e361 >>>>> beba6708 40844945 >>>>> beba670c 40833bed >>>>> beba6710 4082e329 >>>>> beba6714 beba672c [stack] >>>>> beba6718 40874bac >>>>> beba671c 40408469 >>>>> beba6720 4082e361 >>>>> >>>>> >>>>> -------------- >>>>> >>>>> >>>>> 2011/7/8 Søren Gjesse <[email protected]> >>>>> >>>>>> Normally target CPU setup is handled by preprocessor defines set by >>>>>> the compiler. Look at src/arm/constants-arm.h to see what is checked for. >>>>>> With an ARMv6 you should end up >>>>>> with CAN_USE_ARMV6_INSTRUCTIONS, CAN_USE_ARMV5_INSTRUCTIONS >>>>>> and CAN_USE_THUMB_INSTRUCTIONS defined as 1. >>>>>> >>>>>> Are you defining CAN_USE_UNALIGNED_ACCESSES to 1 when compiling? >>>>>> >>>>>> Do you have any idea whether the runtime issue you have is due to JIT >>>>>> code generated by V8? >>>>>> >>>>>> Regards, >>>>>> Søren >>>>>> >>>>>> On Fri, Jul 8, 2011 at 08:47, Jose Manuel Cantera Fonseca < >>>>>> [email protected]> wrote: >>>>>> >>>>>>> Do I need to set any special compilation flag? >>>>>>> >>>>>>> Thanks >>>>>>> El 07/07/2011 17:31, "Rodolph Perfetta" <[email protected]> >>>>>>> escribió: >>>>>>> >>>>>>> > v8 will work on an ARMv6 cpu though Crankshaft (the optimising >>>>>>> compiler) >>>>>>> > will not be used. >>>>>>> > >>>>>>> > Cheers, >>>>>>> > Rodolph. >>>>>>> > >>>>>>> > On 7 July 2011 16:25, Jose Manuel Cantera Fonseca < >>>>>>> > [email protected]> wrote: >>>>>>> > >>>>>>> >> Hi there, >>>>>>> >> >>>>>>> >> I'm trying to run v8 together with Webkit in a custom Android >>>>>>> build for HTC >>>>>>> >> Dream. >>>>>>> >> >>>>>>> >> I'm having problems at runtime, thus I'm wondering if v8 is >>>>>>> supported on >>>>>>> >> the HTC Magic CPU: >>>>>>> >> >>>>>>> >> Qualcomm MSM 7201A 528 Mhz (see all the details below) >>>>>>> >> >>>>>>> >> thanks for your help >>>>>>> >> >>>>>>> >> all the best >>>>>>> >> >>>>>>> >> *Type:*MSM7201A *Manufacturer:*Qualcomm< >>>>>>> http://en.wikipedia.org/wiki/Qualcomm> >>>>>>> >>>>>>> >> *Year Released:*2008 *Predecessor:*32bit Qualcomm MSM7200A * >>>>>>> >> Characteristics**CPU Structure (complexity):* RISC< >>>>>>> http://pdadb.net/index.php?m=cpu&id=a7201a&c=qualcomm_msm7201a#> >>>>>>> >> *Width of Machine Word:*32 bit *Primary (RAM) Data bus:*32 bit >>>>>>> *Instruction >>>>>>> >> Set**Supported Instruction Set(s):* ARMv6*CPU Core< >>>>>>> http://pdadb.net/index.php?m=cpu&id=a7201a&c=qualcomm_msm7201a#> >>>>>>> >> :* ARM1136EJ-S *Clock Frequencies**Recommanded Maximum Clock >>>>>>> Frequency:*528 MHz >>>>>>> >> *Technology**Semiconductor< >>>>>>> http://pdadb.net/index.php?m=cpu&id=a7201a&c=qualcomm_msm7201a#> >>>>>>> >>>>>>> >> Technology:* CMOS*Minimum Feature Size:* 65 nm *Additional >>>>>>> Details**Special >>>>>>> >> Features:* ARM9 coprocessor, Embedded QDSP4000 and QDSP5000 DSP >>>>>>> (GSM, >>>>>>> >> GPRS/EGPRS Multislot Class 12, EDGE, UMTS/WCDMA, HSDPA, HSUPA, >>>>>>> MBMS >>>>>>> >> baseband), Embedded gpsOne GPS module, Qcamera, Qtv, Qcamcorder, >>>>>>> >> Qvideophone, Adreno 130 GPU, OpenGL ES 1.1, OpenVG 1.1, EGL 1.3, >>>>>>> Direct3D >>>>>>> >> Mobile, SVGT 1.2, Direct Draw, GDI >>>>>>> >> >>>>>>> >> -- >>>>>>> >> 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 >>>>>> >>>>> >>>>> -- >>>>> 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 >> > > -- > 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
