[Webkit-unassigned] [Bug 179446] New: [JSC][MIPS] Use fcsr to check the validity of the result of trunc.w.d

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Nov 8 14:11:41 PST 2017


https://bugs.webkit.org/show_bug.cgi?id=179446

            Bug ID: 179446
           Summary: [JSC][MIPS] Use fcsr to check the validity of the
                    result of trunc.w.d
           Product: WebKit
           Version: Other
          Hardware: Other
                OS: Linux
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: JavaScriptCore
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: guijemont at igalia.com

The trunc.w.d mips instruction should give a 0x7fffffff result when the source value is Infinity, NaN, or rounds to an integer outside the range -2^31 to 2^31 -1. This is what branchTruncateDoubleToInt32() and branchTruncateDoubleToUInt32() have been relying on. It turns out that this assumption is not true on some CPUs, including on the ci20 on which we run the testbot (we get 0x80000000 instead). We should the invalid operation cause bit instead to check whether the source value could be properly truncated. This requires the addition of the cfc1 instruction, as well as the special registers that can be used with it (control registers of CP1).

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20171108/ee54fb64/attachment.html>


More information about the webkit-unassigned mailing list