[Webkit-unassigned] [Bug 21727] REGRESSION: the JavaScriptCore test js1_5/Regress/regress-159334.js takes extremely long to finish in Debug builds

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 20 13:24:43 PDT 2008


https://bugs.webkit.org/show_bug.cgi?id=21727


barraclough at apple.com changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED




------- Comment #3 from barraclough at apple.com  2008-10-20 13:24 PDT -------
(In reply to comment #1)
> The problem is that CodeBlock::getStubInfo is N^2, and Gavin's recent change to
> cache function calls caused much heavier reliance on it.
> 
> We should:
> 
> 1. Change getStubInfo to use a hashtable, so it's no longer N^2

Since the data is inherently sorted, simply binary chopping may make sense
here, in the case of the call no search is actually necessary, we can simply
pass a pointer to the function.

> 2. Stop using the structureIDInstructions vector to hold data other than
> instructions whose StructureIDs need reference counting, so
> structureIDInstructions returns to making sense.

I'm not sure I a benefit in holding the data required for property access
caching in the interpreter and property access caching in CTI code in separate
data structures, and it will mean performing two allocations to do so.  I do
think a sensible division will be to move the information on calls into a
separate data structure, since then these can be searched separately.  As such,
we may want to look at renaming structureIDInstructions, since really I think
we want this to be specifically data required for property access instructions.


-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list