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_WASM_COMPILER_H_ | 5 #ifndef V8_COMPILER_WASM_COMPILER_H_ |
6 #define V8_COMPILER_WASM_COMPILER_H_ | 6 #define V8_COMPILER_WASM_COMPILER_H_ |
7 | 7 |
8 #include <memory> | 8 #include <memory> |
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 119 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
130 Node* HeapConstant(Handle<HeapObject> value); | 130 Node* HeapConstant(Handle<HeapObject> value); |
131 Node* Binop(wasm::WasmOpcode opcode, Node* left, Node* right, | 131 Node* Binop(wasm::WasmOpcode opcode, Node* left, Node* right, |
132 wasm::WasmCodePosition position = wasm::kNoCodePosition); | 132 wasm::WasmCodePosition position = wasm::kNoCodePosition); |
133 Node* Unop(wasm::WasmOpcode opcode, Node* input, | 133 Node* Unop(wasm::WasmOpcode opcode, Node* input, |
134 wasm::WasmCodePosition position = wasm::kNoCodePosition); | 134 wasm::WasmCodePosition position = wasm::kNoCodePosition); |
135 unsigned InputCount(Node* node); | 135 unsigned InputCount(Node* node); |
136 bool IsPhiWithMerge(Node* phi, Node* merge); | 136 bool IsPhiWithMerge(Node* phi, Node* merge); |
137 void AppendToMerge(Node* merge, Node* from); | 137 void AppendToMerge(Node* merge, Node* from); |
138 void AppendToPhi(Node* phi, Node* from); | 138 void AppendToPhi(Node* phi, Node* from); |
139 | 139 |
| 140 void StackCheck(wasm::WasmCodePosition position); |
| 141 |
140 //----------------------------------------------------------------------- | 142 //----------------------------------------------------------------------- |
141 // Operations that read and/or write {control} and {effect}. | 143 // Operations that read and/or write {control} and {effect}. |
142 //----------------------------------------------------------------------- | 144 //----------------------------------------------------------------------- |
143 Node* Branch(Node* cond, Node** true_node, Node** false_node); | 145 Node* Branch(Node* cond, Node** true_node, Node** false_node); |
144 Node* Switch(unsigned count, Node* key); | 146 Node* Switch(unsigned count, Node* key); |
145 Node* IfValue(int32_t value, Node* sw); | 147 Node* IfValue(int32_t value, Node* sw); |
146 Node* IfDefault(Node* sw); | 148 Node* IfDefault(Node* sw); |
147 Node* Return(unsigned count, Node** vals); | 149 Node* Return(unsigned count, Node** vals); |
148 Node* ReturnVoid(); | 150 Node* ReturnVoid(); |
149 Node* Unreachable(wasm::WasmCodePosition position); | 151 Node* Unreachable(wasm::WasmCodePosition position); |
(...skipping 183 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
333 Node** buf = Buffer(new_count); | 335 Node** buf = Buffer(new_count); |
334 if (buf != buffer) memcpy(buf, buffer, old_count * sizeof(Node*)); | 336 if (buf != buffer) memcpy(buf, buffer, old_count * sizeof(Node*)); |
335 return buf; | 337 return buf; |
336 } | 338 } |
337 }; | 339 }; |
338 } // namespace compiler | 340 } // namespace compiler |
339 } // namespace internal | 341 } // namespace internal |
340 } // namespace v8 | 342 } // namespace v8 |
341 | 343 |
342 #endif // V8_COMPILER_WASM_COMPILER_H_ | 344 #endif // V8_COMPILER_WASM_COMPILER_H_ |
OLD | NEW |