OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "v8.h" | 5 #include "v8.h" |
6 | 6 |
7 #include "compiler.h" | 7 #include "compiler.h" |
8 | 8 |
9 #include "bootstrapper.h" | 9 #include "bootstrapper.h" |
10 #include "codegen.h" | 10 #include "codegen.h" |
(...skipping 490 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
501 isolate()->GetHStatistics()->IncrementSubtotals(time_taken_to_create_graph_, | 501 isolate()->GetHStatistics()->IncrementSubtotals(time_taken_to_create_graph_, |
502 time_taken_to_optimize_, | 502 time_taken_to_optimize_, |
503 time_taken_to_codegen_); | 503 time_taken_to_codegen_); |
504 } | 504 } |
505 } | 505 } |
506 | 506 |
507 | 507 |
508 // Sets the expected number of properties based on estimate from compiler. | 508 // Sets the expected number of properties based on estimate from compiler. |
509 void SetExpectedNofPropertiesFromEstimate(Handle<SharedFunctionInfo> shared, | 509 void SetExpectedNofPropertiesFromEstimate(Handle<SharedFunctionInfo> shared, |
510 int estimate) { | 510 int estimate) { |
| 511 // See the comment in SetExpectedNofProperties. |
| 512 if (shared->live_objects_may_exist()) return; |
| 513 |
511 // If no properties are added in the constructor, they are more likely | 514 // If no properties are added in the constructor, they are more likely |
512 // to be added later. | 515 // to be added later. |
513 if (estimate == 0) estimate = 2; | 516 if (estimate == 0) estimate = 2; |
514 | 517 |
515 // TODO(yangguo): check whether those heuristics are still up-to-date. | 518 // TODO(yangguo): check whether those heuristics are still up-to-date. |
516 // We do not shrink objects that go into a snapshot (yet), so we adjust | 519 // We do not shrink objects that go into a snapshot (yet), so we adjust |
517 // the estimate conservatively. | 520 // the estimate conservatively. |
518 if (shared->GetIsolate()->serializer_enabled()) { | 521 if (shared->GetIsolate()->serializer_enabled()) { |
519 estimate += 2; | 522 estimate += 2; |
520 } else if (FLAG_clever_optimizations) { | 523 } else if (FLAG_clever_optimizations) { |
(...skipping 761 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1282 AllowHandleDereference allow_deref; | 1285 AllowHandleDereference allow_deref; |
1283 bool tracing_on = info()->IsStub() | 1286 bool tracing_on = info()->IsStub() |
1284 ? FLAG_trace_hydrogen_stubs | 1287 ? FLAG_trace_hydrogen_stubs |
1285 : (FLAG_trace_hydrogen && | 1288 : (FLAG_trace_hydrogen && |
1286 info()->closure()->PassesFilter(FLAG_trace_hydrogen_filter)); | 1289 info()->closure()->PassesFilter(FLAG_trace_hydrogen_filter)); |
1287 return (tracing_on && | 1290 return (tracing_on && |
1288 OS::StrChr(const_cast<char*>(FLAG_trace_phase), name_[0]) != NULL); | 1291 OS::StrChr(const_cast<char*>(FLAG_trace_phase), name_[0]) != NULL); |
1289 } | 1292 } |
1290 | 1293 |
1291 } } // namespace v8::internal | 1294 } } // namespace v8::internal |
OLD | NEW |