[wasm] Simplify module creation
This includes WasmEngine::NewNativeModule() and WasmModuleObject::New(). The intent is to make the various ways of creating a module (sync, async, deserialize, import) more similar. After this change, a NativeModule will always be created before a WasmModuleObject. This will make it easier to look up a cached NativeModule given its wire bytes. The following changes are made: * Use WasmCodeManager::EstimateNativeModuleCodeSize() to find the code size estimate by default. A different code size estimate is only used in tests. * Change CompileJsToWasmWrappers() to allocate a new FixedArray instead of assuming the array was created with the correct size. This simplifies WasmModuleObject::New(), and matches what CompileToNativeModule() does. * Remove the WasmModuleObject::New() constructor that creates a NativeModule. This case was only used in DeserializeNativeModule() and in test code. Change-Id: I6bdfc425057f92de11abbbf702d052d40aa8267d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1717497 Commit-Queue: Ben Smith <binji@chromium.org> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62925}
Showing
Please
register
or
sign in
to comment