Index: runtime/vm/parser.h |
diff --git a/runtime/vm/parser.h b/runtime/vm/parser.h |
index 61be69a984705d27791c32617dab39636b67e498..741603d3cc03b00497942a8a4ed337f6826113fc 100644 |
--- a/runtime/vm/parser.h |
+++ b/runtime/vm/parser.h |
@@ -25,6 +25,7 @@ class ArgumentsDescriptor; |
class Isolate; |
class LocalScope; |
class LocalVariable; |
+class 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_; |