summaryrefslogtreecommitdiff
path: root/src/passes/GlobalRefining.cpp
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2022-10-31 15:00:36 -0700
committerGitHub <noreply@github.com>2022-10-31 15:00:36 -0700
commit1fa6fcfebbec9e45bcdc481f19757ac14cda4699 (patch)
treed59a8d0973a6b33adb92ea010d6dc0139cb727a8 /src/passes/GlobalRefining.cpp
parent8c3ebda4d79383aed4c9e8c83f59f53363d1067a (diff)
downloadbinaryen-1fa6fcfebbec9e45bcdc481f19757ac14cda4699.tar.gz
binaryen-1fa6fcfebbec9e45bcdc481f19757ac14cda4699.tar.bz2
binaryen-1fa6fcfebbec9e45bcdc481f19757ac14cda4699.zip
[Wasm GC] Enable various passes in hybrid mode, not just nominal (#5202)
Diffstat (limited to 'src/passes/GlobalRefining.cpp')
-rw-r--r--src/passes/GlobalRefining.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/passes/GlobalRefining.cpp b/src/passes/GlobalRefining.cpp
index f3bea3d3d..f994d4082 100644
--- a/src/passes/GlobalRefining.cpp
+++ b/src/passes/GlobalRefining.cpp
@@ -38,8 +38,9 @@ struct GlobalRefining : public Pass {
if (!module->features.hasGC()) {
return;
}
- if (getTypeSystem() != TypeSystem::Nominal) {
- Fatal() << "GlobalRefining requires nominal typing";
+ if (getTypeSystem() != TypeSystem::Nominal &&
+ getTypeSystem() != TypeSystem::Isorecursive) {
+ Fatal() << "GlobalRefining requires nominal/isorecursive typing";
}
// First, find all the global.sets.