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_CODE_ASSEMBLER_H_ | 5 #ifndef V8_COMPILER_CODE_ASSEMBLER_H_ |
6 #define V8_COMPILER_CODE_ASSEMBLER_H_ | 6 #define V8_COMPILER_CODE_ASSEMBLER_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 | 9 |
10 // Clients of this interface shouldn't depend on lots of compiler internals. | 10 // Clients of this interface shouldn't depend on lots of compiler internals. |
(...skipping 193 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
204 Node* NaNConstant(); | 204 Node* NaNConstant(); |
205 | 205 |
206 bool ToInt32Constant(Node* node, int32_t& out_value); | 206 bool ToInt32Constant(Node* node, int32_t& out_value); |
207 bool ToInt64Constant(Node* node, int64_t& out_value); | 207 bool ToInt64Constant(Node* node, int64_t& out_value); |
208 bool ToIntPtrConstant(Node* node, intptr_t& out_value); | 208 bool ToIntPtrConstant(Node* node, intptr_t& out_value); |
209 | 209 |
210 Node* Parameter(int value); | 210 Node* Parameter(int value); |
211 void Return(Node* value); | 211 void Return(Node* value); |
212 | 212 |
213 void DebugBreak(); | 213 void DebugBreak(); |
| 214 void Comment(const char* format, ...); |
214 | 215 |
215 void Bind(Label* label); | 216 void Bind(Label* label); |
216 void Goto(Label* label); | 217 void Goto(Label* label); |
217 void GotoIf(Node* condition, Label* true_label); | 218 void GotoIf(Node* condition, Label* true_label); |
218 void GotoUnless(Node* condition, Label* false_label); | 219 void GotoUnless(Node* condition, Label* false_label); |
219 void Branch(Node* condition, Label* true_label, Label* false_label); | 220 void Branch(Node* condition, Label* true_label, Label* false_label); |
220 | 221 |
221 void Switch(Node* index, Label* default_label, int32_t* case_values, | 222 void Switch(Node* index, Label* default_label, int32_t* case_values, |
222 Label** case_labels, size_t case_count); | 223 Label** case_labels, size_t case_count); |
223 | 224 |
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
403 // Map of variables to the list of value nodes that have been added from each | 404 // Map of variables to the list of value nodes that have been added from each |
404 // merge path in their order of merging. | 405 // merge path in their order of merging. |
405 std::map<Variable::Impl*, std::vector<Node*>> variable_merges_; | 406 std::map<Variable::Impl*, std::vector<Node*>> variable_merges_; |
406 }; | 407 }; |
407 | 408 |
408 } // namespace compiler | 409 } // namespace compiler |
409 } // namespace internal | 410 } // namespace internal |
410 } // namespace v8 | 411 } // namespace v8 |
411 | 412 |
412 #endif // V8_COMPILER_CODE_ASSEMBLER_H_ | 413 #endif // V8_COMPILER_CODE_ASSEMBLER_H_ |
OLD | NEW |