Index: src/wasm/wasm-js.cc |
diff --git a/src/wasm/wasm-js.cc b/src/wasm/wasm-js.cc |
index 0c324f30df2fcd37fd59b566c40a546866d9923f..08aa7079266f72e5512e7d6a8aa251a39b79e216 100644 |
--- a/src/wasm/wasm-js.cc |
+++ b/src/wasm/wasm-js.cc |
@@ -69,7 +69,7 @@ class ScheduledErrorThrower : public ErrorThrower { |
} |
}; |
-// TODO(wasm): move brand check to the respective types, and don't throw |
+// TODO(titzer): move brand check to the respective types, and don't throw |
// in it, rather, use a provided ErrorThrower, or let caller handle it. |
static bool HasBrand(i::Handle<i::Object> value, i::Handle<i::Symbol> sym) { |
if (!value->IsJSObject()) return false; |
@@ -780,7 +780,7 @@ void WebAssemblyMemoryGrow(const v8::FunctionCallbackInfo<v8::Value>& args) { |
max_size64 > static_cast<int64_t>(i::FLAG_wasm_max_mem_pages)) { |
max_size64 = i::FLAG_wasm_max_mem_pages; |
} |
- i::Handle<i::JSArrayBuffer> old_buffer(receiver->buffer()); |
+ i::Handle<i::JSArrayBuffer> old_buffer(receiver->array_buffer()); |
uint32_t old_size = |
old_buffer->byte_length()->Number() / i::wasm::kSpecMaxWasmMemoryPages; |
int64_t new_size64 = old_size + delta_size; |
@@ -817,7 +817,7 @@ void WebAssemblyMemoryGetBuffer( |
} |
i::Handle<i::WasmMemoryObject> receiver = |
i::Handle<i::WasmMemoryObject>::cast(Utils::OpenHandle(*args.This())); |
- i::Handle<i::Object> buffer(receiver->buffer(), i_isolate); |
+ i::Handle<i::Object> buffer(receiver->array_buffer(), i_isolate); |
DCHECK(buffer->IsJSArrayBuffer()); |
v8::ReturnValue<v8::Value> return_value = args.GetReturnValue(); |
return_value.Set(Utils::ToLocal(buffer)); |
@@ -879,12 +879,9 @@ void WasmJs::Install(Isolate* isolate) { |
int pre_allocated = |
prev_map->GetInObjectProperties() - prev_map->unused_property_fields(); |
int instance_size = 0; |
- int in_object_properties = 0; |
- int wasm_embedder_fields = embedder_fields + 1 // module instance object |
- + 1 // function arity |
- + 1; // function signature |
- JSFunction::CalculateInstanceSizeHelper(instance_type, wasm_embedder_fields, |
- 0, &instance_size, |
+ int in_object_properties = WasmExportedFunction::kFieldCount; |
+ JSFunction::CalculateInstanceSizeHelper(instance_type, embedder_fields, |
+ in_object_properties, &instance_size, |
&in_object_properties); |
int unused_property_fields = in_object_properties - pre_allocated; |
@@ -942,8 +939,8 @@ void WasmJs::Install(Isolate* isolate) { |
Handle<JSObject> module_proto = |
factory->NewJSObject(module_constructor, TENURED); |
i::Handle<i::Map> module_map = isolate->factory()->NewMap( |
- i::JS_API_OBJECT_TYPE, i::JSObject::kHeaderSize + |
- WasmModuleObject::kFieldCount * i::kPointerSize); |
+ i::WASM_MODULE_TYPE, i::JSObject::kHeaderSize + |
+ WasmModuleObject::kFieldCount * i::kPointerSize); |
JSFunction::SetInitialMap(module_constructor, module_map, module_proto); |
InstallFunc(isolate, module_constructor, "imports", WebAssemblyModuleImports, |
1); |
@@ -963,8 +960,7 @@ void WasmJs::Install(Isolate* isolate) { |
Handle<JSObject> instance_proto = |
factory->NewJSObject(instance_constructor, TENURED); |
i::Handle<i::Map> instance_map = isolate->factory()->NewMap( |
- i::JS_API_OBJECT_TYPE, i::JSObject::kHeaderSize + |
- WasmInstanceObject::kFieldCount * i::kPointerSize); |
+ i::WASM_INSTANCE_TYPE, WasmInstanceObject::kSize); |
JSFunction::SetInitialMap(instance_constructor, instance_map, instance_proto); |
JSObject::AddProperty(instance_proto, |
isolate->factory()->constructor_string(), |
@@ -978,9 +974,8 @@ void WasmJs::Install(Isolate* isolate) { |
context->set_wasm_table_constructor(*table_constructor); |
Handle<JSObject> table_proto = |
factory->NewJSObject(table_constructor, TENURED); |
- i::Handle<i::Map> table_map = isolate->factory()->NewMap( |
- i::JS_API_OBJECT_TYPE, i::JSObject::kHeaderSize + |
- WasmTableObject::kFieldCount * i::kPointerSize); |
+ i::Handle<i::Map> table_map = |
+ isolate->factory()->NewMap(i::WASM_TABLE_TYPE, WasmTableObject::kSize); |
JSFunction::SetInitialMap(table_constructor, table_map, table_proto); |
JSObject::AddProperty(table_proto, isolate->factory()->constructor_string(), |
table_constructor, DONT_ENUM); |
@@ -997,9 +992,8 @@ void WasmJs::Install(Isolate* isolate) { |
context->set_wasm_memory_constructor(*memory_constructor); |
Handle<JSObject> memory_proto = |
factory->NewJSObject(memory_constructor, TENURED); |
- i::Handle<i::Map> memory_map = isolate->factory()->NewMap( |
- i::JS_API_OBJECT_TYPE, i::JSObject::kHeaderSize + |
- WasmMemoryObject::kFieldCount * i::kPointerSize); |
+ i::Handle<i::Map> memory_map = |
+ isolate->factory()->NewMap(i::WASM_MEMORY_TYPE, WasmMemoryObject::kSize); |
JSFunction::SetInitialMap(memory_constructor, memory_map, memory_proto); |
JSObject::AddProperty(memory_proto, isolate->factory()->constructor_string(), |
memory_constructor, DONT_ENUM); |