Bug 241542
| Summary: | Improve event handling speed for nodes by moving refcount and flags from Node to EventTarget | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Darin Adler <darin> |
| Component: | DOM | Assignee: | Darin Adler <darin> |
| Status: | RESOLVED DUPLICATE | ||
| Severity: | Normal | CC: | cdumez, heycam, webkit-bug-importer |
| Priority: | P2 | Keywords: | InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
Darin Adler
Cameron and Chris have been discussing and experimenting with this, and now I have a specific proposal I want to try.
We’ll move the NodeFlags and node reference count from Node to EventTarget, and also make many EventTarget functions handle things without a virtual function call, at least when the target is a node, most importantly ref and deref.
| Attachments | ||
|---|---|---|
| Add attachment proposed patch, testcase, etc. |
Cameron McCormack (:heycam)
I had a patch that does pretty much that, but then it didn't help with the benchmark I was targeting (Speedometer).
Cameron McCormack (:heycam)
I've just attached the most recent patch I tried to bug 238654. As I say, it didn't help when I tested it against Speedometer. Which surprised me, but maybe the compiler/linker is able to devirtualize, or the virtual calls are less expensive than I imagined.
Radar WebKit Bug Importer
<rdar://problem/94956595>
Darin Adler
I probably should have used the bug you already had.
Darin Adler
But I am still optimistic this will work!
Darin Adler
*** This bug has been marked as a duplicate of bug 238654 ***