| Index: src/regexp-macro-assembler-ia32.cc
|
| ===================================================================
|
| --- src/regexp-macro-assembler-ia32.cc (revision 1094)
|
| +++ src/regexp-macro-assembler-ia32.cc (working copy)
|
| @@ -174,6 +174,20 @@
|
| }
|
|
|
|
|
| +void RegExpMacroAssemblerIA32::CheckAtStart(Label* on_at_start) {
|
| + Label ok;
|
| + // Did we start the match at the start of the string at all?
|
| + __ cmp(Operand(ebp, kAtStart), Immediate(0));
|
| + BranchOrBacktrack(equal, &ok);
|
| + // If we did, are we still at the start of the input?
|
| + __ mov(eax, Operand(ebp, kInputEndOffset));
|
| + __ add(eax, Operand(edi));
|
| + __ cmp(eax, Operand(ebp, kInputStartOffset));
|
| + BranchOrBacktrack(equal, on_at_start);
|
| + __ bind(&ok);
|
| +}
|
| +
|
| +
|
| void RegExpMacroAssemblerIA32::CheckNotAtStart(Label* on_not_at_start) {
|
| // Did we start the match at the start of the string at all?
|
| __ cmp(Operand(ebp, kAtStart), Immediate(0));
|
|
|