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 174 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
185 } | 185 } |
186 | 186 |
187 | 187 |
188 inline ClustersCoarser::ClusterBackRefs::ClusterBackRefs( | 188 inline ClustersCoarser::ClusterBackRefs::ClusterBackRefs( |
189 const JSObjectsCluster& cluster_) | 189 const JSObjectsCluster& cluster_) |
190 : cluster(cluster_), refs(kInitialBackrefsListCapacity) { | 190 : cluster(cluster_), refs(kInitialBackrefsListCapacity) { |
191 } | 191 } |
192 | 192 |
193 | 193 |
194 inline ClustersCoarser::ClusterBackRefs::ClusterBackRefs( | 194 inline ClustersCoarser::ClusterBackRefs::ClusterBackRefs( |
195 const ClustersCoarser::ClusterBackRefs::ClusterBackRefs& src) | 195 const ClustersCoarser::ClusterBackRefs& src) |
196 : cluster(src.cluster), refs(src.refs.capacity()) { | 196 : cluster(src.cluster), refs(src.refs.capacity()) { |
197 refs.AddAll(src.refs); | 197 refs.AddAll(src.refs); |
198 } | 198 } |
199 | 199 |
200 | 200 |
201 inline ClustersCoarser::ClusterBackRefs::ClusterBackRefs& | 201 inline ClustersCoarser::ClusterBackRefs::ClusterBackRefs& |
202 ClustersCoarser::ClusterBackRefs::operator=( | 202 ClustersCoarser::ClusterBackRefs::operator=( |
203 const ClustersCoarser::ClusterBackRefs::ClusterBackRefs& src) { | 203 const ClustersCoarser::ClusterBackRefs& src) { |
204 if (this == &src) return *this; | 204 if (this == &src) return *this; |
205 cluster = src.cluster; | 205 cluster = src.cluster; |
206 refs.Clear(); | 206 refs.Clear(); |
207 refs.AddAll(src.refs); | 207 refs.AddAll(src.refs); |
208 return *this; | 208 return *this; |
209 } | 209 } |
210 | 210 |
211 | 211 |
212 inline int ClustersCoarser::ClusterBackRefs::Compare( | 212 inline int ClustersCoarser::ClusterBackRefs::Compare( |
213 const ClustersCoarser::ClusterBackRefs::ClusterBackRefs& a, | 213 const ClustersCoarser::ClusterBackRefs& a, |
214 const ClustersCoarser::ClusterBackRefs::ClusterBackRefs& b) { | 214 const ClustersCoarser::ClusterBackRefs& b) { |
215 int cmp = JSObjectsCluster::CompareConstructors(a.cluster, b.cluster); | 215 int cmp = JSObjectsCluster::CompareConstructors(a.cluster, b.cluster); |
216 if (cmp != 0) return cmp; | 216 if (cmp != 0) return cmp; |
217 if (a.refs.length() < b.refs.length()) return -1; | 217 if (a.refs.length() < b.refs.length()) return -1; |
218 if (a.refs.length() > b.refs.length()) return 1; | 218 if (a.refs.length() > b.refs.length()) return 1; |
219 for (int i = 0; i < a.refs.length(); ++i) { | 219 for (int i = 0; i < a.refs.length(); ++i) { |
220 int cmp = JSObjectsCluster::Compare(a.refs[i], b.refs[i]); | 220 int cmp = JSObjectsCluster::Compare(a.refs[i], b.refs[i]); |
221 if (cmp != 0) return cmp; | 221 if (cmp != 0) return cmp; |
222 } | 222 } |
223 return 0; | 223 return 0; |
224 } | 224 } |
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
510 js_retainer_profile.PrintStats(); | 510 js_retainer_profile.PrintStats(); |
511 | 511 |
512 LOG(HeapSampleEndEvent("Heap", "allocated")); | 512 LOG(HeapSampleEndEvent("Heap", "allocated")); |
513 } | 513 } |
514 | 514 |
515 | 515 |
516 #endif // ENABLE_LOGGING_AND_PROFILING | 516 #endif // ENABLE_LOGGING_AND_PROFILING |
517 | 517 |
518 | 518 |
519 } } // namespace v8::internal | 519 } } // namespace v8::internal |
OLD | NEW |