summaryrefslogtreecommitdiff
path: root/src/s2wasm-main.cpp
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-03-21 16:55:00 -0700
committerAlon Zakai <alonzakai@gmail.com>2016-03-21 16:55:00 -0700
commitc46ef0905565dfa9e24067a050d6c5095178c4ec (patch)
treea1c6a547e91cf05877139aee08e3fdcd96cf85dc /src/s2wasm-main.cpp
parentc34ed229b2df8bf4e8d0773917d0301c034980e3 (diff)
parent18ac67a3a23f4c54d4deab2d6621601662af899e (diff)
downloadbinaryen-c46ef0905565dfa9e24067a050d6c5095178c4ec.tar.gz
binaryen-c46ef0905565dfa9e24067a050d6c5095178c4ec.tar.bz2
binaryen-c46ef0905565dfa9e24067a050d6c5095178c4ec.zip
Merge pull request #268 from WebAssembly/eqz-type
Update EqZ operators and support specifying memory size on the command line
Diffstat (limited to 'src/s2wasm-main.cpp')
-rw-r--r--src/s2wasm-main.cpp21
1 files changed, 20 insertions, 1 deletions
diff --git a/src/s2wasm-main.cpp b/src/s2wasm-main.cpp
index d7a18f547..752494aac 100644
--- a/src/s2wasm-main.cpp
+++ b/src/s2wasm-main.cpp
@@ -58,6 +58,16 @@ int main(int argc, const char *argv[]) {
[](Options *o, const std::string &argument) {
o->extra["stack-allocation"] = argument;
})
+ .add("--initial-memory", "-i", "Initial size of the linear memory",
+ Options::Arguments::One,
+ [](Options *o, const std::string &argument) {
+ o->extra["initial-memory"] = argument;
+ })
+ .add("--max-memory", "-m", "Maximum size of the linear memory",
+ Options::Arguments::One,
+ [](Options *o, const std::string &argument) {
+ o->extra["max-memory"] = argument;
+ })
.add_positional("INFILE", Options::Arguments::One,
[](Options *o, const std::string &argument) {
o->extra["infile"] = argument;
@@ -75,9 +85,18 @@ int main(int argc, const char *argv[]) {
options.extra.find("stack-allocation") != options.extra.end()
? std::stoull(options.extra["stack-allocation"])
: 0;
+ size_t initialMem =
+ options.extra.find("initial-memory") != options.extra.end()
+ ? std::stoull(options.extra["initial-memory"])
+ : 0;
+ size_t maxMem =
+ options.extra.find("max-memory") != options.extra.end()
+ ? std::stoull(options.extra["max-memory"])
+ : 0;
if (options.debug) std::cerr << "Global base " << globalBase << '\n';
S2WasmBuilder s2wasm(wasm, input.c_str(), options.debug, globalBase,
- stackAllocation, ignoreUnknownSymbols, startFunction);
+ stackAllocation, initialMem, maxMem, ignoreUnknownSymbols,
+ startFunction);
if (options.debug) std::cerr << "Emscripten gluing..." << std::endl;
std::stringstream meta;