Openembedded Core Discussions
 help / color / mirror / Atom feed
* [PATCH 0/1 V2] webkitgtk: turn off JIT on armv4 and armv7a
@ 2016-05-18  9:03 Robert Yang
  2016-05-18  9:03 ` [PATCH 1/1] " Robert Yang
  0 siblings, 1 reply; 9+ messages in thread
From: Robert Yang @ 2016-05-18  9:03 UTC (permalink / raw)
  To: openembedded-core

* V2
  Rebase and resend.

// Robert

The following changes since commit 84b11bce72296d04a0e6bc9f18669284017c3704:

  pkgconfig: Update AM_GLIB_GNU_GETTEXT macro (2016-05-17 17:26:05 +0100)

are available in the git repository at:

  git://git.openembedded.org/openembedded-core-contrib rbt/webkitgtk
  http://cgit.openembedded.org/cgit.cgi/openembedded-core-contrib/log/?h=rbt/webkitgtk

Robert Yang (1):
  webkitgtk: turn off JIT on armv4 and armv7a

 meta/recipes-sato/webkit/webkitgtk_2.12.1.bb | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

-- 
2.7.4



^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-18  9:03 [PATCH 0/1 V2] webkitgtk: turn off JIT on armv4 and armv7a Robert Yang
@ 2016-05-18  9:03 ` Robert Yang
  2016-05-18 20:07   ` Khem Raj
  0 siblings, 1 reply; 9+ messages in thread
From: Robert Yang @ 2016-05-18  9:03 UTC (permalink / raw)
  To: openembedded-core

* 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@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 "
 
 # binutils 2.25.1 has a bug on aarch64:
 # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
-- 
2.7.4



^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-18  9:03 ` [PATCH 1/1] " Robert Yang
@ 2016-05-18 20:07   ` Khem Raj
  2016-05-19  3:16     ` Gary Thomas
  0 siblings, 1 reply; 9+ messages in thread
From: Khem Raj @ 2016-05-18 20:07 UTC (permalink / raw)
  To: Robert Yang; +Cc: Patches and discussions about the oe-core layer

On Wed, May 18, 2016 at 2:03 AM, Robert Yang <liezhi.yang@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@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

>
>  # binutils 2.25.1 has a bug on aarch64:
>  # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
> --
> 2.7.4
>
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-18 20:07   ` Khem Raj
@ 2016-05-19  3:16     ` Gary Thomas
  2016-05-19  3:35       ` Tristan Van Berkom
  2016-05-19  5:28       ` Khem Raj
  0 siblings, 2 replies; 9+ messages in thread
From: Gary Thomas @ 2016-05-19  3:16 UTC (permalink / raw)
  To: openembedded-core

On 2016-05-18 22:07, Khem Raj wrote:
> On Wed, May 18, 2016 at 2:03 AM, Robert Yang <liezhi.yang@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@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?

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.

>
>>
>>   # binutils 2.25.1 has a bug on aarch64:
>>   # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
>> --
>> 2.7.4
>>
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core


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


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-19  3:16     ` Gary Thomas
@ 2016-05-19  3:35       ` Tristan Van Berkom
  2016-05-19  5:28       ` Khem Raj
  1 sibling, 0 replies; 9+ messages in thread
From: Tristan Van Berkom @ 2016-05-19  3:35 UTC (permalink / raw)
  To: Gary Thomas, openembedded-core

On Thu, 2016-05-19 at 05:16 +0200, Gary Thomas wrote:
[...]
> Why do you think that changing the instruction set (to thumb2) would
> make the JIT work any better?
> 
> 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.

FWIW, I ran into this issue as well the first time I tried building
webkitgtk with a compiler tuned for armv7a.

I did not try many variations but was able to build with a machine
configuration with DEFAULTTUNE set to armv7ahf-neon (hard float with
neon simd).

This link seems to also provide some more information on what
configurations can be used to build webkitgtk on arm:
    http://patchwork.openembedded.org/patch/105081/

Cheers,
    -Tristan



^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-19  3:16     ` Gary Thomas
  2016-05-19  3:35       ` Tristan Van Berkom
@ 2016-05-19  5:28       ` Khem Raj
  2016-05-19  5:38         ` Robert Yang
  1 sibling, 1 reply; 9+ messages in thread
From: Khem Raj @ 2016-05-19  5:28 UTC (permalink / raw)
  To: Gary Thomas; +Cc: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 4114 bytes --]


> On May 18, 2016, at 8:16 PM, Gary Thomas <gary@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@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@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

> 
>> 
>>> 
>>>  # binutils 2.25.1 has a bug on aarch64:
>>>  # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
>>> --
>>> 2.7.4
>>> 
>>> --
>>> _______________________________________________
>>> Openembedded-core mailing list
>>> Openembedded-core@lists.openembedded.org
>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
> 
> 
> --
> ------------------------------------------------------------
> Gary Thomas                 |  Consulting for the
> MLB Associates              |    Embedded world
> ------------------------------------------------------------
> --
> _______________________________________________
> Openembedded-core mailing list
> Openembedded-core@lists.openembedded.org
> http://lists.openembedded.org/mailman/listinfo/openembedded-core


[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-19  5:28       ` Khem Raj
@ 2016-05-19  5:38         ` Robert Yang
  2016-05-19  5:42           ` Khem Raj
  0 siblings, 1 reply; 9+ messages in thread
