blob: a96631d059d1a5dd0dffb7d3ebd9ec9d2cd64584 [file] [log] [blame]
Steve Blocka7e24c12009-10-30 11:49:00 +00001// Copyright 2006-2009 the V8 project authors. All rights reserved.
Ben Murdochb8a8cc12014-11-26 15:28:44 +00002// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
Steve Blocka7e24c12009-10-30 11:49:00 +00004
5#ifndef V8_LOG_INL_H_
6#define V8_LOG_INL_H_
7
Ben Murdochb8a8cc12014-11-26 15:28:44 +00008#include "src/log.h"
Emily Bernierd0a1eb72015-03-24 16:35:39 -04009#include "src/isolate.h"
Steve Blocka7e24c12009-10-30 11:49:00 +000010
11namespace v8 {
12namespace internal {
13
Steve Block6ded16b2010-05-10 14:33:55 +010014Logger::LogEventsAndTags Logger::ToNativeByScript(Logger::LogEventsAndTags tag,
15 Script* script) {
16 if ((tag == FUNCTION_TAG || tag == LAZY_COMPILE_TAG || tag == SCRIPT_TAG)
17 && script->type()->value() == Script::TYPE_NATIVE) {
18 switch (tag) {
19 case FUNCTION_TAG: return NATIVE_FUNCTION_TAG;
20 case LAZY_COMPILE_TAG: return NATIVE_LAZY_COMPILE_TAG;
21 case SCRIPT_TAG: return NATIVE_SCRIPT_TAG;
22 default: return tag;
23 }
24 } else {
25 return tag;
Steve Blocka7e24c12009-10-30 11:49:00 +000026 }
27}
28
Steve Blocka7e24c12009-10-30 11:49:00 +000029
Emily Bernierd0a1eb72015-03-24 16:35:39 -040030void Logger::CallEventLogger(Isolate* isolate, const char* name, StartEnd se,
31 bool expose_to_api) {
32 if (isolate->event_logger() != NULL) {
33 if (isolate->event_logger() == DefaultEventLoggerSentinel) {
34 LOG(isolate, TimerEvent(se, name));
35 } else if (expose_to_api) {
36 isolate->event_logger()(name, se);
37 }
38 }
39}
Steve Blocka7e24c12009-10-30 11:49:00 +000040} } // namespace v8::internal
41
42#endif // V8_LOG_INL_H_