Skip to content
  • oliver@apple.com's avatar
    2011-05-25 Oliver Hunt <oliver@apple.com> · 4872d097
    oliver@apple.com authored
            Reviewed by Geoffrey Garen.
    
            Make RegExp GC allocated
            https://bugs.webkit.org/show_bug.cgi?id=61490
    
            Make RegExp GC allocated.  Basically mechanical change to replace
            most use of [Pass]RefPtr<RegExp> with RegExp* or WriteBarrier<RegExp>
            where actual ownership happens.
    
            Made the RegExpCache use Strong<> references currently to avoid any
            changes in behaviour.
    
            * JavaScriptCore.exp:
            * bytecode/CodeBlock.cpp:
            (JSC::CodeBlock::visitAggregate):
            * bytecode/CodeBlock.h:
            (JSC::CodeBlock::addRegExp):
            * bytecompiler/BytecodeGenerator.cpp:
            (JSC::BytecodeGenerator::addRegExp):
            (JSC::BytecodeGenerator::emitNewRegExp):
            * bytecompiler/BytecodeGenerator.h:
            * runtime/JSCell.h:
            * runtime/JSGlobalData.cpp:
            (JSC::JSGlobalData::JSGlobalData):
            (JSC::JSGlobalData::clearBuiltinStructures):
            (JSC::JSGlobalData::addRegExpToTrace):
            * runtime/JSGlobalData.h:
            * runtime/JSGlobalObject.cpp:
            (JSC::JSGlobalObject::reset):
            * runtime/RegExp.cpp:
            (JSC::RegExp::RegExp):
            (JSC::RegExp::create):
            (JSC::RegExp::invalidateCode):
            * runtime/RegExp.h:
            (JSC::RegExp::createStructure):
            * runtime/RegExpCache.cpp:
            (JSC::RegExpCache::lookupOrCreate):
            (JSC::RegExpCache::create):
            * runtime/RegExpCache.h:
            * runtime/RegExpConstructor.cpp:
            (JSC::constructRegExp):
            * runtime/RegExpObject.cpp:
            (JSC::RegExpObject::RegExpObject):
            (JSC::RegExpObject::visitChildren):
            * runtime/RegExpObject.h:
            (JSC::RegExpObject::setRegExp):
            (JSC::RegExpObject::RegExpObjectData::RegExpObjectData):
            * runtime/RegExpPrototype.cpp:
            (JSC::RegExpPrototype::RegExpPrototype):
            (JSC::regExpProtoFuncCompile):
            * runtime/RegExpPrototype.h:
            * runtime/StringPrototype.cpp:
            (JSC::stringProtoFuncMatch):
            (JSC::stringProtoFuncSearch):
    2011-05-25  Oliver Hunt  <oliver@apple.com>
    
            Reviewed by Geoffrey Garen.
    
            Make RegExp GC allocated
            https://bugs.webkit.org/show_bug.cgi?id=61490
    
            RegExp is GC'd so we don't need the RefPtr shenanigans anymore.
    
            * bindings/js/SerializedScriptValue.cpp:
            (WebCore::CloneDeserializer::readTerminal):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@87343 268f45cc-cd09-0410-ab3c-d52691b4dbfc
    4872d097