Title: [160343] branches/jsCStack/Source/_javascript_Core
Revision
160343
Author
msab...@apple.com
Date
2013-12-09 16:37:20 -0800 (Mon, 09 Dec 2013)

Log Message

CStack Branch: Change nativeForGenerator fallBack bool to an enum
https://bugs.webkit.org/show_bug.cgi?id=125473

Reviewed by Filip Pizlo.

Change the "bool fallBack" to an enum name ThunkEntryType with values
EnterViaCall and EnterViaJump to indicate how the thunk will be entered.

* jit/ThunkGenerators.cpp:
(JSC::nativeForGenerator):
(JSC::nativeCallFallbackGenerator):

Modified Paths

Diff

Modified: branches/jsCStack/Source/_javascript_Core/ChangeLog (160342 => 160343)


--- branches/jsCStack/Source/_javascript_Core/ChangeLog	2013-12-10 00:12:15 UTC (rev 160342)
+++ branches/jsCStack/Source/_javascript_Core/ChangeLog	2013-12-10 00:37:20 UTC (rev 160343)
@@ -1,5 +1,19 @@
 2013-12-09  Michael Saboff  <msab...@apple.com>
 
+        CStack Branch: Change nativeForGenerator fallBack bool to an enum
+        https://bugs.webkit.org/show_bug.cgi?id=125473
+
+        Reviewed by Filip Pizlo.
+
+        Change the "bool fallBack" to an enum name ThunkEntryType with values
+        EnterViaCall and EnterViaJump to indicate how the thunk will be entered.
+
+        * jit/ThunkGenerators.cpp:
+        (JSC::nativeForGenerator):
+        (JSC::nativeCallFallbackGenerator):
+
+2013-12-09  Michael Saboff  <msab...@apple.com>
+
         CStack Branch: Fix baseline JIT for basic operation
         https://bugs.webkit.org/show_bug.cgi?id=125470
 

Modified: branches/jsCStack/Source/_javascript_Core/jit/ThunkGenerators.cpp (160342 => 160343)


--- branches/jsCStack/Source/_javascript_Core/jit/ThunkGenerators.cpp	2013-12-10 00:12:15 UTC (rev 160342)
+++ branches/jsCStack/Source/_javascript_Core/jit/ThunkGenerators.cpp	2013-12-10 00:37:20 UTC (rev 160343)
@@ -240,13 +240,15 @@
     return virtualForThunkGenerator(vm, CodeForConstruct);
 }
 
-static MacroAssemblerCodeRef nativeForGenerator(VM* vm, CodeSpecializationKind kind, bool fallBack = false)
+enum ThunkEntryType { EnterViaCall, EnterViaJump };
+
+static MacroAssemblerCodeRef nativeForGenerator(VM* vm, CodeSpecializationKind kind, ThunkEntryType entryType = EnterViaCall)
 {
     int executableOffsetToFunction = NativeExecutable::offsetOfNativeFunctionFor(kind);
     
     JSInterfaceJIT jit(vm);
 
-    if (!fallBack)
+    if (entryType == EnterViaCall)
         jit.emitFunctionPrologue();
 
     jit.emitPutImmediateToCallFrameHeader(0, JSStack::CodeBlock);
@@ -406,7 +408,7 @@
     jit.jumpToExceptionHandler();
 
     LinkBuffer patchBuffer(*vm, &jit, GLOBAL_THUNK_ID);
-    return FINALIZE_CODE(patchBuffer, ("native %s %strampoline", toCString(kind).data(), fallBack ? "fallback " : ""));
+    return FINALIZE_CODE(patchBuffer, ("native %s %strampoline", toCString(kind).data(), entryType == EnterViaJump ? "Fallback " : ""));
 }
 
 MacroAssemblerCodeRef nativeCallGenerator(VM* vm)
@@ -416,7 +418,7 @@
 
 MacroAssemblerCodeRef nativeCallFallbackGenerator(VM* vm)
 {
-    return nativeForGenerator(vm, CodeForCall, true);
+    return nativeForGenerator(vm, CodeForCall, EnterViaJump);
 }
 
 MacroAssemblerCodeRef nativeConstructGenerator(VM* vm)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to