diff options
Diffstat (limited to 'src/wasm')
-rw-r--r-- | src/wasm/wasm-emscripten.cpp | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/src/wasm/wasm-emscripten.cpp b/src/wasm/wasm-emscripten.cpp index 0c02c758e..3f521caf9 100644 --- a/src/wasm/wasm-emscripten.cpp +++ b/src/wasm/wasm-emscripten.cpp @@ -789,7 +789,8 @@ void printSet(std::ostream& o, C& c) { } std::string EmscriptenGlueGenerator::generateEmscriptenMetadata( - Address staticBump, std::vector<Name> const& initializerFunctions) { + Address staticBump, std::vector<Name> const& initializerFunctions, + FeatureSet features) { bool commaFirst; auto nextElement = [&commaFirst]() { if (commaFirst) { @@ -926,6 +927,15 @@ std::string EmscriptenGlueGenerator::generateEmscriptenMetadata( } }); meta << "\n ]\n"; + + meta << " \"features\": ["; + commaFirst = true; + meta << nextElement() << "\"--mvp-features\""; + features.iterFeatures([&](FeatureSet::Feature f) { + meta << nextElement() << "\"--enable-" << FeatureSet::toString(f) << '"'; + }); + meta << "\n ]\n"; + meta << "}\n"; return meta.str(); |