OLD | NEW |
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 70 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
81 this.profile.addCode('T', 'F1', 0x50100, 0x100); | 81 this.profile.addCode('T', 'F1', 0x50100, 0x100); |
82 this.profile.addCode('T', 'F2', 0x50200, 0x100); | 82 this.profile.addCode('T', 'F2', 0x50200, 0x100); |
83 this.profile.addCode('T', 'F3', 0x50400, 0x100); | 83 this.profile.addCode('T', 'F3', 0x50400, 0x100); |
84 }; | 84 }; |
85 | 85 |
86 | 86 |
87 ProfileTestDriver.prototype.enter = function(funcName) { | 87 ProfileTestDriver.prototype.enter = function(funcName) { |
88 // Stack looks like this: [pc, caller, ..., main]. | 88 // Stack looks like this: [pc, caller, ..., main]. |
89 // Therefore, we are adding entries at the beginning. | 89 // Therefore, we are adding entries at the beginning. |
90 this.stack_.unshift(this.funcAddrs_[funcName]); | 90 this.stack_.unshift(this.funcAddrs_[funcName]); |
91 this.profile.recordTick(this.stack_); | 91 this.profile.recordTick(0, 0, this.stack_); |
92 }; | 92 }; |
93 | 93 |
94 | 94 |
95 ProfileTestDriver.prototype.stay = function() { | 95 ProfileTestDriver.prototype.stay = function() { |
96 this.profile.recordTick(this.stack_); | 96 this.profile.recordTick(0, 0, this.stack_); |
97 }; | 97 }; |
98 | 98 |
99 | 99 |
100 ProfileTestDriver.prototype.leave = function() { | 100 ProfileTestDriver.prototype.leave = function() { |
101 this.stack_.shift(); | 101 this.stack_.shift(); |
102 }; | 102 }; |
103 | 103 |
104 | 104 |
105 ProfileTestDriver.prototype.execute = function() { | 105 ProfileTestDriver.prototype.execute = function() { |
106 this.enter('lib1-f1'); | 106 this.enter('lib1-f1'); |
(...skipping 231 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
338 assertEquals(2, flatProfile.length, 'counted vs. flatProfile'); | 338 assertEquals(2, flatProfile.length, 'counted vs. flatProfile'); |
339 for (var i = 0; i < flatProfile.length; ++i) { | 339 for (var i = 0; i < flatProfile.length; ++i) { |
340 var rec = flatProfile[i]; | 340 var rec = flatProfile[i]; |
341 assertTrue(rec.label in flatWeights, 'uncounted: ' + rec.label); | 341 assertTrue(rec.label in flatWeights, 'uncounted: ' + rec.label); |
342 var reference = flatWeights[rec.label]; | 342 var reference = flatWeights[rec.label]; |
343 assertEquals(reference[0], rec.selfWeight, 'self of ' + rec.label); | 343 assertEquals(reference[0], rec.selfWeight, 'self of ' + rec.label); |
344 assertEquals(reference[1], rec.totalWeight, 'total of ' + rec.label); | 344 assertEquals(reference[1], rec.totalWeight, 'total of ' + rec.label); |
345 } | 345 } |
346 | 346 |
347 })(); | 347 })(); |
OLD | NEW |