summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/wasm/wasm-type.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/wasm/wasm-type.cpp b/src/wasm/wasm-type.cpp
index adb2c7fa8..bfab4b955 100644
--- a/src/wasm/wasm-type.cpp
+++ b/src/wasm/wasm-type.cpp
@@ -1526,6 +1526,10 @@ FeatureSet HeapType::getFeatures() const {
FeatureSet feats = FeatureSet::None;
void noteChild(HeapType* heapType) {
+ if (heapType->isShared()) {
+ feats |= FeatureSet::SharedEverything;
+ }
+
if (heapType->isBasic()) {
switch (heapType->getBasic(Unshared)) {
case HeapType::ext:
@@ -1565,10 +1569,6 @@ FeatureSet HeapType::getFeatures() const {
feats |= FeatureSet::ReferenceTypes | FeatureSet::GC;
}
- if (heapType->isShared()) {
- feats |= FeatureSet::SharedEverything;
- }
-
if (heapType->isStruct() || heapType->isArray()) {
feats |= FeatureSet::ReferenceTypes | FeatureSet::GC;
} else if (heapType->isSignature()) {