<?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>102248</bug_id>
          
          <creation_ts>2012-11-14 10:04:36 -0800</creation_ts>
          <short_desc>[CMake] Do not regenerate LLIntAssembly.h on every incremental build</short_desc>
          <delta_ts>2012-11-15 10:19:20 -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>Tools / Tests</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>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Thiago Marcos P. Santos">tmpsantos</reporter>
          <assigned_to name="Thiago Marcos P. Santos">tmpsantos</assigned_to>
          <cc>gyuyoung.kim</cc>
    
    <cc>laszlo.gombos</cc>
    
    <cc>rakuco</cc>
    
    <cc>webkit.review.bot</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>766998</commentid>
    <comment_count>0</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-11-14 10:04:36 -0800</bug_when>
    <thetext>SSIA.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>767023</commentid>
    <comment_count>1</comment_count>
      <attachid>174196</attachid>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-11-14 10:28:35 -0800</bug_when>
    <thetext>Created attachment 174196
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>767346</commentid>
    <comment_count>2</comment_count>
    <who name="Raphael Kubo da Costa (:rakuco)">rakuco</who>
    <bug_when>2012-11-14 15:02:47 -0800</bug_when>
    <thetext>FWIW, we&apos;ve worked together on this one so LGTM.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>767593</commentid>
    <comment_count>3</comment_count>
    <who name="Laszlo Gombos">laszlo.gombos</who>
    <bug_when>2012-11-14 18:51:54 -0800</bug_when>
    <thetext>Just an idea - would it be possible to remove LLIntOffsetsExtractor as a dependency for this generator ? - It seems that the Qt port is using that approach.

