It is doing a slow hashtable lookup. We probably need some local cache for recently used values.
Henri, do you have time to take a look?
Priority: -- → P1
I'll take a look. My preliminary opinion is that we should complicate the HTML5 parser my moving the node creation function pointers onto nsHtml5ElementName and delete nsHTMLTags.cpp.
Assignee: nobody → hsivonen
Whatever works. If moving stuff to HTML5 Parser is too complicated, a local cache might be good enough. We have such cache for example for content lists, since doing a hashtable lookup is too slow http://searchfox.org/mozilla-central/rev/9af9b1c7946ebef6056d2ee4c368d496395cf1c8/dom/base/nsContentList.cpp#191-193,201-204
Known todo: Supporting the Tor prefs for disabling SVG and disabling MathML.
The logic for checking if SVG or MathML is disabled should probably move from nsNameSpaceManager.cpp to nsNodeInfoManager.cpp.
The patches here apply on top of those in bug 1266495.
I'll be away from Bugzilla until July 31st, so if there's a Quantum Flow need to drive this patch in the tree before that, I'm OK with someone else getting this landed. Otherwise, I'll pursue landing this when I'm back.
Comment on attachment 8884295 [details] [diff] [review] Java changes I'm going with a narrower fix than what the report here identifies as the problem, so moving to the narrower dependency: bug 483155.
Attachment #8884295 - Attachment is obsolete: true
Olli, do you think we should keep this open? Bug 483155 may have removed the need to do anything here.
Don't see this stuff in Speedometer perf profiles atm.
Status: NEW → RESOLVED
Closed: 9 months ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.