Title: [160783] branches/jsCStack/Source/_javascript_Core
Revision
160783
Author
[email protected]
Date
2013-12-18 11:46:24 -0800 (Wed, 18 Dec 2013)

Log Message

CStack Branch: Exceptions in LLIntSlowPaths shouldn't pop call frame
https://bugs.webkit.org/show_bug.cgi?id=125932

Reviewed by Mark Lam.

Removed the unwinding of the call frame in LLINT_CALL_RETURN().
Since llint_slow_path_handle_exception will unwind to the proper callFrame
via genericUnwind() there is no need for the frame to be unwound in
llint slow paths.

* llint/LLIntSlowPaths.cpp:

Modified Paths

Diff

Modified: branches/jsCStack/Source/_javascript_Core/ChangeLog (160782 => 160783)


--- branches/jsCStack/Source/_javascript_Core/ChangeLog	2013-12-18 19:42:51 UTC (rev 160782)
+++ branches/jsCStack/Source/_javascript_Core/ChangeLog	2013-12-18 19:46:24 UTC (rev 160783)
@@ -1,3 +1,17 @@
+2013-12-18  Michael Saboff  <[email protected]>
+
+        CStack Branch: Exceptions in LLIntSlowPaths shouldn't pop call frame
+        https://bugs.webkit.org/show_bug.cgi?id=125932
+
+        Reviewed by Mark Lam.
+
+        Removed the unwinding of the call frame in LLINT_CALL_RETURN().
+        Since llint_slow_path_handle_exception will unwind to the proper callFrame
+        via genericUnwind() there is no need for the frame to be unwound in
+        llint slow paths.
+
+        * llint/LLIntSlowPaths.cpp:
+
 2013-12-17  Michael Saboff  <[email protected]>
 
         CStack Branch: Fix varargs calls to work on C stack

Modified: branches/jsCStack/Source/_javascript_Core/llint/LLIntSlowPaths.cpp (160782 => 160783)


--- branches/jsCStack/Source/_javascript_Core/llint/LLIntSlowPaths.cpp	2013-12-18 19:42:51 UTC (rev 160782)
+++ branches/jsCStack/Source/_javascript_Core/llint/LLIntSlowPaths.cpp	2013-12-18 19:46:24 UTC (rev 160783)
@@ -157,7 +157,7 @@
 #define LLINT_CALL_RETURN(exec, callTarget) do {                        \
         ExecState* __cr_exec = (exec);                                  \
         void* __cr_callTarget = (callTarget);                           \
-        LLINT_CALL_CHECK_EXCEPTION(__cr_exec->callerFrame());           \
+        LLINT_CALL_CHECK_EXCEPTION(__cr_exec);           \
         LLINT_CALL_END_IMPL(__cr_exec, __cr_callTarget);                \
     } while (false)
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to