diff options
-rw-r--r-- | src/passes/Memory64Lowering.cpp | 4 | ||||
-rw-r--r-- | src/wasm-builder.h | 4 | ||||
-rw-r--r-- | src/wasm-delegations-fields.def | 2 | ||||
-rw-r--r-- | src/wasm.h | 4 | ||||
-rw-r--r-- | src/wasm/wasm-binary.cpp | 4 | ||||
-rw-r--r-- | src/wasm/wasm-s-parser.cpp | 4 | ||||
-rw-r--r-- | src/wasm/wasm.cpp | 6 | ||||
-rw-r--r-- | test/binaryen.js/expressions.js | 7 |
8 files changed, 9 insertions, 26 deletions
diff --git a/src/passes/Memory64Lowering.cpp b/src/passes/Memory64Lowering.cpp index 194d593d8..e0301936a 100644 --- a/src/passes/Memory64Lowering.cpp +++ b/src/passes/Memory64Lowering.cpp @@ -70,7 +70,7 @@ struct Memory64Lowering : public WalkerPass<PostWalker<Memory64Lowering>> { if (memory->is64()) { auto size = static_cast<Expression*>(curr); extendAddress64(size, curr->memory); - curr->ptrType = Type::i32; + curr->type = Type::i32; replaceCurrent(size); } } @@ -82,7 +82,7 @@ struct Memory64Lowering : public WalkerPass<PostWalker<Memory64Lowering>> { wrapAddress64(curr->delta, curr->memory); auto size = static_cast<Expression*>(curr); extendAddress64(size, curr->memory); - curr->ptrType = Type::i32; + curr->type = Type::i32; replaceCurrent(size); } } diff --git a/src/wasm-builder.h b/src/wasm-builder.h index fbc680d17..54766a789 100644 --- a/src/wasm-builder.h +++ b/src/wasm-builder.h @@ -666,7 +666,7 @@ public: MemoryInfo info = MemoryInfo::Unspecified) { auto* ret = wasm.allocator.alloc<MemorySize>(); if (isMemory64(memoryName, info)) { - ret->make64(); + ret->type = Type::i64; } ret->memory = memoryName; ret->finalize(); @@ -677,7 +677,7 @@ public: MemoryInfo info = MemoryInfo::Unspecified) { auto* ret = wasm.allocator.alloc<MemoryGrow>(); if (isMemory64(memoryName, info)) { - ret->make64(); + ret->type = Type::i64; } ret->delta = delta; ret->memory = memoryName; diff --git a/src/wasm-delegations-fields.def b/src/wasm-delegations-fields.def index b5eebfc2b..3ffd29534 100644 --- a/src/wasm-delegations-fields.def +++ b/src/wasm-delegations-fields.def @@ -485,12 +485,10 @@ DELEGATE_FIELD_OPTIONAL_CHILD(Return, value) DELEGATE_FIELD_CASE_END(Return) DELEGATE_FIELD_CASE_START(MemorySize) -DELEGATE_FIELD_TYPE(MemorySize, ptrType) DELEGATE_FIELD_NAME_KIND(MemorySize, memory, ModuleItemKind::Memory) DELEGATE_FIELD_CASE_END(MemorySize) DELEGATE_FIELD_CASE_START(MemoryGrow) -DELEGATE_FIELD_TYPE(MemoryGrow, ptrType) DELEGATE_FIELD_CHILD(MemoryGrow, delta) DELEGATE_FIELD_NAME_KIND(MemoryGrow, memory, ModuleItemKind::Memory) DELEGATE_FIELD_CASE_END(MemoryGrow) diff --git a/src/wasm.h b/src/wasm.h index dd7164499..29240723f 100644 --- a/src/wasm.h +++ b/src/wasm.h @@ -1305,10 +1305,8 @@ public: MemorySize() { type = Type::i32; } MemorySize(MixedArena& allocator) : MemorySize() {} - Type ptrType = Type::i32; Name memory; - void make64(); void finalize(); }; @@ -1318,10 +1316,8 @@ public: MemoryGrow(MixedArena& allocator) : MemoryGrow() {} Expression* delta = nullptr; - Type ptrType = Type::i32; Name memory; - void make64(); void finalize(); }; diff --git a/src/wasm/wasm-binary.cpp b/src/wasm/wasm-binary.cpp index d72626b90..c8ced1327 100644 --- a/src/wasm/wasm-binary.cpp +++ b/src/wasm/wasm-binary.cpp @@ -6882,7 +6882,7 @@ void WasmBinaryReader::visitMemorySize(MemorySize* curr) { BYN_TRACE("zz node: MemorySize\n"); Index index = getU32LEB(); if (getMemory(index)->is64()) { - curr->make64(); + curr->type = Type::i64; } curr->finalize(); memoryRefs[index].push_back(&curr->memory); @@ -6893,7 +6893,7 @@ void WasmBinaryReader::visitMemoryGrow(MemoryGrow* curr) { curr->delta = popNonVoidExpression(); Index index = getU32LEB(); if (getMemory(index)->is64()) { - curr->make64(); + curr->type = Type::i64; } memoryRefs[index].push_back(&curr->memory); } diff --git a/src/wasm/wasm-s-parser.cpp b/src/wasm/wasm-s-parser.cpp index be6fc5100..aa386f841 100644 --- a/src/wasm/wasm-s-parser.cpp +++ b/src/wasm/wasm-s-parser.cpp @@ -1537,7 +1537,7 @@ Expression* SExpressionWasmBuilder::makeMemorySize(Element& s) { } ret->memory = memory; if (isMemory64(memory)) { - ret->make64(); + ret->type = Type::i64; } ret->finalize(); return ret; @@ -1554,7 +1554,7 @@ Expression* SExpressionWasmBuilder::makeMemoryGrow(Element& s) { } ret->memory = memory; if (isMemory64(memory)) { - ret->make64(); + ret->type = Type::i64; } ret->delta = parseExpression(s[i]); ret->finalize(); diff --git a/src/wasm/wasm.cpp b/src/wasm/wasm.cpp index 9bc0f6e0b..82ddd553f 100644 --- a/src/wasm/wasm.cpp +++ b/src/wasm/wasm.cpp @@ -789,15 +789,11 @@ void Drop::finalize() { } } -void MemorySize::make64() { type = ptrType = Type::i64; } -void MemorySize::finalize() { type = ptrType; } +void MemorySize::finalize() {} -void MemoryGrow::make64() { type = ptrType = Type::i64; } void MemoryGrow::finalize() { if (delta->type == Type::unreachable) { type = Type::unreachable; - } else { - type = ptrType; } } diff --git a/test/binaryen.js/expressions.js b/test/binaryen.js/expressions.js index bd681f86d..16e8e8c4e 100644 --- a/test/binaryen.js/expressions.js +++ b/test/binaryen.js/expressions.js @@ -482,11 +482,7 @@ console.log("# MemorySize"); assert(theMemorySize instanceof binaryen.MemorySize); assert(theMemorySize instanceof binaryen.Expression); assert(theMemorySize.type === type); - - theMemorySize.type = type = binaryen.f64; - assert(theMemorySize.type === type); theMemorySize.finalize(); - assert(theMemorySize.type === binaryen.i32); console.log(theMemorySize.toText()); assert( @@ -513,10 +509,7 @@ console.log("# MemoryGrow"); theMemoryGrow.delta = delta = module.i32.const(2); assert(theMemoryGrow.delta === delta); - theMemoryGrow.type = type = binaryen.f64; - assert(theMemoryGrow.type === type); theMemoryGrow.finalize(); - assert(theMemoryGrow.type === binaryen.i32); console.log(theMemoryGrow.toText()); assert( |