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

Side by Side Diff: src/log.cc

Issue 3417019: Provide more functions to CPU profiler (fix issue 858). (Closed)
Patch Set: Hooked on MC/MS also Created 10 years, 3 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
OLDNEW
1 // Copyright 2009 the V8 project authors. All rights reserved. 1 // Copyright 2009 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 858 matching lines...) Expand 10 before | Expand all | Expand 10 after
869 } 869 }
870 870
871 871
872 void Logger::FunctionCreateEvent(JSFunction* function) { 872 void Logger::FunctionCreateEvent(JSFunction* function) {
873 #ifdef ENABLE_LOGGING_AND_PROFILING 873 #ifdef ENABLE_LOGGING_AND_PROFILING
874 static Address prev_code = NULL; 874 static Address prev_code = NULL;
875 if (!Log::IsEnabled() || !FLAG_log_code) return; 875 if (!Log::IsEnabled() || !FLAG_log_code) return;
876 LogMessageBuilder msg; 876 LogMessageBuilder msg;
877 msg.Append("%s,", log_events_[FUNCTION_CREATION_EVENT]); 877 msg.Append("%s,", log_events_[FUNCTION_CREATION_EVENT]);
878 msg.AppendAddress(function->address()); 878 msg.AppendAddress(function->address());
879 msg.Append(','); 879 msg.Append(',');
Søren Thygesen Gjesse 2010/09/24 10:20:07 I think a comment here on why we use unchecked_cod
mnaganov (inactive) 2010/09/24 11:43:40 Done.
880 msg.AppendAddress(function->code()->address(), prev_code); 880 msg.AppendAddress(function->unchecked_code()->address(), prev_code);
881 prev_code = function->code()->address(); 881 prev_code = function->unchecked_code()->address();
882 if (FLAG_compress_log) { 882 if (FLAG_compress_log) {
883 ASSERT(compression_helper_ != NULL); 883 ASSERT(compression_helper_ != NULL);
884 if (!compression_helper_->HandleMessage(&msg)) return; 884 if (!compression_helper_->HandleMessage(&msg)) return;
885 } 885 }
886 msg.Append('\n'); 886 msg.Append('\n');
887 msg.WriteToLogFile(); 887 msg.WriteToLogFile();
888 #endif 888 #endif
889 } 889 }
890 890
891 891
892 void Logger::FunctionCreateEventFromMove(JSFunction* function,
893 HeapObject*) {
894 #ifdef ENABLE_LOGGING_AND_PROFILING
895 if (function->unchecked_code() != Builtins::builtin(Builtins::LazyCompile)) {
896 FunctionCreateEvent(function);
897 }
898 #endif
899 }
900
901
892 void Logger::FunctionMoveEvent(Address from, Address to) { 902 void Logger::FunctionMoveEvent(Address from, Address to) {
893 #ifdef ENABLE_LOGGING_AND_PROFILING 903 #ifdef ENABLE_LOGGING_AND_PROFILING
894 MoveEventInternal(FUNCTION_MOVE_EVENT, from, to); 904 MoveEventInternal(FUNCTION_MOVE_EVENT, from, to);
895 #endif 905 #endif
896 } 906 }
897 907
898 908
899 void Logger::FunctionDeleteEvent(Address from) { 909 void Logger::FunctionDeleteEvent(Address from) {
900 #ifdef ENABLE_LOGGING_AND_PROFILING 910 #ifdef ENABLE_LOGGING_AND_PROFILING
901 DeleteEventInternal(FUNCTION_DELETE_EVENT, from); 911 DeleteEventInternal(FUNCTION_DELETE_EVENT, from);
(...skipping 654 matching lines...) Expand 10 before | Expand all | Expand 10 after
1556 } 1566 }
1557 // Otherwise, if the sliding state window computation has not been 1567 // Otherwise, if the sliding state window computation has not been
1558 // started we do it now. 1568 // started we do it now.
1559 if (sliding_state_window_ == NULL) { 1569 if (sliding_state_window_ == NULL) {
1560 sliding_state_window_ = new SlidingStateWindow(); 1570 sliding_state_window_ = new SlidingStateWindow();
1561 } 1571 }
1562 #endif 1572 #endif
1563 } 1573 }
1564 1574
1565 } } // namespace v8::internal 1575 } } // namespace v8::internal
OLDNEW
« src/cpu-profiler.cc ('K') | « src/log.h ('k') | src/mark-compact.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698