[maglev] Fix early return in MaterialiseValueNode

When we split MaterialisedValueNodes to x64 and arm64, we
changed a bit the logic and we should return early in case
of a constant, otherwise we would fail in the DCHECK in line 269.

Bug: v8:7700
Fixed: chromium:1395603
Change-Id: I3ce6dcb5e4e8e0040ef16fb3b3065ef7b86c7c36
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/4088362
Commit-Queue: Patrick Thier <pthier@chromium.org>
Reviewed-by: Patrick Thier <pthier@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Cr-Commit-Position: refs/heads/main@{#84723}
This commit is contained in:
Victor Gomes 2022-12-08 11:18:01 +01:00 committed by V8 LUCI CQ
parent f5f735b10d
commit fd3112b912

View File

@ -255,12 +255,12 @@ inline void MaglevAssembler::MaterialiseValueNode(Register dst,
} else {
movq_heap_number(dst, int_value);
}
break;
return;
}
case Opcode::kFloat64Constant: {
double double_value = value->Cast<Float64Constant>()->value();
movq_heap_number(dst, double_value);
break;
return;
}
default:
break;