diff options
Diffstat (limited to 'Source/JavaScriptCore/runtime/RegExpCache.cpp')
-rw-r--r-- | Source/JavaScriptCore/runtime/RegExpCache.cpp | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/Source/JavaScriptCore/runtime/RegExpCache.cpp b/Source/JavaScriptCore/runtime/RegExpCache.cpp index 1ab3f5f51..8f4660a78 100644 --- a/Source/JavaScriptCore/runtime/RegExpCache.cpp +++ b/Source/JavaScriptCore/runtime/RegExpCache.cpp @@ -29,7 +29,7 @@ #include "config.h" #include "RegExpCache.h" -#include "Operations.h" +#include "JSCInlines.h" #include "RegExpObject.h" #include "StrongInlines.h" @@ -46,7 +46,7 @@ RegExp* RegExpCache::lookupOrCreate(const String& patternString, RegExpFlags fla m_vm->addRegExpToTrace(regExp); #endif - weakAdd(m_weakCache, key, PassWeak<RegExp>(regExp, this)); + weakAdd(m_weakCache, key, Weak<RegExp>(regExp, this)); return regExp; } @@ -60,7 +60,6 @@ void RegExpCache::finalize(Handle<Unknown> handle, void*) { RegExp* regExp = static_cast<RegExp*>(handle.get().asCell()); weakRemove(m_weakCache, regExp->key(), regExp); - regExp->invalidateCode(); } void RegExpCache::addToStrongCache(RegExp* regExp) @@ -74,7 +73,7 @@ void RegExpCache::addToStrongCache(RegExp* regExp) m_nextEntryInStrongCache = 0; } -void RegExpCache::invalidateCode() +void RegExpCache::deleteAllCode() { for (int i = 0; i < maxStrongCacheableEntries; i++) m_strongCache[i].clear(); @@ -85,7 +84,7 @@ void RegExpCache::invalidateCode() RegExp* regExp = it->value.get(); if (!regExp) // Skip zombies. continue; - regExp->invalidateCode(); + regExp->deleteCode(); } } |