5 ms·
They mean that each function does relatively little work, so to render a given web page, the number of function calls (and therefore vtable lookups) is higher t
by jrogers65 14y ago
They mean that each function does relatively little work, so to render a given web page, the number of function calls (and therefore vtable lookups) is higher than in other browsers. This translates to more overheads and slower execution.
- jv- 14y agoDoesn't the compiler inline this kind of functions?
- timv 14y agoThe article's claim is that the inheritance model in WebKit is too complex for the compiler to be able to inline it. the extensive use of dynamic class inheritance prevents the compiler from efficiently inlining short functions as necessary
- bzbarsky 14y agoYou can't easily inline _virtual_ functions. MSVC with PGO will do it, by inserting a guard on the vtable pointer and inlining the most common implementation. But you still take the possible cache miss of reading the vtable pointer, of course. And the other commonly used compilers (clang and gcc) don't do anything like this, even with PGO.