summaryrefslogtreecommitdiff
path: root/src/tools/s2wasm.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/tools/s2wasm.cpp')
-rw-r--r--src/tools/s2wasm.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/tools/s2wasm.cpp b/src/tools/s2wasm.cpp
index ef5d276d3..890d74bb4 100644
--- a/src/tools/s2wasm.cpp
+++ b/src/tools/s2wasm.cpp
@@ -34,6 +34,7 @@ int main(int argc, const char *argv[]) {
bool ignoreUnknownSymbols = false;
bool generateEmscriptenGlue = false;
bool allowMemoryGrowth = false;
+ bool importMemory = false;
std::string startFunction;
std::vector<std::string> archiveLibraries;
Options options("s2wasm", "Link .s file into .wast");
@@ -85,6 +86,11 @@ int main(int argc, const char *argv[]) {
[&generateEmscriptenGlue](Options *, const std::string &) {
generateEmscriptenGlue = true;
})
+ .add("--import-memory", "", "Import the linear memory instead of exporting it",
+ Options::Arguments::Zero,
+ [&importMemory](Options *, const std::string &) {
+ importMemory = true;
+ })
.add("--library", "-l", "Add archive library",
Options::Arguments::N,
[&archiveLibraries](Options *o, const std::string &argument) {
@@ -132,7 +138,7 @@ int main(int argc, const char *argv[]) {
if (options.debug) std::cerr << "Global base " << globalBase << '\n';
Linker linker(globalBase, stackAllocation, initialMem, maxMem,
- generateEmscriptenGlue, ignoreUnknownSymbols, startFunction,
+ importMemory || generateEmscriptenGlue, ignoreUnknownSymbols, startFunction,
options.debug);
S2WasmBuilder mainbuilder(input.c_str(), options.debug);