Add a JSScriptRef API to JSC so that we can allow API users to avoid the full cost...
[WebKit-https.git] / Source / JavaScriptCore / ChangeLog
index 60a7455..9b12896 100644 (file)
@@ -1,3 +1,22 @@
+2012-12-18  Oliver Hunt  <oliver@apple.com>
+
+        Add a JSScriptRef API to JSC so that we can allow API users to avoid the full cost of reparsing everytime the execute a script.
+        https://bugs.webkit.org/show_bug.cgi?id=105340
+
+        Reviewed by Gavin Barraclough.
+
+        This patch adds a (currently private) API to allow users of the JSC API to create a JSScript object
+        that references a reusable version of the script that they wish to evaluate.  This can help us avoid
+        numeorus copies that are otherwise induced by our existing API and gives us an opaque object that we
+        can hang various caches off.  Currently this is simply a simple SourceProvider, but in future we may
+        be able to add more caching without requiring new/replacement APIs. 
+
+        * API/JSScriptRef.cpp: Added.
+        * API/JSScriptRefPrivate.h: Added.
+        * API/tests/testapi.c:
+          Add tests for new APIs.
+        * JavaScriptCore.xcodeproj/project.pbxproj:
+
 2012-12-18  Filip Pizlo  <fpizlo@apple.com>
 
         DFG::SpeculativeJIT::jumpSlowForUnwantedArrayMode incorrectly checks for non-array array storage when it should be checking for array array storage