diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/wasm/wasm-type.cpp | 8 |
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()) { |