<?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>136786</bug_id>
          
          <creation_ts>2014-09-12 11:20:06 -0700</creation_ts>
          <short_desc>Un-inline Element constructor</short_desc>
          <delta_ts>2014-09-13 16:21:40 -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>DOM</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="Chris Dumez">cdumez</reporter>
          <assigned_to name="Chris Dumez">cdumez</assigned_to>
          <cc>benjamin</cc>
    
    <cc>cmarcelo</cc>
    
    <cc>commit-queue</cc>
    
    <cc>darin</cc>
    
    <cc>esprehn+autocc</cc>
    
    <cc>kangil.han</cc>
    
    <cc>rniwa</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1034891</commentid>
    <comment_count>0</comment_count>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-09-12 11:20:06 -0700</bug_when>
    <thetext>Un-inline Element constructor as it is non-trivial and it does not seem to impact performance based on my testing. This reduces the stripped binary size by 8 Kb.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1034892</commentid>
    <comment_count>1</comment_count>
      <attachid>238038</attachid>
    <who name="Chris Dumez">cdumez</who>
    <bug_when>2014-09-12 11:23:37 -0700</bug_when>
    <thetext>Created attachment 238038
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1034895</commentid>
    <comment_count>2</comment_count>
      <attachid>238038</attachid>
    <who name="Benjamin Poulain">benjamin</who>
    <bug_when>2014-09-12 11:28:17 -0700</bug_when>
    <thetext>Comment on attachment 238038
Patch

My rule of thumb is to put the create() function out of line, and the constructor inline.

