summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/tools/wasm-emscripten-finalize.cpp19
1 files changed, 16 insertions, 3 deletions
diff --git a/src/tools/wasm-emscripten-finalize.cpp b/src/tools/wasm-emscripten-finalize.cpp
index cdba9a9d4..c0911a37d 100644
--- a/src/tools/wasm-emscripten-finalize.cpp
+++ b/src/tools/wasm-emscripten-finalize.cpp
@@ -51,6 +51,7 @@ int main(int argc, const char* argv[]) {
bool debugInfo = false;
bool DWARF = false;
bool sideModule = false;
+ bool legacyPIC = true;
bool legalizeJavaScriptFFI = true;
bool bigInt = false;
bool checkStackOverflow = false;
@@ -109,6 +110,13 @@ int main(int argc, const char* argv[]) {
[&sideModule](Options* o, const std::string& argument) {
sideModule = true;
})
+ .add("--new-pic-abi",
+ "",
+ "Use new/llvm PIC abi",
+ Options::Arguments::Zero,
+ [&legacyPIC](Options* o, const std::string& argument) {
+ legacyPIC = false;
+ })
.add("--input-source-map",
"-ism",
"Consume source map from the specified file",
@@ -284,9 +292,14 @@ int main(int argc, const char* argv[]) {
if (sideModule) {
passRunner.add("replace-stack-pointer");
- passRunner.add("emscripten-pic");
- } else {
- passRunner.add("emscripten-pic-main-module");
+ }
+
+ if (legacyPIC) {
+ if (sideModule) {
+ passRunner.add("emscripten-pic");
+ } else {
+ passRunner.add("emscripten-pic-main-module");
+ }
}
if (!noDynCalls && !standaloneWasm) {