| Index: src/regexp-macro-assembler-ia32.h
|
| ===================================================================
|
| --- src/regexp-macro-assembler-ia32.h (revision 1032)
|
| +++ src/regexp-macro-assembler-ia32.h (working copy)
|
| @@ -67,6 +67,10 @@
|
| uc16 minus,
|
| uc16 mask,
|
| Label* on_not_equal);
|
| + virtual bool CheckSpecialCharacterClass(uc16 type,
|
| + int cp_offset,
|
| + bool check_offset,
|
| + Label* on_no_match);
|
| virtual void DispatchByteMap(uc16 start,
|
| Label* byte_map,
|
| const Vector<Label*>& destinations);
|
| @@ -144,11 +148,19 @@
|
|
|
| void LoadCurrentCharacterUnchecked(int cp_offset, int characters);
|
|
|
| + // Adds code that checks whether preemption has been requested
|
| + // (and checks if we have hit the stack limit too).
|
| + void CheckStackLimit();
|
| +
|
| // Called from RegExp if the stack-guard is triggered.
|
| // If the code object is relocated, the return address is fixed before
|
| // returning.
|
| static int CheckStackGuardState(Address return_address, Code* re_code);
|
|
|
| + // Checks whether the given offset from the current position is before
|
| + // the end of the string.
|
| + void CheckPosition(int cp_offset, Label* on_outside_input);
|
| +
|
| // The ebp-relative location of a regexp register.
|
| Operand register_location(int register_index);
|
|
|
| @@ -167,10 +179,6 @@
|
| // and an offset. Uses no extra registers.
|
| void LoadConstantBufferAddress(Register reg, ArraySlice* buffer);
|
|
|
| - // Adds code that checks whether preemption has been requested
|
| - // (and checks if we have hit the stack limit too).
|
| - void CheckStackLimit();
|
| -
|
| // Call and return internally in the generated code in a way that
|
| // is GC-safe (i.e., doesn't leave absolute code addresses on the stack)
|
| void SafeCall(Label* to);
|
|
|