| OLD | NEW |
| 1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 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_BUILTINS_BUILTINS_H_ | 5 #ifndef V8_BUILTINS_BUILTINS_H_ |
| 6 #define V8_BUILTINS_BUILTINS_H_ | 6 #define V8_BUILTINS_BUILTINS_H_ |
| 7 | 7 |
| 8 #include "src/base/flags.h" | 8 #include "src/base/flags.h" |
| 9 #include "src/globals.h" | 9 #include "src/globals.h" |
| 10 | 10 |
| (...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 44 // TFS: Builtin in Turbofan, with CodeStub linkage. | 44 // TFS: Builtin in Turbofan, with CodeStub linkage. |
| 45 // Args: name, code kind, extra IC state, interface descriptor, return_size | 45 // Args: name, code kind, extra IC state, interface descriptor, return_size |
| 46 // ASM: Builtin in platform-dependent assembly. | 46 // ASM: Builtin in platform-dependent assembly. |
| 47 // Args: name | 47 // Args: name |
| 48 // ASH: Handlers implemented in platform-dependent assembly. | 48 // ASH: Handlers implemented in platform-dependent assembly. |
| 49 // Args: name, code kind, extra IC state | 49 // Args: name, code kind, extra IC state |
| 50 // DBG: Builtin in platform-dependent assembly, used by the debugger. | 50 // DBG: Builtin in platform-dependent assembly, used by the debugger. |
| 51 // Args: name | 51 // Args: name |
| 52 #if V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 | 52 #if V8_TARGET_ARCH_MIPS || V8_TARGET_ARCH_MIPS64 |
| 53 #define ATOMICS_BUILTIN_LIST(CPP, API, TFJ, TFS, ASM, ASH, DBG) \ | 53 #define ATOMICS_BUILTIN_LIST(CPP, API, TFJ, TFS, ASM, ASH, DBG) \ |
| 54 CPP(AtomicsExchange) | 54 CPP(AtomicsExchange) \ |
| 55 CPP(AtomicsCompareExchange) |
| 55 #else | 56 #else |
| 56 #define ATOMICS_BUILTIN_LIST(CPP, API, TFJ, TFS, ASM, ASH, DBG) \ | 57 #define ATOMICS_BUILTIN_LIST(CPP, API, TFJ, TFS, ASM, ASH, DBG) \ |
| 57 TFJ(AtomicsExchange, 3) | 58 TFJ(AtomicsExchange, 3) \ |
| 59 TFJ(AtomicsCompareExchange, 4) |
| 58 #endif | 60 #endif |
| 59 | 61 |
| 60 #define NON_ATOMICS_BUILTIN_LIST(CPP, API, TFJ, TFS, ASM, ASH, DBG) \ | 62 #define NON_ATOMICS_BUILTIN_LIST(CPP, API, TFJ, TFS, ASM, ASH, DBG) \ |
| 61 ASM(Abort) \ | 63 ASM(Abort) \ |
| 62 /* Code aging */ \ | 64 /* Code aging */ \ |
| 63 CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, ASM) \ | 65 CODE_AGE_LIST_WITH_ARG(DECLARE_CODE_AGE_BUILTIN, ASM) \ |
| 64 \ | 66 \ |
| 65 /* Declared first for dependency reasons */ \ | 67 /* Declared first for dependency reasons */ \ |
| 66 ASM(CompileLazy) \ | 68 ASM(CompileLazy) \ |
| 67 TFS(ToObject, BUILTIN, kNoExtraICState, TypeConversion, 1) \ | 69 TFS(ToObject, BUILTIN, kNoExtraICState, TypeConversion, 1) \ |
| (...skipping 666 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 734 TFS(RegExpReplace, BUILTIN, kNoExtraICState, RegExpReplace, 1) \ | 736 TFS(RegExpReplace, BUILTIN, kNoExtraICState, RegExpReplace, 1) \ |
| 735 TFJ(RegExpPrototypeReplace, 2) \ | 737 TFJ(RegExpPrototypeReplace, 2) \ |
| 736 \ | 738 \ |
| 737 TFS(RegExpSplit, BUILTIN, kNoExtraICState, RegExpSplit, 1) \ | 739 TFS(RegExpSplit, BUILTIN, kNoExtraICState, RegExpSplit, 1) \ |
| 738 TFJ(RegExpPrototypeSplit, 2) \ | 740 TFJ(RegExpPrototypeSplit, 2) \ |
| 739 \ | 741 \ |
| 740 /* SharedArrayBuffer */ \ | 742 /* SharedArrayBuffer */ \ |
| 741 CPP(SharedArrayBufferPrototypeGetByteLength) \ | 743 CPP(SharedArrayBufferPrototypeGetByteLength) \ |
| 742 TFJ(AtomicsLoad, 2) \ | 744 TFJ(AtomicsLoad, 2) \ |
| 743 TFJ(AtomicsStore, 3) \ | 745 TFJ(AtomicsStore, 3) \ |
| 744 CPP(AtomicsCompareExchange) \ | |
| 745 CPP(AtomicsAdd) \ | 746 CPP(AtomicsAdd) \ |
| 746 CPP(AtomicsSub) \ | 747 CPP(AtomicsSub) \ |
| 747 CPP(AtomicsAnd) \ | 748 CPP(AtomicsAnd) \ |
| 748 CPP(AtomicsOr) \ | 749 CPP(AtomicsOr) \ |
| 749 CPP(AtomicsXor) \ | 750 CPP(AtomicsXor) \ |
| 750 CPP(AtomicsIsLockFree) \ | 751 CPP(AtomicsIsLockFree) \ |
| 751 CPP(AtomicsWait) \ | 752 CPP(AtomicsWait) \ |
| 752 CPP(AtomicsWake) \ | 753 CPP(AtomicsWake) \ |
| 753 \ | 754 \ |
| 754 /* String */ \ | 755 /* String */ \ |
| (...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1016 | 1017 |
| 1017 friend class Isolate; | 1018 friend class Isolate; |
| 1018 | 1019 |
| 1019 DISALLOW_COPY_AND_ASSIGN(Builtins); | 1020 DISALLOW_COPY_AND_ASSIGN(Builtins); |
| 1020 }; | 1021 }; |
| 1021 | 1022 |
| 1022 } // namespace internal | 1023 } // namespace internal |
| 1023 } // namespace v8 | 1024 } // namespace v8 |
| 1024 | 1025 |
| 1025 #endif // V8_BUILTINS_BUILTINS_H_ | 1026 #endif // V8_BUILTINS_BUILTINS_H_ |
| OLD | NEW |