Index: runtime/vm/parser.h |
diff --git a/runtime/vm/parser.h b/runtime/vm/parser.h |
index 8f6728d663503175de406cf64e8b1bc017e713b7..477f29153fade3a1a474a05e9af6ed1ddfcb750d 100644 |
--- a/runtime/vm/parser.h |
+++ b/runtime/vm/parser.h |
@@ -25,6 +25,7 @@ class ArgumentsDescriptor; |
class Isolate; |
class LocalScope; |
class LocalVariable; |
+struct RegExpCompileData; |
class SourceLabel; |
template <typename T> class GrowableArray; |
@@ -42,6 +43,7 @@ class ParsedFunction : public ZoneAllocated { |
: function_(function), |
code_(Code::Handle(isolate, function.unoptimized_code())), |
node_sequence_(NULL), |
+ regexp_compile_data_(NULL), |
instantiator_(NULL), |
default_parameter_values_(Array::ZoneHandle(isolate, Array::null())), |
current_context_var_(NULL), |
@@ -72,6 +74,11 @@ class ParsedFunction : public ZoneAllocated { |
SequenceNode* node_sequence() const { return node_sequence_; } |
void SetNodeSequence(SequenceNode* node_sequence); |
+ RegExpCompileData* regexp_compile_data() const { |
+ return regexp_compile_data_; |
+ } |
+ void SetRegExpCompileData(RegExpCompileData* regexp_compile_data); |
+ |
LocalVariable* instantiator() const { return instantiator_; } |
void set_instantiator(LocalVariable* instantiator) { |
// May be NULL. |
@@ -130,6 +137,7 @@ class ParsedFunction : public ZoneAllocated { |
int num_stack_locals() const { return num_stack_locals_; } |
void AllocateVariables(); |
+ void AllocateIrregexpVariables(intptr_t num_stack_locals); |
void record_await() { |
have_seen_await_expr_ = true; |
@@ -161,6 +169,7 @@ class ParsedFunction : public ZoneAllocated { |
const Function& function_; |
Code& code_; |
SequenceNode* node_sequence_; |
+ RegExpCompileData* regexp_compile_data_; |
LocalVariable* instantiator_; |
Array& default_parameter_values_; |
LocalVariable* current_context_var_; |