<?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>150403</bug_id>
          
          <creation_ts>2015-10-21 11:42:44 -0700</creation_ts>
          <short_desc>JSC Math.pow tests makes wrong assumptions on precision</short_desc>
          <delta_ts>2015-10-22 11:30:51 -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>WebKit Nightly Build</version>
          <rep_platform>Unspecified</rep_platform>
          <op_sys>Unspecified</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>INVALID</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>108664</blocked>
          <everconfirmed>1</everconfirmed>
          <reporter name="Guillaume Emont">guijemont</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>fpizlo</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1135311</commentid>
    <comment_count>0</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2015-10-21 11:42:44 -0700</bug_when>
    <thetext>The test in Source/JavaScriptCore/tests/stress/math-pow-with-constants.js assumes the results of Math.pow() calls would be of a given precision, even though the spec[1] says that Math.pow():

  Returns an implementation-dependent approximation to the result of raising x to the power y.


At least on MIPS, the precision of the result is different on some tests.

[1] http://www.ecma-international.org/ecma-262/6.0/#sec-math.pow</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135317</commentid>
    <comment_count>1</comment_count>
      <attachid>263708</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2015-10-21 11:50:20 -0700</bug_when>
    <thetext>Created attachment 263708
Patch</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135435</commentid>
    <comment_count>2</comment_count>
      <attachid>263752</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2015-10-21 15:43:54 -0700</bug_when>
    <thetext>Created attachment 263752
Patch

New version with typo corrected</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135546</commentid>
    <comment_count>3</comment_count>
      <attachid>263752</attachid>
    <who name="Filip Pizlo">fpizlo</who>
    <bug_when>2015-10-21 19:47:31 -0700</bug_when>
    <thetext>Comment on attachment 263752
Patch

Sounds like a mips bug. Jsc aims to have strong precision guarantees.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1135752</commentid>
    <comment_count>4</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2015-10-22 11:30:51 -0700</bug_when>
    <thetext>After further checking, it seems like the issue that I encountered with that test only happens when using uclibc. In that case, Math.pow(2,42.5) returns 6219777023950.949. Though that number looks like it has more precision, it turns out[1] that it seems that it is not rounded properly, but rather truncated (the correct rounding to 3 digits would be 
6219777023950.950), so it seems like it is a uclibc issue.
Sorry for the noise.

[1] http://www.wolframalpha.com/input/?i=2%5E42.5</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>263708</attachid>
            <date>2015-10-21 11:50:20 -0700</date>
            <delta_ts>2015-10-21 15:43:49 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150403-20151021134948.patch</filename>
            <type>text/plain</type>
            <size>2660</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxMzkxCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCA4
