OLD | NEW |
1 // Copyright 2016 the V8 project authors. All rights reserved. | 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 | 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_LOAD_ELIMINATION_H_ | 5 #ifndef V8_COMPILER_LOAD_ELIMINATION_H_ |
6 #define V8_COMPILER_LOAD_ELIMINATION_H_ | 6 #define V8_COMPILER_LOAD_ELIMINATION_H_ |
7 | 7 |
8 #include "src/compiler/graph-reducer.h" | 8 #include "src/compiler/graph-reducer.h" |
9 | 9 |
10 namespace v8 { | 10 namespace v8 { |
(...skipping 137 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
148 private: | 148 private: |
149 ZoneVector<AbstractState const*> info_for_node_; | 149 ZoneVector<AbstractState const*> info_for_node_; |
150 }; | 150 }; |
151 | 151 |
152 Reduction ReduceCheckMaps(Node* node); | 152 Reduction ReduceCheckMaps(Node* node); |
153 Reduction ReduceTransitionElementsKind(Node* node); | 153 Reduction ReduceTransitionElementsKind(Node* node); |
154 Reduction ReduceLoadField(Node* node); | 154 Reduction ReduceLoadField(Node* node); |
155 Reduction ReduceStoreField(Node* node); | 155 Reduction ReduceStoreField(Node* node); |
156 Reduction ReduceLoadElement(Node* node); | 156 Reduction ReduceLoadElement(Node* node); |
157 Reduction ReduceStoreElement(Node* node); | 157 Reduction ReduceStoreElement(Node* node); |
| 158 Reduction ReduceStoreTypedElement(Node* node); |
158 Reduction ReduceEffectPhi(Node* node); | 159 Reduction ReduceEffectPhi(Node* node); |
159 Reduction ReduceStart(Node* node); | 160 Reduction ReduceStart(Node* node); |
160 Reduction ReduceOtherNode(Node* node); | 161 Reduction ReduceOtherNode(Node* node); |
161 | 162 |
162 Reduction UpdateState(Node* node, AbstractState const* state); | 163 Reduction UpdateState(Node* node, AbstractState const* state); |
163 | 164 |
164 AbstractState const* ComputeLoopState(Node* node, | 165 AbstractState const* ComputeLoopState(Node* node, |
165 AbstractState const* state) const; | 166 AbstractState const* state) const; |
166 | 167 |
167 static int FieldIndexOf(FieldAccess const& access); | 168 static int FieldIndexOf(FieldAccess const& access); |
168 | 169 |
169 AbstractState const* empty_state() const { return &empty_state_; } | 170 AbstractState const* empty_state() const { return &empty_state_; } |
170 Zone* zone() const { return node_states_.zone(); } | 171 Zone* zone() const { return node_states_.zone(); } |
171 | 172 |
172 AbstractState const empty_state_; | 173 AbstractState const empty_state_; |
173 AbstractStateForEffectNodes node_states_; | 174 AbstractStateForEffectNodes node_states_; |
174 | 175 |
175 DISALLOW_COPY_AND_ASSIGN(LoadElimination); | 176 DISALLOW_COPY_AND_ASSIGN(LoadElimination); |
176 }; | 177 }; |
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_LOAD_ELIMINATION_H_ | 183 #endif // V8_COMPILER_LOAD_ELIMINATION_H_ |
OLD | NEW |