| 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_CODE_STUBS_H_ | 5 #ifndef V8_CODE_STUBS_H_ |
| 6 #define V8_CODE_STUBS_H_ | 6 #define V8_CODE_STUBS_H_ |
| 7 | 7 |
| 8 #include "src/allocation.h" | 8 #include "src/allocation.h" |
| 9 #include "src/assembler.h" | 9 #include "src/assembler.h" |
| 10 #include "src/code-stub-assembler.h" | 10 #include "src/code-stub-assembler.h" |
| (...skipping 44 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 55 V(StubFailureTrampoline) \ | 55 V(StubFailureTrampoline) \ |
| 56 /* These are only called from FCG */ \ | 56 /* These are only called from FCG */ \ |
| 57 /* They can be removed when only the TF */ \ | 57 /* They can be removed when only the TF */ \ |
| 58 /* version of the corresponding stub is */ \ | 58 /* version of the corresponding stub is */ \ |
| 59 /* used universally */ \ | 59 /* used universally */ \ |
| 60 V(CallICTrampoline) \ | 60 V(CallICTrampoline) \ |
| 61 /* --- HydrogenCodeStubs --- */ \ | 61 /* --- HydrogenCodeStubs --- */ \ |
| 62 /* These builtins w/ JS linkage are */ \ | 62 /* These builtins w/ JS linkage are */ \ |
| 63 /* just fast-cases of C++ builtins. They */ \ | 63 /* just fast-cases of C++ builtins. They */ \ |
| 64 /* require varg support from TF */ \ | 64 /* require varg support from TF */ \ |
| 65 V(FastArrayPush) \ | |
| 66 V(FastFunctionBind) \ | 65 V(FastFunctionBind) \ |
| 67 /* These will be ported/eliminated */ \ | 66 /* These will be ported/eliminated */ \ |
| 68 /* as part of the new IC system, ask */ \ | 67 /* as part of the new IC system, ask */ \ |
| 69 /* ishell before doing anything */ \ | 68 /* ishell before doing anything */ \ |
| 70 V(LoadConstant) \ | 69 V(LoadConstant) \ |
| 71 V(LoadDictionaryElement) \ | 70 V(LoadDictionaryElement) \ |
| 72 V(LoadFastElement) \ | 71 V(LoadFastElement) \ |
| 73 V(LoadField) \ | 72 V(LoadField) \ |
| 74 /* These should never be ported to TF */ \ | 73 /* These should never be ported to TF */ \ |
| 75 /* because they are either used only by */ \ | 74 /* because they are either used only by */ \ |
| (...skipping 928 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1004 return ElementsKindBits::decode(minor_key_); | 1003 return ElementsKindBits::decode(minor_key_); |
| 1005 } | 1004 } |
| 1006 | 1005 |
| 1007 private: | 1006 private: |
| 1008 class ElementsKindBits : public BitField<ElementsKind, 0, 8> {}; | 1007 class ElementsKindBits : public BitField<ElementsKind, 0, 8> {}; |
| 1009 | 1008 |
| 1010 DEFINE_CALL_INTERFACE_DESCRIPTOR(GrowArrayElements); | 1009 DEFINE_CALL_INTERFACE_DESCRIPTOR(GrowArrayElements); |
| 1011 DEFINE_TURBOFAN_CODE_STUB(GrowArrayElements, TurboFanCodeStub); | 1010 DEFINE_TURBOFAN_CODE_STUB(GrowArrayElements, TurboFanCodeStub); |
| 1012 }; | 1011 }; |
| 1013 | 1012 |
| 1014 class FastArrayPushStub : public HydrogenCodeStub { | |
| 1015 public: | |
| 1016 explicit FastArrayPushStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} | |
| 1017 | |
| 1018 private: | |
| 1019 DEFINE_CALL_INTERFACE_DESCRIPTOR(VarArgFunction); | |
| 1020 DEFINE_HYDROGEN_CODE_STUB(FastArrayPush, HydrogenCodeStub); | |
| 1021 }; | |
| 1022 | |
| 1023 class FastFunctionBindStub : public HydrogenCodeStub { | 1013 class FastFunctionBindStub : public HydrogenCodeStub { |
| 1024 public: | 1014 public: |
| 1025 explicit FastFunctionBindStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} | 1015 explicit FastFunctionBindStub(Isolate* isolate) : HydrogenCodeStub(isolate) {} |
| 1026 | 1016 |
| 1027 private: | 1017 private: |
| 1028 DEFINE_CALL_INTERFACE_DESCRIPTOR(VarArgFunction); | 1018 DEFINE_CALL_INTERFACE_DESCRIPTOR(VarArgFunction); |
| 1029 DEFINE_HYDROGEN_CODE_STUB(FastFunctionBind, HydrogenCodeStub); | 1019 DEFINE_HYDROGEN_CODE_STUB(FastFunctionBind, HydrogenCodeStub); |
| 1030 }; | 1020 }; |
| 1031 | 1021 |
| 1032 enum AllocationSiteOverrideMode { | 1022 enum AllocationSiteOverrideMode { |
| (...skipping 1625 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2658 #undef DEFINE_PLATFORM_CODE_STUB | 2648 #undef DEFINE_PLATFORM_CODE_STUB |
| 2659 #undef DEFINE_HANDLER_CODE_STUB | 2649 #undef DEFINE_HANDLER_CODE_STUB |
| 2660 #undef DEFINE_HYDROGEN_CODE_STUB | 2650 #undef DEFINE_HYDROGEN_CODE_STUB |
| 2661 #undef DEFINE_CODE_STUB | 2651 #undef DEFINE_CODE_STUB |
| 2662 #undef DEFINE_CODE_STUB_BASE | 2652 #undef DEFINE_CODE_STUB_BASE |
| 2663 | 2653 |
| 2664 } // namespace internal | 2654 } // namespace internal |
| 2665 } // namespace v8 | 2655 } // namespace v8 |
| 2666 | 2656 |
| 2667 #endif // V8_CODE_STUBS_H_ | 2657 #endif // V8_CODE_STUBS_H_ |
| OLD | NEW |