Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(55)

Side by Side Diff: src/wasm/wasm-objects.cc

Issue 2510673002: [wasm] Use more precise types for some WASM objects. (Closed)
Patch Set: Address review comment. Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « src/wasm/wasm-objects.h ('k') | test/cctest/wasm/test-run-wasm-module.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "src/wasm/wasm-objects.h" 5 #include "src/wasm/wasm-objects.h"
6 #include "src/wasm/wasm-module.h" 6 #include "src/wasm/wasm-module.h"
7 7
8 #define TRACE(...) \ 8 #define TRACE(...) \
9 do { \ 9 do { \
10 if (FLAG_trace_wasm_instances) PrintF(__VA_ARGS__); \ 10 if (FLAG_trace_wasm_instances) PrintF(__VA_ARGS__); \
(...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after
90 compiled_module->set_weak_wasm_module(link_to_module); 90 compiled_module->set_weak_wasm_module(link_to_module);
91 return Handle<WasmModuleObject>::cast(module_object); 91 return Handle<WasmModuleObject>::cast(module_object);
92 } 92 }
93 93
94 WasmModuleObject* WasmModuleObject::cast(Object* object) { 94 WasmModuleObject* WasmModuleObject::cast(Object* object) {
95 DCHECK(object->IsJSObject()); 95 DCHECK(object->IsJSObject());
96 // TODO(titzer): brand check for WasmModuleObject. 96 // TODO(titzer): brand check for WasmModuleObject.
97 return reinterpret_cast<WasmModuleObject*>(object); 97 return reinterpret_cast<WasmModuleObject*>(object);
98 } 98 }
99 99
100 bool WasmModuleObject::IsWasmModuleObject(Object* object) {
101 return object->IsJSObject() &&
102 JSObject::cast(object)->GetInternalFieldCount() == kFieldCount;
103 }
104
105 DEFINE_GETTER(WasmModuleObject, compiled_module, kCompiledModule,
106 WasmCompiledModule)
107
100 Handle<WasmTableObject> WasmTableObject::New(Isolate* isolate, uint32_t initial, 108 Handle<WasmTableObject> WasmTableObject::New(Isolate* isolate, uint32_t initial,
101 uint32_t maximum, 109 uint32_t maximum,
102 Handle<FixedArray>* js_functions) { 110 Handle<FixedArray>* js_functions) {
103 Handle<JSFunction> table_ctor( 111 Handle<JSFunction> table_ctor(
104 isolate->native_context()->wasm_table_constructor()); 112 isolate->native_context()->wasm_table_constructor());
105 Handle<JSObject> table_obj = isolate->factory()->NewJSObject(table_ctor); 113 Handle<JSObject> table_obj = isolate->factory()->NewJSObject(table_ctor);
106 *js_functions = isolate->factory()->NewFixedArray(initial); 114 *js_functions = isolate->factory()->NewFixedArray(initial);
107 Object* null = isolate->heap()->null_value(); 115 Object* null = isolate->heap()->null_value();
108 for (int i = 0; i < static_cast<int>(initial); ++i) { 116 for (int i = 0; i < static_cast<int>(initial); ++i) {
109 (*js_functions)->set(i, null); 117 (*js_functions)->set(i, null);
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
350 #endif 358 #endif
351 } 359 }
352 360
353 uint32_t WasmCompiledModule::mem_size() const { 361 uint32_t WasmCompiledModule::mem_size() const {
354 return has_memory() ? memory()->byte_length()->Number() : default_mem_size(); 362 return has_memory() ? memory()->byte_length()->Number() : default_mem_size();
355 } 363 }
356 364
357 uint32_t WasmCompiledModule::default_mem_size() const { 365 uint32_t WasmCompiledModule::default_mem_size() const {
358 return min_mem_pages() * WasmModule::kPageSize; 366 return min_mem_pages() * WasmModule::kPageSize;
359 } 367 }
OLDNEW
« no previous file with comments | « src/wasm/wasm-objects.h ('k') | test/cctest/wasm/test-run-wasm-module.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698