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!
Created attachment 198595 [details] [diff] [review] One possibility 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.
I checked this in earlier today, it didn't seem to affect Tp.
+ing - need to squash all Tp regressions...
Flags: blocking1.9? → blocking1.9+
Priority: -- → P2
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
Last Resolved: 10 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.