Reviewers: danno,

Description:
Fix regexp=interpreted build wrt zone related changes.

Broke after c7b09aac317dd810d29b82061973199b80363b65

[email protected]

Please review this at https://codereview.chromium.org/875833002/

Base URL: https://chromium.googlesource.com/v8/v8.git@master

Affected files (+10, -7 lines):
  M src/jsregexp.cc
  M src/regexp-macro-assembler-irregexp.h
  M src/regexp-macro-assembler-irregexp.cc
  M test/cctest/test-regexp.cc


Index: src/jsregexp.cc
diff --git a/src/jsregexp.cc b/src/jsregexp.cc
index 0813afbe8484772cc28d9c5cd108998fc268526b..1843597e74d7e1c565eaef277edf0263a38f38b1 100644
--- a/src/jsregexp.cc
+++ b/src/jsregexp.cc
@@ -6121,7 +6121,7 @@ RegExpEngine::CompilationResult RegExpEngine::Compile(
 #else  // V8_INTERPRETED_REGEXP
   // Interpreted regexp implementation.
   EmbeddedVector<byte, 1024> codes;
-  RegExpMacroAssemblerIrregexp macro_assembler(codes, zone);
+  RegExpMacroAssemblerIrregexp macro_assembler(isolate, codes, zone);
 #endif  // V8_INTERPRETED_REGEXP

   macro_assembler.set_slow_safe(TooMuchRegExpCode(pattern));
Index: src/regexp-macro-assembler-irregexp.cc
diff --git a/src/regexp-macro-assembler-irregexp.cc b/src/regexp-macro-assembler-irregexp.cc index 469fb8cbb31dd5c7b351196b58f615443cee2561..5574730a573f3f10be9815071072a985ac81c6de 100644
--- a/src/regexp-macro-assembler-irregexp.cc
+++ b/src/regexp-macro-assembler-irregexp.cc
@@ -16,14 +16,15 @@ namespace internal {

 #ifdef V8_INTERPRETED_REGEXP

-RegExpMacroAssemblerIrregexp::RegExpMacroAssemblerIrregexp(Vector<byte> buffer, +RegExpMacroAssemblerIrregexp::RegExpMacroAssemblerIrregexp(Isolate* isolate, + Vector<byte> buffer,
                                                            Zone* zone)
-    : RegExpMacroAssembler(zone),
+    : RegExpMacroAssembler(isolate, zone),
       buffer_(buffer),
       pc_(0),
       own_buffer_(false),
       advance_current_end_(kInvalidPC),
-      isolate_(zone->isolate()) { }
+      isolate_(isolate) {}


 RegExpMacroAssemblerIrregexp::~RegExpMacroAssemblerIrregexp() {
Index: src/regexp-macro-assembler-irregexp.h
diff --git a/src/regexp-macro-assembler-irregexp.h b/src/regexp-macro-assembler-irregexp.h index b192c22b6f020b6cc1cb7fef941245e49c957a7f..781defc297c7d5ec641ac2e4dfdf7704a9e347f3 100644
--- a/src/regexp-macro-assembler-irregexp.h
+++ b/src/regexp-macro-assembler-irregexp.h
@@ -27,7 +27,8 @@ class RegExpMacroAssemblerIrregexp: public RegExpMacroAssembler { // for code generation and assumes its size to be buffer_size. If the buffer // is too small, a fatal error occurs. No deallocation of the buffer is done
   // upon destruction of the assembler.
-  RegExpMacroAssemblerIrregexp(Vector<byte>, Zone* zone);
+  RegExpMacroAssemblerIrregexp(Isolate* isolate, Vector<byte> buffer,
+                               Zone* zone);
   virtual ~RegExpMacroAssemblerIrregexp();
   // The byte-code interpreter checks on each push anyway.
   virtual int stack_limit_slack() { return 1; }
Index: test/cctest/test-regexp.cc
diff --git a/test/cctest/test-regexp.cc b/test/cctest/test-regexp.cc
index 8aa9ffb015909ee2e283e85c8938241e72c453a8..2fe46d53ea92e084259169dbfe17d1c5764542cb 100644
--- a/test/cctest/test-regexp.cc
+++ b/test/cctest/test-regexp.cc
@@ -1372,8 +1372,9 @@ TEST(MacroAssemblerNativeLotsOfRegisters) {

 TEST(MacroAssembler) {
   byte codes[1024];
-  Zone zone(CcTest::i_isolate());
-  RegExpMacroAssemblerIrregexp m(Vector<byte>(codes, 1024), &zone);
+  Zone zone;
+ RegExpMacroAssemblerIrregexp m(CcTest::i_isolate(), Vector<byte>(codes, 1024),
+                                 &zone);
   // ^f(o)o.
   Label start, fail, backtrack;



--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to