From: Robert Yang @ 2016-05-19  5:38 UTC (permalink / raw)
  To: Khem Raj, Gary Thomas; +Cc: openembedded-core



On 05/19/2016 01:28 PM, Khem Raj wrote:
>
>> On May 18, 2016, at 8:16 PM, Gary Thomas <gary@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@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@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.

// Robert


>
>>
>>>
>>>>
>>>>   # binutils 2.25.1 has a bug on aarch64:
>>>>   # https://sourceware.org/bugzilla/show_bug.cgi?id=18430
>>>> --
>>>> 2.7.4
>>>>
>>>> --
>>>> _______________________________________________
>>>> Openembedded-core mailing list
>>>> Openembedded-core@lists.openembedded.org
>>>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>>
>>
>> --
>> ------------------------------------------------------------
>> Gary Thomas                 |  Consulting for the
>> MLB Associates              |    Embedded world
>> ------------------------------------------------------------
>> --
>> _______________________________________________
>> Openembedded-core mailing list
>> Openembedded-core@lists.openembedded.org
>> http://lists.openembedded.org/mailman/listinfo/openembedded-core
>
>
>


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-19  5:38         ` Robert Yang
@ 2016-05-19  5:42           ` Khem Raj
  2016-05-19  8:41             ` Gary Thomas
  0 siblings, 1 reply; 9+ messages in thread
From: Khem Raj @ 2016-05-19  5:42 UTC (permalink / raw)
  To: Robert Yang; +Cc: Gary Thomas, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 3754 bytes --]


> On May 18, 2016, at 10:38 PM, Robert Yang <liezhi.yang@windriver.com> wrote:
> 
> 
> 
> On 05/19/2016 01:28 PM, Khem Raj wrote:
>> 
>>> On May 18, 2016, at 8:16 PM, Gary Thomas <gary@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@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@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.

[-- Attachment #2: Message signed with OpenPGP using GPGMail --]
[-- Type: application/pgp-signature, Size: 211 bytes --]

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH 1/1] webkitgtk: turn off JIT on armv4 and armv7a
  2016-05-19  5:42           ` Khem Raj
@ 2016-05-19  8:41             ` Gary Thomas
  0 siblings, 0 replies; 9+ messages in thread
From: Gary Thomas @ 2016-05-19  8:41 UTC (permalink / raw)
  To: openembedded-core

On 2016-05-19 07:42, Khem Raj wrote:
>
>> On May 18, 2016, at 10:38 PM, Robert Yang <liezhi.yang@windriver.com> wrote:
>>
>>
>>
>> On 05/19/2016 01:28 PM, Khem Raj wrote:
>>>
>>>> On May 18, 2016, at 8:16 PM, Gary Thomas <gary@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@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@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
------------------------------------------------------------


^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-05-19  8:41 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-05-18  9:03 [PATCH 0/1 V2] webkitgtk: turn off JIT on armv4 and armv7a Robert Yang
2016-05-18  9:03 ` [PATCH 1/1] " Robert Yang
2016-05-18 20:07   ` Khem Raj
2016-05-19  3:16     ` Gary Thomas
2016-05-19  3:35       ` Tristan Van Berkom
2016-05-19  5:28       ` Khem Raj
2016-05-19  5:38         ` Robert Yang
2016-05-19  5:42           ` Khem Raj
2016-05-19  8:41             ` Gary Thomas

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox