Closed Bug 585926 Opened 14 years ago Closed 14 years ago

check-math-partial-sums.js failed with JIT on SPARC

Categories

(Core :: JavaScript Engine, defect)

Sun
OpenSolaris
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: ginnchen+exoracle, Assigned: leon.sha)

Details

(Whiteboard: fixed-in-nanojit, fixed-in-tamarin)

Attachments

(1 file, 1 obsolete file)

(deleted), patch
wmaddox
: review+
Details | Diff | Splinter Review
It fails before fatval is landed, so it is not a recent regression.
Attached patch patch (obsolete) (deleted) — Splinter Review
Use smulcc instead of mulx to handle multiply overflow. Overflow after SMUL / SMULcc is indicated by Y not equal to (r[rd] >> 31), where “>>” indicates 32- bit arithmetic right shift.
Assignee: general → leon.sha
Status: NEW → ASSIGNED
Attachment #464716 - Flags: review?(edwsmith)
Attachment #464716 - Flags: review?(edwsmith) → review?(wmaddox)
Comment on attachment 464716 [details] [diff] [review] patch + else if (op == LIR_muli || op == LIR_mulxovi || op == LIR_muljovi) { + SUBCC(L4, L6, L4); + SRAI(rr, 31, L6); + RDY(L4); + SMULCC(rr, rb, rr); R-: It looks like you are making LIR_muli, which need not be checked for overflow, pay the cost of three additional instructions.
Attachment #464716 - Flags: review?(wmaddox) → review-
Attached patch patch (deleted) — Splinter Review
Attachment #464716 - Attachment is obsolete: true
Attachment #465060 - Flags: review?(wmaddox)
Attachment #465060 - Flags: review?(wmaddox) → review+
Whiteboard: fixed-in-nanojit
Whiteboard: fixed-in-nanojit → fixed-in-nanojit, fixed-in-tamarin
Status: ASSIGNED → RESOLVED
Closed: 14 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: