OLD | NEW |
1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 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_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ | 5 #ifndef V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ |
6 #define V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ | 6 #define V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ |
7 | 7 |
8 #include "src/base/flags.h" | 8 #include "src/base/flags.h" |
9 #include "src/compiler/graph-reducer.h" | 9 #include "src/compiler/graph-reducer.h" |
10 #include "src/deoptimize-reason.h" | 10 #include "src/deoptimize-reason.h" |
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
64 Reduction ReduceElementAccess(Node* node, Node* index, Node* value, | 64 Reduction ReduceElementAccess(Node* node, Node* index, Node* value, |
65 MapHandleList const& receiver_maps, | 65 MapHandleList const& receiver_maps, |
66 AccessMode access_mode, | 66 AccessMode access_mode, |
67 LanguageMode language_mode, | 67 LanguageMode language_mode, |
68 KeyedAccessStoreMode store_mode); | 68 KeyedAccessStoreMode store_mode); |
69 template <typename KeyedICNexus> | 69 template <typename KeyedICNexus> |
70 Reduction ReduceKeyedAccess(Node* node, Node* index, Node* value, | 70 Reduction ReduceKeyedAccess(Node* node, Node* index, Node* value, |
71 KeyedICNexus const& nexus, AccessMode access_mode, | 71 KeyedICNexus const& nexus, AccessMode access_mode, |
72 LanguageMode language_mode, | 72 LanguageMode language_mode, |
73 KeyedAccessStoreMode store_mode); | 73 KeyedAccessStoreMode store_mode); |
74 Reduction ReduceNamedAccess(Node* node, Node* value, | 74 Reduction ReduceNamedAccessFromNexus(Node* node, Node* value, |
75 FeedbackNexus const& nexus, Handle<Name> name, | 75 FeedbackNexus const& nexus, |
76 AccessMode access_mode, | 76 Handle<Name> name, |
77 LanguageMode language_mode); | 77 AccessMode access_mode, |
| 78 LanguageMode language_mode); |
78 Reduction ReduceNamedAccess(Node* node, Node* value, | 79 Reduction ReduceNamedAccess(Node* node, Node* value, |
79 MapHandleList const& receiver_maps, | 80 MapHandleList const& receiver_maps, |
80 Handle<Name> name, AccessMode access_mode, | 81 Handle<Name> name, AccessMode access_mode, |
81 LanguageMode language_mode, | 82 LanguageMode language_mode, |
82 Node* index = nullptr); | 83 Node* index = nullptr); |
83 | 84 |
84 Reduction ReduceSoftDeoptimize(Node* node, DeoptimizeReason reason); | 85 Reduction ReduceSoftDeoptimize(Node* node, DeoptimizeReason reason); |
85 | 86 |
86 // A triple of nodes that represents a continuation. | 87 // A triple of nodes that represents a continuation. |
87 class ValueEffectControl final { | 88 class ValueEffectControl final { |
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
173 DISALLOW_COPY_AND_ASSIGN(JSNativeContextSpecialization); | 174 DISALLOW_COPY_AND_ASSIGN(JSNativeContextSpecialization); |
174 }; | 175 }; |
175 | 176 |
176 DEFINE_OPERATORS_FOR_FLAGS(JSNativeContextSpecialization::Flags) | 177 DEFINE_OPERATORS_FOR_FLAGS(JSNativeContextSpecialization::Flags) |
177 | 178 |
178 } // namespace compiler | 179 } // namespace compiler |
179 } // namespace internal | 180 } // namespace internal |
180 } // namespace v8 | 181 } // namespace v8 |
181 | 182 |
182 #endif // V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ | 183 #endif // V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ |
OLD | NEW |