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 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
87 protected_instructions_; // Instructions that are protected by the signal | 87 protected_instructions_; // Instructions that are protected by the signal |
88 // handler. | 88 // handler. |
89 | 89 |
90 DISALLOW_COPY_AND_ASSIGN(WasmCompilationUnit); | 90 DISALLOW_COPY_AND_ASSIGN(WasmCompilationUnit); |
91 }; | 91 }; |
92 | 92 |
93 // Wraps a JS function, producing a code object that can be called from WASM. | 93 // Wraps a JS function, producing a code object that can be called from WASM. |
94 Handle<Code> CompileWasmToJSWrapper(Isolate* isolate, Handle<JSReceiver> target, | 94 Handle<Code> CompileWasmToJSWrapper(Isolate* isolate, Handle<JSReceiver> target, |
95 wasm::FunctionSig* sig, uint32_t index, | 95 wasm::FunctionSig* sig, uint32_t index, |
96 Handle<String> module_name, | 96 Handle<String> module_name, |
97 MaybeHandle<String> import_name, | 97 MaybeHandle<String> import_name); |
98 wasm::ModuleOrigin origin); | |
99 | 98 |
100 // Wraps a given wasm code object, producing a code object. | 99 // Wraps a given wasm code object, producing a code object. |
101 Handle<Code> CompileJSToWasmWrapper(Isolate* isolate, | 100 Handle<Code> CompileJSToWasmWrapper(Isolate* isolate, |
102 const wasm::WasmModule* module, | 101 const wasm::WasmModule* module, |
103 Handle<Code> wasm_code, uint32_t index); | 102 Handle<Code> wasm_code, uint32_t index); |
104 | 103 |
105 // Abstracts details of building TurboFan graph nodes for WASM to separate | 104 // Abstracts details of building TurboFan graph nodes for WASM to separate |
106 // the WASM decoder from the internal details of TurboFan. | 105 // the WASM decoder from the internal details of TurboFan. |
107 class WasmTrapHelper; | 106 class WasmTrapHelper; |
108 typedef ZoneVector<Node*> NodeVector; | 107 typedef ZoneVector<Node*> NodeVector; |
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
363 } | 362 } |
364 | 363 |
365 int AddParameterNodes(Node** args, int pos, int param_count, | 364 int AddParameterNodes(Node** args, int pos, int param_count, |
366 wasm::FunctionSig* sig); | 365 wasm::FunctionSig* sig); |
367 }; | 366 }; |
368 } // namespace compiler | 367 } // namespace compiler |
369 } // namespace internal | 368 } // namespace internal |
370 } // namespace v8 | 369 } // namespace v8 |
371 | 370 |
372 #endif // V8_COMPILER_WASM_COMPILER_H_ | 371 #endif // V8_COMPILER_WASM_COMPILER_H_ |
OLD | NEW |