| Summary: | ARM32 iOS: JSC Test math.js fails | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Michael Saboff <msaboff> | ||||
| Component: | JavaScriptCore | Assignee: | Michael Saboff <msaboff> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | ||||||
| Priority: | P2 | ||||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | All | ||||||
| OS: | All | ||||||
| Attachments: |
|
||||||
|
Description
Michael Saboff
2014-08-26 11:38:20 PDT
This happens on 32 bit ARM code on iOS, even if that code is executed on an ARM64 device. Number.MIN_VALUE is coded as a constant in NumberConstructor.cpp as 5E-324. The issue seems to be that the ceil() and floor() library routines on iOS return the wrong answer for 5E-324 and -5E-324 respectively. I verified this with a test program. I checked to see if the issue was the flush to zero of denormalized numbers in ARM, but the FZ bit of the FPSCR register is 0 (Flush-to-zero disabled). That bit is cleared in jsc.cpp around line 1100. Created attachment 237666 [details]
Patch
Comment on attachment 237666 [details]
Patch
r=me
Committed r173330: <http://trac.webkit.org/changeset/173330> |