| OLD | NEW |
| 1 // Copyright 2015 the V8 project authors. All rights reserved. | 1 // Copyright 2015 the V8 project authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include <stdlib.h> | 5 #include <stdlib.h> |
| 6 #include <string.h> | 6 #include <string.h> |
| 7 | 7 |
| 8 #include "src/snapshot/code-serializer.h" | 8 #include "src/snapshot/code-serializer.h" |
| 9 #include "src/version.h" | 9 #include "src/version.h" |
| 10 #include "src/wasm/module-decoder.h" | 10 #include "src/wasm/module-decoder.h" |
| (...skipping 222 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 233 v8::MaybeLocal<v8::WasmCompiledModule> deserialized = | 233 v8::MaybeLocal<v8::WasmCompiledModule> deserialized = |
| 234 v8::WasmCompiledModule::DeserializeOrCompile( | 234 v8::WasmCompiledModule::DeserializeOrCompile( |
| 235 current_isolate_v8(), serialized_bytes(), wire_bytes()); | 235 current_isolate_v8(), serialized_bytes(), wire_bytes()); |
| 236 return deserialized; | 236 return deserialized; |
| 237 } | 237 } |
| 238 | 238 |
| 239 void DeserializeAndRun() { | 239 void DeserializeAndRun() { |
| 240 ErrorThrower thrower(current_isolate(), ""); | 240 ErrorThrower thrower(current_isolate(), ""); |
| 241 v8::Local<v8::WasmCompiledModule> deserialized_module; | 241 v8::Local<v8::WasmCompiledModule> deserialized_module; |
| 242 CHECK(Deserialize().ToLocal(&deserialized_module)); | 242 CHECK(Deserialize().ToLocal(&deserialized_module)); |
| 243 Handle<JSObject> module_object = | 243 Handle<WasmModuleObject> module_object = Handle<WasmModuleObject>::cast( |
| 244 Handle<JSObject>::cast(v8::Utils::OpenHandle(*deserialized_module)); | 244 v8::Utils::OpenHandle(*deserialized_module)); |
| 245 { | 245 { |
| 246 DisallowHeapAllocation assume_no_gc; | 246 DisallowHeapAllocation assume_no_gc; |
| 247 Handle<WasmCompiledModule> compiled_part( | 247 Handle<WasmCompiledModule> compiled_part( |
| 248 WasmCompiledModule::cast(module_object->GetInternalField(0)), | 248 WasmCompiledModule::cast(module_object->GetInternalField(0)), |
| 249 current_isolate()); | 249 current_isolate()); |
| 250 CHECK_EQ(memcmp(compiled_part->module_bytes()->GetCharsAddress(), | 250 CHECK_EQ(memcmp(compiled_part->module_bytes()->GetCharsAddress(), |
| 251 wire_bytes().first, wire_bytes().second), | 251 wire_bytes().first, wire_bytes().second), |
| 252 0); | 252 0); |
| 253 } | 253 } |
| 254 Handle<JSObject> instance = | 254 Handle<JSObject> instance = |
| (...skipping 656 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 911 }; | 911 }; |
| 912 | 912 |
| 913 testing::CompileInstantiateWasmModuleForTesting(isolate, &thrower, data, | 913 testing::CompileInstantiateWasmModuleForTesting(isolate, &thrower, data, |
| 914 data + arraysize(data), | 914 data + arraysize(data), |
| 915 ModuleOrigin::kWasmOrigin); | 915 ModuleOrigin::kWasmOrigin); |
| 916 // It should be possible to instantiate this module. | 916 // It should be possible to instantiate this module. |
| 917 CHECK(!thrower.error()); | 917 CHECK(!thrower.error()); |
| 918 } | 918 } |
| 919 Cleanup(); | 919 Cleanup(); |
| 920 } | 920 } |
| OLD | NEW |