diff options
Diffstat (limited to 'src/passes/Print.cpp')
-rw-r--r-- | src/passes/Print.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp index 2e9800775..ede49ab38 100644 --- a/src/passes/Print.cpp +++ b/src/passes/Print.cpp @@ -2076,7 +2076,11 @@ struct PrintExpressionContents o << std::max(curr->tuple->type.size(), size_t(2)) << " "; o << curr->index; } - void visitRefI31(RefI31* curr) { printMedium(o, "ref.i31"); } + void visitRefI31(RefI31* curr) { + bool shared = + curr->type != Type::unreachable && curr->type.getHeapType().isShared(); + printMedium(o, shared ? "ref.i31_shared" : "ref.i31"); + } void visitI31Get(I31Get* curr) { printMedium(o, curr->signed_ ? "i31.get_s" : "i31.get_u"); } |