Revision: 10680
Author:   [email protected]
Date:     Mon Feb 13 02:07:57 2012
Log:      Add --call-graph-size option to tickprocessor.

BUG=v8:1937

Review URL: https://chromiumcodereview.appspot.com/9386007
Patch from Ben Noordhuis <[email protected]>.
http://code.google.com/p/v8/source/detail?r=10680

Modified:
 /branches/bleeding_edge/tools/tickprocessor-driver.js
 /branches/bleeding_edge/tools/tickprocessor.js

=======================================
--- /branches/bleeding_edge/tools/tickprocessor-driver.js Tue Dec 7 03:01:02 2010 +++ /branches/bleeding_edge/tools/tickprocessor-driver.js Mon Feb 13 02:07:57 2012
@@ -52,6 +52,7 @@
 var tickProcessor = new TickProcessor(
   new (entriesProviders[params.platform])(params.nm),
   params.separateIc,
+  params.callGraphSize,
   params.ignoreUnknown,
   params.stateFilter,
   snapshotLogProcessor);
=======================================
--- /branches/bleeding_edge/tools/tickprocessor.js      Mon Sep 12 03:50:40 2011
+++ /branches/bleeding_edge/tools/tickprocessor.js      Mon Feb 13 02:07:57 2012
@@ -146,7 +146,12 @@


 function TickProcessor(
- cppEntriesProvider, separateIc, ignoreUnknown, stateFilter, snapshotLogProcessor) {
+    cppEntriesProvider,
+    separateIc,
+    callGraphSize,
+    ignoreUnknown,
+    stateFilter,
+    snapshotLogProcessor) {
   LogReader.call(this, {
       'shared-library': { parsers: [null, parseInt, parseInt],
           processor: this.processSharedLibrary },
@@ -181,6 +186,7 @@
       'end-code-region': null });

   this.cppEntriesProvider_ = cppEntriesProvider;
+  this.callGraphSize_ = callGraphSize;
   this.ignoreUnknown_ = ignoreUnknown;
   this.stateFilter_ = stateFilter;
   this.snapshotLogProcessor_ = snapshotLogProcessor;
@@ -240,6 +246,7 @@

 TickProcessor.CALL_PROFILE_CUTOFF_PCT = 2.0;

+TickProcessor.CALL_GRAPH_SIZE = 5;

 /**
  * @override
@@ -535,7 +542,7 @@
           padLeft(rec.parentTotalPercent.toFixed(1), 5) + '%  ' +
           indentStr + rec.internalFuncName);
     // Limit backtrace depth.
-    if (indent < 10) {
+    if (indent < 2 * self.callGraphSize_) {
       self.printHeavyProfile(rec.children, indent + 2);
     }
     // Delimit top-level functions.
@@ -764,6 +771,8 @@
         'Show only ticks from OTHER VM state'],
     '-e': ['stateFilter', TickProcessor.VmStates.EXTERNAL,
         'Show only ticks from EXTERNAL VM state'],
+    '--call-graph-size': ['callGraphSize', TickProcessor.CALL_GRAPH_SIZE,
+        'Set the call graph size'],
     '--ignore-unknown': ['ignoreUnknown', true,
         'Exclude ticks of unknown code entries from processing'],
     '--separate-ic': ['separateIc', true,
@@ -792,6 +801,7 @@
   snapshotLogFileName: null,
   platform: 'unix',
   stateFilter: null,
+  callGraphSize: 5,
   ignoreUnknown: false,
   separateIc: false,
   nm: 'nm'

--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to