diff options
Diffstat (limited to 'src/passes/pass.cpp')
-rw-r--r-- | src/passes/pass.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/passes/pass.cpp b/src/passes/pass.cpp index 197a59f41..ae9f34584 100644 --- a/src/passes/pass.cpp +++ b/src/passes/pass.cpp @@ -572,7 +572,9 @@ void PassRunner::addDefaultGlobalOptimizationPrePasses() { if (options.optimizeLevel >= 2) { addIfNoDWARFIssues("once-reduction"); } - if (wasm->features.hasGC() && getTypeSystem() == TypeSystem::Nominal && + if (wasm->features.hasGC() && + (getTypeSystem() == TypeSystem::Nominal || + getTypeSystem() == TypeSystem::Isorecursive) && options.optimizeLevel >= 2) { addIfNoDWARFIssues("type-refining"); addIfNoDWARFIssues("signature-pruning"); |