<?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>79271</bug_id>
          
          <creation_ts>2012-02-22 13:06:45 -0800</creation_ts>
          <short_desc>Allocations from CopiedBlocks should always be 8-byte aligned</short_desc>
          <delta_ts>2012-02-22 14:27:51 -0800</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>528+ (Nightly build)</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>79199</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Mark Hahnenberg">mhahnenberg</reporter>
          <assigned_to name="Mark Hahnenberg">mhahnenberg</assigned_to>
          <cc>fpizlo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>562296</commentid>
    <comment_count>0</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-02-22 13:06:45 -0800</bug_when>
    <thetext>Currently, we only assert that allocations are pointer aligned. Since we don&apos;t want JSValues to potentially span cache lines, we need to make sure that all backing stores for storing JSValues are always 8-byte aligned.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562354</commentid>
    <comment_count>1</comment_count>
      <attachid>128282</attachid>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-02-22 13:55:15 -0800</bug_when>
    <thetext>Created attachment 128282
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562367</commentid>
    <comment_count>2</comment_count>
      <attachid>128282</attachid>
    <who name="Geoffrey Garen">ggaren</who>
    <bug_when>2012-02-22 14:06:45 -0800</bug_when>
    <thetext>Comment on attachment 128282
Patch

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

r=me

&gt; Source/JavaScriptCore/wtf/StdLibExtras.h:120
&gt; +    ASSERT(sizeof(unsigned long long) == 8);
&gt; +    return !((unsigned long long)(p) &amp; (sizeof(unsigned long long) - 1));

The best data type for the cast is uintptr_t.

There&apos;s no reason to use sizeof(unsigned long long). You should just use 7 and 8, which is what your function guarantees, or sizeof(JSValue), since that&apos;s what you&apos;re worried about, or sizeof(double), which you should also be worried about.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>562390</commentid>
    <comment_count>3</comment_count>
    <who name="Mark Hahnenberg">mhahnenberg</who>
    <bug_when>2012-02-22 14:27:51 -0800</bug_when>
    <thetext>Committed r108553: &lt;http://trac.webkit.org/changeset/108553&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>128282</attachid>
            <date>2012-02-22 13:55:15 -0800</date>
            <delta_ts>2012-02-22 14:06:43 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-79271-20120222135514.patch</filename>
            <type>text/plain</type>
            <size>6435</size>
            <attacher name="Mark Hahnenberg">mhahnenberg</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTA4MzgzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBi
