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 #ifndef V8_HYDROGEN_H_ | 5 #ifndef V8_HYDROGEN_H_ |
6 #define V8_HYDROGEN_H_ | 6 #define V8_HYDROGEN_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/accessors.h" | 10 #include "src/accessors.h" |
(...skipping 389 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
400 int maximum_environment_size() { return maximum_environment_size_; } | 400 int maximum_environment_size() { return maximum_environment_size_; } |
401 | 401 |
402 bool use_optimistic_licm() { | 402 bool use_optimistic_licm() { |
403 return use_optimistic_licm_; | 403 return use_optimistic_licm_; |
404 } | 404 } |
405 | 405 |
406 void set_use_optimistic_licm(bool value) { | 406 void set_use_optimistic_licm(bool value) { |
407 use_optimistic_licm_ = value; | 407 use_optimistic_licm_ = value; |
408 } | 408 } |
409 | 409 |
410 void MarkRecursive() { | 410 void MarkRecursive() { is_recursive_ = true; } |
411 is_recursive_ = true; | 411 bool is_recursive() const { return is_recursive_; } |
412 } | |
413 | 412 |
414 bool is_recursive() const { | 413 void MarkThisHasUses() { this_has_uses_ = true; } |
415 return is_recursive_; | 414 bool this_has_uses() const { return this_has_uses_; } |
416 } | |
417 | 415 |
418 void MarkDependsOnEmptyArrayProtoElements() { | 416 void MarkDependsOnEmptyArrayProtoElements() { |
419 // Add map dependency if not already added. | 417 // Add map dependency if not already added. |
420 if (depends_on_empty_array_proto_elements_) return; | 418 if (depends_on_empty_array_proto_elements_) return; |
421 Map::AddDependentCompilationInfo( | 419 Map::AddDependentCompilationInfo( |
422 handle(isolate()->initial_object_prototype()->map()), | 420 handle(isolate()->initial_object_prototype()->map()), |
423 DependentCode::kElementsCantBeAddedGroup, info()); | 421 DependentCode::kElementsCantBeAddedGroup, info()); |
424 Map::AddDependentCompilationInfo( | 422 Map::AddDependentCompilationInfo( |
425 handle(isolate()->initial_array_prototype()->map()), | 423 handle(isolate()->initial_array_prototype()->map()), |
426 DependentCode::kElementsCantBeAddedGroup, info()); | 424 DependentCode::kElementsCantBeAddedGroup, info()); |
(...skipping 65 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
492 SetOncePointer<HConstant> constant_null_; | 490 SetOncePointer<HConstant> constant_null_; |
493 SetOncePointer<HConstant> constant_invalid_context_; | 491 SetOncePointer<HConstant> constant_invalid_context_; |
494 SetOncePointer<HArgumentsObject> arguments_object_; | 492 SetOncePointer<HArgumentsObject> arguments_object_; |
495 | 493 |
496 HOsrBuilder* osr_; | 494 HOsrBuilder* osr_; |
497 | 495 |
498 CompilationInfo* info_; | 496 CompilationInfo* info_; |
499 Zone* zone_; | 497 Zone* zone_; |
500 | 498 |
501 bool is_recursive_; | 499 bool is_recursive_; |
| 500 bool this_has_uses_; |
502 bool use_optimistic_licm_; | 501 bool use_optimistic_licm_; |
503 bool depends_on_empty_array_proto_elements_; | 502 bool depends_on_empty_array_proto_elements_; |
504 int type_change_checksum_; | 503 int type_change_checksum_; |
505 int maximum_environment_size_; | 504 int maximum_environment_size_; |
506 int no_side_effects_scope_count_; | 505 int no_side_effects_scope_count_; |
507 bool disallow_adding_new_values_; | 506 bool disallow_adding_new_values_; |
508 | 507 |
509 DISALLOW_COPY_AND_ASSIGN(HGraph); | 508 DISALLOW_COPY_AND_ASSIGN(HGraph); |
510 }; | 509 }; |
511 | 510 |
(...skipping 2519 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3031 } | 3030 } |
3032 | 3031 |
3033 private: | 3032 private: |
3034 HGraphBuilder* builder_; | 3033 HGraphBuilder* builder_; |
3035 }; | 3034 }; |
3036 | 3035 |
3037 | 3036 |
3038 } } // namespace v8::internal | 3037 } } // namespace v8::internal |
3039 | 3038 |
3040 #endif // V8_HYDROGEN_H_ | 3039 #endif // V8_HYDROGEN_H_ |
OLD | NEW |