| Index: src/arm/simulator-arm.h
|
| diff --git a/src/arm/simulator-arm.h b/src/arm/simulator-arm.h
|
| index 9c92c96830e4ae9a22e9011ff75127d9035a647c..f5ebf219cbf26260949137ac0f2319051eb2aee7 100644
|
| --- a/src/arm/simulator-arm.h
|
| +++ b/src/arm/simulator-arm.h
|
| @@ -27,14 +27,18 @@
|
| #define CALL_GENERATED_CODE(isolate, entry, p0, p1, p2, p3, p4) \
|
| (entry(p0, p1, p2, p3, p4))
|
|
|
| -typedef int (*arm_regexp_matcher)(String*, int, const byte*, const byte*, int*,
|
| - int, Address, int, Isolate*);
|
| +typedef int (*arm_regexp_matcher)(String*, int, const byte*, const byte*,
|
| + void*, int*, int, Address, int, Isolate*);
|
| +
|
|
|
| // Call the generated regexp code directly. The code at the entry address
|
| // should act as a function matching the type arm_regexp_matcher.
|
| +// The fifth argument is a dummy that reserves the space used for
|
| +// the return address added by the ExitFrame in native calls.
|
| #define CALL_GENERATED_REGEXP_CODE(isolate, entry, p0, p1, p2, p3, p4, p5, p6, \
|
| p7, p8) \
|
| - (FUNCTION_CAST<arm_regexp_matcher>(entry)(p0, p1, p2, p3, p4, p5, p6, p7, p8))
|
| + (FUNCTION_CAST<arm_regexp_matcher>(entry)(p0, p1, p2, p3, NULL, p4, p5, p6, \
|
| + p7, p8))
|
|
|
| // The stack limit beyond which we will throw stack overflow errors in
|
| // generated code. Because generated code on arm uses the C stack, we
|
| @@ -545,8 +549,9 @@
|
|
|
| #define CALL_GENERATED_REGEXP_CODE(isolate, entry, p0, p1, p2, p3, p4, p5, p6, \
|
| p7, p8) \
|
| - Simulator::current(isolate)->Call(entry, 9, p0, p1, p2, p3, p4, p5, p6, p7, \
|
| - p8)
|
| + Simulator::current(isolate) \
|
| + ->Call(entry, 10, p0, p1, p2, p3, NULL, p4, p5, p6, p7, p8)
|
| +
|
|
|
| // The simulator has its own stack. Thus it has a different stack limit from
|
| // the C-based native code. The JS-based limit normally points near the end of
|
|
|