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

Reply via email to