summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2023-08-17 16:18:46 -0700
committerGitHub <noreply@github.com>2023-08-17 16:18:46 -0700
commitf044172ed665e94e61f579a8fc19770bb56f7b65 (patch)
tree423fc12aedc9cce411e4c6497eff9a7814869994 /src
parent7abe224ab5c00fa471e3f4e1ed176974b8ac4e9b (diff)
downloadbinaryen-f044172ed665e94e61f579a8fc19770bb56f7b65.tar.gz
binaryen-f044172ed665e94e61f579a8fc19770bb56f7b65.tar.bz2
binaryen-f044172ed665e94e61f579a8fc19770bb56f7b65.zip
ReFinalize in TypeSSA (#5885)
This has been a bug for a while but it became noticeable after #5881 #5882 which do more work in refinalization.
Diffstat (limited to 'src')
-rw-r--r--src/passes/TypeSSA.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/passes/TypeSSA.cpp b/src/passes/TypeSSA.cpp
index 25575e70e..f44df96e1 100644
--- a/src/passes/TypeSSA.cpp
+++ b/src/passes/TypeSSA.cpp
@@ -51,6 +51,7 @@
#include "ir/module-utils.h"
#include "ir/names.h"
#include "ir/possible-constant.h"
+#include "ir/utils.h"
#include "pass.h"
#include "support/hash.h"
#include "wasm-builder.h"
@@ -204,6 +205,9 @@ struct TypeSSA : public Pass {
// in the isorecursive type system we want to create a single new rec group
// for them all (see below).
modifyNews();
+
+ // Finally, refinalize to propagate the new types to parents.
+ ReFinalize().run(getPassRunner(), module);
}
News newsToModify;