Closed
Bug 773548
Opened 12 years ago
Closed 12 years ago
Codegen metadata on DOM methods for JIT optimization
Categories
(Core :: DOM: Core & HTML, defect)
Tracking
()
RESOLVED
FIXED
mozilla17
People
(Reporter: efaust, Assigned: efaust)
References
Details
Attachments
(2 files)
8.34 KB,
patch
|
peterv
:
review+
|
Details | Diff | Splinter Review |
2.08 KB,
patch
|
peterv
:
review+
|
Details | Diff | Splinter Review |
As was done in bug 747287, codegen changes will need to be done to attach metadata to all method accessors.
Assignee | ||
Comment 1•12 years ago
|
||
Assignee | ||
Comment 2•12 years ago
|
||
Applies in light of patch in bug 775788.
Attachment #644091 -
Flags: review?(peterv)
Comment 3•12 years ago
|
||
Comment on attachment 644088 [details] [diff] [review] Do specialized codegen for DOM methods. Review of attachment 644088 [details] [diff] [review]: ----------------------------------------------------------------- ::: dom/bindings/Codegen.py @@ +3290,5 @@ > + self.member.identifier.name) > + # Setters are always fallible, since they have to do a typed unwrap. > + result += self.defineJitInfo(setterinfo, setter, False) > + return result > + elif self.member.isMethod(): No else after return @@ +3298,5 @@ > + self.member.identifier.name) > + # Method, much like setters, are always fallible > + result = self.defineJitInfo(methodinfo, method, False) > + return result > + else: Same here
Comment 4•12 years ago
|
||
Comment on attachment 644088 [details] [diff] [review] Do specialized codegen for DOM methods. Review of attachment 644088 [details] [diff] [review]: ----------------------------------------------------------------- What Ms2ger said. ::: dom/bindings/Codegen.py @@ +3279,5 @@ > def define(self): > + if self.member.isAttr(): > + getterinfo = ("%s_getterinfo" % self.member.identifier.name) > + getter = ("(JSJitPropertyOp)specialized_get_%s" % > + self.member.identifier.name) Line this up correctly. @@ +3286,5 @@ > + result = self.defineJitInfo(getterinfo, getter, getterinfal) > + if not self.member.readonly: > + setterinfo = ("%s_setterinfo" % self.member.identifier.name) > + setter = ("(JSJitPropertyOp)specialized_set_%s" % > + self.member.identifier.name) Same here. @@ +3294,5 @@ > + elif self.member.isMethod(): > + methodinfo = ("%s_methodinfo" % self.member.identifier.name) > + #XXXefaust Should be JSJitMethodOp, after centralization, but lazy for now > + method = ("(JSJitPropertyOp)specialized_%s" % > + self.member.identifier.name) Same here.
Attachment #644088 -
Flags: review?(peterv) → review+
Updated•12 years ago
|
Attachment #644091 -
Flags: review?(peterv) → review+
Assignee | ||
Comment 5•12 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/d84df7edf0de https://hg.mozilla.org/integration/mozilla-inbound/rev/09a3938bed6d
Comment 6•12 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/d84df7edf0de https://hg.mozilla.org/mozilla-central/rev/09a3938bed6d
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla17
Updated•5 years ago
|
Component: DOM → DOM: Core & HTML
You need to log in
before you can comment on or make changes to this bug.
Description
•