OLD | NEW |
| (Empty) |
1 // Copyright 2016 the V8 project authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 #include "src/builtins/builtins-utils.h" | |
6 #include "src/builtins/builtins.h" | |
7 #include "src/ic/accessor-assembler.h" | |
8 #include "src/objects-inl.h" | |
9 | |
10 namespace v8 { | |
11 namespace internal { | |
12 | |
13 #define IC_BUILTIN(Name) \ | |
14 void Builtins::Generate_##Name(compiler::CodeAssemblerState* state) { \ | |
15 AccessorAssembler assembler(state); \ | |
16 assembler.Generate##Name(); \ | |
17 } | |
18 | |
19 #define IC_BUILTIN_PARAM(BuiltinName, GeneratorName, parameter) \ | |
20 void Builtins::Generate_##BuiltinName(compiler::CodeAssemblerState* state) { \ | |
21 AccessorAssembler assembler(state); \ | |
22 assembler.Generate##GeneratorName(parameter); \ | |
23 } | |
24 | |
25 IC_BUILTIN(LoadIC) | |
26 IC_BUILTIN(LoadIC_Noninlined) | |
27 IC_BUILTIN(LoadIC_Uninitialized) | |
28 IC_BUILTIN(KeyedLoadIC) | |
29 IC_BUILTIN(LoadICTrampoline) | |
30 IC_BUILTIN(LoadField) | |
31 IC_BUILTIN(KeyedLoadICTrampoline) | |
32 IC_BUILTIN(KeyedLoadIC_Megamorphic) | |
33 | |
34 IC_BUILTIN_PARAM(StoreIC, StoreIC, SLOPPY) | |
35 IC_BUILTIN_PARAM(StoreICTrampoline, StoreICTrampoline, SLOPPY) | |
36 IC_BUILTIN_PARAM(StoreICStrict, StoreIC, STRICT) | |
37 IC_BUILTIN_PARAM(StoreICStrictTrampoline, StoreICTrampoline, STRICT) | |
38 IC_BUILTIN_PARAM(KeyedStoreIC, KeyedStoreIC, SLOPPY) | |
39 IC_BUILTIN_PARAM(KeyedStoreICTrampoline, KeyedStoreICTrampoline, SLOPPY) | |
40 IC_BUILTIN_PARAM(KeyedStoreICStrict, KeyedStoreIC, STRICT) | |
41 IC_BUILTIN_PARAM(KeyedStoreICStrictTrampoline, KeyedStoreICTrampoline, STRICT) | |
42 IC_BUILTIN_PARAM(LoadGlobalIC, LoadGlobalIC, NOT_INSIDE_TYPEOF) | |
43 IC_BUILTIN_PARAM(LoadGlobalICInsideTypeof, LoadGlobalIC, INSIDE_TYPEOF) | |
44 IC_BUILTIN_PARAM(LoadGlobalICTrampoline, LoadGlobalICTrampoline, | |
45 NOT_INSIDE_TYPEOF) | |
46 IC_BUILTIN_PARAM(LoadGlobalICInsideTypeofTrampoline, LoadGlobalICTrampoline, | |
47 INSIDE_TYPEOF) | |
48 IC_BUILTIN_PARAM(LoadICProtoArray, LoadICProtoArray, false) | |
49 IC_BUILTIN_PARAM(LoadICProtoArrayThrowIfNonexistent, LoadICProtoArray, true) | |
50 | |
51 } // namespace internal | |
52 } // namespace v8 | |
OLD | NEW |