-DEPENDS LLIntOffsetsExtractor ${LLINT_ASM} ${OFFLINE_ASM}
+DEPENDS ${LLINT_ASM} ${OFFLINE_ASM}</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>767828</commentid>
    <comment_count>4</comment_count>
    <who name="Thiago Marcos P. Santos">tmpsantos</who>
    <bug_when>2012-11-15 01:53:29 -0800</bug_when>
    <thetext>(In reply to comment #3)
&gt; Just an idea - would it be possible to remove LLIntOffsetsExtractor as a dependency for this generator ? - It seems that the Qt port is using that approach.
&gt; 
&gt; -DEPENDS LLIntOffsetsExtractor ${LLINT_ASM} ${OFFLINE_ASM}
&gt; +DEPENDS ${LLINT_ASM} ${OFFLINE_ASM}

This is wrong. LLIntOffsetsExtractor is a real dependency.

The problem here is that sometimes the dependencies of LLIntOffsetsExtractor changes and it is rebuilt, but the exact same binary as before is generated (like when you add some code #ifdef&apos;ed for a platform other than yours). This is fine and happens all the time with regular source code.

asm.rb, which in this case acts like a compiler, does some checksum magic and LLIntAssembly.h is not regenerated if LLIntOffsetsExtractor checksum matches the older version. asm.rb breaks the build system, because in this case a dependency (LLIntOffsetsExtractor) will be always newer than the dependent (LLIntAssembly.h). I&apos;m fixing this by touching the LLIntAssembly.h.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768249</commentid>
    <comment_count>5</comment_count>
      <attachid>174196</attachid>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-15 10:19:15 -0800</bug_when>
    <thetext>Comment on attachment 174196
Patch

Clearing flags on attachment: 174196

Committed r134793: &lt;http://trac.webkit.org/changeset/134793&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>768250</commentid>
    <comment_count>6</comment_count>
    <who name="WebKit Review Bot">webkit.review.bot</who>
    <bug_when>2012-11-15 10:19:20 -0800</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>174196</attachid>
            <date>2012-11-14 10:28:35 -0800</date>
            <delta_ts>2012-11-15 10:19:15 -0800</delta_ts>
            <desc>Patch</desc>
            <filename>bug-102248-20121114203036.patch</filename>
            <type>text/plain</type>
            <size>2405</size>
            <attacher name="Thiago Marcos P. Santos">tmpsantos</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTM0NjIzCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
YjljOTE0MTMzMmZiOTA4ZjFkMTc1ZjcxYWY3OTgwNTIxNTg1ZmY3Li42MmI5ZmZkOTA0NThjNTI4
M2I2YTY2NWZiYTI1NjVmZTlmYjMzMThhIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxNSBAQAorMjAxMi0xMS0xNCAgVGhpYWdvIE1hcmNvcyBQLiBTYW50b3MgIDx0aGlhZ28u
c2FudG9zQGludGVsLmNvbT4KKworICAgICAgICBbQ01ha2VdIERvIG5vdCByZWdlbmVyYXRlIExM
SW50QXNzZW1ibHkuaCBvbiBldmVyeSBpbmNyZW1lbnRhbCBidWlsZAorICAgICAgICBodHRwczov
L2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/aWQ9MTAyMjQ4CisKKyAgICAgICAgUmV2aWV3
ZWQgYnkgTk9CT0RZIChPT1BTISkuCisKKyAgICAgICAgVXBkYXRlIExMSW50QXNzZW1ibHkuaCdz
IG10aW1lIGFmdGVyIHJ1bm5pbmcgYXNtLnJiIHRvIG1ha2UgdGhlIGJ1aWxkCisgICAgICAgIHN5
c3RlbSBkZXBlbmRlbmN5IHRyYWNraW5nIGNvbnNpc3RlbnQuCisKKyAgICAgICAgKiBDTWFrZUxp
c3RzLnR4dDoKKwogMjAxMi0xMS0xNCAgUGV0ZXIgR2FsICA8Z2FscGV0ZXJAaW5mLnUtc3plZ2Vk
Lmh1PgogCiAgICAgICAgIFtRdF1bQVJNXVJFR1JFU1NJT04ocjEzMzk4NSk6IEl0IGJyb2tlIHRo
ZSBidWlsZApkaWZmIC0tZ2l0IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0
IGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NNYWtlTGlzdHMudHh0CmluZGV4IGJmYWNhNTY3M2Nh
ODdhM2IwYzlhOWY5YzVhOWVmMGJkYmMzZGU0OGUuLjkxNGUwYzJmZGU0NjAyNDdlM2NjMjVlYjM0
N2Q2YTk0MjM2YzVlN2EgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DTWFrZUxp
c3RzLnR4dAorKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvQ01ha2VMaXN0cy50eHQKQEAgLTM1
NCwxMSArMzU0LDE4IEBAIElGIChFTkFCTEVfTExJTlQpCiAgICAgKQogICAgIFRBUkdFVF9MSU5L
X0xJQlJBUklFUyhMTEludE9mZnNldHNFeHRyYWN0b3IgJHtXVEZfTElCUkFSWV9OQU1FfSkKIAor
ICAgICMgVGhlIGJ1aWxkIHN5c3RlbSB3aWxsIGV4ZWN1dGUgYXNtLnJiIGV2ZXJ5IHRpbWUgTExJ
bnRPZmZzZXRzRXh0cmFjdG9yJ3MgbXRpbWUgaXMgbmV3ZXIgdGhhbgorICAgICMgTExJbnRBc3Nl
bWJseS5oJ3MgbXRpbWUuIFRoZSBwcm9ibGVtIHdlIGhhdmUgaGVyZSBpczogYXNtLnJiIGhhcyBz
b21lIGJ1aWx0LWluIG9wdGltaXphdGlvbgorICAgICMgdGhhdCBnZW5lcmF0ZXMgYSBjaGVja3N1
bSBvZiB0aGUgTExJbnRPZmZzZXRzRXh0cmFjdG9yIGJpbmFyeSwgaWYgdGhlIGNoZWNrc3VtIG9m
IHRoZSBuZXcKKyAgICAjIExMSW50T2Zmc2V0c0V4dHJhY3RvciBtYXRjaGVzLCBubyBvdXRwdXQg
aXMgZ2VuZXJhdGVkLiBUbyBtYWtlIHRoaXMgdGFyZ2V0IGNvbnNpc3RlbnQgYW5kIGF2b2lkCisg
ICAgIyBydW5uaW5nIHRoaXMgY29tbWFuZCBmb3IgZXZlcnkgYnVpbGQsIHdlIGFydGlmaWNpYWxs
eSB1cGRhdGUgTExJbnRBc3NlbWJseS5oJ3MgbXRpbWUgKHVzaW5nIHRvdWNoKQorICAgICMgYWZ0
ZXIgZXZlcnkgYXNtLnJiIHJ1bi4KICAgICBBRERfQ1VTVE9NX0NPTU1BTkQoCiAgICAgICAgIE9V
VFBVVCAke0RFUklWRURfU09VUkNFU19KQVZBU0NSSVBUQ09SRV9ESVJ9L0xMSW50QXNzZW1ibHku
aAogICAgICAgICBNQUlOX0RFUEVOREVOQ1kgJHtKQVZBU0NSSVBUQ09SRV9ESVJ9L29mZmxpbmVh
c20vYXNtLnJiCiAgICAgICAgIERFUEVORFMgTExJbnRPZmZzZXRzRXh0cmFjdG9yICR7TExJTlRf
QVNNfSAke09GRkxJTkVfQVNNfQogICAgICAgICBDT01NQU5EICR7UlVCWV9FWEVDVVRBQkxFfSAk
e0pBVkFTQ1JJUFRDT1JFX0RJUn0vb2ZmbGluZWFzbS9hc20ucmIgJHtKQVZBU0NSSVBUQ09SRV9E
SVJ9L2xsaW50L0xvd0xldmVsSW50ZXJwcmV0ZXIuYXNtICQ8VEFSR0VUX0ZJTEU6TExJbnRPZmZz
ZXRzRXh0cmFjdG9yPiAke0RFUklWRURfU09VUkNFU19KQVZBU0NSSVBUQ09SRV9ESVJ9L0xMSW50
QXNzZW1ibHkuaAorICAgICAgICBDT01NQU5EICR7Q01BS0VfQ09NTUFORH0gLUUgdG91Y2hfbm9j
cmVhdGUgJHtERVJJVkVEX1NPVVJDRVNfSkFWQVNDUklQVENPUkVfRElSfS9MTEludEFzc2VtYmx5
LmgKICAgICAgICAgVkVSQkFUSU0pCiAKICAgICAjIFRoZSBleHBsYW5hdGlvbiBmb3Igbm90IG1h
a2luZyBMTEludEFzc2VtYmx5LmggcGFydCBvZiB0aGUgT0JKRUNUX0RFUEVORFMgcHJvcGVydHkg
b2Ygc29tZSBvZgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>