| 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 398 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 409 | 409 |
| 410 void MarkRecursive() { is_recursive_ = true; } | 410 void MarkRecursive() { is_recursive_ = true; } |
| 411 bool is_recursive() const { return is_recursive_; } | 411 bool is_recursive() const { return is_recursive_; } |
| 412 | 412 |
| 413 void MarkThisHasUses() { this_has_uses_ = true; } | 413 void MarkThisHasUses() { this_has_uses_ = true; } |
| 414 bool this_has_uses() const { return this_has_uses_; } | 414 bool this_has_uses() const { return this_has_uses_; } |
| 415 | 415 |
| 416 void MarkDependsOnEmptyArrayProtoElements() { | 416 void MarkDependsOnEmptyArrayProtoElements() { |
| 417 // Add map dependency if not already added. | 417 // Add map dependency if not already added. |
| 418 if (depends_on_empty_array_proto_elements_) return; | 418 if (depends_on_empty_array_proto_elements_) return; |
| 419 Map::AddDependentCompilationInfo( | 419 info()->dependencies()->AssumeElementsCantBeAdded( |
| 420 handle(isolate()->initial_object_prototype()->map()), | 420 handle(isolate()->initial_object_prototype()->map())); |
| 421 DependentCode::kElementsCantBeAddedGroup, info()); | 421 info()->dependencies()->AssumeElementsCantBeAdded( |
| 422 Map::AddDependentCompilationInfo( | 422 handle(isolate()->initial_array_prototype()->map())); |
| 423 handle(isolate()->initial_array_prototype()->map()), | |
| 424 DependentCode::kElementsCantBeAddedGroup, info()); | |
| 425 depends_on_empty_array_proto_elements_ = true; | 423 depends_on_empty_array_proto_elements_ = true; |
| 426 } | 424 } |
| 427 | 425 |
| 428 bool depends_on_empty_array_proto_elements() { | 426 bool depends_on_empty_array_proto_elements() { |
| 429 return depends_on_empty_array_proto_elements_; | 427 return depends_on_empty_array_proto_elements_; |
| 430 } | 428 } |
| 431 | 429 |
| 432 bool has_uint32_instructions() { | 430 bool has_uint32_instructions() { |
| 433 DCHECK(uint32_instructions_ == NULL || !uint32_instructions_->is_empty()); | 431 DCHECK(uint32_instructions_ == NULL || !uint32_instructions_->is_empty()); |
| 434 return uint32_instructions_ != NULL; | 432 return uint32_instructions_ != NULL; |
| (...skipping 2605 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 3040 } | 3038 } |
| 3041 | 3039 |
| 3042 private: | 3040 private: |
| 3043 HGraphBuilder* builder_; | 3041 HGraphBuilder* builder_; |
| 3044 }; | 3042 }; |
| 3045 | 3043 |
| 3046 | 3044 |
| 3047 } } // namespace v8::internal | 3045 } } // namespace v8::internal |
| 3048 | 3046 |
| 3049 #endif // V8_HYDROGEN_H_ | 3047 #endif // V8_HYDROGEN_H_ |
| OLD | NEW |