LibWasm: Stop using ConstrainedStream for function parsing

Speeds up spidermonkey.wasm instantiation by around 20ms (260ms -> 240ms)

(cherry picked from commit 2192c149e298a2a4fc135bb1a36bafee4a462398)
This commit is contained in:
Diego Frias 2024-07-26 13:46:31 -07:00 committed by Ali Mohammad Pur
parent 63e45c1752
commit ff6d9cc6b6

View file

@ -1257,11 +1257,9 @@ ParseResult<CodeSection::Code> CodeSection::Code::parse(Stream& stream)
return with_eof_check(stream, ParseError::InvalidSize);
size_t size = size_or_error.release_value();
auto constrained_stream = ConstrainedStream { MaybeOwned<Stream>(stream), size };
// Emprically, if there are `size` bytes to be read, then there's around
// `size / 2` instructions, so we pass that as our size hint.
auto func = TRY(Func::parse(constrained_stream, size / 2));
auto func = TRY(Func::parse(stream, size / 2));
return Code { static_cast<u32>(size), func };
}