Title: [153376] trunk/Tools
Revision
153376
Author
[email protected]
Date
2013-07-26 12:06:32 -0700 (Fri, 26 Jul 2013)

Log Message

WKTR should know about the JSC extensions to testRunner
https://bugs.webkit.org/show_bug.cgi?id=119154

Reviewed by Mark Hahnenberg and Geoffrey Garen.
        
This makes some fast/js tests pass.

* WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
* WebKitTestRunner/InjectedBundle/TestRunner.cpp:
(WTR::TestRunner::numberOfDFGCompiles):
(WTR::TestRunner::neverInlineFunction):
* WebKitTestRunner/InjectedBundle/TestRunner.h:

Modified Paths

Diff

Modified: trunk/Tools/ChangeLog (153375 => 153376)


--- trunk/Tools/ChangeLog	2013-07-26 18:17:53 UTC (rev 153375)
+++ trunk/Tools/ChangeLog	2013-07-26 19:06:32 UTC (rev 153376)
@@ -1,3 +1,18 @@
+2013-07-26  Filip Pizlo  <[email protected]>
+
+        WKTR should know about the JSC extensions to testRunner
+        https://bugs.webkit.org/show_bug.cgi?id=119154
+
+        Reviewed by Mark Hahnenberg and Geoffrey Garen.
+        
+        This makes some fast/js tests pass.
+
+        * WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl:
+        * WebKitTestRunner/InjectedBundle/TestRunner.cpp:
+        (WTR::TestRunner::numberOfDFGCompiles):
+        (WTR::TestRunner::neverInlineFunction):
+        * WebKitTestRunner/InjectedBundle/TestRunner.h:
+
 2013-07-25  Mark Rowe  <[email protected]>
 
         Fix build of DumpRenderTree and WebKitTestRunner when building against an SDK.

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl (153375 => 153376)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2013-07-26 18:17:53 UTC (rev 153375)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/Bindings/TestRunner.idl	2013-07-26 19:06:32 UTC (rev 153376)
@@ -193,5 +193,9 @@
     
     // Override plugin load policy.
     void setBlockAllPlugins(boolean shouldBlock);
+    
+    // Hooks to the JSC compiler.
+    object numberOfDFGCompiles(object function);
+    object neverInlineFunction(object function);
 };
 

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp (153375 => 153376)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2013-07-26 18:17:53 UTC (rev 153375)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.cpp	2013-07-26 19:06:32 UTC (rev 153376)
@@ -32,6 +32,7 @@
 #include "PlatformWebView.h"
 #include "StringFunctions.h"
 #include "TestController.h"
+#include <_javascript_Core/JSCTestRunnerUtils.h>
 #include <WebKit2/WKBundle.h>
 #include <WebKit2/WKBundleBackForwardList.h>
 #include <WebKit2/WKBundleFrame.h>
@@ -819,4 +820,18 @@
     WKBundlePostMessage(InjectedBundle::shared().bundle(), messageName.get(), messageBody.get());
 }
 
+JSValueRef TestRunner::numberOfDFGCompiles(JSValueRef theFunction)
+{
+    WKBundleFrameRef mainFrame = WKBundlePageGetMainFrame(InjectedBundle::shared().page()->page());
+    JSContextRef context = WKBundleFrameGetJavaScriptContext(mainFrame);
+    return JSC::numberOfDFGCompiles(context, theFunction);
+}
+
+JSValueRef TestRunner::neverInlineFunction(JSValueRef theFunction)
+{
+    WKBundleFrameRef mainFrame = WKBundlePageGetMainFrame(InjectedBundle::shared().page()->page());
+    JSContextRef context = WKBundleFrameGetJavaScriptContext(mainFrame);
+    return JSC::setNeverInline(context, theFunction);
+}
+
 } // namespace WTR

Modified: trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h (153375 => 153376)


--- trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2013-07-26 18:17:53 UTC (rev 153375)
+++ trunk/Tools/WebKitTestRunner/InjectedBundle/TestRunner.h	2013-07-26 19:06:32 UTC (rev 153376)
@@ -276,6 +276,9 @@
     void queueNonLoadingScript(JSStringRef script);
 
     bool secureEventInputIsEnabled() const;
+    
+    JSValueRef numberOfDFGCompiles(JSValueRef theFunction);
+    JSValueRef neverInlineFunction(JSValueRef theFunction);
 
 private:
     static const double waitToDumpWatchdogTimerInterval;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to