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 53 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
64 return call_descriptor_builder_->parameter_types(); | 64 return call_descriptor_builder_->parameter_types(); |
65 } | 65 } |
66 | 66 |
67 // Parameters. | 67 // Parameters. |
68 Node* Parameter(int index); | 68 Node* Parameter(int index); |
69 | 69 |
70 // Control flow. | 70 // Control flow. |
71 Label* Exit(); | 71 Label* Exit(); |
72 void Goto(Label* label); | 72 void Goto(Label* label); |
73 void Branch(Node* condition, Label* true_val, Label* false_val); | 73 void Branch(Node* condition, Label* true_val, Label* false_val); |
| 74 // Call through CallFunctionStub with lazy deopt and frame-state. |
| 75 Node* CallFunctionStub0(Node* function, Node* receiver, Node* context, |
| 76 Node* frame_state, Label* continuation, |
| 77 Label* deoptimization, CallFunctionFlags flags); |
74 // Call to a JS function with zero parameters. | 78 // Call to a JS function with zero parameters. |
75 Node* CallJS0(Node* function, Node* receiver, Label* continuation, | 79 Node* CallJS0(Node* function, Node* receiver, Label* continuation, |
76 Label* deoptimization); | 80 Label* deoptimization); |
77 // Call to a runtime function with zero parameters. | 81 // Call to a runtime function with zero parameters. |
78 Node* CallRuntime1(Runtime::FunctionId function, Node* arg0, | 82 Node* CallRuntime1(Runtime::FunctionId function, Node* arg0, |
79 Label* continuation, Label* deoptimization); | 83 Label* continuation, Label* deoptimization); |
80 void Return(Node* value); | 84 void Return(Node* value); |
81 void Bind(Label* label); | 85 void Bind(Label* label); |
82 void Deoptimize(Node* state); | 86 void Deoptimize(Node* state); |
83 | 87 |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
117 BasicBlock* current_block_; | 121 BasicBlock* current_block_; |
118 | 122 |
119 DISALLOW_COPY_AND_ASSIGN(RawMachineAssembler); | 123 DISALLOW_COPY_AND_ASSIGN(RawMachineAssembler); |
120 }; | 124 }; |
121 | 125 |
122 } // namespace compiler | 126 } // namespace compiler |
123 } // namespace internal | 127 } // namespace internal |
124 } // namespace v8 | 128 } // namespace v8 |
125 | 129 |
126 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ | 130 #endif // V8_COMPILER_RAW_MACHINE_ASSEMBLER_H_ |
OLD | NEW |