Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(5)

Side by Side Diff: src/jsregexp.cc

Issue 875833002: Fix regexp=interpreted build wrt zone related changes. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/regexp-macro-assembler-irregexp.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "src/v8.h" 5 #include "src/v8.h"
6 6
7 #include "src/ast.h" 7 #include "src/ast.h"
8 #include "src/base/platform/platform.h" 8 #include "src/base/platform/platform.h"
9 #include "src/compilation-cache.h" 9 #include "src/compilation-cache.h"
10 #include "src/compiler.h" 10 #include "src/compiler.h"
(...skipping 6103 matching lines...) Expand 10 before | Expand all | Expand 10 after
6114 #elif V8_TARGET_ARCH_X87 6114 #elif V8_TARGET_ARCH_X87
6115 RegExpMacroAssemblerX87 macro_assembler(isolate, zone, mode, 6115 RegExpMacroAssemblerX87 macro_assembler(isolate, zone, mode,
6116 (data->capture_count + 1) * 2); 6116 (data->capture_count + 1) * 2);
6117 #else 6117 #else
6118 #error "Unsupported architecture" 6118 #error "Unsupported architecture"
6119 #endif 6119 #endif
6120 6120
6121 #else // V8_INTERPRETED_REGEXP 6121 #else // V8_INTERPRETED_REGEXP
6122 // Interpreted regexp implementation. 6122 // Interpreted regexp implementation.
6123 EmbeddedVector<byte, 1024> codes; 6123 EmbeddedVector<byte, 1024> codes;
6124 RegExpMacroAssemblerIrregexp macro_assembler(codes, zone); 6124 RegExpMacroAssemblerIrregexp macro_assembler(isolate, codes, zone);
6125 #endif // V8_INTERPRETED_REGEXP 6125 #endif // V8_INTERPRETED_REGEXP
6126 6126
6127 macro_assembler.set_slow_safe(TooMuchRegExpCode(pattern)); 6127 macro_assembler.set_slow_safe(TooMuchRegExpCode(pattern));
6128 6128
6129 // Inserted here, instead of in Assembler, because it depends on information 6129 // Inserted here, instead of in Assembler, because it depends on information
6130 // in the AST that isn't replicated in the Node structure. 6130 // in the AST that isn't replicated in the Node structure.
6131 static const int kMaxBacksearchLimit = 1024; 6131 static const int kMaxBacksearchLimit = 1024;
6132 if (is_end_anchored && 6132 if (is_end_anchored &&
6133 !is_start_anchored && 6133 !is_start_anchored &&
6134 max_length < kMaxBacksearchLimit) { 6134 max_length < kMaxBacksearchLimit) {
(...skipping 18 matching lines...) Expand all
6153 Heap* heap = pattern->GetHeap(); 6153 Heap* heap = pattern->GetHeap();
6154 bool too_much = pattern->length() > RegExpImpl::kRegExpTooLargeToOptimize; 6154 bool too_much = pattern->length() > RegExpImpl::kRegExpTooLargeToOptimize;
6155 if (heap->total_regexp_code_generated() > RegExpImpl::kRegExpCompiledLimit && 6155 if (heap->total_regexp_code_generated() > RegExpImpl::kRegExpCompiledLimit &&
6156 heap->isolate()->memory_allocator()->SizeExecutable() > 6156 heap->isolate()->memory_allocator()->SizeExecutable() >
6157 RegExpImpl::kRegExpExecutableMemoryLimit) { 6157 RegExpImpl::kRegExpExecutableMemoryLimit) {
6158 too_much = true; 6158 too_much = true;
6159 } 6159 }
6160 return too_much; 6160 return too_much;
6161 } 6161 }
6162 }} // namespace v8::internal 6162 }} // namespace v8::internal
OLDNEW
« no previous file with comments | « no previous file | src/regexp-macro-assembler-irregexp.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698