NDU1MzcxMmMzMzllYjc0YjU0YTM0NTQ0NDBiYmI4M2EwNjFlNTkwLi5hOGQ3NmEzYTFmZTgzODk3
ODc1YjkyYmExYTE2YjU5YjUxM2YxNDFkIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
NSArMSwyMyBAQAogMjAxNS0xMC0yMSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CiAKKyAgICAgICAgSlNDIE1hdGgucG93IHRlc3RzIG1ha2VzIGFzc3VtcHRpb25zIG9u
IHByZWNpc2lvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTUwNDAzCisKKyAgICAgICAgVGhlIHNwZWNbMV0gc2F5cyB0aGF0IE1hdGgucG93OgorICAg
ICAgICBSZXR1cm5zIGFuIGltcGxlbWVudGF0aW9uLWRlcGVuZGVudCBhcHByb3hpbWF0aW9uIHRv
IHRoZSByZXN1bHQgb2YKKyAgICAgICAgcmFpc2luZyB4IHRvIHRoZSBwb3dlciB5LgorCisgICAg
ICAgIFsxXSBodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNi4wLyNz
ZWMtbWF0aC5wb3cKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIHRlc3RzL3N0cmVzcy9tYXRoLXBvdy13aXRoLWNvbnN0YW50cy5qczoKKyAgICAgICAg
KHRlc3RFeHBvbmVudElzSW50ZWdlckNvbnN0YW50KToKKyAgICAgICAgKHRlc3RFeHBvbmVudElz
RG91YmxlQ29uc3RhbnQpOgorICAgICAgICBCZSBtb3JlIGZsZXhpYmxlIG9uIHRoZSB2YWx1ZXMg
d2UgYWNjZXB0IGZyb20gTWF0aC5wb3coKS4KKworMjAxNS0xMC0yMSAgR3VpbGxhdW1lIEVtb250
ICA8Z3VpamVtb250QGlnYWxpYS5jb20+CisKICAgICAgICAgbGxpbnQ6IGFsaWduIHN0YWNrIHBv
aW50ZXIgb24gbWlwcyB0b28KIAogICAgICAgICBbTUlQU10gTExJbnQ6IGFsaWduIHN0YWNrIHBv
aW50ZXIgb24gTUlQUyB0b28KZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9zdHJlc3MvbWF0aC1wb3ctd2l0aC1jb25zdGFudHMuanMgYi9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvdGVzdHMvc3RyZXNzL21hdGgtcG93LXdpdGgtY29uc3RhbnRzLmpzCmluZGV4IGQyNTkwMmRk
NzhmYmFjZTgzZjEyOTZkODQ2NTg3YmJjYWYxNTc2OTYuLjM2YTllOTEzNmQxZGJkYTRjMDA3Nzg4
ZDE3N2M1OTM3NWNjNzMyM2MgMTAwNjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0
cy9zdHJlc3MvbWF0aC1wb3ctd2l0aC1jb25zdGFudHMuanMKKysrIGIvU291cmNlL0phdmFTY3Jp
cHRDb3JlL3Rlc3RzL3N0cmVzcy9tYXRoLXBvdy13aXRoLWNvbnN0YW50cy5qcwpAQCAtMTMzLDcg
KzEzMyw3IEBAIGZ1bmN0aW9uIHRlc3RFeHBvbmVudElzSW50ZWdlckNvbnN0YW50KCkgewogICAg
IH0KICAgICBmb3IgKHZhciBpID0gMDsgaSA8IDEwMDA7ICsraSkgewogICAgICAgICB2YXIgcmVz
dWx0ID0gZXhwb25lbnRJc0ludGVnZXJDb25zdGFudCgyLjEpOwotICAgICAgICBpZiAocmVzdWx0
ICE9PSAzNDEzNTgyMzA2NzQxMi40MikKKyAgICAgICAgaWYgKE1hdGguYWJzKHJlc3VsdCAtIDM0
MTM1ODIzMDY3NDEyLjQyKSA+IDAuMDEpCiAgICAgICAgICAgICB0aHJvdyAiRXJyb3I6IGV4cG9u
ZW50SXNJbnRlZ2VyQ29uc3RhbnQoMi4xKSBzaG91bGQgYmUgMzQxMzU4MjMwNjc0MTIuNDIsIHdh
cyA9ICIgKyByZXN1bHQ7CiAgICAgfQogfQpAQCAtMTQ4LDcgKzE0OCw3IEBAIG5vSW5saW5lKGV4
cG9uZW50SXNEb3VibGVDb25zdGFudCk7CiBmdW5jdGlvbiB0ZXN0RXhwb25lbnRJc0RvdWJsZUNv
bnN0YW50KCkgewogICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDsgKytpKSB7CiAgICAgICAg
IHZhciByZXN1bHQgPSBleHBvbmVudElzRG91YmxlQ29uc3RhbnQoMik7Ci0gICAgICAgIGlmIChy
ZXN1bHQgIT09IDYyMTk3NzcwMjM5NTAuOTUpCisgICAgICAgIGlmIChNYXRoLmFicyhyZXN1bHQg
LSA2MjE5Nzc3MDIzOTUwLjk1KSA+IDAuMDEpCiAgICAgICAgICAgICB0aHJvdyAiRXJyb3I6IGV4
cG9uZW50SXNEb3VibGVDb25zdGFudCgyKSBzaG91bGQgYmUgNjIxOTc3NzAyMzk1MC45NSwgd2Fz
ID0gIiArIHJlc3VsdDsKICAgICB9CiAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCAxMDAwOyArK2kp
IHsKQEAgLTE1OCw3ICsxNTgsNyBAQCBmdW5jdGlvbiB0ZXN0RXhwb25lbnRJc0RvdWJsZUNvbnN0
YW50KCkgewogICAgIH0KICAgICBmb3IgKHZhciBpID0gMDsgaSA8IDEwMDA7ICsraSkgewogICAg
ICAgICB2YXIgcmVzdWx0ID0gZXhwb25lbnRJc0RvdWJsZUNvbnN0YW50KDIuMSk7Ci0gICAgICAg
IGlmIChyZXN1bHQgIT09IDQ5NDY3NTA3MjYxMTEzLjgwNSkKKyAgICAgICAgaWYgKE1hdGguYWJz
KHJlc3VsdCAtIDQ5NDY3NTA3MjYxMTEzLjgwNSkgPiAwLjAxCiAgICAgICAgICAgICB0aHJvdyAi
RXJyb3I6IGV4cG9uZW50SXNEb3VibGVDb25zdGFudCgyLjEpIHNob3VsZCBiZSA0OTQ2NzUwNzI2
MTExMy44MDUsIHdhcyA9ICIgKyByZXN1bHQ7CiAgICAgfQogfQo=
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>263752</attachid>
            <date>2015-10-21 15:43:54 -0700</date>
            <delta_ts>2015-10-21 19:47:31 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-150403-20151021174322.patch</filename>
            <type>text/plain</type>
            <size>2627</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMTkxNDA3CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBk
MjYxZGZhOGZjMTBjNTJjNjQ2NGYyNTc0Y2UxN2ZmMDg3MjZjMWQ2Li5kODdhYmMyYzgwYTgyMGU5
MTEyOGM0ZDg1Njc0ZWEzOWVhNzY5ZmY2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwyMSBAQAorMjAxNS0xMC0yMSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CisKKyAgICAgICAgSlNDIE1hdGgucG93IHRlc3RzIG1ha2VzIGFzc3VtcHRpb25zIG9u
IHByZWNpc2lvbgorICAgICAgICBodHRwczovL2J1Z3Mud2Via2l0Lm9yZy9zaG93X2J1Zy5jZ2k/
aWQ9MTUwNDAzCisKKyAgICAgICAgVGhlIHNwZWNbMV0gc2F5cyB0aGF0IE1hdGgucG93OgorICAg
ICAgICBSZXR1cm5zIGFuIGltcGxlbWVudGF0aW9uLWRlcGVuZGVudCBhcHByb3hpbWF0aW9uIHRv
IHRoZSByZXN1bHQgb2YKKyAgICAgICAgcmFpc2luZyB4IHRvIHRoZSBwb3dlciB5LgorCisgICAg
ICAgIFsxXSBodHRwOi8vd3d3LmVjbWEtaW50ZXJuYXRpb25hbC5vcmcvZWNtYS0yNjIvNi4wLyNz
ZWMtbWF0aC5wb3cKKworICAgICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAg
ICAgICAqIHRlc3RzL3N0cmVzcy9tYXRoLXBvdy13aXRoLWNvbnN0YW50cy5qczoKKyAgICAgICAg
KHRlc3RFeHBvbmVudElzSW50ZWdlckNvbnN0YW50KToKKyAgICAgICAgKHRlc3RFeHBvbmVudElz
RG91YmxlQ29uc3RhbnQpOgorICAgICAgICBCZSBtb3JlIGZsZXhpYmxlIG9uIHRoZSB2YWx1ZXMg
d2UgYWNjZXB0IGZyb20gTWF0aC5wb3coKS4KKwogMjAxNS0xMC0yMSAgU3Vrb2xzYWsgU2Frc2h1
d29uZyAgPHN1a29sc2FrQGdtYWlsLmNvbT4KIAogICAgICAgICBbSU5UTF0gSW1wbGVtZW50IElu
dGwuQ29sbGF0b3IucHJvdG90eXBlLnJlc29sdmVkT3B0aW9ucyAoKQpkaWZmIC0tZ2l0IGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9tYXRoLXBvdy13aXRoLWNvbnN0YW50cy5q
cyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS90ZXN0cy9zdHJlc3MvbWF0aC1wb3ctd2l0aC1jb25z
dGFudHMuanMKaW5kZXggZDI1OTAyZGQ3OGZiYWNlODNmMTI5NmQ4NDY1ODdiYmNhZjE1NzY5Ni4u
NTE4MWRmM2ZlNTU4OTAwYWI5OWEwYTg4MTNjNjZkZTk4MWQyMWM1MyAxMDA2NDQKLS0tIGEvU291
cmNlL0phdmFTY3JpcHRDb3JlL3Rlc3RzL3N0cmVzcy9tYXRoLXBvdy13aXRoLWNvbnN0YW50cy5q
cworKysgYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvdGVzdHMvc3RyZXNzL21hdGgtcG93LXdpdGgt
Y29uc3RhbnRzLmpzCkBAIC0xMzMsNyArMTMzLDcgQEAgZnVuY3Rpb24gdGVzdEV4cG9uZW50SXNJ
bnRlZ2VyQ29uc3RhbnQoKSB7CiAgICAgfQogICAgIGZvciAodmFyIGkgPSAwOyBpIDwgMTAwMDsg
KytpKSB7CiAgICAgICAgIHZhciByZXN1bHQgPSBleHBvbmVudElzSW50ZWdlckNvbnN0YW50KDIu
MSk7Ci0gICAgICAgIGlmIChyZXN1bHQgIT09IDM0MTM1ODIzMDY3NDEyLjQyKQorICAgICAgICBp
ZiAoTWF0aC5hYnMocmVzdWx0IC0gMzQxMzU4MjMwNjc0MTIuNDIpID4gMC4wMSkKICAgICAgICAg
ICAgIHRocm93ICJFcnJvcjogZXhwb25lbnRJc0ludGVnZXJDb25zdGFudCgyLjEpIHNob3VsZCBi
ZSAzNDEzNTgyMzA2NzQxMi40Miwgd2FzID0gIiArIHJlc3VsdDsKICAgICB9CiB9CkBAIC0xNDgs
NyArMTQ4LDcgQEAgbm9JbmxpbmUoZXhwb25lbnRJc0RvdWJsZUNvbnN0YW50KTsKIGZ1bmN0aW9u
IHRlc3RFeHBvbmVudElzRG91YmxlQ29uc3RhbnQoKSB7CiAgICAgZm9yICh2YXIgaSA9IDA7IGkg
PCAxMDAwOyArK2kpIHsKICAgICAgICAgdmFyIHJlc3VsdCA9IGV4cG9uZW50SXNEb3VibGVDb25z
dGFudCgyKTsKLSAgICAgICAgaWYgKHJlc3VsdCAhPT0gNjIxOTc3NzAyMzk1MC45NSkKKyAgICAg
ICAgaWYgKE1hdGguYWJzKHJlc3VsdCAtIDYyMTk3NzcwMjM5NTAuOTUpID4gMC4wMSkKICAgICAg
ICAgICAgIHRocm93ICJFcnJvcjogZXhwb25lbnRJc0RvdWJsZUNvbnN0YW50KDIpIHNob3VsZCBi
ZSA2MjE5Nzc3MDIzOTUwLjk1LCB3YXMgPSAiICsgcmVzdWx0OwogICAgIH0KICAgICBmb3IgKHZh
ciBpID0gMDsgaSA8IDEwMDA7ICsraSkgewpAQCAtMTU4LDcgKzE1OCw3IEBAIGZ1bmN0aW9uIHRl
c3RFeHBvbmVudElzRG91YmxlQ29uc3RhbnQoKSB7CiAgICAgfQogICAgIGZvciAodmFyIGkgPSAw
OyBpIDwgMTAwMDsgKytpKSB7CiAgICAgICAgIHZhciByZXN1bHQgPSBleHBvbmVudElzRG91Ymxl
Q29uc3RhbnQoMi4xKTsKLSAgICAgICAgaWYgKHJlc3VsdCAhPT0gNDk0Njc1MDcyNjExMTMuODA1
KQorICAgICAgICBpZiAoTWF0aC5hYnMocmVzdWx0IC0gNDk0Njc1MDcyNjExMTMuODA1KSA+IDAu
MDEpCiAgICAgICAgICAgICB0aHJvdyAiRXJyb3I6IGV4cG9uZW50SXNEb3VibGVDb25zdGFudCgy
LjEpIHNob3VsZCBiZSA0OTQ2NzUwNzI2MTExMy44MDUsIHdhcyA9ICIgKyByZXN1bHQ7CiAgICAg
fQogfQo=
</data>
<flag name="review"
          id="288864"
          type_id="1"
          status="-"
          setter="fpizlo"
    />
          </attachment>
      

    </bug>

</bugzilla>