<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://bugs.webkit.org/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4.1"
          urlbase="https://bugs.webkit.org/"
          
          maintainer="admin@webkit.org"
>

    <bug>
          <bug_id>157340</bug_id>
          
          <creation_ts>2016-05-04 02:58:23 -0700</creation_ts>
          <short_desc>REGRESSION(r200383): It made all JSC stress tests crash on ARMv7 Thumb2</short_desc>
          <delta_ts>2016-05-04 13:04:10 -0700</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>WebKit</product>
          <component>JavaScriptCore</component>
          <version>Other</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>DUPLICATE</resolution>
          <dup_id>157045</dup_id>
          <see_also>https://bugs.webkit.org/show_bug.cgi?id=157338</see_also>
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P1</priority>
          <bug_severity>Blocker</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>108645</blocked>
    
    <blocked>157045</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Csaba Osztrogonác">ossy</assigned_to>
          <cc>cgarcia</cc>
    
    <cc>clopez</cc>
    
    <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>gustavo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ossy</cc>
    
    <cc>saam</cc>
    
    <cc>zan</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1190016</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-05-04 02:58:23 -0700</bug_when>
    <thetext>JSCOnly:
---------
- before: https://build.webkit.org/builders/JSCOnly%20Linux%20ARMv7%20Thumb2%20Release/builds/468
- after: https://build.webkit.org/builders/JSCOnly%20Linux%20ARMv7%20Thumb2%20Release/builds/469

GTK:
-----
- before: https://build.webkit.org/builders/GTK%20Linux%20ARM%20Release/builds/11044
- after: https://build.webkit.org/builders/GTK%20Linux%20ARM%20Release/builds/11045

no problem on AArch64, ARMv7 ARM instructions set, x86 32 bit</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190020</commentid>
    <comment_count>1</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-05-04 03:14:21 -0700</bug_when>
    <thetext>Here is a relase backtrace:

