Index: src/regexp-macro-assembler.cc |
=================================================================== |
--- src/regexp-macro-assembler.cc (revision 3531) |
+++ src/regexp-macro-assembler.cc (working copy) |
@@ -143,17 +143,6 @@ |
input_end, |
offsets_vector, |
previous_index == 0); |
- |
- if (res == SUCCESS) { |
- // Capture values are relative to start_offset only. |
- // Convert them to be relative to start of string. |
- for (int i = 0; i < offsets_vector_length; i++) { |
- if (offsets_vector[i] >= 0) { |
- offsets_vector[i] += previous_index; |
- } |
- } |
- } |
- |
return res; |
} |
@@ -167,7 +156,7 @@ |
int* output, |
bool at_start) { |
typedef int (*matcher)(String*, int, const byte*, |
- const byte*, int*, int, Address); |
+ const byte*, int*, int, Address, int); |
matcher matcher_func = FUNCTION_CAST<matcher>(code->entry()); |
int at_start_val = at_start ? 1 : 0; |
@@ -176,6 +165,7 @@ |
RegExpStack stack; |
Address stack_base = RegExpStack::stack_base(); |
+ int direct_call = 0; |
int result = CALL_GENERATED_REGEXP_CODE(matcher_func, |
input, |
start_offset, |
@@ -183,7 +173,8 @@ |
input_end, |
output, |
at_start_val, |
- stack_base); |
+ stack_base, |
+ direct_call); |
ASSERT(result <= SUCCESS); |
ASSERT(result >= RETRY); |