summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/abi/js.h4
-rw-r--r--src/asm2wasm.h3
-rw-r--r--src/passes/LegalizeJSInterface.cpp4
-rw-r--r--src/tools/wasm-emscripten-finalize.cpp3
4 files changed, 8 insertions, 6 deletions
diff --git a/src/abi/js.h b/src/abi/js.h
index 539b465fb..bcc7dbb6e 100644
--- a/src/abi/js.h
+++ b/src/abi/js.h
@@ -23,13 +23,13 @@ namespace wasm {
namespace ABI {
-enum LegalizationLevel {
+enum class LegalizationLevel {
Full = 0,
Minimal = 1
};
inline std::string getLegalizationPass(LegalizationLevel level) {
- if (level == Full) {
+ if (level == LegalizationLevel::Full) {
return "legalize-js-interface";
} else {
return "legalize-js-interface-minimally";
diff --git a/src/asm2wasm.h b/src/asm2wasm.h
index 522d53a2b..edd54f06d 100644
--- a/src/asm2wasm.h
+++ b/src/asm2wasm.h
@@ -1454,7 +1454,8 @@ void Asm2WasmBuilder::processAsm(Ref ast) {
// so that the output of the first pass is valid
passRunner.add<FinalizeCalls>(this);
passRunner.add(ABI::getLegalizationPass(
- legalizeJavaScriptFFI ? ABI::Full : ABI::Minimal
+ legalizeJavaScriptFFI ? ABI::LegalizationLevel::Full
+ : ABI::LegalizationLevel::Minimal
));
if (runOptimizationPasses) {
// autodrop can add some garbage
diff --git a/src/passes/LegalizeJSInterface.cpp b/src/passes/LegalizeJSInterface.cpp
index 8a8bb3e27..9d223390e 100644
--- a/src/passes/LegalizeJSInterface.cpp
+++ b/src/passes/LegalizeJSInterface.cpp
@@ -57,7 +57,7 @@ struct LegalizeJSInterface : public Pass {
if (ex->kind == ExternalKind::Function) {
// if it's an import, ignore it
auto* func = module->getFunction(ex->value);
- if (isIllegal(func) && isRelevant(ex.get(), func)) {
+ if (isIllegal(func) && shouldBeLegalized(ex.get(), func)) {
auto legalName = makeLegalStub(func, module);
ex->value = legalName;
}
@@ -131,7 +131,7 @@ private:
return false;
}
- bool isRelevant(Export* ex, Function* func) {
+ bool shouldBeLegalized(Export* ex, Function* func) {
if (full) return true;
// We are doing minimal legalization - just what JS needs.
return ex->name.startsWith("dynCall_");
diff --git a/src/tools/wasm-emscripten-finalize.cpp b/src/tools/wasm-emscripten-finalize.cpp
index e9e623e3c..3d74138cc 100644
--- a/src/tools/wasm-emscripten-finalize.cpp
+++ b/src/tools/wasm-emscripten-finalize.cpp
@@ -163,7 +163,8 @@ int main(int argc, const char *argv[]) {
passRunner.setDebug(options.debug);
passRunner.setDebugInfo(debugInfo);
passRunner.add(ABI::getLegalizationPass(
- legalizeJavaScriptFFI ? ABI::Full : ABI::Minimal
+ legalizeJavaScriptFFI ? ABI::LegalizationLevel::Full
+ : ABI::LegalizationLevel::Minimal
));
passRunner.run();