Skip to content
  • ggaren@apple.com's avatar
    Refactored String.prototype.replace · 37faf5f6
    ggaren@apple.com authored
    https://bugs.webkit.org/show_bug.cgi?id=75114
            
    Reviewed by Darin Adler.
    
    No performance difference.
            
    I think this is a step toward removing -fomit-frame-pointer.
    
    * runtime/JSString.cpp:
    * runtime/JSString.h: Removed the test and special case for a single-character
    search string because the standard path does this test and special case
    for us. (As an aside, if we do come up with a unique single-character
    replace optimization in future, it probably belongs in the replace function,
    and not in JSString.)
    
    * runtime/StringPrototype.cpp:
    (JSC::stringProtoFuncReplace): Split this mega-sized function into:
    (JSC::replaceUsingStringSearch): - This reasonably sized function, and
    (JSC::replaceUsingRegExpSearch): - This still mega-sized function.
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@103626 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    37faf5f6