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 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
46 typedef base::Flags<Flag> Flags; | 46 typedef base::Flags<Flag> Flags; |
47 | 47 |
48 JSNativeContextSpecialization(Editor* editor, JSGraph* jsgraph, Flags flags, | 48 JSNativeContextSpecialization(Editor* editor, JSGraph* jsgraph, Flags flags, |
49 Handle<Context> native_context, | 49 Handle<Context> native_context, |
50 CompilationDependencies* dependencies, | 50 CompilationDependencies* dependencies, |
51 Zone* zone); | 51 Zone* zone); |
52 | 52 |
53 Reduction Reduce(Node* node) final; | 53 Reduction Reduce(Node* node) final; |
54 | 54 |
55 private: | 55 private: |
| 56 Reduction ReduceJSGetSuperConstructor(Node* node); |
56 Reduction ReduceJSInstanceOf(Node* node); | 57 Reduction ReduceJSInstanceOf(Node* node); |
57 Reduction ReduceJSOrdinaryHasInstance(Node* node); | 58 Reduction ReduceJSOrdinaryHasInstance(Node* node); |
58 Reduction ReduceJSLoadContext(Node* node); | 59 Reduction ReduceJSLoadContext(Node* node); |
59 Reduction ReduceJSLoadNamed(Node* node); | 60 Reduction ReduceJSLoadNamed(Node* node); |
60 Reduction ReduceJSStoreNamed(Node* node); | 61 Reduction ReduceJSStoreNamed(Node* node); |
61 Reduction ReduceJSLoadProperty(Node* node); | 62 Reduction ReduceJSLoadProperty(Node* node); |
62 Reduction ReduceJSStoreProperty(Node* node); | 63 Reduction ReduceJSStoreProperty(Node* node); |
63 Reduction ReduceJSStoreDataPropertyInLiteral(Node* node); | 64 Reduction ReduceJSStoreDataPropertyInLiteral(Node* node); |
64 | 65 |
65 Reduction ReduceElementAccess(Node* node, Node* index, Node* value, | 66 Reduction ReduceElementAccess(Node* node, Node* index, Node* value, |
(...skipping 112 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
178 DISALLOW_COPY_AND_ASSIGN(JSNativeContextSpecialization); | 179 DISALLOW_COPY_AND_ASSIGN(JSNativeContextSpecialization); |
179 }; | 180 }; |
180 | 181 |
181 DEFINE_OPERATORS_FOR_FLAGS(JSNativeContextSpecialization::Flags) | 182 DEFINE_OPERATORS_FOR_FLAGS(JSNativeContextSpecialization::Flags) |
182 | 183 |
183 } // namespace compiler | 184 } // namespace compiler |
184 } // namespace internal | 185 } // namespace internal |
185 } // namespace v8 | 186 } // namespace v8 |
186 | 187 |
187 #endif // V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ | 188 #endif // V8_COMPILER_JS_NATIVE_CONTEXT_SPECIALIZATION_H_ |
OLD | NEW |