summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2024-01-22 09:53:47 -0800
committerGitHub <noreply@github.com>2024-01-22 09:53:47 -0800
commit459e0d2a53358be0090c8662b1497521c744ce6a (patch)
treeff0ef884ffe85e83ffbb76ec9a2625ff407a68f9 /src
parent3049fb83c3f9c17e78157c43b5592055732db8ff (diff)
downloadbinaryen-459e0d2a53358be0090c8662b1497521c744ce6a.tar.gz
binaryen-459e0d2a53358be0090c8662b1497521c744ce6a.tar.bz2
binaryen-459e0d2a53358be0090c8662b1497521c744ce6a.zip
Remove incorrect validation of segment sizes (#6228)
This should be a runtime error, not a validator error. It caused a fuzzer failure on wasm-ctor-eval.
Diffstat (limited to 'src')
-rw-r--r--src/wasm/wasm-validator.cpp9
1 files changed, 0 insertions, 9 deletions
diff --git a/src/wasm/wasm-validator.cpp b/src/wasm/wasm-validator.cpp
index 3f73a2117..c9024b343 100644
--- a/src/wasm/wasm-validator.cpp
+++ b/src/wasm/wasm-validator.cpp
@@ -3656,7 +3656,6 @@ static void validateMemories(Module& module, ValidationInfo& info) {
static void validateDataSegments(Module& module, ValidationInfo& info) {
for (auto& segment : module.dataSegments) {
- auto size = segment->data.size();
if (segment->isPassive) {
info.shouldBeTrue(
module.features.hasBulkMemory(),
@@ -3693,14 +3692,6 @@ static void validateDataSegments(Module& module, ValidationInfo& info) {
segment->offset,
"memory segment offset should be constant");
FunctionValidator(module, &info).validate(segment->offset);
- // If the memory is imported we don't actually know its initial size.
- // Specifically wasm dll's import a zero sized memory which is perfectly
- // valid.
- if (!memory->imported()) {
- info.shouldBeTrue(size <= memory->initial * Memory::kPageSize,
- segment->data.size(),
- "segment size should fit in memory (initial)");
- }
}
}
}