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/checks.h" | 10 #include "src/checks.h" |
(...skipping 219 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
230 static const int kDummyKeyedLoadICSlot = 1; | 230 static const int kDummyKeyedLoadICSlot = 1; |
231 static const int kDummyStoreICSlot = 2; | 231 static const int kDummyStoreICSlot = 2; |
232 static const int kDummyKeyedStoreICSlot = 3; | 232 static const int kDummyKeyedStoreICSlot = 3; |
233 | 233 |
234 static Handle<TypeFeedbackVector> DummyVector(Isolate* isolate); | 234 static Handle<TypeFeedbackVector> DummyVector(Isolate* isolate); |
235 static FeedbackVectorICSlot DummySlot(int dummyIndex) { | 235 static FeedbackVectorICSlot DummySlot(int dummyIndex) { |
236 DCHECK(dummyIndex >= 0 && dummyIndex <= kDummyKeyedStoreICSlot); | 236 DCHECK(dummyIndex >= 0 && dummyIndex <= kDummyKeyedStoreICSlot); |
237 return FeedbackVectorICSlot(dummyIndex); | 237 return FeedbackVectorICSlot(dummyIndex); |
238 } | 238 } |
239 | 239 |
| 240 static int PushAppliedArgumentsIndex(); |
| 241 static Handle<TypeFeedbackVector> CreatePushAppliedArgumentsVector( |
| 242 Isolate* isolate); |
| 243 |
240 private: | 244 private: |
241 enum VectorICKind { | 245 enum VectorICKind { |
242 KindUnused = 0x0, | 246 KindUnused = 0x0, |
243 KindCallIC = 0x1, | 247 KindCallIC = 0x1, |
244 KindLoadIC = 0x2, | 248 KindLoadIC = 0x2, |
245 KindKeyedLoadIC = 0x3, | 249 KindKeyedLoadIC = 0x3, |
246 KindStoreIC = 0x4, | 250 KindStoreIC = 0x4, |
247 KindKeyedStoreIC = 0x5, | 251 KindKeyedStoreIC = 0x5, |
248 }; | 252 }; |
249 | 253 |
(...skipping 238 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
488 void ConfigurePolymorphic(Handle<Name> name, MapHandleList* maps, | 492 void ConfigurePolymorphic(Handle<Name> name, MapHandleList* maps, |
489 CodeHandleList* handlers); | 493 CodeHandleList* handlers); |
490 | 494 |
491 InlineCacheState StateFromFeedback() const override; | 495 InlineCacheState StateFromFeedback() const override; |
492 Name* FindFirstName() const override; | 496 Name* FindFirstName() const override; |
493 }; | 497 }; |
494 } | 498 } |
495 } // namespace v8::internal | 499 } // namespace v8::internal |
496 | 500 |
497 #endif // V8_TRANSITIONS_H_ | 501 #endif // V8_TRANSITIONS_H_ |
OLD | NEW |