1#ifndef HALIDE_WASM_EXECUTOR_H
2#define HALIDE_WASM_EXECUTOR_H
29struct WasmModuleContents;
41 const std::vector<Argument> &arguments,
42 const std::string &fn_name,
43 const std::map<std::string, JITExtern> &externs,
44 const std::vector<JITModule> &extern_deps);
47 int run(
const void *
const *args);
Defines a type used for expressing the type signature of a generated halide pipeline.
Defines the internal representation of parameters to halide piplines.
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
@ Internal
Not visible externally, similar to 'static' linkage in C.
Intrusive shared pointers have a reference count (a RefCount object) stored in the class itself.
Handle to compiled wasm code which can be called later.
static WasmModule compile(const Module &module, const std::vector< Argument > &arguments, const std::string &fn_name, const std::map< std::string, JITExtern > &externs, const std::vector< JITModule > &extern_deps)
Compile generated wasm code with a set of externs.
static bool can_jit_target(const Target &target)
If the given target can be executed via the wasm executor, return true.
Internal::IntrusivePtr< WasmModuleContents > contents
int run(const void *const *args)
Run generated previously compiled wasm code with a set of arguments.
A struct representing a target machine and os to generate code for.