OLD | NEW |
1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
2 <!-- | 2 <!-- |
3 Copyright 2015 The Chromium Authors. All rights reserved. | 3 Copyright 2015 The Chromium Authors. All rights reserved. |
4 Use of this source code is governed by a BSD-style license that can be | 4 Use of this source code is governed by a BSD-style license that can be |
5 found in the LICENSE file. | 5 found in the LICENSE file. |
6 --> | 6 --> |
7 | 7 |
8 <link rel='import' href='/tracing/extras/importer/trace_code_entry.html'> | 8 <link rel='import' href='/tracing/extras/importer/trace_code_entry.html'> |
9 | 9 |
10 <script> | 10 <script> |
(...skipping 29 matching lines...) Expand all Loading... |
40 return this.getBank_(addressHex) | 40 return this.getBank_(addressHex) |
41 .lookupEntry(this.getAddress_(addressHex)); | 41 .lookupEntry(this.getAddress_(addressHex)); |
42 }, | 42 }, |
43 | 43 |
44 addEntry_: function(addressHex, entry) { | 44 addEntry_: function(addressHex, entry) { |
45 // FIXME: Handle bank spanning addresses ... | 45 // FIXME: Handle bank spanning addresses ... |
46 this.getBank_(addressHex).addEntry(entry); | 46 this.getBank_(addressHex).addEntry(entry); |
47 }, | 47 }, |
48 | 48 |
49 getAddress_: function(addressHex) { | 49 getAddress_: function(addressHex) { |
50 // 13 hex digits == 52 bits, double mantissa fits 53 bits. | 50 // 13 hex digits === 52 bits, double mantissa fits 53 bits. |
51 var bankSizeHexDigits = 13; | 51 var bankSizeHexDigits = 13; |
52 addressHex = addressHex.slice(2); // cut 0x prefix. | 52 addressHex = addressHex.slice(2); // cut 0x prefix. |
53 return parseInt(addressHex.slice(-bankSizeHexDigits), 16); | 53 return parseInt(addressHex.slice(-bankSizeHexDigits), 16); |
54 }, | 54 }, |
55 | 55 |
56 getBank_: function(addressHex) { | 56 getBank_: function(addressHex) { |
57 addressHex = addressHex.slice(2); // cut 0x prefix. | 57 addressHex = addressHex.slice(2); // cut 0x prefix. |
58 | 58 |
59 // 13 hex digits == 52 bits, double mantissa fits 53 bits. | 59 // 13 hex digits === 52 bits, double mantissa fits 53 bits. |
60 var bankSizeHexDigits = 13; | 60 var bankSizeHexDigits = 13; |
61 var maxHexDigits = 16; | 61 var maxHexDigits = 16; |
62 var bankName = addressHex.slice(-maxHexDigits, -bankSizeHexDigits); | 62 var bankName = addressHex.slice(-maxHexDigits, -bankSizeHexDigits); |
63 var bank = this.banks_.get(bankName); | 63 var bank = this.banks_.get(bankName); |
64 if (!bank) { | 64 if (!bank) { |
65 bank = new TraceCodeBank(); | 65 bank = new TraceCodeBank(); |
66 this.banks_.set(bankName, bank); | 66 this.banks_.set(bankName, bank); |
67 } | 67 } |
68 return bank; | 68 return bank; |
69 } | 69 } |
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
118 this.entries_.splice(index, lastIndex - index, newEntry); | 118 this.entries_.splice(index, lastIndex - index, newEntry); |
119 } | 119 } |
120 }; | 120 }; |
121 | 121 |
122 return { | 122 return { |
123 TraceCodeMap: TraceCodeMap | 123 TraceCodeMap: TraceCodeMap |
124 }; | 124 }; |
125 }); | 125 }); |
126 | 126 |
127 </script> | 127 </script> |
OLD | NEW |