summaryrefslogtreecommitdiffstats
path: root/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp
diff options
context:
space:
mode:
authorKent Hansen <khansen@trolltech.com>2009-06-29 14:33:11 (GMT)
committerKent Hansen <khansen@trolltech.com>2009-06-29 14:33:11 (GMT)
commitec77bff0731d9388d5c8abea782468a1ad16b633 (patch)
tree63c6452eeb32deaebe1ca5c839c2a4512cac3e0f /src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp
parent92a708a2e6271bbfeac9a6e80cf30aba8fd092b9 (diff)
parent4a82d7cc185bd98ec8183fb0ccadefd3196b3ee2 (diff)
downloadQt-ec77bff0731d9388d5c8abea782468a1ad16b633.zip
Qt-ec77bff0731d9388d5c8abea782468a1ad16b633.tar.gz
Qt-ec77bff0731d9388d5c8abea782468a1ad16b633.tar.bz2
Merge branch 'qtwebkit-4.6-staging' into qtscript-jsc-backend
Conflicts: src/script/api/qscriptable.cpp src/script/api/qscriptclasspropertyiterator.cpp src/script/api/qscriptcontext.cpp src/script/api/qscriptengine.h src/script/api/qscriptengineagent.cpp src/script/api/qscriptextensionplugin.cpp src/script/api/qscriptvalue.h src/script/api/qscriptvalueiterator.cpp src/script/parser/qscript.g src/script/parser/qscriptast.cpp src/script/parser/qscriptast_p.h src/script/parser/qscriptastvisitor_p.h src/script/parser/qscriptgrammar.cpp src/script/parser/qscriptgrammar_p.h src/script/parser/qscriptlexer.cpp src/script/parser/qscriptlexer_p.h src/script/parser/qscriptparser.cpp src/script/parser/qscriptparser_p.h src/script/parser/qscriptsyntaxchecker.cpp src/script/qscriptable.h src/script/qscriptable_p.h src/script/qscriptarray_p.h src/script/qscriptasm.cpp src/script/qscriptasm_p.h src/script/qscriptastfwd_p.h src/script/qscriptastvisitor.cpp src/script/qscriptbuffer_p.h src/script/qscriptclass.cpp src/script/qscriptclass.h src/script/qscriptclass_p.h src/script/qscriptclassdata.cpp src/script/qscriptclassdata_p.h src/script/qscriptclassinfo_p.h src/script/qscriptclasspropertyiterator.h src/script/qscriptclasspropertyiterator_p.h src/script/qscriptcompiler.cpp src/script/qscriptcompiler_p.h src/script/qscriptcontext.h src/script/qscriptcontext_p.cpp src/script/qscriptcontext_p.h src/script/qscriptcontextfwd_p.h src/script/qscriptcontextinfo.cpp src/script/qscriptcontextinfo.h src/script/qscriptcontextinfo_p.h src/script/qscriptecmaarray.cpp src/script/qscriptecmaarray_p.h src/script/qscriptecmaboolean.cpp src/script/qscriptecmaboolean_p.h src/script/qscriptecmacore.cpp src/script/qscriptecmacore_p.h src/script/qscriptecmadate.cpp src/script/qscriptecmadate_p.h src/script/qscriptecmaerror.cpp src/script/qscriptecmaerror_p.h src/script/qscriptecmafunction.cpp src/script/qscriptecmafunction_p.h src/script/qscriptecmaglobal.cpp src/script/qscriptecmaglobal_p.h src/script/qscriptecmamath.cpp src/script/qscriptecmamath_p.h src/script/qscriptecmanumber.cpp src/script/qscriptecmanumber_p.h src/script/qscriptecmaobject.cpp src/script/qscriptecmaobject_p.h src/script/qscriptecmaregexp.cpp src/script/qscriptecmaregexp_p.h src/script/qscriptecmastring.cpp src/script/qscriptecmastring_p.h src/script/qscriptengine.cpp src/script/qscriptengine_p.cpp src/script/qscriptengine_p.h src/script/qscriptengineagent.h src/script/qscriptengineagent_p.h src/script/qscriptenginefwd_p.h src/script/qscriptextensioninterface.h src/script/qscriptextensionplugin.h src/script/qscriptextenumeration.cpp src/script/qscriptextenumeration_p.h src/script/qscriptextqobject.cpp src/script/qscriptextqobject_p.h src/script/qscriptextvariant.cpp src/script/qscriptextvariant_p.h src/script/qscriptfunction.cpp src/script/qscriptfunction_p.h src/script/qscriptgc_p.h src/script/qscriptglobals_p.h src/script/qscriptmember_p.h src/script/qscriptmemberfwd_p.h src/script/qscriptmemorypool_p.h src/script/qscriptnameid_p.h src/script/qscriptnodepool_p.h src/script/qscriptobject_p.h src/script/qscriptobjectdata_p.h src/script/qscriptobjectfwd_p.h src/script/qscriptrepository_p.h src/script/qscriptstring.cpp src/script/qscriptstring.h src/script/qscriptstring_p.h src/script/qscriptsyntaxchecker_p.h src/script/qscriptsyntaxcheckresult_p.h src/script/qscriptvalue.cpp src/script/qscriptvalue_p.h src/script/qscriptvaluefwd_p.h src/script/qscriptvalueimpl.cpp src/script/qscriptvalueimpl_p.h src/script/qscriptvalueimplfwd_p.h src/script/qscriptvalueiterator.h src/script/qscriptvalueiterator_p.h src/script/qscriptvalueiteratorimpl.cpp src/script/qscriptvalueiteratorimpl_p.h src/script/visitors/qscriptprettypretty.cpp src/script/visitors/qscriptprettypretty_p.h src/script/visitors/qscriptxmlgenerator.cpp src/script/visitors/qscriptxmlgenerator_p.h
Diffstat (limited to 'src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp')
-rw-r--r--src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp17
1 files changed, 5 insertions, 12 deletions
diff --git a/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp b/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp
index 1594848..d5c4ee4 100644
--- a/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp
+++ b/src/3rdparty/webkit/JavaScriptCore/runtime/JSGlobalData.cpp
@@ -60,6 +60,7 @@ using namespace WTF;
namespace JSC {
extern const HashTable arrayTable;
+extern const HashTable jsonTable;
extern const HashTable dateTable;
extern const HashTable mathTable;
extern const HashTable numberTable;
@@ -105,6 +106,7 @@ JSGlobalData::JSGlobalData(bool isShared, const VPtrSet& vptrSet)
, clientData(0)
, arrayTable(fastNew<HashTable>(JSC::arrayTable))
, dateTable(fastNew<HashTable>(JSC::dateTable))
+ , jsonTable(fastNew<HashTable>(JSC::jsonTable))
, mathTable(fastNew<HashTable>(JSC::mathTable))
, numberTable(fastNew<HashTable>(JSC::numberTable))
, regExpTable(fastNew<HashTable>(JSC::regExpTable))
@@ -137,6 +139,7 @@ JSGlobalData::JSGlobalData(bool isShared, const VPtrSet& vptrSet)
, head(0)
, dynamicGlobalObject(0)
, scopeNodeBeingReparsed(0)
+ , firstStringifierToMark(0)
{
#if PLATFORM(MAC)
startProfilerServerIfNeeded();
@@ -155,17 +158,16 @@ JSGlobalData::~JSGlobalData()
arrayTable->deleteTable();
dateTable->deleteTable();
+ jsonTable->deleteTable();
mathTable->deleteTable();
numberTable->deleteTable();
regExpTable->deleteTable();
regExpConstructorTable->deleteTable();
stringTable->deleteTable();
-#if ENABLE(JIT)
- lazyNativeFunctionThunk.clear();
-#endif
fastDelete(const_cast<HashTable*>(arrayTable));
fastDelete(const_cast<HashTable*>(dateTable));
+ fastDelete(const_cast<HashTable*>(jsonTable));
fastDelete(const_cast<HashTable*>(mathTable));
fastDelete(const_cast<HashTable*>(numberTable));
fastDelete(const_cast<HashTable*>(regExpTable));
@@ -222,15 +224,6 @@ JSGlobalData*& JSGlobalData::sharedInstanceInternal()
return sharedInstance;
}
-#if ENABLE(JIT)
-
-void JSGlobalData::createNativeThunk()
-{
- lazyNativeFunctionThunk = FunctionBodyNode::createNativeThunk(this);
-}
-
-#endif
-
// FIXME: We can also detect forms like v1 < v2 ? -1 : 0, reverse comparison, etc.
const Vector<Instruction>& JSGlobalData::numericCompareFunction(ExecState* exec)
{