OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_TYPE_FEEDBACK_VECTOR_H_ | 5 #ifndef V8_TYPE_FEEDBACK_VECTOR_H_ |
6 #define V8_TYPE_FEEDBACK_VECTOR_H_ | 6 #define V8_TYPE_FEEDBACK_VECTOR_H_ |
7 | 7 |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "src/base/logging.h" | 10 #include "src/base/logging.h" |
(...skipping 460 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
471 MaybeHandle<Code> FindHandlerForMap(Handle<Map> map) const final { | 471 MaybeHandle<Code> FindHandlerForMap(Handle<Map> map) const final { |
472 return MaybeHandle<Code>(); | 472 return MaybeHandle<Code>(); |
473 } | 473 } |
474 bool FindHandlers(CodeHandleList* code_list, int length = -1) const final { | 474 bool FindHandlers(CodeHandleList* code_list, int length = -1) const final { |
475 return length == 0; | 475 return length == 0; |
476 } | 476 } |
477 | 477 |
478 void ConfigureMegamorphic() override { UNREACHABLE(); } | 478 void ConfigureMegamorphic() override { UNREACHABLE(); } |
479 void Clear(Code* host); | 479 void Clear(Code* host); |
480 | 480 |
481 // TODO(ishell): remove LoadIC-style mode support. | |
482 void ConfigureMonomorphic(Handle<Map> receiver_map, Handle<Code> handler); | |
483 | |
484 // PropertyCell shortcut mode. | |
485 void ConfigureUninitialized() override; | 481 void ConfigureUninitialized() override; |
486 void ConfigurePropertyCellMode(Handle<PropertyCell> cell); | 482 void ConfigurePropertyCellMode(Handle<PropertyCell> cell); |
487 void ConfigureHandlerMode(Handle<Code> handler); | 483 void ConfigureHandlerMode(Handle<Code> handler); |
488 | 484 |
489 InlineCacheState StateFromFeedback() const override; | 485 InlineCacheState StateFromFeedback() const override; |
490 }; | 486 }; |
491 | 487 |
492 class KeyedLoadICNexus : public FeedbackNexus { | 488 class KeyedLoadICNexus : public FeedbackNexus { |
493 public: | 489 public: |
494 KeyedLoadICNexus(Handle<TypeFeedbackVector> vector, FeedbackVectorSlot slot) | 490 KeyedLoadICNexus(Handle<TypeFeedbackVector> vector, FeedbackVectorSlot slot) |
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
573 KeyedAccessStoreMode GetKeyedAccessStoreMode() const; | 569 KeyedAccessStoreMode GetKeyedAccessStoreMode() const; |
574 IcCheckType GetKeyType() const; | 570 IcCheckType GetKeyType() const; |
575 | 571 |
576 InlineCacheState StateFromFeedback() const override; | 572 InlineCacheState StateFromFeedback() const override; |
577 Name* FindFirstName() const override; | 573 Name* FindFirstName() const override; |
578 }; | 574 }; |
579 } // namespace internal | 575 } // namespace internal |
580 } // namespace v8 | 576 } // namespace v8 |
581 | 577 |
582 #endif // V8_TRANSITIONS_H_ | 578 #endif // V8_TRANSITIONS_H_ |
OLD | NEW |