Lines Matching defs:kind
14 #include "src/objects/elements-kind.h"
32 // This kind means that the slot points to the middle of other slot
71 inline bool IsCallICKind(FeedbackSlotKind kind) {
72 return kind == FeedbackSlotKind::kCall;
75 inline bool IsLoadICKind(FeedbackSlotKind kind) {
76 return kind == FeedbackSlotKind::kLoadProperty;
79 inline bool IsLoadGlobalICKind(FeedbackSlotKind kind) {
80 return kind == FeedbackSlotKind::kLoadGlobalNotInsideTypeof ||
81 kind == FeedbackSlotKind::kLoadGlobalInsideTypeof;
84 inline bool IsKeyedLoadICKind(FeedbackSlotKind kind) {
85 return kind == FeedbackSlotKind::kLoadKeyed;
88 inline bool IsKeyedHasICKind(FeedbackSlotKind kind) {
89 return kind == FeedbackSlotKind::kHasKeyed;
92 inline bool IsStoreGlobalICKind(FeedbackSlotKind kind) {
93 return kind == FeedbackSlotKind::kStoreGlobalSloppy ||
94 kind == FeedbackSlotKind::kStoreGlobalStrict;
97 inline bool IsSetNamedICKind(FeedbackSlotKind kind) {
98 return kind == FeedbackSlotKind::kSetNamedSloppy ||
99 kind == FeedbackSlotKind::kSetNamedStrict;
102 inline bool IsDefineNamedOwnICKind(FeedbackSlotKind kind) {
103 return kind == FeedbackSlotKind::kDefineNamedOwn;
106 inline bool IsDefineKeyedOwnICKind(FeedbackSlotKind kind) {
107 return kind == FeedbackSlotKind::kDefineKeyedOwn;
110 inline bool IsDefineKeyedOwnPropertyInLiteralKind(FeedbackSlotKind kind) {
111 return kind == FeedbackSlotKind::kDefineKeyedOwnPropertyInLiteral;
114 inline bool IsKeyedStoreICKind(FeedbackSlotKind kind) {
115 return kind == FeedbackSlotKind::kSetKeyedSloppy ||
116 kind == FeedbackSlotKind::kSetKeyedStrict;
119 inline bool IsStoreInArrayLiteralICKind(FeedbackSlotKind kind) {
120 return kind == FeedbackSlotKind::kStoreInArrayLiteral;
123 inline bool IsGlobalICKind(FeedbackSlotKind kind) {
124 return IsLoadGlobalICKind(kind) || IsStoreGlobalICKind(kind);
127 inline bool IsTypeProfileKind(FeedbackSlotKind kind) {
128 return kind == FeedbackSlotKind::kTypeProfile;
131 inline bool IsCloneObjectKind(FeedbackSlotKind kind) {
132 return kind == FeedbackSlotKind::kCloneObject;
135 inline TypeofMode GetTypeofModeFromSlotKind(FeedbackSlotKind kind) {
136 DCHECK(IsLoadGlobalICKind(kind));
137 return (kind == FeedbackSlotKind::kLoadGlobalInsideTypeof)
142 inline LanguageMode GetLanguageModeFromSlotKind(FeedbackSlotKind kind) {
143 DCHECK(IsSetNamedICKind(kind) || IsDefineNamedOwnICKind(kind) ||
144 IsStoreGlobalICKind(kind) || IsKeyedStoreICKind(kind) ||
145 IsDefineKeyedOwnICKind(kind));
152 return (kind <= FeedbackSlotKind::kLastSloppyKind) ? LanguageMode::kSloppy
157 FeedbackSlotKind kind);
268 // Returns slot kind for given slot.
300 // Returns typeof mode encoded into kind of given slot.
305 // Returns language mode encoded into kind of given slot.
481 FeedbackSlot AddSlot(FeedbackSlotKind kind);
483 void append(FeedbackSlotKind kind) { slot_kinds_.push_back(kind); }
496 SharedFeedbackSlot(FeedbackVectorSpec* spec, FeedbackSlotKind kind)
497 : kind_(kind), spec_(spec) {}
531 // Returns number of feedback vector elements used by given slot kind.
532 static inline int GetSlotSize(FeedbackSlotKind kind);
538 // Returns slot kind for given slot.
549 static const char* Kind2String(FeedbackSlotKind kind);
587 void SetKind(FeedbackSlot slot, FeedbackSlotKind kind);
619 // Returns slot kind of the last slot returned by Next().
620 FeedbackSlotKind kind() const {
726 FeedbackSlotKind kind() const { return kind_; }