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

Side by Side Diff: tools/profviz/composer.js

Issue 18826008: Fix plot script. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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 319 matching lines...) Expand 10 before | Expand all | Expand 10 after
330 var suffix = kV8BinarySuffixes[i]; 330 var suffix = kV8BinarySuffixes[i];
331 if (name.indexOf(suffix, name.length - suffix.length) >= 0) { 331 if (name.indexOf(suffix, name.length - suffix.length) >= 0) {
332 code_entry.kind = -1; // V8 runtime code kind. 332 code_entry.kind = -1; // V8 runtime code kind.
333 break; 333 break;
334 } 334 }
335 } 335 }
336 code_map.addLibrary(start, code_entry); 336 code_map.addLibrary(start, code_entry);
337 }; 337 };
338 338
339 var processTickEvent = function( 339 var processTickEvent = function(
340 pc, sp, timer, unused_x, unused_y, vmstate, stack) { 340 pc, timer, unused_x, unused_y, vmstate, stack) {
341 var tick = new Tick(timer); 341 var tick = new Tick(timer);
342 342
343 var entry = code_map.findEntry(pc); 343 var entry = code_map.findEntry(pc);
344 if (entry) FindCodeKind(entry.kind).in_execution.push(tick); 344 if (entry) FindCodeKind(entry.kind).in_execution.push(tick);
345 345
346 for (var i = 0; i < kStackFrames; i++) { 346 for (var i = 0; i < kStackFrames; i++) {
347 if (!stack[i]) break; 347 if (!stack[i]) break;
348 var entry = code_map.findEntry(stack[i]); 348 var entry = code_map.findEntry(stack[i]);
349 if (entry) FindCodeKind(entry.kind).stack_frames[i].push(tick); 349 if (entry) FindCodeKind(entry.kind).stack_frames[i].push(tick);
350 } 350 }
351 }; 351 };
352 // Collect data from log. 352 // Collect data from log.
353 var logreader = new LogReader( 353 var logreader = new LogReader(
354 { 'timer-event-start': { parsers: [null, parseTimeStamp], 354 { 'timer-event-start': { parsers: [null, parseTimeStamp],
355 processor: processTimerEventStart }, 355 processor: processTimerEventStart },
356 'timer-event-end': { parsers: [null, parseTimeStamp], 356 'timer-event-end': { parsers: [null, parseTimeStamp],
357 processor: processTimerEventEnd }, 357 processor: processTimerEventEnd },
358 'shared-library': { parsers: [null, parseInt, parseInt], 358 'shared-library': { parsers: [null, parseInt, parseInt],
359 processor: processSharedLibrary }, 359 processor: processSharedLibrary },
360 'code-creation': { parsers: [null, parseInt, parseInt, parseInt, null], 360 'code-creation': { parsers: [null, parseInt, parseInt, parseInt, null],
361 processor: processCodeCreateEvent }, 361 processor: processCodeCreateEvent },
362 'code-move': { parsers: [parseInt, parseInt], 362 'code-move': { parsers: [parseInt, parseInt],
363 processor: processCodeMoveEvent }, 363 processor: processCodeMoveEvent },
364 'code-delete': { parsers: [parseInt], 364 'code-delete': { parsers: [parseInt],
365 processor: processCodeDeleteEvent }, 365 processor: processCodeDeleteEvent },
366 'code-deopt': { parsers: [parseTimeStamp, parseInt], 366 'code-deopt': { parsers: [parseTimeStamp, parseInt],
367 processor: processCodeDeoptEvent }, 367 processor: processCodeDeoptEvent },
368 'tick': { parsers: [parseInt, parseInt, parseTimeStamp, 368 'tick': { parsers: [parseInt, parseTimeStamp,
369 null, null, parseInt, 'var-args'], 369 null, null, parseInt, 'var-args'],
370 processor: processTickEvent } 370 processor: processTickEvent }
371 }); 371 });
372 372
373 var line; 373 var line;
374 while (line = input()) { 374 while (line = input()) {
375 logreader.processLogLine(line); 375 logreader.processLogLine(line);
376 } 376 }
377 377
378 // Collect execution pauses. 378 // Collect execution pauses.
(...skipping 192 matching lines...) Expand 10 before | Expand all | Expand 10 after
571 output("plot '-' using 1:2 axes x1y2 with impulses ls 1"); 571 output("plot '-' using 1:2 axes x1y2 with impulses ls 1");
572 for (var i = 0; i < execution_pauses.length; i++) { 572 for (var i = 0; i < execution_pauses.length; i++) {
573 var pause = execution_pauses[i]; 573 var pause = execution_pauses[i];
574 output(pause.end + " " + pause.duration()); 574 output(pause.end + " " + pause.duration());
575 obj_index++; 575 obj_index++;
576 } 576 }
577 output("e"); 577 output("e");
578 return obj_index; 578 return obj_index;
579 }; 579 };
580 } 580 }
OLDNEW
« test/mjsunit/tools/profviz.js ('K') | « test/mjsunit/tools/profviz-test.log ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698