Closed Bug 311151 Opened 19 years ago Closed 16 years ago

bug 311090's patch caused a 0.5% Tp jump

Categories

(Core :: DOM: Core & HTML, defect, P2)

x86
Linux
defect

Tracking

()

RESOLVED INVALID

People

(Reporter: mrbkap, Assigned: mrbkap)

References

Details

(Keywords: perf, regression)

Attachments

(1 file)

bz pointed out in bug 311090, comment 9 that that bug's patch caused a .5% Tp
regression. I'm filing this bug to get that .5% back!
Attached patch One possibilitySplinter Review
This is one possibility for the fix here. It basically restores the fast path
that was removed in bug 311090. I have a better and more general fix in mind
(to allow the more-derived classes to catch the NewResolve hook and call a
common base function on the generic class, with the generic class using the
slow ::JS_GetProperty method), but I don't have the time to implement that
right now.
Comment on attachment 198595 [details] [diff] [review]
One possibility

>Index: dom/src/base/nsDOMClassInfo.cpp
>+    nsCOMPtr<nsIDOMNodeList> map = do_QueryInterface(wrapper->Native());

do_QueryWrappedNative(wrapper)

r+sr=bzbarsky with that.
Attachment #198595 - Flags: superreview+
Attachment #198595 - Flags: review+
I checked this in earlier today, it didn't seem to affect Tp.
Flags: blocking1.9?
Keywords: perf, regression
+ing - need to squash all Tp regressions...
Flags: blocking1.9? → blocking1.9+
Priority: -- → P2
Flags: wanted-next+
Flags: tracking1.9+
Flags: blocking1.9-
After three years, it's doubtful we'll be able to even know if we've reclaimed this. Also, bz did a bunch of work recently to improve perf around here so I'm closing this.
Status: NEW → RESOLVED
Closed: 16 years ago
Resolution: --- → INVALID
Component: DOM → DOM: Core & HTML
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: