Closed Bug 916912 Opened 11 years ago Closed 11 years ago

IonMonkey: convert away from void* usage

Categories

(Core :: JavaScript Engine, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla27

People

(Reporter: luke, Assigned: luke)

References

Details

Attachments

(4 files)

This bug sweeps up some of the cases remaining after bug 914814 that don't use ImmPtr for embedding pointers in generated code.
Attached patch rm-static-double (deleted) — Splinter Review
Rather than switching to ImmPtr (which will require special treatment to in bug 900669), this patch removes loadStatic(Double|Float), replacing them with loadConstant(Double|Float). This should generate equivalent code with the only difference being slightly more memory to store the double/float (which seems negligible).
Attachment #805464 - Flags: review?(jdemooij)
Attached patch add-constant-double (deleted) — Splinter Review
In one other case, we load from static doubles for the operand to an add. This patch adds an addConstant(Double|Float) to achieve the same effect.
Attachment #805465 - Flags: review?(jdemooij)
Attached patch rm-operand-void-ptr (deleted) — Splinter Review
This patch removes the void*-taking overload of Operand (requiring instead Operand(AbsoluteAddress(ptr)). Several of these cases involve generating loads from an address that is patched in later. Since this is fine for serialization (the patching will also happen after deserialization), I introduced a new PatchedAbsoluteAddress. The key distinction is that, while AbsoluteAddress/ImmPtr will JS_ASSERT(!IsCompilingAsmJS()), PatchedAbsoluteAddress won't.
Attachment #805469 - Flags: review?(jdemooij)
Attachment #805464 - Flags: review?(jdemooij) → review+
Attachment #805465 - Flags: review?(jdemooij) → review+
Attachment #805469 - Flags: review?(jdemooij) → review+
Attached patch rm-void-ptr-jumps (deleted) — Splinter Review
This patch (I think the last one) switches j/addPendingJump to use ImmPtr.
Attachment #806060 - Flags: review?(jdemooij)
Attachment #806060 - Flags: review?(jdemooij) → 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: