<?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>239680</bug_id>
          
          <creation_ts>2022-04-22 18:03:21 -0700</creation_ts>
          <short_desc>Reduce sizeof(CSSNumericType)</short_desc>
          <delta_ts>2022-04-22 19:17:14 -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>New Bugs</component>
          <version>WebKit 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>InRadar</keywords>
          <priority>P2</priority>
          <bug_severity>Normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Alex Christensen">achristensen</reporter>
          <assigned_to name="Alex Christensen">achristensen</assigned_to>
          <cc>esprehn+autocc</cc>
    
    <cc>ews-watchlist</cc>
    
    <cc>glenn</cc>
    
    <cc>gyuyoung.kim</cc>
    
    <cc>macpherson</cc>
    
    <cc>menard</cc>
    
    <cc>webkit-bug-importer</cc>
    
    <cc>ysuzuki</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1863828</commentid>
    <comment_count>0</comment_count>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2022-04-22 18:03:21 -0700</bug_when>
    <thetext>Reduce sizeof(CSSNumericType)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863829</commentid>
    <comment_count>1</comment_count>
      <attachid>458191</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2022-04-22 18:03:54 -0700</bug_when>
    <thetext>Created attachment 458191
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863830</commentid>
    <comment_count>2</comment_count>
      <attachid>458191</attachid>
    <who name="Yusuke Suzuki">ysuzuki</who>
    <bug_when>2022-04-22 18:07:58 -0700</bug_when>
    <thetext>Comment on attachment 458191
Patch

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

&gt; Source/WebCore/css/typedom/numeric/CSSNumericType.h:39
&gt; +    using BaseTypeStorage = Markable&lt;int, IntegralMarkableTraits&lt;int, std::numeric_limits&lt;int&gt;::min()&gt;&gt;;

We handle INT_MIN as nullopt value, is it correct for these types?
If it is ok, then r=me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863832</commentid>
    <comment_count>3</comment_count>
      <attachid>458191</attachid>
    <who name="Alex Christensen">achristensen</who>
    <bug_when>2022-04-22 18:13:50 -0700</bug_when>
    <thetext>Comment on attachment 458191
Patch

In practice most of these values will just be 1 or nullopt, the consequence of hitting INT_MIN are understandable, and the memory wins are worth it in my opinion.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863837</commentid>
    <comment_count>4</comment_count>
    <who name="EWS">ews-feeder</who>
    <bug_when>2022-04-22 19:16:25 -0700</bug_when>
    <thetext>Committed r293278 (249908@main): &lt;https://commits.webkit.org/249908@main&gt;

All reviewed patches have been landed. Closing bug and clearing flags on attachment 458191.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1863838</commentid>
    <comment_count>5</comment_count>
    <who name="Radar WebKit Bug Importer">webkit-bug-importer</who>
    <bug_when>2022-04-22 19:17:14 -0700</bug_when>
    <thetext>&lt;rdar://problem/92201729&gt;</thetext>
  </long_desc>
      
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>458191</attachid>
            <date>2022-04-22 18:03:54 -0700</date>
            <delta_ts>2022-04-22 19:16:27 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-239680-20220422180354.patch</filename>
            <type>text/plain</type>
            <size>5123</size>
            <attacher name="Alex Christensen">achristensen</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjkzMjI4CmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9D
