aboutsummaryrefslogtreecommitdiff
path: root/deps/v8/src/wasm/function-compiler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/wasm/function-compiler.cc')
-rw-r--r--deps/v8/src/wasm/function-compiler.cc18
1 files changed, 7 insertions, 11 deletions
diff --git a/deps/v8/src/wasm/function-compiler.cc b/deps/v8/src/wasm/function-compiler.cc
index c166683bee..deb4caee15 100644
--- a/deps/v8/src/wasm/function-compiler.cc
+++ b/deps/v8/src/wasm/function-compiler.cc
@@ -124,7 +124,7 @@ ExecutionTier WasmCompilationUnit::GetDefaultExecutionTier(
WasmCompilationUnit::WasmCompilationUnit(WasmEngine* wasm_engine, int index,
ExecutionTier tier)
- : wasm_engine_(wasm_engine), func_index_(index), tier_(tier) {
+ : wasm_engine_(wasm_engine), func_index_(index), requested_tier_(tier) {
if (V8_UNLIKELY(FLAG_wasm_tier_mask_for_testing) && index < 32 &&
(FLAG_wasm_tier_mask_for_testing & (1 << index))) {
tier = ExecutionTier::kOptimized;
@@ -154,11 +154,11 @@ WasmCompilationResult WasmCompilationUnit::ExecuteCompilation(
if (FLAG_trace_wasm_compiler) {
PrintF("Compiling wasm function %d with %s\n\n", func_index_,
- GetExecutionTierAsString(tier_));
+ GetExecutionTierAsString(executed_tier_));
}
WasmCompilationResult result;
- switch (tier_) {
+ switch (executed_tier_) {
case ExecutionTier::kBaseline:
result =
liftoff_unit_->ExecuteCompilation(env, func_body, counters, detected);
@@ -193,20 +193,16 @@ WasmCode* WasmCompilationUnit::Publish(WasmCompilationResult result,
return nullptr;
}
- // The {tier} argument specifies the requested tier, which can differ from the
- // actually executed tier stored in {unit->tier()}.
DCHECK(result.succeeded());
- WasmCode::Tier code_tier = tier_ == ExecutionTier::kBaseline
+ WasmCode::Tier code_tier = executed_tier_ == ExecutionTier::kBaseline
? WasmCode::kLiftoff
: WasmCode::kTurbofan;
DCHECK_EQ(result.code_desc.buffer, result.instr_buffer.get());
+
WasmCode* code = native_module->AddCode(
func_index_, result.code_desc, result.frame_slot_count,
- result.safepoint_table_offset, result.handler_table_offset,
- std::move(result.protected_instructions),
+ result.tagged_parameter_slots, std::move(result.protected_instructions),
std::move(result.source_positions), WasmCode::kFunction, code_tier);
- // TODO(clemensh): Merge this into {AddCode}?
- native_module->PublishCode(code);
return code;
}
@@ -214,7 +210,7 @@ void WasmCompilationUnit::SwitchTier(ExecutionTier new_tier) {
// This method is being called in the constructor, where neither
// {liftoff_unit_} nor {turbofan_unit_} are set, or to switch tier from
// kLiftoff to kTurbofan, in which case {liftoff_unit_} is already set.
- tier_ = new_tier;
+ executed_tier_ = new_tier;
switch (new_tier) {
case ExecutionTier::kBaseline:
DCHECK(!turbofan_unit_);