Closed Bug 915934 Opened 11 years ago Closed 11 years ago

IonMonkey: clean-ups for UInt32ToDouble

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla27

People

(Reporter: bbouvier, Assigned: bbouvier)

Details

Attachments

(1 file)

Per comment 22 in bug 913282, (In reply to Hannes Verschore [:h4writer] from comment #22) > > (Value &) v could be typed as a double, but still fit into a float. So I > think we want to fold that too? > > > _(UInt32ToDouble) \ > > + _(UInt32ToFloat32) \ > > Since this is only used in odinmonkey, this should be AsmJSUInt32ToFloat32 > > Also I think it's better to create convertUInt32ToFloat32(input, output, > temp) for the x86 variant. And move input to temp, when the registers aren't > the same. That way it doesn't clobber input register anymore, unnoticeable. > - fold also constant double Value - rename UInt32ToDouble into AsmJSUInt32ToDouble - make the mov of visitUInt32ToDouble happen in convertUInt32ToDouble
Attached patch cleanups (deleted) — Splinter Review
Changing the convertUInt32ToDouble so that it takes more arguments was slightly more complicated, as there are some calls in IonMacroAssembler with a non trivial path, so I preferred not changing the function. Also, AsmJS stores uint32 in int32, so there actually can't be a Double value during constant folding.
Attachment #804151 - Flags: review?(hv1989)
Comment on attachment 804151 [details] [diff] [review] cleanups Review of attachment 804151 [details] [diff] [review]: ----------------------------------------------------------------- Thanks!
Attachment #804151 - Flags: review?(hv1989) → review+
Status: ASSIGNED → RESOLVED
Closed: 11 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla27
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: