<?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>158206</bug_id>
          
          <creation_ts>2016-05-30 08:18:55 -0700</creation_ts>
          <short_desc>[jsc][mips] implement absDouble()</short_desc>
          <delta_ts>2016-06-06 11:07:59 -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>Other</rep_platform>
          <op_sys>Linux</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="Guillaume Emont">guijemont</reporter>
          <assigned_to name="Nobody">webkit-unassigned</assigned_to>
          <cc>annulen</cc>
    
    <cc>commit-queue</cc>
    
    <cc>guijemont</cc>
    
    <cc>jbriance</cc>
    
    <cc>keith_miller</cc>
    
    <cc>mark.lam</cc>
    
    <cc>msaboff</cc>
    
    <cc>saam</cc>
          

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>1197622</commentid>
    <comment_count>0</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-05-30 08:18:55 -0700</bug_when>
    <thetext>The absDouble() method is not implemented in MacroAssemblerMIPS. It is now used in Math.pow() since r200208, so we need it.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1197623</commentid>
    <comment_count>1</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-05-30 08:24:45 -0700</bug_when>
    <thetext>I have a patch that seems to work and will upload it after running some tests.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1197638</commentid>
    <comment_count>2</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-05-30 10:18:02 -0700</bug_when>
    <thetext>(In reply to comment #1)
&gt; I have a patch that seems to work and will upload it after running some
&gt; tests.

Can&apos;t do that yet as after rebasing my patch I hit #158209.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198356</commentid>
    <comment_count>3</comment_count>
      <attachid>280284</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-06-01 17:33:57 -0700</bug_when>
    <thetext>Created attachment 280284
Patch

Patch fixing the issue.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198517</commentid>
    <comment_count>4</comment_count>
    <who name="Julien Brianceau">jbriance</who>
    <bug_when>2016-06-02 05:45:54 -0700</bug_when>
    <thetext>It is not complete, please refer to my commit in QtWebKit: http://code.qt.io/cgit/qt/qtwebkit.git/commit/?id=b6ddb5fe5d3f2223d524e45bf5cdbdde0e5b241f

Also, please put absd() implementation between sqrtd and movd in MacroAssemblerMIPS.h to keep the opcodes ordered.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198562</commentid>
    <comment_count>5</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-06-02 10:41:23 -0700</bug_when>
    <thetext>(In reply to comment #4)
&gt; It is not complete, please refer to my commit in QtWebKit:
&gt; http://code.qt.io/cgit/qt/qtwebkit.git/commit/
&gt; ?id=b6ddb5fe5d3f2223d524e45bf5cdbdde0e5b241f

Indeed, I did not catch that supportsFloatingPointAbs(), or see that you had made that change in qtwebkit. I think we need to check for WTF_MIPS_ISA_AT_LEAST(2) as well, since abs.d is only available from mips 2 on.
&gt; 
&gt; Also, please put absd() implementation between sqrtd and movd in
&gt; MacroAssemblerMIPS.h to keep the opcodes ordered.
It looks overall not very well ordered and I tried to put it in alphabetical order, but I&apos;m fine with doing that.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198563</commentid>
    <comment_count>6</comment_count>
      <attachid>280338</attachid>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-06-02 10:47:24 -0700</bug_when>
    <thetext>Created attachment 280338
Patch

New version addressing Julien&apos;s comments. It seems to pass regress and stress tests if combined with patch from #158209</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1198695</commentid>
    <comment_count>7</comment_count>
    <who name="Julien Brianceau">jbriance</who>
    <bug_when>2016-06-02 14:40:24 -0700</bug_when>
    <thetext>(In reply to comment #5)
&gt; Indeed, I did not catch that supportsFloatingPointAbs(), or see that you had
&gt; made that change in qtwebkit. I think we need to check for
&gt; WTF_MIPS_ISA_AT_LEAST(2) as well, since abs.d is only available from mips 2
&gt; on.

Great, thanks.

&gt; It looks overall not very well ordered and I tried to put it in alphabetical
&gt; order, but I&apos;m fine with doing that.

Thanks, it&apos;s just to limit conflicts in case of cherry-pick.

Looks good to me.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1199612</commentid>
    <comment_count>8</comment_count>
    <who name="Guillaume Emont">guijemont</who>
    <bug_when>2016-06-06 10:39:04 -0700</bug_when>
    <thetext>ping reviewers</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1199627</commentid>
    <comment_count>9</comment_count>
      <attachid>280338</attachid>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-06 11:07:54 -0700</bug_when>
    <thetext>Comment on attachment 280338
Patch

Clearing flags on attachment: 280338

Committed r201716: &lt;http://trac.webkit.org/changeset/201716&gt;</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>1199628</commentid>
    <comment_count>10</comment_count>
    <who name="WebKit Commit Bot">commit-queue</who>
    <bug_when>2016-06-06 11:07:59 -0700</bug_when>
    <thetext>All reviewed patches have been landed.  Closing bug.</thetext>
  </long_desc>
      
          <attachment
              isobsolete="1"
              ispatch="1"
              isprivate="0"
          >
            <attachid>280284</attachid>
            <date>2016-06-01 17:33:57 -0700</date>
            <delta_ts>2016-06-02 10:47:18 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158206-20160601193515.patch</filename>
            <type>text/plain</type>
            <size>2314</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxNTUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
Mzc2NzRiOGVmMTA5M2UxN2ZjZDIzY2YzZDhmMzUwMzVjNDlmMDc5Li44YTcwMmQ5ZTY4NTBhMjFk
YWYyZjY0NWZkZWU4OTc5M2NmZTg0MGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxNi0wNi0wMSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CisKKyAgICAgICAgW2pzY11bbWlwc10gSW1wbGVtZW50IGFic0RvdWJsZSgpCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgyMDYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQgYWJz
RG91YmxlKCkgZm9yIE1JUFMuIFRoaXMgaXMgbmVlZGVkIGJlY2F1c2UgTWF0aC5wb3coKSB1c2Vz
CisgICAgICAgIGl0IHNpbmNlIHIyMDAyMDguCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTUlQU0Fz
c2VtYmxlci5oOgorICAgICAgICAoSlNDOjpNSVBTQXNzZW1ibGVyOjphYnNkKToKKyAgICAgICAg
KiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNz
ZW1ibGVyTUlQUzo6YWJzRG91YmxlKToKKwogMjAxNi0wNS0zMSAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBbSlNDXSBEcm9wICJyZXBsYWNlIiBmcm9t
IEpTQ19DT01NT05fUFJJVkFURV9JREVOVElGSUVSU19FQUNIX1dFTExfS05PV05fU1lNQk9MX05P
VF9JTVBMRU1FTlRFRF9ZRVQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTUlQU0Fzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9N
SVBTQXNzZW1ibGVyLmgKaW5kZXggZGM1MTg0MzNlYmU2YjI3M2ViZjZmOGVjZjE4YmY0NmRlZTc5
ODEwMS4uMjEwZWQyNjhlZDU5Y2E3MjJjMDA3YjdhNGMyNTMxNWUwMTQ4Y2Q0YyAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NSVBTQXNzZW1ibGVyLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NSVBTQXNzZW1ibGVyLmgKQEAgLTQ4Myw2
ICs0ODMsMTEgQEAgcHVibGljOgogICAgICAgICBtX2p1bXBzLmFwcGVuZChtX2J1ZmZlci5sYWJl
bCgpKTsKICAgICB9CiAKKyAgICB2b2lkIGFic2QoRlBSZWdpc3RlcklEIGZkLCBGUFJlZ2lzdGVy
SUQgZnMpCisgICAgeworICAgICAgICBlbWl0SW5zdCgweDQ2MjAwMDA1IHwgKGZkIDw8IE9QX1NI
X0ZEKSB8IChmcyA8PCBPUF9TSF9GUykpOworICAgIH0KKwogICAgIHZvaWQgYWRkZChGUFJlZ2lz
dGVySUQgZmQsIEZQUmVnaXN0ZXJJRCBmcywgRlBSZWdpc3RlcklEIGZ0KQogICAgIHsKICAgICAg
ICAgZW1pdEluc3QoMHg0NjIwMDAwMCB8IChmZCA8PCBPUF9TSF9GRCkgfCAoZnMgPDwgT1BfU0hf
RlMpIHwgKGZ0IDw8IE9QX1NIX0ZUKSk7CmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvYXNzZW1ibGVyL01hY3JvQXNzZW1ibGVyTUlQUy5oIGIvU291cmNlL0phdmFTY3JpcHRDb3Jl
L2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxlck1JUFMuaAppbmRleCAxNGFjMGQwM2IwMGI1Y2YxOWQ0
OTY3YWZiZDU5YmQ1MzZiYjgxMzcxLi41OTkxNjQ0MzUxOTljOWNlYmU1OWE0ZmQxYjE0NjVlOGQ5
ZDJkY2E2IDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVyL01hY3Jv
QXNzZW1ibGVyTUlQUy5oCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFj
cm9Bc3NlbWJsZXJNSVBTLmgKQEAgLTY0MSwxMCArNjQxLDEwIEBAIHB1YmxpYzoKICAgICB7CiAg
ICAgICAgIG1fYXNzZW1ibGVyLnNxcnRkKGRzdCwgc3JjKTsKICAgICB9Ci0gICAgCi0gICAgdm9p
ZCBhYnNEb3VibGUoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpCisKKyAgICB2b2lkIGFic0Rv
dWJsZShGUFJlZ2lzdGVySUQgc3JjLCBGUFJlZ2lzdGVySUQgZHN0KQogICAgIHsKLSAgICAgICAg
UkVMRUFTRV9BU1NFUlRfTk9UX1JFQUNIRUQoKTsKKyAgICAgICAgbV9hc3NlbWJsZXIuYWJzZChk
c3QsIHNyYyk7CiAgICAgfQogCiAgICAgTk9fUkVUVVJOX0RVRV9UT19DUkFTSCB2b2lkIGNlaWxE
b3VibGUoRlBSZWdpc3RlcklELCBGUFJlZ2lzdGVySUQpCg==
</data>

          </attachment>
          <attachment
              isobsolete="0"
              ispatch="1"
              isprivate="0"
          >
            <attachid>280338</attachid>
            <date>2016-06-02 10:47:24 -0700</date>
            <delta_ts>2016-06-06 11:07:54 -0700</delta_ts>
            <desc>Patch</desc>
            <filename>bug-158206-20160602124843.patch</filename>
            <type>text/plain</type>
            <size>2720</size>
            <attacher name="Guillaume Emont">guijemont</attacher>
            
              <data encoding="base64">U3VidmVyc2lvbiBSZXZpc2lvbjogMjAxNTUwCmRpZmYgLS1naXQgYS9Tb3VyY2UvSmF2YVNjcmlw
dENvcmUvQ2hhbmdlTG9nIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL0NoYW5nZUxvZwppbmRleCBm
Mzc2NzRiOGVmMTA5M2UxN2ZjZDIzY2YzZDhmMzUwMzVjNDlmMDc5Li44YTcwMmQ5ZTY4NTBhMjFk
YWYyZjY0NWZkZWU4OTc5M2NmZTg0MGVmIDEwMDY0NAotLS0gYS9Tb3VyY2UvSmF2YVNjcmlwdENv
cmUvQ2hhbmdlTG9nCisrKyBiL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9DaGFuZ2VMb2cKQEAgLTEs
MyArMSwxOCBAQAorMjAxNi0wNi0wMSAgR3VpbGxhdW1lIEVtb250ICA8Z3VpamVtb250QGlnYWxp
YS5jb20+CisKKyAgICAgICAgW2pzY11bbWlwc10gSW1wbGVtZW50IGFic0RvdWJsZSgpCisgICAg
ICAgIGh0dHBzOi8vYnVncy53ZWJraXQub3JnL3Nob3dfYnVnLmNnaT9pZD0xNTgyMDYKKworICAg
ICAgICBSZXZpZXdlZCBieSBOT0JPRFkgKE9PUFMhKS4KKworICAgICAgICBJbXBsZW1lbnQgYWJz
RG91YmxlKCkgZm9yIE1JUFMuIFRoaXMgaXMgbmVlZGVkIGJlY2F1c2UgTWF0aC5wb3coKSB1c2Vz
CisgICAgICAgIGl0IHNpbmNlIHIyMDAyMDguCisKKyAgICAgICAgKiBhc3NlbWJsZXIvTUlQU0Fz
c2VtYmxlci5oOgorICAgICAgICAoSlNDOjpNSVBTQXNzZW1ibGVyOjphYnNkKToKKyAgICAgICAg
KiBhc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmg6CisgICAgICAgIChKU0M6Ok1hY3JvQXNz
ZW1ibGVyTUlQUzo6YWJzRG91YmxlKToKKwogMjAxNi0wNS0zMSAgWXVzdWtlIFN1enVraSAgPHV0
YXRhbmUudGVhQGdtYWlsLmNvbT4KIAogICAgICAgICBbSlNDXSBEcm9wICJyZXBsYWNlIiBmcm9t
IEpTQ19DT01NT05fUFJJVkFURV9JREVOVElGSUVSU19FQUNIX1dFTExfS05PV05fU1lNQk9MX05P
VF9JTVBMRU1FTlRFRF9ZRVQKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3Nl
bWJsZXIvTUlQU0Fzc2VtYmxlci5oIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9N
SVBTQXNzZW1ibGVyLmgKaW5kZXggZGM1MTg0MzNlYmU2YjI3M2ViZjZmOGVjZjE4YmY0NmRlZTc5
ODEwMS4uNjM2NzNlMmVhYTViMDM4ZTI1ZDdkOTI0OTBkYmNhYmE1NWY2YmJkNCAxMDA2NDQKLS0t
IGEvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NSVBTQXNzZW1ibGVyLmgKKysrIGIv
U291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NSVBTQXNzZW1ibGVyLmgKQEAgLTU0Nyw2
ICs1NDcsMTEgQEAgcHVibGljOgogICAgICAgICBlbWl0SW5zdCgweDQ2MjAwMDA0IHwgKGZkIDw8
IE9QX1NIX0ZEKSB8IChmcyA8PCBPUF9TSF9GUykpOwogICAgIH0KIAorICAgIHZvaWQgYWJzZChG
UFJlZ2lzdGVySUQgZmQsIEZQUmVnaXN0ZXJJRCBmcykKKyAgICB7CisgICAgICAgIGVtaXRJbnN0
KDB4NDYyMDAwMDUgfCAoZmQgPDwgT1BfU0hfRkQpIHwgKGZzIDw8IE9QX1NIX0ZTKSk7CisgICAg
fQorCiAgICAgdm9pZCBtb3ZkKEZQUmVnaXN0ZXJJRCBmZCwgRlBSZWdpc3RlcklEIGZzKQogICAg
IHsKICAgICAgICAgZW1pdEluc3QoMHg0NjIwMDAwNiB8IChmZCA8PCBPUF9TSF9GRCkgfCAoZnMg
PDwgT1BfU0hfRlMpKTsKZGlmZiAtLWdpdCBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJs
ZXIvTWFjcm9Bc3NlbWJsZXJNSVBTLmggYi9Tb3VyY2UvSmF2YVNjcmlwdENvcmUvYXNzZW1ibGVy
L01hY3JvQXNzZW1ibGVyTUlQUy5oCmluZGV4IDE0YWMwZDAzYjAwYjVjZjE5ZDQ5NjdhZmJkNTli
ZDUzNmJiODEzNzEuLjZhYmU0YjZiMGYwMGRmOTliZTE1NjdmODBhODUwZDZjMmQzYzYzZGYgMTAw
NjQ0Ci0tLSBhL1NvdXJjZS9KYXZhU2NyaXB0Q29yZS9hc3NlbWJsZXIvTWFjcm9Bc3NlbWJsZXJN
SVBTLmgKKysrIGIvU291cmNlL0phdmFTY3JpcHRDb3JlL2Fzc2VtYmxlci9NYWNyb0Fzc2VtYmxl
ck1JUFMuaApAQCAtNjQxLDEwICs2NDEsMTAgQEAgcHVibGljOgogICAgIHsKICAgICAgICAgbV9h
c3NlbWJsZXIuc3FydGQoZHN0LCBzcmMpOwogICAgIH0KLSAgICAKLSAgICB2b2lkIGFic0RvdWJs
ZShGUFJlZ2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkKKworICAgIHZvaWQgYWJzRG91YmxlKEZQUmVn
aXN0ZXJJRCBzcmMsIEZQUmVnaXN0ZXJJRCBkc3QpCiAgICAgewotICAgICAgICBSRUxFQVNFX0FT
U0VSVF9OT1RfUkVBQ0hFRCgpOworICAgICAgICBtX2Fzc2VtYmxlci5hYnNkKGRzdCwgc3JjKTsK
ICAgICB9CiAKICAgICBOT19SRVRVUk5fRFVFX1RPX0NSQVNIIHZvaWQgY2VpbERvdWJsZShGUFJl
Z2lzdGVySUQsIEZQUmVnaXN0ZXJJRCkKQEAgLTEyNzUsNyArMTI3NSwxNiBAQCBwdWJsaWM6CiAg
ICAgICAgIHJldHVybiBmYWxzZTsKICNlbmRpZgogICAgIH0KLSAgICBzdGF0aWMgYm9vbCBzdXBw
b3J0c0Zsb2F0aW5nUG9pbnRBYnMoKSB7IHJldHVybiBmYWxzZTsgfQorCisgICAgc3RhdGljIGJv
b2wgc3VwcG9ydHNGbG9hdGluZ1BvaW50QWJzKCkKKyAgICB7CisjaWYgV1RGX01JUFNfRE9VQkxF
X0ZMT0FUICYmIFdURl9NSVBTX0lTQV9BVF9MRUFTVCgyKQorICAgICAgICByZXR1cm4gdHJ1ZTsK
KyNlbHNlCisgICAgICAgIHJldHVybiBmYWxzZTsKKyNlbmRpZgorICAgIH0KKwogICAgIHN0YXRp
YyBib29sIHN1cHBvcnRzRmxvYXRpbmdQb2ludFJvdW5kaW5nKCkgeyByZXR1cm4gZmFsc2U7IH0K
IAogICAgIC8vIFN0YWNrIG1hbmlwdWxhdGlvbiBvcGVyYXRpb25zOgo=
</data>

          </attachment>
      

    </bug>

</bugzilla>