OLD | NEW |
---|---|
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 19 matching lines...) Expand all Loading... | |
30 | 30 |
31 function processArguments(args) { | 31 function processArguments(args) { |
32 var processor = new ArgumentsProcessor(args); | 32 var processor = new ArgumentsProcessor(args); |
33 if (processor.parse()) { | 33 if (processor.parse()) { |
34 return processor.result(); | 34 return processor.result(); |
35 } else { | 35 } else { |
36 processor.printUsageAndExit(); | 36 processor.printUsageAndExit(); |
37 } | 37 } |
38 } | 38 } |
39 | 39 |
40 function initSourceMapSupport() { | |
41 // pull it into our name space | |
Jakob Kummerow
2013/08/23 15:13:37
nit: Comments should start with a capital letter a
Daniel Kurka
2013/08/23 15:47:38
Done.
| |
42 SourceMap = WebInspector.SourceMap; | |
43 | |
44 // overwrite the load function to load | |
45 // scripts synchronously | |
46 SourceMap.load = function(sourceMapURL) { | |
47 var content = readFile(sourceMapURL); | |
48 var sourceMapObject = (JSON.parse(content)); | |
49 return new SourceMap(sourceMapURL, sourceMapObject); | |
50 }; | |
51 } | |
52 | |
40 var entriesProviders = { | 53 var entriesProviders = { |
41 'unix': UnixCppEntriesProvider, | 54 'unix': UnixCppEntriesProvider, |
42 'windows': WindowsCppEntriesProvider, | 55 'windows': WindowsCppEntriesProvider, |
43 'mac': MacCppEntriesProvider | 56 'mac': MacCppEntriesProvider |
44 }; | 57 }; |
45 | 58 |
46 var params = processArguments(arguments); | 59 var params = processArguments(arguments); |
60 var sourceMap = null; | |
61 if (params.sourceMap) { | |
62 initSourceMapSupport(); | |
63 sourceMap = SourceMap.load(params.sourceMap); | |
64 } | |
47 var snapshotLogProcessor; | 65 var snapshotLogProcessor; |
48 if (params.snapshotLogFileName) { | 66 if (params.snapshotLogFileName) { |
49 snapshotLogProcessor = new SnapshotLogProcessor(); | 67 snapshotLogProcessor = new SnapshotLogProcessor(); |
50 snapshotLogProcessor.processLogFile(params.snapshotLogFileName); | 68 snapshotLogProcessor.processLogFile(params.snapshotLogFileName); |
51 } | 69 } |
52 var tickProcessor = new TickProcessor( | 70 var tickProcessor = new TickProcessor( |
53 new (entriesProviders[params.platform])(params.nm, params.targetRootFS), | 71 new (entriesProviders[params.platform])(params.nm, params.targetRootFS), |
54 params.separateIc, | 72 params.separateIc, |
55 params.callGraphSize, | 73 params.callGraphSize, |
56 params.ignoreUnknown, | 74 params.ignoreUnknown, |
57 params.stateFilter, | 75 params.stateFilter, |
58 snapshotLogProcessor, | 76 snapshotLogProcessor, |
59 params.distortion, | 77 params.distortion, |
60 params.range); | 78 params.range, |
79 sourceMap); | |
61 tickProcessor.processLogFile(params.logFileName); | 80 tickProcessor.processLogFile(params.logFileName); |
62 tickProcessor.printStatistics(); | 81 tickProcessor.printStatistics(); |
OLD | NEW |