Upgrade V8 to 5.1.281.57 DO NOT MERGE
FPIIM-449
Change-Id: Id981b686b4d587ac31697662eb98bb34be42ad90
(cherry picked from commit 3b9bc31999c9787eb726ecdbfd5796bfdec32a18)
diff --git a/src/vm-state-inl.h b/src/vm-state-inl.h
index 6533aa1..c8bd4e8 100644
--- a/src/vm-state-inl.h
+++ b/src/vm-state-inl.h
@@ -40,11 +40,8 @@
template <StateTag Tag>
VMState<Tag>::VMState(Isolate* isolate)
: isolate_(isolate), previous_tag_(isolate->current_vm_state()) {
- if (previous_tag_ != EXTERNAL && Tag == EXTERNAL) {
- if (FLAG_log_timer_events) {
- LOG(isolate_, TimerEvent(Logger::START, TimerEventExternal::name()));
- }
- TRACE_EVENT_BEGIN0(TRACE_DISABLED_BY_DEFAULT("v8"), "V8.External");
+ if (FLAG_log_timer_events && previous_tag_ != EXTERNAL && Tag == EXTERNAL) {
+ LOG(isolate_, TimerEvent(Logger::START, TimerEventExternal::name()));
}
isolate_->set_current_vm_state(Tag);
}
@@ -52,11 +49,8 @@
template <StateTag Tag>
VMState<Tag>::~VMState() {
- if (previous_tag_ != EXTERNAL && Tag == EXTERNAL) {
- if (FLAG_log_timer_events) {
- LOG(isolate_, TimerEvent(Logger::END, TimerEventExternal::name()));
- }
- TRACE_EVENT_END0(TRACE_DISABLED_BY_DEFAULT("v8"), "V8.External");
+ if (FLAG_log_timer_events && previous_tag_ != EXTERNAL && Tag == EXTERNAL) {
+ LOG(isolate_, TimerEvent(Logger::END, TimerEventExternal::name()));
}
isolate_->set_current_vm_state(previous_tag_);
}
@@ -64,16 +58,18 @@
ExternalCallbackScope::ExternalCallbackScope(Isolate* isolate, Address callback)
: isolate_(isolate),
callback_(callback),
- previous_scope_(isolate->external_callback_scope()),
- timer_(&isolate->counters()->runtime_call_stats()->ExternalCallback,
- isolate->counters()->runtime_call_stats()->current_timer()) {
+ previous_scope_(isolate->external_callback_scope()) {
#ifdef USE_SIMULATOR
scope_address_ = Simulator::current(isolate)->get_sp();
#endif
isolate_->set_external_callback_scope(this);
if (FLAG_runtime_call_stats) {
- isolate_->counters()->runtime_call_stats()->Enter(&timer_);
+ RuntimeCallStats* stats = isolate->counters()->runtime_call_stats();
+ timer_.Initialize(&stats->ExternalCallback, stats->current_timer());
+ stats->Enter(&timer_);
}
+ TRACE_EVENT_BEGIN0(TRACE_DISABLED_BY_DEFAULT("v8.runtime"),
+ "V8.ExternalCallback");
}
ExternalCallbackScope::~ExternalCallbackScope() {
@@ -81,6 +77,8 @@
isolate_->counters()->runtime_call_stats()->Leave(&timer_);
}
isolate_->set_external_callback_scope(previous_scope_);
+ TRACE_EVENT_END0(TRACE_DISABLED_BY_DEFAULT("v8.runtime"),
+ "V8.ExternalCallback");
}
Address ExternalCallbackScope::scope_address() {