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

Unified Diff: src/compiler.cc

Issue 435003: Patch for allowing several V8 instances in process:... (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: '' Created 11 years 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/compiler.h ('k') | src/conversions.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/compiler.cc
===================================================================
--- src/compiler.cc (revision 3427)
+++ src/compiler.cc (working copy)
@@ -41,6 +41,7 @@
namespace v8 {
namespace internal {
+CompilerData::CompilerData() {}
class CodeGenSelector: public AstVisitor {
public:
@@ -98,7 +99,7 @@
// Compute top scope and allocate variables. For lazy compilation
// the top scope only contains the single lazily compiled function,
// so this doesn't re-allocate variables repeatedly.
- HistogramTimerScope timer(&Counters::variable_allocation);
+ HistogramTimerScope timer(&COUNTER(variable_allocation));
Scope* top = literal->scope();
while (top->outer_scope() != NULL) top = top->outer_scope();
top->AllocateVariables(context);
@@ -220,8 +221,8 @@
// rest of the function into account to avoid overlap with the
// parsing statistics.
HistogramTimer* rate = is_eval
- ? &Counters::compile_eval
- : &Counters::compile;
+ ? &COUNTER(compile_eval)
+ : &COUNTER(compile);
HistogramTimerScope timer(rate);
// Compile the code.
@@ -278,18 +279,14 @@
return fun;
}
-
-static StaticResource<SafeStringInputBuffer> safe_string_input_buffer;
-
-
Handle<JSFunction> Compiler::Compile(Handle<String> source,
Handle<Object> script_name,
int line_offset, int column_offset,
v8::Extension* extension,
ScriptDataImpl* input_pre_data) {
int source_length = source->length();
- Counters::total_load_size.Increment(source_length);
- Counters::total_compile_size.Increment(source_length);
+ INCREMENT_COUNTER(total_load_size, source_length);
+ INCREMENT_COUNTER(total_compile_size, source_length);
// The VM is in the COMPILER state until exiting this function.
VMState state(COMPILER);
@@ -307,7 +304,8 @@
// No cache entry found. Do pre-parsing and compile the script.
ScriptDataImpl* pre_data = input_pre_data;
if (pre_data == NULL && source_length >= FLAG_min_preparse_length) {
- Access<SafeStringInputBuffer> buf(&safe_string_input_buffer);
+ Access<SafeStringInputBuffer> buf(
+ &v8_context()->compiler_data_.safe_string_input_buffer_);
buf->Reset(source.location());
pre_data = PreParse(source, buf.value(), extension);
}
@@ -352,8 +350,8 @@
// the input is legal json.
int source_length = source->length();
- Counters::total_eval_size.Increment(source_length);
- Counters::total_compile_size.Increment(source_length);
+ INCREMENT_COUNTER(total_eval_size, source_length);
+ INCREMENT_COUNTER(total_compile_size, source_length);
// The VM is in the COMPILER state until exiting this function.
VMState state(COMPILER);
@@ -403,7 +401,7 @@
int start_position = shared->start_position();
int end_position = shared->end_position();
bool is_expression = shared->is_expression();
- Counters::total_compile_size.Increment(end_position - start_position);
+ INCREMENT_COUNTER(total_compile_size, end_position - start_position);
// Generate the AST for the lazily compiled function. The AST may be
// NULL in case of parser stack overflow.
@@ -424,7 +422,7 @@
// Measure how long it takes to do the lazy compilation; only take
// the rest of the function into account to avoid overlap with the
// lazy parsing statistics.
- HistogramTimerScope timer(&Counters::compile_lazy);
+ HistogramTimerScope timer(&COUNTER(compile_lazy));
// Compile the code.
Handle<Code> code = MakeCode(lit, script, Handle<Context>::null(), false,
« no previous file with comments | « src/compiler.h ('k') | src/conversions.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698