summaryrefslogtreecommitdiff
path: root/src/passes/OptimizeInstructions.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/passes/OptimizeInstructions.cpp')
-rw-r--r--src/passes/OptimizeInstructions.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/passes/OptimizeInstructions.cpp b/src/passes/OptimizeInstructions.cpp
index 7f02eb283..7e6b00212 100644
--- a/src/passes/OptimizeInstructions.cpp
+++ b/src/passes/OptimizeInstructions.cpp
@@ -998,6 +998,13 @@ struct OptimizeInstructions
}
}
+ void visitArraySet(ArraySet* curr) {
+ if (curr->ref->type != Type::unreachable && curr->value->type.isInteger()) {
+ auto element = curr->ref->type.getHeapType().getArray().element;
+ optimizeStoredValue(curr->value, element.getByteSize());
+ }
+ }
+
Index getMaxBitsForLocal(LocalGet* get) {
// check what we know about the local
return localInfo[get->index].maxBits;