Commit a73ce1d0 authored by Jakob Kummerow's avatar Jakob Kummerow Committed by V8 LUCI CQ

[wasm] Restore inlining of DecodeLocalGet

The recently added experimental support for non-nullable locals
(https://chromium-review.googlesource.com/c/v8/v8/+/3010283) made
DecodeLocalGet slightly bigger, which caused Clang not to inline
it any more, which has a measurable performance impact because this
is one of the hottest decoding functions. Forcibly inlining it
fixes the regression.

Bug: chromium:1227332
Change-Id: Ifb85f7f5a43ad1c0376bbf37e4af84fb4903371f
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3018206Reviewed-by: 's avatarClemens Backes <clemensb@chromium.org>
Commit-Queue: Jakob Kummerow <jkummerow@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75676}
parent 930fb2e9
......@@ -3121,7 +3121,7 @@ class WasmFullDecoder : public WasmDecoder<validate, decoding_mode> {
}
}
DECODE(LocalGet) {
V8_INLINE DECODE(LocalGet) {
IndexImmediate<validate> imm(this, this->pc_ + 1, "local index");
if (!this->ValidateLocal(this->pc_ + 1, imm)) return 0;
if (!VALIDATE(!this->enabled_.has_nn_locals() ||
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment