5 #ifndef V8_WASM_FUNCTION_COMPILER_H_ 6 #define V8_WASM_FUNCTION_COMPILER_H_ 8 #include "src/wasm/compilation-environment.h" 9 #include "src/wasm/function-body-decoder.h" 10 #include "src/wasm/wasm-limits.h" 11 #include "src/wasm/wasm-module.h" 12 #include "src/wasm/wasm-tier.h" 20 class TurbofanWasmCompilationUnit;
25 class LiftoffCompilationUnit;
33 static ExecutionTier GetDefaultExecutionTier();
41 ExecutionTier = GetDefaultExecutionTier());
45 void ExecuteCompilation(
CompilationEnv*, std::shared_ptr<WireBytesStorage>,
48 NativeModule* native_module()
const {
return native_module_; }
49 ExecutionTier tier()
const {
return tier_; }
50 bool failed()
const {
return result_ ==
nullptr; }
51 WasmCode* result()
const {
return result_; }
56 ExecutionTier = GetDefaultExecutionTier());
63 const int func_index_;
69 std::unique_ptr<LiftoffCompilationUnit> liftoff_unit_;
71 std::unique_ptr<compiler::TurbofanWasmCompilationUnit> turbofan_unit_;
73 void SwitchTier(ExecutionTier new_tier);
85 #endif // V8_WASM_FUNCTION_COMPILER_H_