Title: [153659] trunk/Source/_javascript_Core
Revision
153659
Author
[email protected]
Date
2013-08-02 11:45:21 -0700 (Fri, 02 Aug 2013)

Log Message

REGRESSION(FTL): Fix mips implementation of ctiVMThrowTrampolineSlowpath.
https://bugs.webkit.org/show_bug.cgi?id=119447

Patch by Julien Brianceau <[email protected]> on 2013-08-02
Reviewed by Geoffrey Garen.

Fix .cpload, update call frame and do not restore registers from JIT stack frame in
mips implementation of ctiVMThrowTrampolineSlowpath. This change is similar to
r153583 (sh4) and r153648 (ARM).

* jit/JITStubsMIPS.h:

Modified Paths

Diff

Modified: trunk/Source/_javascript_Core/ChangeLog (153658 => 153659)


--- trunk/Source/_javascript_Core/ChangeLog	2013-08-02 18:42:51 UTC (rev 153658)
+++ trunk/Source/_javascript_Core/ChangeLog	2013-08-02 18:45:21 UTC (rev 153659)
@@ -1,3 +1,16 @@
+2013-08-02  Julien Brianceau  <[email protected]>
+
+        REGRESSION(FTL): Fix mips implementation of ctiVMThrowTrampolineSlowpath.
+        https://bugs.webkit.org/show_bug.cgi?id=119447
+
+        Reviewed by Geoffrey Garen.
+
+        Fix .cpload, update call frame and do not restore registers from JIT stack frame in
+        mips implementation of ctiVMThrowTrampolineSlowpath. This change is similar to
+        r153583 (sh4) and r153648 (ARM).
+
+        * jit/JITStubsMIPS.h:
+
 2013-08-01  Filip Pizlo  <[email protected]>
 
         hasIndexingHeader should be a property of the Structure, not just the IndexingType

Modified: trunk/Source/_javascript_Core/jit/JITStubsMIPS.h (153658 => 153659)


--- trunk/Source/_javascript_Core/jit/JITStubsMIPS.h	2013-08-02 18:42:51 UTC (rev 153658)
+++ trunk/Source/_javascript_Core/jit/JITStubsMIPS.h	2013-08-02 18:45:21 UTC (rev 153659)
@@ -139,7 +139,7 @@
 SYMBOL_STRING(ctiVMThrowTrampolineSlowpath) ":" "\n"
 #if WTF_MIPS_PIC
 ".set macro" "\n"
-".cpload $31" "\n"
+".cpload $25" "\n"
     "la    $25," SYMBOL_STRING(cti_vm_throw_slowpath) "\n"
 ".set nomacro" "\n"
     "bal " SYMBOL_STRING(cti_vm_throw_slowpath) "\n"
@@ -149,14 +149,9 @@
     "move  $4,$16" "\n"
 #endif
     // When cti_vm_throw_slowpath returns, v0 has callFrame and v1 has handler address
-    "lw    $16," STRINGIZE_VALUE_OF(PRESERVED_S0_OFFSET) "($29)" "\n"
-    "lw    $17," STRINGIZE_VALUE_OF(PRESERVED_S1_OFFSET) "($29)" "\n"
-    "lw    $18," STRINGIZE_VALUE_OF(PRESERVED_S2_OFFSET) "($29)" "\n"
-    "lw    $19," STRINGIZE_VALUE_OF(PRESERVED_S3_OFFSET) "($29)" "\n"
-    "lw    $20," STRINGIZE_VALUE_OF(PRESERVED_S4_OFFSET) "($29)" "\n"
-    "lw    $31," STRINGIZE_VALUE_OF(PRESERVED_RETURN_ADDRESS_OFFSET) "($29)" "\n"
+    "move  $16,$2 " "\n"
     "jr    $3" "\n"
-    "addiu $29,$29," STRINGIZE_VALUE_OF(STACK_LENGTH) "\n"
+    "nop" "\n"
 ".set reorder" "\n"
 ".set macro" "\n"
 ".end " SYMBOL_STRING(ctiVMThrowTrampolineSlowpath) "\n"
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to