Before landing, you should check if the 8k of binary size are not caused by a subclass that use an inline create().</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1035036</commentid>
    <comment_count>3</comment_count>
    <who name="Darin Adler">darin</who>
    <bug_when>2014-09-12 17:58:21 -0700</bug_when>
    <thetext>(In reply to comment #2)
&gt; My rule of thumb is to put the create() function out of line, and the constructor inline.

I also like to do that.

But I think the inlining that is happening here is more likely when the constructor is called from derived class constructors.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1035079</commentid>
    <comment_count>4</comment_count>
      <attachid>238038</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-09-13 16:21:35 -0700</bug_when>
    <thetext>Comment on attachment 238038
Patch

Clearing flags on attachment: 238038

Committed r173605: &lt;http://trac.webkit.org/changeset/173605&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1035080</commentid>
    <comment_count>5</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2014-09-13 16:21:40 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>238038</attachid>
            <date>2014-09-12 11:23:37 -0700</date>
            <delta_ts>2014-09-13 16:21:34 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-136786-20140912112333.patch</filename>
            <type>text/plain</type>
            <size>2332</size>
            <attacher name="Chris Dumez">cdumez</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTczNTYwCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggOTI4NzNiYTJhZjBkN2I2
ZWY0OWU5ZDkzYjZlZmIwMDQ3ZjMxNzU3ZS4uMTQyM2U3MDRmZGVlYjYyZDEyNzM1ZTlmODkxNGFi
ZWY5ZDJmMTM0ZiAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIzIEBACisyMDE0LTA5LTEyICBDaHJp
cyBEdW1leiAgPGNkdW1lekBhcHBsZS5jb20+CisKKyAgICAgICAgVW4taW5saW5lIEVsZW1lbnQg
Y29uc3RydWN0b3IKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcvc2hvd19idWcuY2dp
P2lkPTEzNjc4NgorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09QUyEpLgorCisgICAg
ICAgIFVuLWlubGluZSBFbGVtZW50IGNvbnN0cnVjdG9yIGFzIGl0IGlzIG5vbi10cml2aWFsIGFu
ZCBpdCBkb2VzIG5vdCBzZWVtCisgICAgICAgIHRvIGltcGFjdCBwZXJmb3JtYW5jZSBiYXNlZCBv
biBteSB0ZXN0aW5nOgorICAgICAgICBodHRwOi8vZHJvbWFlby5jb20vP2lkPTIyNjg2NSwyMjY4
NjkKKworICAgICAgICBUaGlzIHJlZHVjZXMgdGhlIHN0cmlwcGVkIGJpbmFyeSBzaXplIGJ5IDgg
S2IuCisKKyAgICAgICAgTm8gbmV3IHRlc3RzLCBubyBiZWhhdmlvciBjaGFuZ2UuCisKKyAgICAg
ICAgKiBkb20vRWxlbWVudC5jcHA6CisgICAgICAgIChXZWJDb3JlOjpFbGVtZW50OjpFbGVtZW50
KToKKyAgICAgICAgKiBkb20vRWxlbWVudC5oOgorICAgICAgICAoV2ViQ29yZTo6RWxlbWVudDo6
RWxlbWVudCk6IERlbGV0ZWQuCisKIDIwMTQtMDktMTIgIENhcmxvcyBHYXJjaWEgQ2FtcG9zICA8
Y2dhcmNpYUBpZ2FsaWEuY29tPgogCiAgICAgICAgIFJFR1JFU1NJT04ocjE3MzQ0MSk6IFtHVEtd
IEFsbCBidXR0b25zIGFwcGVhciBpbnNlbnNpdGl2ZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dlYkNv
cmUvZG9tL0VsZW1lbnQuY3BwIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuY3BwCmluZGV4
IGQ5ZWU2NzUwNGE5NmU4YjExZDk0MThkMDk2MjY5ODRhOGQzNmE5YjcuLjVkYmNlMTA5NjdiYWNh
ZGE5M2M4NjE4OTQ4ZTQ2MjY3MWYzYzU5OWMgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2Rv
bS9FbGVtZW50LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5jcHAKQEAgLTE0
Miw2ICsxNDIsMTIgQEAgUGFzc1JlZlB0cjxFbGVtZW50PiBFbGVtZW50OjpjcmVhdGUoY29uc3Qg
UXVhbGlmaWVkTmFtZSYgdGFnTmFtZSwgRG9jdW1lbnQmIGRvY3UKICAgICByZXR1cm4gYWRvcHRS
ZWYobmV3IEVsZW1lbnQodGFnTmFtZSwgZG9jdW1lbnQsIENyZWF0ZUVsZW1lbnQpKTsKIH0KIAor
RWxlbWVudDo6RWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdOYW1lLCBEb2N1bWVudCYg
ZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKKyAgICA6IENvbnRhaW5lck5vZGUoZG9j
dW1lbnQsIHR5cGUpCisgICAgLCBtX3RhZ05hbWUodGFnTmFtZSkKK3sKK30KKwogRWxlbWVudDo6
fkVsZW1lbnQoKQogewogI2lmbmRlZiBOREVCVUcKZGlmZiAtLWdpdCBhL1NvdXJjZS9XZWJDb3Jl
L2RvbS9FbGVtZW50LmggYi9Tb3VyY2UvV2ViQ29yZS9kb20vRWxlbWVudC5oCmluZGV4IDdhNjQ2
M2VmYWQ3MjQ4MmE4MTEwMmNjNWE0YjhjZGZkMTZiY2U0MzcuLjc0YzJmYmI4ZTlhMGVkY2Q5Zjdi
M2UzMDU1NDMyNzgyZmViNjZkODQgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9XZWJDb3JlL2RvbS9FbGVt
ZW50LmgKKysrIGIvU291cmNlL1dlYkNvcmUvZG9tL0VsZW1lbnQuaApAQCAtNTYwLDExICs1NjAs
NyBAQCBwdWJsaWM6CiAgICAgV0VCQ09SRV9FWFBPUlQgVVJMIGFic29sdXRlTGlua1VSTCgpIGNv
bnN0OwogCiBwcm90ZWN0ZWQ6Ci0gICAgRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiB0YWdO
YW1lLCBEb2N1bWVudCYgZG9jdW1lbnQsIENvbnN0cnVjdGlvblR5cGUgdHlwZSkKLSAgICAgICAg
OiBDb250YWluZXJOb2RlKGRvY3VtZW50LCB0eXBlKQotICAgICAgICAsIG1fdGFnTmFtZSh0YWdO
YW1lKQotICAgIHsKLSAgICB9CisgICAgRWxlbWVudChjb25zdCBRdWFsaWZpZWROYW1lJiwgRG9j
dW1lbnQmLCBDb25zdHJ1Y3Rpb25UeXBlKTsKIAogICAgIHZpcnR1YWwgSW5zZXJ0aW9uTm90aWZp
Y2F0aW9uUmVxdWVzdCBpbnNlcnRlZEludG8oQ29udGFpbmVyTm9kZSYpIG92ZXJyaWRlOwogICAg
IHZpcnR1YWwgdm9pZCByZW1vdmVkRnJvbShDb250YWluZXJOb2RlJikgb3ZlcnJpZGU7Cg==
</data>

          </attachment>
      

    </bug>

</bugzilla>