[OE-core] [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a

Gary Thomas gary at mlbassoc.com
Thu May 19 08:41:16 UTC 2016


On 2016-05-19 07:42, Khem Raj wrote:
>
>> On May 18, 2016, at 10:38 PM, Robert Yang <liezhi.yang at windriver.com> wrote:
>>
>>
>>
>> On 05/19/2016 01:28 PM, Khem Raj wrote:
>>>
>>>> On May 18, 2016, at 8:16 PM, Gary Thomas <gary at mlbassoc.com> wrote:
>>>>
>>>> On 2016-05-18 22:07, Khem Raj wrote:
>>>>> On Wed, May 18, 2016 at 2:03 AM, Robert Yang <liezhi.yang at windriver.com> wrote:
>>>>>> * It doesn't build on armv4:
>>>>>> {standard input}: Assembler messages:
>>>>>> {standard input}:52: Error: selected processor does not support `blx llint_throw_stack_overflow_error' in ARM mode
>>>>>> {standard input}:126: Error: selected processor does not support `bkpt #0' in ARM mode
>>>>>> {standard input}:128: Error: selected processor does not support `blx r0' in ARM mode
>>>>>> {standard input}:134: Error: selected processor does not support `bkpt #0' in ARM mode
>>>>>> {standard input}:185: Error: selected processor does not support `blx llint_throw_stack_overflow_error' in ARM mode
>>>>>> {standard input}:256: Error: selected processor does not support `blx r4' in ARM mode
>>>>>> {standard input}:310: Error: selected processor does not support `movw r2,#:lower16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
>>>>>> {standard input}:311: Error: selected processor does not support `movt r2,#:upper16:.Lllint_op_enter-.LrelativePCBase' in ARM mode
>>>>>> {standard input}:315: Error: selected processor does not support `movw r2,#:lower16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
>>>>>> {standard input}:316: Error: selected processor does not support `movt r2,#:upper16:.Lllint_op_get_scope-.LrelativePCBase' in ARM mode
>>>>>> [snip]
>>>>>>
>>>>>> * It can build on armv7a, but doesn't work on runtime, cause
>>>>>>    displaying problems or ephiphany hang.
>>>>>>
>>>>>> [YOCTO #9474]
>>>>>>
>>>>>> Signed-off-by: Robert Yang <liezhi.yang at windriver.com>
>>>>>> ---
>>>>>>   meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++++++-
>>>>>>   1 file changed, 6 insertions(+), 1 deletion(-)
>>>>>>
>>>>>> diff --git a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
>>>>>> index bdbcbea..23ead72 100644
>>>>>> --- a/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
>>>>>> +++ b/meta/recipes-sato/webkit/webkitgtk_2.12.1.bb
>>>>>> @@ -62,9 +62,14 @@ EXTRA_OECMAKE = " \
>>>>>>   EXTRA_OECMAKE_append_powerpc = " -DENABLE_JIT=OFF "
>>>>>>   EXTRA_OECMAKE_append_powerpc64 = " -DENABLE_JIT=OFF "
>>>>>>
>>>>>> -# ARM JIT code does not build on ARMv5/6 anymore, apparently they test only on v7 onwards
>>>>>> +# ARM JIT code does not build on ARMv4/5/6 anymore
>>>>>>   EXTRA_OECMAKE_append_armv5 = " -DENABLE_JIT=OFF "
>>>>>>   EXTRA_OECMAKE_append_armv6 = " -DENABLE_JIT=OFF "
>>>>>> +EXTRA_OECMAKE_append_armv4 = " -DENABLE_JIT=OFF "
>>>>>> +
>>>>>> +# ARM JIT can build on armv7a, but doesnt' work on runtime, cause
>>>>>> +# displaying problems or ephiphany hang.
>>>>>> +EXTRA_OECMAKE_append_armv7a = " -DENABLE_JIT=OFF "
>>>>>
>>>>> this should work fine with thumb2 e.g. so this is a little broad brush
>>>>> here to diable it across
>>>>> all armv7
>>>>
>>>> Why do you think that changing the instruction set (to thumb2) would
>>>> make the JIT work any better?
>>>
>>> Assembler implementation for JIT has always worked better with thumb2.
>>>
>>>>
>>>> If you tell me how, I'll test it on my i.MX6 (Cortex-A9) which is
>>>> the platform that inspired the original bug report.
>>>
>>>
>>> Try adding
>>>
>>> ARM_INSTRUCTION_SET_armv7a = “thumb"
>>> ARM_INSTRUCTION_SET_armv7ve = “thumb"
>>>
>>> in the webkitgtk recipe and see if it helps
>>
>>
>> Hi,
>>
>> To be clear, webkitgtk can build on armv7a, but doesn't work on
>> runtime, cause displaying problems or ephiphany hang.
>
> We are talking runtime here.
>

Sorry, still fails - tested on my i.MX6 target.  Visiting www.google.com
fails immediately.  Looks like the JIT should be disabled for armv7

-- 
------------------------------------------------------------
Gary Thomas                 |  Consulting for the
MLB Associates              |    Embedded world
------------------------------------------------------------



More information about the Openembedded-core mailing list