Revision: 9059
Author:   [email protected]
Date:     Mon Aug 29 06:29:55 2011
Log:      MIPS: Fix an invalid stack-check in the simulator.

This fixes mjsunit regress-1132.

BUG=
TEST=

Review URL: http://codereview.chromium.org/7781002
http://code.google.com/p/v8/source/detail?r=9059

Modified:
 /branches/bleeding_edge/src/mips/simulator-mips.cc

=======================================
--- /branches/bleeding_edge/src/mips/simulator-mips.cc Fri Jun 24 06:23:18 2011 +++ /branches/bleeding_edge/src/mips/simulator-mips.cc Mon Aug 29 06:29:55 2011
@@ -1409,20 +1409,11 @@
     int32_t arg1 = get_register(a1);
     int32_t arg2 = get_register(a2);
     int32_t arg3 = get_register(a3);
-    int32_t arg4 = 0;
-    int32_t arg5 = 0;
-
-    // Need to check if sp is valid before assigning arg4, arg5.
-    // This is a fix for cctest test-api/CatchStackOverflow which causes
-    // the stack to overflow. For some reason arm doesn't need this
-    // stack check here.
+
     int32_t* stack_pointer = reinterpret_cast<int32_t*>(get_register(sp));
-    int32_t* stack = reinterpret_cast<int32_t*>(stack_);
- if (stack_pointer >= stack && stack_pointer < stack + stack_size_ - 5) { - // Args 4 and 5 are on the stack after the reserved space for args 0..3.
-      arg4 = stack_pointer[4];
-      arg5 = stack_pointer[5];
-    }
+ // Args 4 and 5 are on the stack after the reserved space for args 0..3.
+    int32_t arg4 = stack_pointer[4];
+    int32_t arg5 = stack_pointer[5];

     bool fp_call =
          (redirection->type() == ExternalReference::BUILTIN_FP_FP_CALL) ||

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to