diff options
Diffstat (limited to 'src/passes/Print.cpp')
-rw-r--r-- | src/passes/Print.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp index d0f19f78e..6dbd54e73 100644 --- a/src/passes/Print.cpp +++ b/src/passes/Print.cpp @@ -2205,6 +2205,26 @@ struct PrintExpressionContents o << ' '; TypeNamePrinter(o, wasm).print(curr->type.getHeapType()); } + void visitArrayNewSeg(ArrayNewSeg* curr) { + if (printUnreachableReplacement(curr)) { + return; + } + printMedium(o, "array.new_"); + switch (curr->op) { + case NewData: + printMedium(o, "data"); + + break; + case NewElem: + printMedium(o, "elem"); + break; + default: + WASM_UNREACHABLE("unexpected op"); + } + o << ' '; + TypeNamePrinter(o, wasm).print(curr->type.getHeapType()); + o << ' ' << curr->segment; + } void visitArrayInit(ArrayInit* curr) { if (printUnreachableReplacement(curr)) { return; @@ -2789,6 +2809,9 @@ struct PrintSExpression : public UnifiedExpressionVisitor<PrintSExpression> { void visitArrayNew(ArrayNew* curr) { maybePrintUnreachableReplacement(curr, curr->type); } + void visitArrayNewSeg(ArrayNewSeg* curr) { + maybePrintUnreachableReplacement(curr, curr->type); + } void visitArrayInit(ArrayInit* curr) { maybePrintUnreachableReplacement(curr, curr->type); } |