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_IC_H_ | 5 #ifndef V8_IC_H_ |
6 #define V8_IC_H_ | 6 #define V8_IC_H_ |
7 | 7 |
8 #include "src/ic/ic-state.h" | 8 #include "src/ic/ic-state.h" |
9 #include "src/macro-assembler.h" | 9 #include "src/macro-assembler.h" |
10 #include "src/messages.h" | 10 #include "src/messages.h" |
(...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
50 return target()->is_load_stub() || target()->is_keyed_load_stub(); | 50 return target()->is_load_stub() || target()->is_keyed_load_stub(); |
51 } | 51 } |
52 | 52 |
53 bool IsStoreStub() const { | 53 bool IsStoreStub() const { |
54 return target()->is_store_stub() || target()->is_keyed_store_stub(); | 54 return target()->is_store_stub() || target()->is_keyed_store_stub(); |
55 } | 55 } |
56 | 56 |
57 bool IsCallStub() const { return target()->is_call_stub(); } | 57 bool IsCallStub() const { return target()->is_call_stub(); } |
58 #endif | 58 #endif |
59 | 59 |
60 static inline JSFunction* GetRootConstructor(Map* receiver_map, | |
61 Context* native_context); | |
62 static inline Handle<Map> GetHandlerCacheHolder(Handle<Map> receiver_map, | 60 static inline Handle<Map> GetHandlerCacheHolder(Handle<Map> receiver_map, |
63 bool receiver_is_holder, | 61 bool receiver_is_holder, |
64 Isolate* isolate, | 62 Isolate* isolate, |
65 CacheHolderFlag* flag); | 63 CacheHolderFlag* flag); |
66 static inline Handle<Map> GetICCacheHolder(Handle<Map> receiver_map, | 64 static inline Handle<Map> GetICCacheHolder(Handle<Map> receiver_map, |
67 Isolate* isolate, | 65 Isolate* isolate, |
68 CacheHolderFlag* flag); | 66 CacheHolderFlag* flag); |
69 | 67 |
70 static bool IsCleared(Code* code) { | 68 static bool IsCleared(Code* code) { |
71 InlineCacheState state = code->ic_state(); | 69 InlineCacheState state = code->ic_state(); |
(...skipping 610 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
682 | 680 |
683 | 681 |
684 // Helper for BinaryOpIC and CompareIC. | 682 // Helper for BinaryOpIC and CompareIC. |
685 enum InlinedSmiCheck { ENABLE_INLINED_SMI_CHECK, DISABLE_INLINED_SMI_CHECK }; | 683 enum InlinedSmiCheck { ENABLE_INLINED_SMI_CHECK, DISABLE_INLINED_SMI_CHECK }; |
686 void PatchInlinedSmiCode(Address address, InlinedSmiCheck check); | 684 void PatchInlinedSmiCode(Address address, InlinedSmiCheck check); |
687 | 685 |
688 } // namespace internal | 686 } // namespace internal |
689 } // namespace v8 | 687 } // namespace v8 |
690 | 688 |
691 #endif // V8_IC_H_ | 689 #endif // V8_IC_H_ |
OLD | NEW |