Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2)

Side by Side Diff: src/type-feedback-vector.h

Issue 2674593003: [TypeFeedbackVector] Root feedback vectors at function literal site. (Closed)
Patch Set: REBASE. Created 3 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 184 matching lines...) Expand 10 before | Expand all | Expand 10 after
195 static const int kSlotsCountIndex = 0; 195 static const int kSlotsCountIndex = 0;
196 static const int kReservedIndexCount = 1; 196 static const int kReservedIndexCount = 1;
197 197
198 // Returns number of feedback vector elements used by given slot kind. 198 // Returns number of feedback vector elements used by given slot kind.
199 static inline int GetSlotSize(FeedbackVectorSlotKind kind); 199 static inline int GetSlotSize(FeedbackVectorSlotKind kind);
200 200
201 bool SpecDiffersFrom(const FeedbackVectorSpec* other_spec) const; 201 bool SpecDiffersFrom(const FeedbackVectorSpec* other_spec) const;
202 202
203 bool DiffersFrom(const TypeFeedbackMetadata* other_metadata) const; 203 bool DiffersFrom(const TypeFeedbackMetadata* other_metadata) const;
204 204
205 bool HasFunctionLiteralSlots();
206
205 inline bool is_empty() const; 207 inline bool is_empty() const;
206 208
207 // Returns number of slots in the vector. 209 // Returns number of slots in the vector.
208 inline int slot_count() const; 210 inline int slot_count() const;
209 211
210 // Returns slot kind for given slot. 212 // Returns slot kind for given slot.
211 FeedbackVectorSlotKind GetKind(FeedbackVectorSlot slot) const; 213 FeedbackVectorSlotKind GetKind(FeedbackVectorSlot slot) const;
212 214
213 template <typename Spec> 215 template <typename Spec>
214 static Handle<TypeFeedbackMetadata> New(Isolate* isolate, const Spec* spec); 216 static Handle<TypeFeedbackMetadata> New(Isolate* isolate, const Spec* spec);
(...skipping 523 matching lines...) Expand 10 before | Expand all | Expand 10 after
738 InlineCacheState StateFromFeedback() const override; 740 InlineCacheState StateFromFeedback() const override;
739 }; 741 };
740 742
741 inline BinaryOperationHint BinaryOperationHintFromFeedback(int type_feedback); 743 inline BinaryOperationHint BinaryOperationHintFromFeedback(int type_feedback);
742 inline CompareOperationHint CompareOperationHintFromFeedback(int type_feedback); 744 inline CompareOperationHint CompareOperationHintFromFeedback(int type_feedback);
743 745
744 } // namespace internal 746 } // namespace internal
745 } // namespace v8 747 } // namespace v8
746 748
747 #endif // V8_TRANSITIONS_H_ 749 #endif // V8_TRANSITIONS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698