OLD | NEW |
1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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_RAW_MACHINE_ASSEMBLER_H_ | 5 #ifndef V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
6 #define V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ | 6 #define V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
7 | 7 |
8 #include "src/v8.h" | 8 #include "src/v8.h" |
9 | 9 |
10 #include "src/compiler/common-operator.h" | 10 #include "src/compiler/common-operator.h" |
(...skipping 384 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
395 return NewNode(machine()->Float64RoundTiesAway(), a); | 395 return NewNode(machine()->Float64RoundTiesAway(), a); |
396 } | 396 } |
397 | 397 |
398 // Parameters. | 398 // Parameters. |
399 Node* Parameter(size_t index); | 399 Node* Parameter(size_t index); |
400 | 400 |
401 // Control flow. | 401 // Control flow. |
402 Label* Exit(); | 402 Label* Exit(); |
403 void Goto(Label* label); | 403 void Goto(Label* label); |
404 void Branch(Node* condition, Label* true_val, Label* false_val); | 404 void Branch(Node* condition, Label* true_val, Label* false_val); |
| 405 void Switch(Node* index, Label** succ_labels, size_t succ_count); |
405 // Call through CallFunctionStub with lazy deopt and frame-state. | 406 // Call through CallFunctionStub with lazy deopt and frame-state. |
406 Node* CallFunctionStub0(Node* function, Node* receiver, Node* context, | 407 Node* CallFunctionStub0(Node* function, Node* receiver, Node* context, |
407 Node* frame_state, CallFunctionFlags flags); | 408 Node* frame_state, CallFunctionFlags flags); |
408 // Call to a JS function with zero parameters. | 409 // Call to a JS function with zero parameters. |
409 Node* CallJS0(Node* function, Node* receiver, Node* context, | 410 Node* CallJS0(Node* function, Node* receiver, Node* context, |
410 Node* frame_state); | 411 Node* frame_state); |
411 // Call to a runtime function with zero parameters. | 412 // Call to a runtime function with zero parameters. |
412 Node* CallRuntime1(Runtime::FunctionId function, Node* arg0, Node* context, | 413 Node* CallRuntime1(Runtime::FunctionId function, Node* arg0, Node* context, |
413 Node* frame_state); | 414 Node* frame_state); |
414 void Return(Node* value); | 415 void Return(Node* value); |
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
455 BasicBlock* current_block_; | 456 BasicBlock* current_block_; |
456 | 457 |
457 DISALLOW_COPY_AND_ASSIGN(RawMachineAssembler); | 458 DISALLOW_COPY_AND_ASSIGN(RawMachineAssembler); |
458 }; | 459 }; |
459 | 460 |
460 } // namespace compiler | 461 } // namespace compiler |
461 } // namespace internal | 462 } // namespace internal |
462 } // namespace v8 | 463 } // namespace v8 |
463 | 464 |
464 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ | 465 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
OLD | NEW |