$ ./jsc
Illegal instruction (core dumped)
linaro@linaro-alip:/ramdisk/thumb2/jsc-stress-results/.vm/JavaScriptCore.framework/Resources$ gdb ./jsc core
GNU gdb (Ubuntu 7.7-0ubuntu3) 7.7
Copyright (C) 2014 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later &lt;http://gnu.org/licenses/gpl.html&gt;
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type &quot;show copying&quot;
and &quot;show warranty&quot; for details.
This GDB was configured as &quot;arm-linux-gnueabihf&quot;.
Type &quot;show configuration&quot; for configuration details.
For bug reporting instructions, please see:
&lt;http://www.gnu.org/software/gdb/bugs/&gt;.
Find the GDB manual and other documentation resources online at:
&lt;http://www.gnu.org/software/gdb/documentation/&gt;.
For help, type &quot;help&quot;.
Type &quot;apropos word&quot; to search for commands related to &quot;word&quot;...
Reading symbols from ./jsc...(no debugging symbols found)...done.
[New LWP 23648]
[New LWP 23655]
[Thread debugging using libthread_db enabled]
Using host libthread_db library &quot;/lib/arm-linux-gnueabihf/libthread_db.so.1&quot;.
Core was generated by `./jsc&apos;.
Program terminated with signal SIGILL, Illegal instruction.
#0  0xb6cd1b7c in JSC::JSFunction* JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::callFunc&lt;JSC::JSGlobalObject::init(JSC::VM&amp;)::{lambda(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)#5}&gt;(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;) ()
   from /home/webkitbuildbot/slaves/jsconly-thumb2/buildslave/jsconly-linux-armv7-thumb2-release/build/WebKitBuild/Release/lib/libJavaScriptCore.so.1
(gdb) bt
#0  0xb6cd1b7c in JSC::JSFunction* JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::callFunc&lt;JSC::JSGlobalObject::init(JSC::VM&amp;)::{lambda(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)#5}&gt;(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;) ()
   from /home/webkitbuildbot/slaves/jsconly-thumb2/buildslave/jsconly-linux-armv7-thumb2-release/build/WebKitBuild/Release/lib/libJavaScriptCore.so.1
#1  0xb6c5080e in JSC::ArrayPrototype::finishCreation(JSC::VM&amp;, JSC::JSGlobalObject*) ()
   from /home/webkitbuildbot/slaves/jsconly-thumb2/buildslave/jsconly-linux-armv7-thumb2-release/build/WebKitBuild/Release/lib/libJavaScriptCore.so.1
#2  0x7e78c0b6 in ?? ()
Backtrace stopped: previous frame identical to this frame (corrupt stack?)


disassembly:

...

   0xb6cd1b70 &lt;JSC::getTemplateObject(JSC::ExecState*)+28&gt;: mvnne.w r1, #4
   0xb6cd1b74 &lt;JSC::getTemplateObject(JSC::ExecState*)+32&gt;: mvneq.w r1, #5
   0xb6cd1b78 &lt;JSC::getTemplateObject(JSC::ExecState*)+36&gt;: pop     {r3, pc}
   0xb6cd1b7a:  nop
=&gt; 0xb6cd1b7c &lt;JSC::JSFunction* JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::callFunc&lt;JSC::JSGlobalObject::init(JSC::VM&amp;)::{lambda(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)#5}&gt;(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)+0&gt;:  str.w   r4, [sp, #-20]!
   0xb6cd1b80 &lt;JSC::JSFunction* JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::callFunc&lt;JSC::JSGlobalObject::init(JSC::VM&amp;)::{lambda(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)#5}&gt;(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)+4&gt;:  strd    r5, r6, [sp, #4]
   0xb6cd1b84 &lt;JSC::JSFunction* JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::callFunc&lt;JSC::JSGlobalObject::init(JSC::VM&amp;)::{lambda(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)#5}&gt;(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)+8&gt;:  ldr     r5, [pc, #132]        ; (0xb6cd1c0c &lt;JSC::JSFunction* JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::callFunc&lt;JSC::JSGlobalObject::init(JSC::VM&amp;)::{lambda(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)#5}&gt;(JSC::LazyProperty&lt;JSC::JSGlobalObject, JSC::JSFunction&gt;::Initializer const&amp;)+144&gt;)

...</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190021</commentid>
    <comment_count>2</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-05-04 03:24:38 -0700</bug_when>
    <thetext>What do you think, is it a bug in r200383 or a GCC bug?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190022</commentid>
    <comment_count>3</comment_count>
    <who name="Zan Dobersek">zan</who>
    <bug_when>2016-05-04 03:29:10 -0700</bug_when>
    <thetext>Might have also broken 64-bit debug builds.
https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Debug%20%28Tests%29/builds/8787
https://build.webkit.org/builders/GTK%20Linux%2064-bit%20Debug%20%28Tests%29/builds/8788</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190024</commentid>
    <comment_count>4</comment_count>
    <who name="Carlos Garcia Campos">cgarcia</who>
    <bug_when>2016-05-04 03:32:54 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; What do you think, is it a bug in r200383 or a GCC bug?

Looks like a GCC bug in the case of GTK+ debug bot.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190028</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-05-04 04:05:44 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; What do you think, is it a bug in r200383 or a GCC bug?

It is definitely caused by r200383, not a GCC bug, see
https://bugs.webkit.org/show_bug.cgi?id=157045#c61</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190045</commentid>
    <comment_count>6</comment_count>
      <attachid>278081</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-05-04 05:24:30 -0700</bug_when>
    <thetext>Created attachment 278081
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190177</commentid>
    <comment_count>7</comment_count>
      <attachid>278081</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-05-04 13:03:58 -0700</bug_when>
    <thetext>Comment on attachment 278081
Patch

I think this would have almost worked, but I believe that it&apos;s too crazy to rely on the alignment of function pointers.  I&apos;m going to land a version that doesn&apos;t rely on the alignment or bit arrangement of function pointers at all.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1190178</commentid>
    <comment_count>8</comment_count>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2016-05-04 13:04:10 -0700</bug_when>
    <thetext>

*** This bug has been marked as a duplicate of bug 157045 ***</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>278081</attachid>
            <date>2016-05-04 05:24:30 -0700</date>
            <delta_ts>2016-05-04 13:03:58 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-157340-20160504052509.patch</filename>
            <type>text/plain</type>
            <size>1560</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAwNDEzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBh
OTdmNTUyYzA2NDdhY2JjN2FkMDg0NDQ1NTM2MjBiODZiNDhiZTQzLi40YTgxMmU0MzZlNmEwZTYx
YWNmNWU2YmE0OWNhMDUzNzc5ZmE1YjkxIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxMyBAQAorMjAxNi0wNS0wNCAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgorCisgICAgICAgIFJFR1JFU1NJT04ocjIwMDM4Myk6IEl0IG1hZGUgYWxsIEpTQyBzdHJl
c3MgdGVzdHMgY3Jhc2ggb24gQVJNdjcgVGh1bWIyCisgICAgICAgIGh0dHBzOi8vYnVncy53ZWJr
aXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTczNDAKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JP
RFkgKE9PUFMhKS4KKworICAgICAgICAqIHJ1bnRpbWUvTGF6eVByb3BlcnR5Lmg6CisgICAgICAg
IChKU0M6OkxhenlQcm9wZXJ0eTo6Z2V0KToKKwogMjAxNi0wNS0wNCAgWXVzdWtlIFN1enVraSAg
PHV0YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBBc3NlcnRpb24gZmFpbHVyZSBmb3Ig
c3VwZXIoKSBjYWxsIGluIGRpcmVjdCBldmFsIGluIG1ldGhvZCBmdW5jdGlvbgpkaWZmIC0tZ2l0
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvTGF6eVByb3BlcnR5LmggYi9Tb3VyY2Uv
SmF2YVNjcmlwdENvcmUvcnVudGltZS9MYXp5UHJvcGVydHkuaAppbmRleCAxZWNhNGU4NTNkODg1
OWIxNjljZGUwYTBkZmVjNTY1NGUwNmNiYTkyLi44NzhjNjhhNTcwODE2ZjJiNjJkOTk3ZWFhZjdi
YWZiZjJjOTdiNDE1IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9M
YXp5UHJvcGVydHkuaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9MYXp5UHJv
cGVydHkuaApAQCAtNzcsNyArNzcsMTEgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgQVNTRVJU
KCFpc0NvbXBpbGF0aW9uVGhyZWFkKCkpOwogICAgICAgICBpZiAoVU5MSUtFTFkobV9wb2ludGVy
ICYgbGF6eVRhZykpIHsKKyNpZiBDUFUoQVJNX1RIVU1CMikKKyAgICAgICAgICAgIGF1dG8gY2Fs
bEZ1bmMgPSBiaXR3aXNlX2Nhc3Q8RWxlbWVudFR5cGUqICgqKShjb25zdCBJbml0aWFsaXplciYp
PihtX3BvaW50ZXIpOworI2Vsc2UKICAgICAgICAgICAgIGF1dG8gY2FsbEZ1bmMgPSBiaXR3aXNl
X2Nhc3Q8RWxlbWVudFR5cGUqICgqKShjb25zdCBJbml0aWFsaXplciYpPihtX3BvaW50ZXIgJiB+
bGF6eVRhZyk7CisjZW5kaWYKICAgICAgICAgICAgIHJldHVybiBjYWxsRnVuYyhJbml0aWFsaXpl
cihjb25zdF9jYXN0PE93bmVyVHlwZSo+KG93bmVyKSwgKmNvbnN0X2Nhc3Q8TGF6eVByb3BlcnR5
Kj4odGhpcykpKTsKICAgICAgICAgfQogICAgICAgICByZXR1cm4gYml0d2lzZV9jYXN0PEVsZW1l
bnRUeXBlKj4obV9wb2ludGVyKTsK
</data>

          </attachment>
      

    </bug>

</bugzilla>