diff options
-rw-r--r-- | src/s2wasm.h | 7 | ||||
-rw-r--r-- | test/s2wasm_known_gcc_test_failures.txt | 1 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/s2wasm.h b/src/s2wasm.h index 4e3ec23e5..b8ac6f139 100644 --- a/src/s2wasm.h +++ b/src/s2wasm.h @@ -905,8 +905,13 @@ private: if (size <= 0) { abort_on(".zero with zero or negative size"); } + unsigned char value = 0; + if (skipComma()) { + value = getInt(); + if (value != 0) zero = false; + } for (size_t i = 0, e = size; i < e; i++) { - raw->push_back(0); + raw->push_back(value); } } else if (match(".int8")) { size_t size = raw->size(); diff --git a/test/s2wasm_known_gcc_test_failures.txt b/test/s2wasm_known_gcc_test_failures.txt index 614365cf3..c518ce240 100644 --- a/test/s2wasm_known_gcc_test_failures.txt +++ b/test/s2wasm_known_gcc_test_failures.txt @@ -2,7 +2,6 @@ # files. # Unknown symbol (likely an external symbol). -pr24716.c.s # $W pr54937.c.s # $exit # Unknown symbol ($abort, $stdout, $stderr). |