Title: [164490] trunk/Source/_javascript_Core
Revision
164490
Author
fpi...@apple.com
Date
2014-02-21 11:48:25 -0800 (Fri, 21 Feb 2014)

Log Message

Revive SABI (aka shouldAlwaysBeInlined)
https://bugs.webkit.org/show_bug.cgi?id=129159

Reviewed by Mark Hahnenberg.
        
This is a small Octane speed-up.

* jit/Repatch.cpp:
(JSC::linkFor): This code was assuming that if it's invoked then the caller is a DFG code block. That's wrong, since it's now used by all of the JITs.

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (164489 => 164490)


--- trunk/Source/_javascript_Core/ChangeLog	2014-02-21 19:38:31 UTC (rev 164489)
+++ trunk/Source/_javascript_Core/ChangeLog	2014-02-21 19:48:25 UTC (rev 164490)
@@ -1,3 +1,15 @@
+2014-02-21  Filip Pizlo  <fpi...@apple.com>
+
+        Revive SABI (aka shouldAlwaysBeInlined)
+        https://bugs.webkit.org/show_bug.cgi?id=129159
+
+        Reviewed by Mark Hahnenberg.
+        
+        This is a small Octane speed-up.
+
+        * jit/Repatch.cpp:
+        (JSC::linkFor): This code was assuming that if it's invoked then the caller is a DFG code block. That's wrong, since it's now used by all of the JITs.
+
 2014-02-21  Joseph Pecoraro  <pecor...@apple.com>
 
         Web Inspector: JSContext inspection should report exceptions in the console

Modified: trunk/Source/_javascript_Core/jit/Repatch.cpp (164489 => 164490)


--- trunk/Source/_javascript_Core/jit/Repatch.cpp	2014-02-21 19:38:31 UTC (rev 164489)
+++ trunk/Source/_javascript_Core/jit/Repatch.cpp	2014-02-21 19:48:25 UTC (rev 164490)
@@ -1423,11 +1423,12 @@
 {
     ASSERT(!callLinkInfo.stub);
     
+    CodeBlock* callerCodeBlock = exec->callerFrame()->codeBlock();
+
     // If you're being call-linked from a DFG caller then you obviously didn't get inlined.
-    if (calleeCodeBlock)
+    if (calleeCodeBlock && JITCode::isOptimizingJIT(callerCodeBlock->jitType()))
         calleeCodeBlock->m_shouldAlwaysBeInlined = false;
     
-    CodeBlock* callerCodeBlock = exec->callerFrame()->codeBlock();
     VM* vm = callerCodeBlock->vm();
     
     RepatchBuffer repatchBuffer(callerCodeBlock);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to