MGY0ZTBhMjcyYjM5MzQ4MzMxYTRkMTQxYTQ2YzljM2NlNThiMTJkLi44MTZlN2VjYjQ2ZDVmMDIz
YmMwYzA0OGZiY2NlNTZiMDE0YTk2MGZmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyOCBAQAorMjAxMi0wMi0yMiAgTWFyayBIYWhuZW5iZXJnICA8bWhhaG5lbmJlcmdAYXBw
bGUuY29tPgorCisgICAgICAgIEFsbG9jYXRpb25zIGZyb20gQ29waWVkQmxvY2tzIHNob3VsZCBh
bHdheXMgYmUgOC1ieXRlIGFsaWduZWQKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTc5MjcxCisKKyAgICAgICAgUmV2aWV3ZWQgYnkgTk9CT0RZIChPT1BT
ISkuCisKKyAgICAgICAgKiBoZWFwL0NvcGllZEFsbG9jYXRvci5oOgorICAgICAgICAoSlNDOjpD
b3BpZWRBbGxvY2F0b3I6OmFsbG9jYXRlKToKKyAgICAgICAgKiBoZWFwL0NvcGllZEJsb2NrLmg6
IENoYW5nZWQgdG8gYWRkIHBhZGRpbmcgc28gdGhhdCB0aGUgc3RhcnQgb2YgdGhlIHBheWxvYWQg
aXMgYWx3YXlzIAorICAgICAgICBndWFyYW50ZWVkIHRvIGJlIDggYnl0ZSBhbGlnbmVkIG9uIGJv
dGggNjQtIGFuZCAzMi1iaXQgcGxhdGZvcm1zLgorICAgICAgICAoQ29waWVkQmxvY2spOgorICAg
ICAgICAqIGhlYXAvQ29waWVkU3BhY2UuY3BwOiBDaGFuZ2VkIGFsbCBhc3NlcnRpb25zIG9mIGlz
UG9pbnRlckFsaWduZWQgdG8gaXM4Qnl0ZUFsaWduZWQuCisgICAgICAgIChKU0M6OkNvcGllZFNw
YWNlOjp0cnlBbGxvY2F0ZU92ZXJzaXplKToKKyAgICAgICAgKEpTQzo6Q29waWVkU3BhY2U6Omdl
dEZyZXNoQmxvY2spOgorICAgICAgICAqIGhlYXAvQ29waWVkU3BhY2VJbmxpbmVNZXRob2RzLmg6
CisgICAgICAgIChKU0M6OkNvcGllZFNwYWNlOjphbGxvY2F0ZUZyb21CbG9jayk6CisgICAgICAg
ICogcnVudGltZS9KU0FycmF5Lmg6CisgICAgICAgIChBcnJheVN0b3JhZ2UpOiBBZGRlZCBwYWRk
aW5nIGZvciBBcnJheVN0b3JhZ2UgdG8gbWFrZSBzdXJlIHRoYXQgaXQgaXMgYWx3YXlzIDggYnl0
ZSAKKyAgICAgICAgYWxpZ25lZCBvbiBib3RoIDY0LSBhbmQgMzItYml0IHBsYXRmb3Jtcy4KKyAg
ICAgICAgKiB3dGYvU3RkTGliRXh0cmFzLmg6CisgICAgICAgIChXVEY6OmlzOEJ5dGVBbGlnbmVk
KTogQWRkZWQgbmV3IHV0aWxpdHkgZnVuY3Rpb24gdGhhdCBmdW5jdGlvbnMgc2ltaWxhcmx5IHRv
IHRoZSAKKyAgICAgICAgd2F5IGlzUG9pbnRlckFsaWduZWQgZG9lcywgYnV0IGl0IGp1c3QgYWx3
YXlzIGNoZWNrcyBmb3IgOCBieXRlIGFsaWdubWVudC4KKyAgICAgICAgKFdURik6CisKIDIwMTIt
MDItMjEgIFJvbGFuZCBUYWthY3MgIDx0YWthY3Mucm9sYW5kQHN0dWQudS1zemVnZWQuaHU+CiAK
ICAgICAgICAgVW5uZWNlc3NhcnkgcHJlcHJvY2Vzc29yIG1hY3JvcyBpbiBNYWluVGhyZWFkLmgv
Y3BwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db3BpZWRBbGxvY2F0
b3IuaCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0NvcGllZEFsbG9jYXRvci5oCmluZGV4
IDAxNGEwY2Y1ZTU4MTQ3ZTdlNzliZjg2YmMxNjY5MDBiYzE2NmNjMjcuLmM1YmE1MGQ3OGQ0YzEy
NzExNTljNzJhNDg0MWU2NzQwYzc2ZDdiZWUgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0
Q29yZS9oZWFwL0NvcGllZEFsbG9jYXRvci5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0NvcGllZEFsbG9jYXRvci5oCkBAIC01NywxMCArNTcsMTEgQEAgaW5saW5lIENvcGllZEFs
bG9jYXRvcjo6Q29waWVkQWxsb2NhdG9yKCkKIGlubGluZSB2b2lkKiBDb3BpZWRBbGxvY2F0b3I6
OmFsbG9jYXRlKHNpemVfdCBieXRlcykKIHsKICAgICBBU1NFUlQobV9jdXJyZW50T2Zmc2V0KTsK
KyAgICBBU1NFUlQoaXM4Qnl0ZUFsaWduZWQocmVpbnRlcnByZXRfY2FzdDx2b2lkKj4oYnl0ZXMp
KSk7CiAgICAgQVNTRVJUKGZpdHNJbkN1cnJlbnRCbG9jayhieXRlcykpOwogICAgIHZvaWQqIHB0
ciA9IHN0YXRpY19jYXN0PHZvaWQqPihtX2N1cnJlbnRPZmZzZXQpOwogICAgIG1fY3VycmVudE9m
ZnNldCArPSBieXRlczsKLSAgICBBU1NFUlQoaXNQb2ludGVyQWxpZ25lZChwdHIpKTsKKyAgICBB
U1NFUlQoaXM4Qnl0ZUFsaWduZWQocHRyKSk7CiAgICAgcmV0dXJuIHB0cjsKIH0KIApkaWZmIC0t
Z2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkQmxvY2suaCBiL1NvdXJjZS9K
YXZhU2NyaXB0Q29yZS9oZWFwL0NvcGllZEJsb2NrLmgKaW5kZXggMzYyMDg2YjMxM2RkN2ZhYzUz
N2Y4MWI0OTVhOWUyY2I4OTA2YTA2Yi4uNTE4MzMwNzBkNWNlMjRmNzk1ZTA2ZThjZGI2YTliYWUw
NGE3Yzk4MCAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkQmxv
Y2suaAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db3BpZWRCbG9jay5oCkBAIC00
Niw2ICs0Niw3IEBAIHB1YmxpYzoKIHByaXZhdGU6CiAgICAgdm9pZCogbV9vZmZzZXQ7CiAgICAg
dWludHB0cl90IG1faXNQaW5uZWQ7CisgICAgdWludHB0cl90IG1fcGFkZGluZzsKICAgICBjaGFy
IG1fcGF5bG9hZFsxXTsKIH07CiAKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9o
ZWFwL0NvcGllZFNwYWNlLmNwcCBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0NvcGllZFNw
YWNlLmNwcAppbmRleCA1MDg2NmMyNTg1N2ViNWJkY2Y4ZjgyNWVhZDlmZmMzMWJlMmRiMjU1Li4z
MzEwZDJjNTg0ZTNiN2Y4MTU1OWZjNTgwMThjOGEwMjRjNGJkYzA3IDEwMDY0NAotLS0gYS9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvaGVhcC9Db3BpZWRTcGFjZS5jcHAKKysrIGIvU291cmNlL0phdmFT
Y3JpcHRDb3JlL2hlYXAvQ29waWVkU3BhY2UuY3BwCkBAIC03OSw3ICs3OSw3IEBAIENoZWNrZWRC
b29sZWFuIENvcGllZFNwYWNlOjp0cnlBbGxvY2F0ZU92ZXJzaXplKHNpemVfdCBieXRlcywgdm9p
ZCoqIG91dFB0cikKICAgICB9CiAgICAgQ29waWVkQmxvY2sqIGJsb2NrID0gbmV3IChOb3ROdWxs
LCBhbGxvY2F0aW9uLmJhc2UoKSkgQ29waWVkQmxvY2soYWxsb2NhdGlvbik7CiAgICAgbV9vdmVy
c2l6ZUJsb2Nrcy5wdXNoKGJsb2NrKTsKLSAgICBBU1NFUlQoaXNQb2ludGVyQWxpZ25lZChibG9j
ay0+bV9vZmZzZXQpKTsKKyAgICBBU1NFUlQoaXM4Qnl0ZUFsaWduZWQoYmxvY2stPm1fb2Zmc2V0
KSk7CiAKICAgICBtX292ZXJzaXplRmlsdGVyLmFkZChyZWludGVycHJldF9jYXN0PEJpdHM+KGJs
b2NrKSk7CiAgICAgCkBAIC0yNTYsNyArMjU2LDcgQEAgQ2hlY2tlZEJvb2xlYW4gQ29waWVkU3Bh
Y2U6OmdldEZyZXNoQmxvY2soQWxsb2NhdGlvbkVmZm9ydCBhbGxvY2F0aW9uRWZmb3J0LCBDb3AK
ICAgICAgICAgfQogICAgIH0KICAgICBBU1NFUlQoYmxvY2spOwotICAgIEFTU0VSVChpc1BvaW50
ZXJBbGlnbmVkKGJsb2NrLT5tX29mZnNldCkpOworICAgIEFTU0VSVChpczhCeXRlQWxpZ25lZChi
bG9jay0+bV9vZmZzZXQpKTsKICAgICAqb3V0QmxvY2sgPSBibG9jazsKICAgICByZXR1cm4gdHJ1
ZTsKIH0KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9oZWFwL0NvcGllZFNwYWNl
SW5saW5lTWV0aG9kcy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkU3BhY2VJ
bmxpbmVNZXRob2RzLmgKaW5kZXggNjU0MWRkMzIwMGFjYmY1NWQ1MmY4NjcwOGE1NmEyYWJkODJk
OTJhMS4uOWExZjYzY2VjNDM4YTNkMGNjNTg0OTA2MDkzMmY2ZGI3N2RkNzc3ZSAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkU3BhY2VJbmxpbmVNZXRob2RzLmgK
KysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2hlYXAvQ29waWVkU3BhY2VJbmxpbmVNZXRob2Rz
LmgKQEAgLTE0OCwxNCArMTQ4LDE0IEBAIGlubGluZSB2b2lkKiBDb3BpZWRTcGFjZTo6YWxsb2Nh
dGVGcm9tQmxvY2soQ29waWVkQmxvY2sqIGJsb2NrLCBzaXplX3QgYnl0ZXMpCiB7CiAgICAgQVNT
RVJUKCFpc092ZXJzaXplKGJ5dGVzKSk7CiAgICAgQVNTRVJUKGZpdHNJbkJsb2NrKGJsb2NrLCBi
eXRlcykpOwotICAgIEFTU0VSVChpc1BvaW50ZXJBbGlnbmVkKGJsb2NrLT5tX29mZnNldCkpOwor
ICAgIEFTU0VSVChpczhCeXRlQWxpZ25lZChibG9jay0+bV9vZmZzZXQpKTsKICAgICAKICAgICB2
b2lkKiBwdHIgPSBibG9jay0+bV9vZmZzZXQ7CiAgICAgQVNTRVJUKGJsb2NrLT5tX29mZnNldCA+
PSBibG9jay0+bV9wYXlsb2FkICYmIGJsb2NrLT5tX29mZnNldCA8IHJlaW50ZXJwcmV0X2Nhc3Q8
Y2hhcio+KGJsb2NrKSArIEhlYXBCbG9jazo6c19ibG9ja1NpemUpOwogICAgIGJsb2NrLT5tX29m
ZnNldCA9IHN0YXRpY19jYXN0PHZvaWQqPigoc3RhdGljX2Nhc3Q8Y2hhcio+KHB0cikgKyBieXRl
cykpOwogICAgIEFTU0VSVChibG9jay0+bV9vZmZzZXQgPj0gYmxvY2stPm1fcGF5bG9hZCAmJiBi
bG9jay0+bV9vZmZzZXQgPCByZWludGVycHJldF9jYXN0PGNoYXIqPihibG9jaykgKyBIZWFwQmxv
Y2s6OnNfYmxvY2tTaXplKTsKIAotICAgIEFTU0VSVChpc1BvaW50ZXJBbGlnbmVkKHB0cikpOwor
ICAgIEFTU0VSVChpczhCeXRlQWxpZ25lZChwdHIpKTsKICAgICByZXR1cm4gcHRyOwogfQogCmRp
ZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmggYi9Tb3Vy
Y2UvSmF2YVNjcmlwdENvcmUvcnVudGltZS9KU0FycmF5LmgKaW5kZXggZGY3NTA4NDE3ZDgwMmI4
YzAzMjU3MDRkYzdiMmZjNmM2MTcxNmU1Yy4uNzlkYjJjOWE4YTFjYjM4YTVmZDRhOTFiYmU5ZDBl
ODRmNTc4ZGJiNSAxMDA2NDQKLS0tIGEvU291cmNlL0phdmFTY3JpcHRDb3JlL3J1bnRpbWUvSlNB
cnJheS5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9ydW50aW1lL0pTQXJyYXkuaApAQCAt
MTE2LDcgKzExNiw5IEBAIG5hbWVzcGFjZSBKU0MgewogICAgICAgICB1bnNpZ25lZCBtX251bVZh
bHVlc0luVmVjdG9yOwogICAgICAgICB2b2lkKiBtX2FsbG9jQmFzZTsgLy8gUG9pbnRlciB0byBi
YXNlIGFkZHJlc3MgcmV0dXJuZWQgYnkgbWFsbG9jKCkuICBLZWVwaW5nIHRoaXMgcG9pbnRlciBk
b2VzIGVsaW1pbmF0ZSBmYWxzZSBwb3NpdGl2ZXMgZnJvbSB0aGUgbGVhayBkZXRlY3Rvci4KICNp
ZiBDSEVDS19BUlJBWV9DT05TSVNURU5DWQotICAgICAgICBib29sIG1faW5Db21wYWN0SW5pdGlh
bGl6YXRpb247CisgICAgICAgIHVpbnRwdHJfdCBtX2luQ29tcGFjdEluaXRpYWxpemF0aW9uOyAv
LyBOZWVkcyB0byBiZSBhIHVpbnRwdHJfdCBmb3IgYWxpZ25tZW50IHB1cnBvc2VzLgorI2Vsc2UK
KyAgICAgICAgdWludHB0cl90IG1fcGFkZGluZzsKICNlbmRpZgogICAgICAgICBXcml0ZUJhcnJp
ZXI8VW5rbm93bj4gbV92ZWN0b3JbMV07CiAgICAgfTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZh
U2NyaXB0Q29yZS93dGYvU3RkTGliRXh0cmFzLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvd3Rm
L1N0ZExpYkV4dHJhcy5oCmluZGV4IGU0ZDdjOGZjMGZlZjY4NzdiNmJhYzhmYjRlMWRhYmI1MjA4
ODY0NzguLmU0OWZhM2ZiYmE2Mjc1YjNlZjM3M2IxMTQ2NWUwZTAwYzA4ZWVmNmMgMTAwNjQ0Ci0t
LSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS93dGYvU3RkTGliRXh0cmFzLmgKKysrIGIvU291cmNl
L0phdmFTY3JpcHRDb3JlL3d0Zi9TdGRMaWJFeHRyYXMuaApAQCAtMTE0LDYgKzExNCwxMiBAQCBp
bmxpbmUgYm9vbCBpc1BvaW50ZXJBbGlnbmVkKHZvaWQqIHApCiAgICAgcmV0dXJuICEoKGludHB0
cl90KShwKSAmIChzaXplb2YoY2hhciopIC0gMSkpOwogfQogCitpbmxpbmUgYm9vbCBpczhCeXRl
QWxpZ25lZCh2b2lkKiBwKQoreworICAgIEFTU0VSVChzaXplb2YodW5zaWduZWQgbG9uZyBsb25n
KSA9PSA4KTsKKyAgICByZXR1cm4gISgodW5zaWduZWQgbG9uZyBsb25nKShwKSAmIChzaXplb2Yo
dW5zaWduZWQgbG9uZyBsb25nKSAtIDEpKTsKK30KKwogLyoKICAqIEMrKydzIGlkZWEgb2YgYSBy
ZWludGVycHJldF9jYXN0IGxhY2tzIHN1ZmZpY2llbnQgY29qb25lcy4KICAqLwpAQCAtMjkyLDYg
KzI5OCw3IEBAIGlubGluZSB2b2lkKiBvcGVyYXRvciBuZXcoc2l6ZV90LCBOb3ROdWxsVGFnLCB2
b2lkKiBsb2NhdGlvbikKIAogdXNpbmcgV1RGOjpLQjsKIHVzaW5nIFdURjo6aXNQb2ludGVyQWxp
Z25lZDsKK3VzaW5nIFdURjo6aXM4Qnl0ZUFsaWduZWQ7CiB1c2luZyBXVEY6OmJpbmFyeVNlYXJj
aDsKIHVzaW5nIFdURjo6Yml0d2lzZV9jYXN0OwogdXNpbmcgV1RGOjpzYWZlQ2FzdDsK
</data>
<flag name="review"
          id="130613"
          type_id="1"
          status="+"
          setter="ggaren"
    />
          </attachment>
      

    </bug>

</bugzilla>