Closed Bug 839080 Opened 12 years ago Closed 12 years ago

BaselineCompiler: Compile object initializer opcodes

Categories

(Core :: JavaScript Engine, defect)

Other Branch
x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: bhackett1024, Assigned: bhackett1024)

References

Details

Attachments

(1 file)

JSOP_NEWOBJECT, JSOP_NEWINIT, JSOP_INITELEM and JSOP_INITPROP are all handled by JM but not by Baseline. NEWINIT and INITELEM can be stubbed, NEWOBJECT should behave in a similar fashion to NEWARRAY, INITPROP can use a SETPROP cache, slightly modified so that it knows it is doing a define and not a set.
Attached patch patchSplinter Review
Patch reusing SETPROP and SETELEM logic for INITPROP and INITELEM, as much as possible. I get one new failure with this patch in tests/basic/expression-autopsy, but this seems unrelated (the involved script contains a NEWOBJECT so wasn't previously being compiled by baseline).
Attachment #711420 - Flags: review?(kvijayan)
Comment on attachment 711420 [details] [diff] [review] patch Review of attachment 711420 [details] [diff] [review]: ----------------------------------------------------------------- This actually does look cleaner than going the ScratchValue route. Bailout shouldn't be a problem either. I also like the approach for NEWOBJECT of just ImmGCPtring the template object as a parameter to the IC chain. I'll make a bug to change NEWARRAY to operate the same way.
Attachment #711420 - Flags: review?(kvijayan) → review+
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: