| Index: src/regexp/jsregexp.cc
|
| diff --git a/src/regexp/jsregexp.cc b/src/regexp/jsregexp.cc
|
| index 8b21459059aa76a47dd9cfe3ca369a9d317be6cb..0ed3086ce674833ef973528d6943fc9f65451c10 100644
|
| --- a/src/regexp/jsregexp.cc
|
| +++ b/src/regexp/jsregexp.cc
|
| @@ -1106,12 +1106,11 @@ RegExpEngine::CompilationResult RegExpCompiler::Assemble(
|
| RegExpNode* start,
|
| int capture_count,
|
| Handle<String> pattern) {
|
| - Heap* heap = pattern->GetHeap();
|
| + Isolate* isolate = pattern->GetHeap()->isolate();
|
|
|
| #ifdef DEBUG
|
| if (FLAG_trace_regexp_assembler)
|
| - macro_assembler_ =
|
| - new RegExpMacroAssemblerTracer(isolate(), macro_assembler);
|
| + macro_assembler_ = new RegExpMacroAssemblerTracer(isolate, macro_assembler);
|
| else
|
| #endif
|
| macro_assembler_ = macro_assembler;
|
| @@ -1135,11 +1134,11 @@ RegExpEngine::CompilationResult RegExpCompiler::Assemble(
|
| }
|
|
|
| Handle<HeapObject> code = macro_assembler_->GetCode(pattern);
|
| - heap->IncreaseTotalRegexpCodeGenerated(code->Size());
|
| + isolate->IncreaseTotalRegexpCodeGenerated(code->Size());
|
| work_list_ = NULL;
|
| #ifdef ENABLE_DISASSEMBLER
|
| if (FLAG_print_code) {
|
| - CodeTracer::Scope trace_scope(heap->isolate()->GetCodeTracer());
|
| + CodeTracer::Scope trace_scope(isolate->GetCodeTracer());
|
| OFStream os(trace_scope.file());
|
| Handle<Code>::cast(code)->Disassemble(pattern->ToCString().get(), os);
|
| }
|
| @@ -6761,8 +6760,9 @@ RegExpEngine::CompilationResult RegExpEngine::Compile(
|
| bool RegExpEngine::TooMuchRegExpCode(Handle<String> pattern) {
|
| Heap* heap = pattern->GetHeap();
|
| bool too_much = pattern->length() > RegExpImpl::kRegExpTooLargeToOptimize;
|
| - if (heap->total_regexp_code_generated() > RegExpImpl::kRegExpCompiledLimit &&
|
| - heap->memory_allocator()->SizeExecutable() >
|
| + if (heap->isolate()->total_regexp_code_generated() >
|
| + RegExpImpl::kRegExpCompiledLimit &&
|
| + heap->CommittedMemoryExecutable() >
|
| RegExpImpl::kRegExpExecutableMemoryLimit) {
|
| too_much = true;
|
| }
|
|
|