Index: src/regexp/regexp-macro-assembler-irregexp.cc |
diff --git a/src/regexp/regexp-macro-assembler-irregexp.cc b/src/regexp/regexp-macro-assembler-irregexp.cc |
index c2af23fc312ff97d45018997c4f78b071dc61246..a0bb5e7d730d6a959ca7ce16196df7f8806a25fd 100644 |
--- a/src/regexp/regexp-macro-assembler-irregexp.cc |
+++ b/src/regexp/regexp-macro-assembler-irregexp.cc |
@@ -381,11 +381,13 @@ void RegExpMacroAssemblerIrregexp::CheckNotBackReference(int start_reg, |
void RegExpMacroAssemblerIrregexp::CheckNotBackReferenceIgnoreCase( |
- int start_reg, bool read_backward, Label* on_not_equal) { |
+ int start_reg, bool read_backward, bool unicode, Label* on_not_equal) { |
DCHECK(start_reg >= 0); |
DCHECK(start_reg <= kMaxRegister); |
- Emit(read_backward ? BC_CHECK_NOT_BACK_REF_NO_CASE_BACKWARD |
- : BC_CHECK_NOT_BACK_REF_NO_CASE, |
+ Emit(read_backward ? (unicode ? BC_CHECK_NOT_BACK_REF_NO_CASE_UNICODE_BACKWARD |
+ : BC_CHECK_NOT_BACK_REF_NO_CASE_BACKWARD) |
+ : (unicode ? BC_CHECK_NOT_BACK_REF_NO_CASE_UNICODE |
+ : BC_CHECK_NOT_BACK_REF_NO_CASE), |
start_reg); |
EmitOrLink(on_not_equal); |
} |