Bug 135217

Summary: Allocate the whole RegExpMatchesArray backing store up front.
Product: WebKit Reporter: Andreas Kling <kling>
Component: JavaScriptCoreAssignee: Andreas Kling <kling>
Status: RESOLVED FIXED    
Severity: Normal CC: fpizlo, ggaren, kling, mhahnenberg
Priority: P2 Keywords: Performance
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch ggaren: review+

Andreas Kling
Reported 2014-07-23 15:24:28 PDT
Have patch.
Attachments
Patch (2.42 KB, patch)
2014-07-23 15:25 PDT, Andreas Kling
ggaren: review+
Andreas Kling
Comment 1 2014-07-23 15:25:01 PDT
Geoffrey Garen
Comment 2 2014-07-25 11:22:58 PDT
Comment on attachment 235385 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=235385&action=review r=me > Source/JavaScriptCore/runtime/RegExpMatchesArray.cpp:55 > +static inline Butterfly* createRegExpMatchesArrayButterfly(VM& vm, JSCell* intendedOwner, unsigned initialLength) > +{ > + Butterfly* butterfly = Butterfly::create( > + vm, intendedOwner, 0, 0, true, indexingHeaderForArray(initialLength, initialLength), > + ArrayStorage::sizeFor(initialLength)); > + ArrayStorage* storage = butterfly->arrayStorage(); > + storage->m_indexBias = 0; > + storage->m_sparseMap.clear(); > + storage->m_numValuesInVector = 0; > + return butterfly; > +} Maybe this function should go in JSArray.h?
Andreas Kling
Comment 3 2014-08-14 20:22:19 PDT
Note You need to log in before you can comment on or make changes to this bug.