aGFuZ2VMb2cgYi9Tb3VyY2UvV2ViQ29yZS9DaGFuZ2VMb2cKaW5kZXggODlkNjk2YTM4MzFiNjhm
NDQzMjJkZDk2Njg5ZDEwMzQ5ZjYzNjQ1My4uNjNjZTdiZDA2NmUwYmE1MTM3ZWZmOTYzN2JiYzFh
ZThlYmI2N2U3MyAxMDA2NDQKLS0tIGEvU291cmNlL1dlYkNvcmUvQ2hhbmdlTG9nCisrKyBiL1Nv
dXJjZS9XZWJDb3JlL0NoYW5nZUxvZwpAQCAtMSwzICsxLDIwIEBACisyMDIyLTA0LTIyICBBbGV4
IENocmlzdGVuc2VuICA8YWNocmlzdGVuc2VuQHdlYmtpdC5vcmc+CisKKyAgICAgICAgUmVkdWNl
IHNpemVvZihDU1NOdW1lcmljVHlwZSkKKyAgICAgICAgaHR0cHM6Ly9idWdzLndlYmtpdC5vcmcv
c2hvd19idWcuY2dpP2lkPTIzOTY4MAorCisgICAgICAgIFJldmlld2VkIGJ5IE5PQk9EWSAoT09Q
UyEpLgorCisgICAgICAgICogYmluZGluZ3MvSURMVHlwZXMuaDoKKyAgICAgICAgKFdlYkNvcmU6
OklETFR5cGU6Om51bGxWYWx1ZSk6CisgICAgICAgIChXZWJDb3JlOjpJRExUeXBlOjppc051bGxU
eXBlKToKKyAgICAgICAgKFdlYkNvcmU6OklETFR5cGU6OmV4dHJhY3RWYWx1ZUZyb21OdWxsYWJs
ZSk6CisgICAgICAgICogY3NzL3R5cGVkb20vbnVtZXJpYy9DU1NNYXRoUHJvZHVjdC5jcHA6Cisg
ICAgICAgIChXZWJDb3JlOjptdWx0aXBseVR5cGVzKToKKyAgICAgICAgKiBjc3MvdHlwZWRvbS9u
dW1lcmljL0NTU051bWVyaWNUeXBlLmg6CisgICAgICAgIChXZWJDb3JlOjpDU1NOdW1lcmljVHlw
ZTo6dmFsdWVGb3JUeXBlKToKKyAgICAgICAgKFdlYkNvcmU6OkNTU051bWVyaWNUeXBlOjp2YWx1
ZUZvclR5cGUgY29uc3QpOgorCiAyMDIyLTA0LTIyICBBbGFuIEJ1anRhcyAgPHphbGFuQGFwcGxl
LmNvbT4KIAogICAgICAgICBbTEZDXVtJbnRlZ3JhdGlvbl0gQm94VHJlZSBzaG91bGQgYmUgYWJs
ZSB0byBidWlsZCBub24taW5saW5lIGNvbnRlbnQgdHJlZQpkaWZmIC0tZ2l0IGEvU291cmNlL1dl
YkNvcmUvYmluZGluZ3MvSURMVHlwZXMuaCBiL1NvdXJjZS9XZWJDb3JlL2JpbmRpbmdzL0lETFR5
cGVzLmgKaW5kZXggYjM3ZWUxZmVmMjViYTM1ZmU4YjZmODhiN2VkMTFiMWIzYmI0MGFiOS4uNDlh
OTU1YzNjNTYyMjNjZWNmYTJhNDA1ODFiMjQ3YmRhOGVmOGExZCAxMDA2NDQKLS0tIGEvU291cmNl
L1dlYkNvcmUvYmluZGluZ3MvSURMVHlwZXMuaAorKysgYi9Tb3VyY2UvV2ViQ29yZS9iaW5kaW5n
cy9JRExUeXBlcy5oCkBAIC0zMCw2ICszMCw3IEBACiAjaW5jbHVkZSA8SmF2YVNjcmlwdENvcmUv
U3Ryb25nLmg+CiAjaW5jbHVkZSA8dmFyaWFudD4KICNpbmNsdWRlIDx3dGYvQnJpZ2FuZC5oPgor
I2luY2x1ZGUgPHd0Zi9NYXJrYWJsZS5oPgogI2luY2x1ZGUgPHd0Zi9TdGRMaWJFeHRyYXMuaD4K
ICNpbmNsdWRlIDx3dGYvVVJMLmg+CiAjaW5jbHVkZSA8d3RmL1dhbGxUaW1lLmg+CkBAIC03NSw2
ICs3NiwxNCBAQCBzdHJ1Y3QgSURMVHlwZSB7CiAgICAgc3RhdGljIE51bGxhYmxlVHlwZSBudWxs
VmFsdWUoKSB7IHJldHVybiBzdGQ6Om51bGxvcHQ7IH0KICAgICBzdGF0aWMgYm9vbCBpc051bGxW
YWx1ZShjb25zdCBOdWxsYWJsZVR5cGUmIHZhbHVlKSB7IHJldHVybiAhdmFsdWU7IH0KICAgICBz
dGF0aWMgSW1wbGVtZW50YXRpb25UeXBlIGV4dHJhY3RWYWx1ZUZyb21OdWxsYWJsZShjb25zdCBO
dWxsYWJsZVR5cGUmIHZhbHVlKSB7IHJldHVybiB2YWx1ZS52YWx1ZSgpOyB9CisKKyAgICB0ZW1w
bGF0ZTx0eXBlbmFtZSBUcmFpdHM+IHVzaW5nIE51bGxhYmxlVHlwZVdpdGhMZXNzUGFkZGluZyA9
IE1hcmthYmxlPEltcGxlbWVudGF0aW9uVHlwZSwgVHJhaXRzPjsKKyAgICB0ZW1wbGF0ZTx0eXBl
bmFtZSBUcmFpdHM+CisgICAgc3RhdGljIE51bGxhYmxlVHlwZVdpdGhMZXNzUGFkZGluZzxUcmFp
dHM+IG51bGxWYWx1ZSgpIHsgcmV0dXJuIHN0ZDo6bnVsbG9wdDsgfQorICAgIHRlbXBsYXRlPHR5
cGVuYW1lIFRyYWl0cz4KKyAgICBzdGF0aWMgYm9vbCBpc051bGxUeXBlKGNvbnN0IE51bGxhYmxl
VHlwZVdpdGhMZXNzUGFkZGluZzxUcmFpdHM+JiB2YWx1ZSkgeyByZXR1cm4gIXZhbHVlOyB9Cisg
ICAgdGVtcGxhdGU8dHlwZW5hbWUgVHJhaXRzPgorICAgIHN0YXRpYyBJbXBsZW1lbnRhdGlvblR5
cGUgZXh0cmFjdFZhbHVlRnJvbU51bGxhYmxlKGNvbnN0IE51bGxhYmxlVHlwZVdpdGhMZXNzUGFk
ZGluZzxUcmFpdHM+JiB2YWx1ZSkgeyByZXR1cm4gdmFsdWUudmFsdWUoKTsgfQogfTsKIAogLy8g
SURMVW5zdXBwb3J0ZWRUeXBlIGlzIGEgc3BlY2lhbCB0eXBlIHRoYXQgc2VydmVzIGFzIGEgYmFz
ZSBjbGFzcyBmb3IgY3VycmVudGx5IHVuc3VwcG9ydGVkIHR5cGVzLgpkaWZmIC0tZ2l0IGEvU291
cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vbnVtZXJpYy9DU1NNYXRoUHJvZHVjdC5jcHAgYi9Tb3Vy
Y2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9udW1lcmljL0NTU01hdGhQcm9kdWN0LmNwcAppbmRleCAz
YTQyYWVkYWQ2Njg1MjJhNTAxOGM1YjVjOTA2N2U0NmI0ZTIwNWQwLi5lN2E0NTE0YzVmMDQ4MDE0
ODQ4MTJiOWY0ZjM1NzZhNjFkYzVjZjMwIDEwMDY0NAotLS0gYS9Tb3VyY2UvV2ViQ29yZS9jc3Mv
dHlwZWRvbS9udW1lcmljL0NTU01hdGhQcm9kdWN0LmNwcAorKysgYi9Tb3VyY2UvV2ViQ29yZS9j
c3MvdHlwZWRvbS9udW1lcmljL0NTU01hdGhQcm9kdWN0LmNwcApAQCAtNDMsNyArNDMsNyBAQCBz
dGF0aWMgc3RkOjpvcHRpb25hbDxDU1NOdW1lcmljVHlwZT4gbXVsdGlwbHlUeXBlcyhjb25zdCBD
U1NOdW1lcmljVHlwZSYgYSwgY29ucwogICAgIGlmIChhLnBlcmNlbnRIaW50ICYmIGIucGVyY2Vu
dEhpbnQgJiYgKmEucGVyY2VudEhpbnQgIT0gKmIucGVyY2VudEhpbnQpCiAgICAgICAgIHJldHVy
biBzdGQ6Om51bGxvcHQ7CiAKLSAgICBhdXRvIGFkZCA9IFtdIChhdXRvIGxlZnQsIGF1dG8gcmln
aHQpIC0+IHN0ZDo6b3B0aW9uYWw8dW5zaWduZWQ+IHsKKyAgICBhdXRvIGFkZCA9IFtdIChhdXRv
IGxlZnQsIGF1dG8gcmlnaHQpIC0+IENTU051bWVyaWNUeXBlOjpCYXNlVHlwZVN0b3JhZ2Ugewog
ICAgICAgICBpZiAoIWxlZnQpCiAgICAgICAgICAgICByZXR1cm4gcmlnaHQ7CiAgICAgICAgIGlm
ICghcmlnaHQpCmRpZmYgLS1naXQgYS9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9udW1lcmlj
L0NTU051bWVyaWNUeXBlLmggYi9Tb3VyY2UvV2ViQ29yZS9jc3MvdHlwZWRvbS9udW1lcmljL0NT
U051bWVyaWNUeXBlLmgKaW5kZXggZTk3NGZkYmVlY2U4NTEyYjRmZjVkZDlmYTJiMjgwODRjYzNm
YWI3Ni4uOWQzNDczYjY4NzhhNTgwZTkwOTZhZjUxN2FlOTBhMmJkNWY4MGI5NSAxMDA2NDQKLS0t
IGEvU291cmNlL1dlYkNvcmUvY3NzL3R5cGVkb20vbnVtZXJpYy9DU1NOdW1lcmljVHlwZS5oCisr
KyBiL1NvdXJjZS9XZWJDb3JlL2Nzcy90eXBlZG9tL251bWVyaWMvQ1NTTnVtZXJpY1R5cGUuaApA
QCAtMjksMjAgKzI5LDIyIEBACiAKICNpbmNsdWRlICJDU1NOdW1lcmljQmFzZVR5cGUuaCIKICNp
bmNsdWRlIDxvcHRpb25hbD4KKyNpbmNsdWRlIDx3dGYvTWFya2FibGUuaD4KICNpbmNsdWRlIDx3
dGYvdGV4dC9TdHJpbmdDb25jYXRlbmF0ZU51bWJlcnMuaD4KIAogbmFtZXNwYWNlIFdlYkNvcmUg
ewogCiAvLyBodHRwczovL2RyYWZ0cy5jc3MtaG91ZGluaS5vcmcvY3NzLXR5cGVkLW9tLyNkb20t
Y3NzbnVtZXJpY3ZhbHVlLXR5cGUKIHN0cnVjdCBDU1NOdW1lcmljVHlwZSB7Ci0gICAgc3RkOjpv
cHRpb25hbDxsb25nPiBsZW5ndGg7Ci0gICAgc3RkOjpvcHRpb25hbDxsb25nPiBhbmdsZTsKLSAg
ICBzdGQ6Om9wdGlvbmFsPGxvbmc+IHRpbWU7Ci0gICAgc3RkOjpvcHRpb25hbDxsb25nPiBmcmVx
dWVuY3k7Ci0gICAgc3RkOjpvcHRpb25hbDxsb25nPiByZXNvbHV0aW9uOwotICAgIHN0ZDo6b3B0
aW9uYWw8bG9uZz4gZmxleDsKLSAgICBzdGQ6Om9wdGlvbmFsPGxvbmc+IHBlcmNlbnQ7Ci0gICAg
c3RkOjpvcHRpb25hbDxDU1NOdW1lcmljQmFzZVR5cGU+IHBlcmNlbnRIaW50OworICAgIHVzaW5n
IEJhc2VUeXBlU3RvcmFnZSA9IE1hcmthYmxlPGludCwgSW50ZWdyYWxNYXJrYWJsZVRyYWl0czxp
bnQsIHN0ZDo6bnVtZXJpY19saW1pdHM8aW50Pjo6bWluKCk+PjsKKyAgICBCYXNlVHlwZVN0b3Jh
Z2UgbGVuZ3RoOworICAgIEJhc2VUeXBlU3RvcmFnZSBhbmdsZTsKKyAgICBCYXNlVHlwZVN0b3Jh
Z2UgdGltZTsKKyAgICBCYXNlVHlwZVN0b3JhZ2UgZnJlcXVlbmN5OworICAgIEJhc2VUeXBlU3Rv
cmFnZSByZXNvbHV0aW9uOworICAgIEJhc2VUeXBlU3RvcmFnZSBmbGV4OworICAgIEJhc2VUeXBl
U3RvcmFnZSBwZXJjZW50OworICAgIE1hcmthYmxlPENTU051bWVyaWNCYXNlVHlwZSwgRW51bU1h
cmthYmxlVHJhaXRzPENTU051bWVyaWNCYXNlVHlwZT4+IHBlcmNlbnRIaW50OwogCiAgICAgYm9v
bCBvcGVyYXRvcj09KGNvbnN0IENTU051bWVyaWNUeXBlJiBvdGhlcikgY29uc3QKICAgICB7CkBA
IC01Niw3ICs1OCw3IEBAIHN0cnVjdCBDU1NOdW1lcmljVHlwZSB7CiAgICAgICAgICAgICAmJiBw
ZXJjZW50SGludCA9PSBvdGhlci5wZXJjZW50SGludDsKICAgICB9CiAKLSAgICBzdGQ6Om9wdGlv
bmFsPGxvbmc+JiB2YWx1ZUZvclR5cGUoQ1NTTnVtZXJpY0Jhc2VUeXBlIHR5cGUpCisgICAgQmFz
ZVR5cGVTdG9yYWdlJiB2YWx1ZUZvclR5cGUoQ1NTTnVtZXJpY0Jhc2VUeXBlIHR5cGUpCiAgICAg
ewogICAgICAgICBzd2l0Y2ggKHR5cGUpIHsKICAgICAgICAgY2FzZSBDU1NOdW1lcmljQmFzZVR5
cGU6Okxlbmd0aDoKQEAgLTc3LDcgKzc5LDcgQEAgc3RydWN0IENTU051bWVyaWNUeXBlIHsKICAg
ICAgICAgUkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKICAgICB9CiAKLSAgICBjb25zdCBz
dGQ6Om9wdGlvbmFsPGxvbmc+JiB2YWx1ZUZvclR5cGUoQ1NTTnVtZXJpY0Jhc2VUeXBlIHR5cGUp
IGNvbnN0CisgICAgY29uc3QgQmFzZVR5cGVTdG9yYWdlJiB2YWx1ZUZvclR5cGUoQ1NTTnVtZXJp
Y0Jhc2VUeXBlIHR5cGUpIGNvbnN0CiAgICAgewogICAgICAgICByZXR1cm4gY29uc3RfY2FzdDxD
U1NOdW1lcmljVHlwZSo+KHRoaXMpLT52YWx1ZUZvclR5cGUodHlwZSk7CiAgICAgfQo=
</data>

          </attachment>
      

    </bug>

</bugzilla>