<?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>159711</bug_id>
          
          <creation_ts>2016-07-13 04:01:49 -0700</creation_ts>
          <short_desc>64-bit alignment check isn&apos;t necessary in ARMAssembler::prepareExecutableCopy after r202214</short_desc>
          <delta_ts>2016-07-28 02:29:28 -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>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          <blocked>159408</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Csaba Osztrogonác">ossy</reporter>
          <assigned_to name="Csaba Osztrogonác">ossy</assigned_to>
          <cc>commit-queue</cc>
    
    <cc>fpizlo</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>ossy</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1210402</commentid>
    <comment_count>0</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-07-13 04:01:49 -0700</bug_when>
    <thetext>After r202214 this check is incorrect and causes crashes,
because the generated IC code isn&apos;t necessarily 64-bit sized.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1210403</commentid>
    <comment_count>1</comment_count>
      <attachid>283510</attachid>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-07-13 04:03:04 -0700</bug_when>
    <thetext>Created attachment 283510
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1210404</commentid>
    <comment_count>2</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-07-13 04:03:34 -0700</bug_when>
    <thetext>I&apos;m going to attach debug backtrace soon to show what is the problem here.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1210949</commentid>
    <comment_count>3</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-07-14 04:43:21 -0700</bug_when>
    <thetext>Program received signal SIGBUS, Bus error.
0xb27c42e8 in ?? ()
(gdb) bt
#0  0xb27c42e8 in ?? ()
#1  0xb6157554 in JSC::slow_path_enter (Cannot access memory at address 0xfffffffb
exec=0x0, pc=0xfffffffc) at ../../Source/JavaScriptCore/runtime/CommonSlowPaths.cpp:596
#2  0xbeffe8e8 in ?? ()


