summaryrefslogtreecommitdiff
path: root/src/passes/MinifyImportsAndExports.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes/MinifyImportsAndExports.cpp')
-rw-r--r--src/passes/MinifyImportsAndExports.cpp20
1 files changed, 16 insertions, 4 deletions
diff --git a/src/passes/MinifyImportsAndExports.cpp b/src/passes/MinifyImportsAndExports.cpp
index f32859384..007f4b629 100644
--- a/src/passes/MinifyImportsAndExports.cpp
+++ b/src/passes/MinifyImportsAndExports.cpp
@@ -42,7 +42,12 @@
namespace wasm {
struct MinifyImportsAndExports : public Pass {
+ bool minifyExports;
+public:
+ explicit MinifyImportsAndExports(bool minifyExports):minifyExports(minifyExports) {}
+
+private:
// Generates minified names that are valid in JS.
// Names are computed lazily.
class MinifiedNames {
@@ -150,9 +155,12 @@ struct MinifyImportsAndExports : public Pass {
};
ModuleUtils::iterImportedGlobals(*module, processImport);
ModuleUtils::iterImportedFunctions(*module, processImport);
- // Minify the exported names.
- for (auto& curr : module->exports) {
- process(curr->name);
+
+ if (minifyExports) {
+ // Minify the exported names.
+ for (auto& curr : module->exports) {
+ process(curr->name);
+ }
}
module->updateMaps();
// Emit the mapping.
@@ -162,8 +170,12 @@ struct MinifyImportsAndExports : public Pass {
}
};
+Pass *createMinifyImportsPass() {
+ return new MinifyImportsAndExports(false);
+}
+
Pass *createMinifyImportsAndExportsPass() {
- return new MinifyImportsAndExports();
+ return new MinifyImportsAndExports(true);
}
} // namespace wasm