summaryrefslogtreecommitdiff
path: root/src/passes
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes')
-rw-r--r--src/passes/Directize.cpp1
-rw-r--r--src/passes/Print.cpp4
-rw-r--r--src/passes/RemoveUnusedModuleElements.cpp1
3 files changed, 6 insertions, 0 deletions
diff --git a/src/passes/Directize.cpp b/src/passes/Directize.cpp
index 5a9b1b984..92953c47b 100644
--- a/src/passes/Directize.cpp
+++ b/src/passes/Directize.cpp
@@ -171,6 +171,7 @@ private:
}
};
+// TODO: handle table.get / table.set here as well
struct Directize : public Pass {
void run(PassRunner* runner, Module* module) override {
std::unordered_map<Name, TableUtils::FlatTable> validTables;
diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp
index 4d6207b01..a5db73132 100644
--- a/src/passes/Print.cpp
+++ b/src/passes/Print.cpp
@@ -1846,6 +1846,10 @@ struct PrintExpressionContents
printMedium(o, "table.get ");
printName(curr->table, o);
}
+ void visitTableSet(TableSet* curr) {
+ printMedium(o, "table.set ");
+ printName(curr->table, o);
+ }
void visitTry(Try* curr) {
printMedium(o, "try");
if (curr->name.is()) {
diff --git a/src/passes/RemoveUnusedModuleElements.cpp b/src/passes/RemoveUnusedModuleElements.cpp
index 7436676ef..32db977ec 100644
--- a/src/passes/RemoveUnusedModuleElements.cpp
+++ b/src/passes/RemoveUnusedModuleElements.cpp
@@ -129,6 +129,7 @@ struct ReachabilityAnalyzer : public PostWalker<ReachabilityAnalyzer> {
maybeAdd(ModuleElement(ModuleElementKind::Function, curr->func));
}
void visitTableGet(TableGet* curr) { maybeAddTable(curr->table); }
+ void visitTableSet(TableSet* curr) { maybeAddTable(curr->table); }
void visitThrow(Throw* curr) {
maybeAdd(ModuleElement(ModuleElementKind::Tag, curr->tag));
}