(gdb) disas 0xb27c42b8,+100
Dump of assembler code from 0xb27c42b8 to 0xb27c431c:
   0xb27c42b8:  movw    r6, #31776      ; 0x7c20
   0xb27c42bc:  movt    r6, #45594      ; 0xb21a
   0xb27c42c0:  cmp     r12, r6
   0xb27c42c4:  ldrne   r12, [pc, #16]  ; 0xb27c42dc &lt;====== load from constant pool
   0xb27c42c8:  bxne    r12
   0xb27c42cc:  ldr     r1, [r0, #20]
   0xb27c42d0:  ldr     r0, [r0, #16]
   0xb27c42d4:  b       0xb27c42e0 &lt;===== jump after the constant pool
   0xb27c42d8:  bkpt    0xffff
   0xb27c42dc:  rsbslt  r5, r12, #84, 24        ; 0x5400
   0xb27c42e0:  nop                     ; (mov r0, r0)
   0xb27c42e4:  nop                     ; (mov r0, r0)
=&gt; 0xb27c42e8:  bkpt    0x0000 &lt;======= CRASH! We don&apos;t need this barrier.
   0xb27c42ec:  str     r0, [r6]
   0xb27c42f0:  ldr     r6, [pc, #1660] ; 0xb27c4974
   0xb27c42f4:  str     r1, [r6]
   0xb27c42f8:  str     r0, [r11, #-168]        ; 0xa8
   0xb27c42fc:  str     r1, [r11, #-164]        ; 0xa4
   0xb27c4300:  mov     r2, #0
   0xb27c4304:  mvn     r3, #0
   0xb27c4308:  ldr     r0, [r11, #-168]        ; 0xa8
   0xb27c430c:  ldr     r1, [r11, #-164]        ; 0xa4
   0xb27c4310:  cmn     r1, #5
   0xb27c4314:  bne     0xb27c5cd0
   0xb27c4318:  cmn     r3, #1
End of assembler dump.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1211307</commentid>
    <comment_count>4</comment_count>
      <attachid>283510</attachid>
    <who name="Saam Barati">saam</who>
    <bug_when>2016-07-14 18:52:59 -0700</bug_when>
    <thetext>Comment on attachment 283510
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=283510&amp;action=review

&gt; Source/JavaScriptCore/assembler/ARMAssembler.cpp:-399
&gt; -    if (!m_buffer.isAligned(8))
&gt; -        bkpt(0);

Will we need this when we&apos;re not emitting code over old code?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1211406</commentid>
    <comment_count>5</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-07-15 07:07:47 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; Comment on attachment 283510 [details]
&gt; Patch
&gt; 
&gt; View in context:
&gt; https://bugs.webkit.org/attachment.cgi?id=283510&amp;action=review
&gt; 
&gt; &gt; Source/JavaScriptCore/assembler/ARMAssembler.cpp:-399
&gt; &gt; -    if (!m_buffer.isAligned(8))
&gt; &gt; -        bkpt(0);
&gt; 
&gt; Will we need this when we&apos;re not emitting code over old code?

Practically we don&apos;t need this at all, it is placed to crash 
in case of implementation bug instead of undefined or bad behaviour.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214877</commentid>
    <comment_count>6</comment_count>
    <who name="Csaba Osztrogonác">ossy</who>
    <bug_when>2016-07-27 07:00:59 -0700</bug_when>
    <thetext>ping?</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1214898</commentid>
    <comment_count>7</comment_count>
      <attachid>283510</attachid>
    <who name="Mark Lam">mark.lam</who>
    <bug_when>2016-07-27 08:10:45 -0700</bug_when>
    <thetext>Comment on attachment 283510
Patch

r=me</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215181</commentid>
    <comment_count>8</comment_count>
      <attachid>283510</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-07-28 02:29:24 -0700</bug_when>
    <thetext>Comment on attachment 283510
Patch

Clearing flags on attachment: 283510

Committed r203816: &lt;http://trac.webkit.org/changeset/203816&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1215182</commentid>
    <comment_count>9</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-07-28 02:29:28 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>283510</attachid>
            <date>2016-07-13 04:03:04 -0700</date>
            <delta_ts>2016-07-28 02:29:24 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-159711-20160713130219.patch</filename>
            <type>text/plain</type>
            <size>1477</size>
            <attacher name="Csaba Osztrogonác">ossy</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAzMTU2CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA2
NDljOGVmNmUxOTZkNTViOTgxZmExMjNmYWQ3ODYzMTllZjUxZjYyLi5hZDRlNWUwN2QxNDFlZjRi
NDMwNTNmZDk2MGZlZDlkMjg0MTA2NjdmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwxNSBAQAogMjAxNi0wNy0xMyAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJraXQu
b3JnPgogCisgICAgICAgIDY0LWJpdCBhbGlnbm1lbnQgY2hlY2sgaXNuJ3QgbmVjZXNzYXJ5IGlu
IEFSTUFzc2VtYmxlcjo6cHJlcGFyZUV4ZWN1dGFibGVDb3B5IGFmdGVyIHIyMDIyMTQKKyAgICAg
ICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1OTcxMQorCisgICAg
ICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAgICAgICogYXNzZW1ibGVyL0FS
TUFzc2VtYmxlci5jcHA6CisgICAgICAgIChKU0M6OkFSTUFzc2VtYmxlcjo6cHJlcGFyZUV4ZWN1
dGFibGVDb3B5KToKKworMjAxNi0wNy0xMyAgQ3NhYmEgT3N6dHJvZ29uw6FjICA8b3NzeUB3ZWJr
aXQub3JnPgorCiAgICAgICAgIENMb29wIGJ1aWxkZml4IGFmdGVyIHIyMDMxNDIKICAgICAgICAg
aHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dpP2lkPTE1OTcwNgogCmRpZmYgLS1n
aXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0FSTUFzc2VtYmxlci5jcHAgYi9T
b3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL0FSTUFzc2VtYmxlci5jcHAKaW5kZXggZjkx
MDBkNGM5YmMxMzY0OTVmNTUxMDJhMjRiNTJjYzA0NGYwYjgyNC4uNTUyZjM3ZjY4MDk0NjA3ZDAw
ZmQyMmNmMzM2YTQwOWJhYzcwYTJmNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci9BUk1Bc3NlbWJsZXIuY3BwCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9h
c3NlbWJsZXIvQVJNQXNzZW1ibGVyLmNwcApAQCAtMzk1LDggKzM5NSw2IEBAIHZvaWQgQVJNQXNz
ZW1ibGVyOjpwcmVwYXJlRXhlY3V0YWJsZUNvcHkodm9pZCogdG8pCiB7CiAgICAgLy8gNjQtYml0
IGFsaWdubWVudCBpcyByZXF1aXJlZCBmb3IgbmV4dCBjb25zdGFudCBwb29sIGFuZCBKSVQgY29k
ZSBhcyB3ZWxsCiAgICAgbV9idWZmZXIuZmx1c2hXaXRob3V0QmFycmllcih0cnVlKTsKLSAgICBp
ZiAoIW1fYnVmZmVyLmlzQWxpZ25lZCg4KSkKLSAgICAgICAgYmtwdCgwKTsKIAogICAgIGNoYXIq
IGRhdGEgPSByZWludGVycHJldF9jYXN0PGNoYXIqPihtX2J1ZmZlci5kYXRhKCkpOwogICAgIHB0
cmRpZmZfdCBkZWx0YSA9IHJlaW50ZXJwcmV0X2Nhc3Q8Y2hhcio+KHRvKSAtIGRhdGE7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>