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 #include <memory> | 9 #include <memory> |
10 | 10 |
(...skipping 211 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
222 Node* NumberConstant(double value); | 222 Node* NumberConstant(double value); |
223 Node* SmiConstant(Smi* value); | 223 Node* SmiConstant(Smi* value); |
224 Node* HeapConstant(Handle<HeapObject> object); | 224 Node* HeapConstant(Handle<HeapObject> object); |
225 Node* BooleanConstant(bool value); | 225 Node* BooleanConstant(bool value); |
226 Node* ExternalConstant(ExternalReference address); | 226 Node* ExternalConstant(ExternalReference address); |
227 Node* Float64Constant(double value); | 227 Node* Float64Constant(double value); |
228 Node* NaNConstant(); | 228 Node* NaNConstant(); |
229 | 229 |
230 bool ToInt32Constant(Node* node, int32_t& out_value); | 230 bool ToInt32Constant(Node* node, int32_t& out_value); |
231 bool ToInt64Constant(Node* node, int64_t& out_value); | 231 bool ToInt64Constant(Node* node, int64_t& out_value); |
| 232 bool ToSmiConstant(Node* node, Smi*& out_value); |
232 bool ToIntPtrConstant(Node* node, intptr_t& out_value); | 233 bool ToIntPtrConstant(Node* node, intptr_t& out_value); |
233 | 234 |
234 Node* Parameter(int value); | 235 Node* Parameter(int value); |
235 void Return(Node* value); | 236 void Return(Node* value); |
236 | 237 |
237 void DebugBreak(); | 238 void DebugBreak(); |
238 void Comment(const char* format, ...); | 239 void Comment(const char* format, ...); |
239 | 240 |
240 void Bind(Label* label); | 241 void Bind(Label* label); |
241 void Goto(Label* label); | 242 void Goto(Label* label); |
(...skipping 269 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
511 // Map of variables to the list of value nodes that have been added from each | 512 // Map of variables to the list of value nodes that have been added from each |
512 // merge path in their order of merging. | 513 // merge path in their order of merging. |
513 std::map<Variable::Impl*, std::vector<Node*>> variable_merges_; | 514 std::map<Variable::Impl*, std::vector<Node*>> variable_merges_; |
514 }; | 515 }; |
515 | 516 |
516 } // namespace compiler | 517 } // namespace compiler |
517 } // namespace internal | 518 } // namespace internal |
518 } // namespace v8 | 519 } // namespace v8 |
519 | 520 |
520 #endif // V8_COMPILER_CODE_ASSEMBLER_H_ | 521 #endif // V8_COMPILER_CODE_ASSEMBLER_H_ |
OLD | NEW |