diff options
Diffstat (limited to 'src/passes/Print.cpp')
-rw-r--r-- | src/passes/Print.cpp | 104 |
1 files changed, 104 insertions, 0 deletions
diff --git a/src/passes/Print.cpp b/src/passes/Print.cpp index ac115edc3..a8e5b0f9c 100644 --- a/src/passes/Print.cpp +++ b/src/passes/Print.cpp @@ -1478,6 +1478,50 @@ struct PrintExpressionContents void visitI31Get(I31Get* curr) { printMedium(o, curr->signed_ ? "i31.get_s" : "i31.get_u"); } + void visitRefTest(RefTest* curr) { + printMedium(o, "ref.test"); + WASM_UNREACHABLE("TODO (gc): ref.test"); + } + void visitRefCast(RefCast* curr) { + printMedium(o, "ref.cast"); + WASM_UNREACHABLE("TODO (gc): ref.cast"); + } + void visitBrOnCast(BrOnCast* curr) { + printMedium(o, "br_on_cast"); + WASM_UNREACHABLE("TODO (gc): br_on_cast"); + } + void visitRttCanon(RttCanon* curr) { + printMedium(o, "rtt.canon"); + WASM_UNREACHABLE("TODO (gc): rtt.canon"); + } + void visitRttSub(RttSub* curr) { + printMedium(o, "rtt.sub"); + WASM_UNREACHABLE("TODO (gc): rtt.sub"); + } + void visitStructNew(StructNew* curr) { + WASM_UNREACHABLE("TODO (gc): struct.new"); + } + void visitStructGet(StructGet* curr) { + WASM_UNREACHABLE("TODO (gc): struct.get"); + } + void visitStructSet(StructSet* curr) { + printMedium(o, "struct.set"); + WASM_UNREACHABLE("TODO (gc): struct.set"); + } + void visitArrayNew(ArrayNew* curr) { + WASM_UNREACHABLE("TODO (gc): array.new"); + } + void visitArrayGet(ArrayGet* curr) { + WASM_UNREACHABLE("TODO (gc): array.get"); + } + void visitArraySet(ArraySet* curr) { + printMedium(o, "array.set"); + WASM_UNREACHABLE("TODO (gc): array.set"); + } + void visitArrayLen(ArrayLen* curr) { + printMedium(o, "array.len"); + WASM_UNREACHABLE("TODO (gc): array.len"); + } }; // Prints an expression in s-expr format, including both the @@ -2081,6 +2125,66 @@ struct PrintSExpression : public OverriddenVisitor<PrintSExpression> { printFullLine(curr->i31); decIndent(); } + void visitRefTest(RefTest* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): ref.test"); + } + void visitRefCast(RefCast* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): ref.cast"); + } + void visitBrOnCast(BrOnCast* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): br_on_cast"); + } + void visitRttCanon(RttCanon* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): rtt.canon"); + } + void visitRttSub(RttSub* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): rtt.sub"); + } + void visitStructNew(StructNew* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): struct.new"); + } + void visitStructGet(StructGet* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): struct.get"); + } + void visitStructSet(StructSet* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): struct.set"); + } + void visitArrayNew(ArrayNew* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): array.new"); + } + void visitArrayGet(ArrayGet* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): array.get"); + } + void visitArraySet(ArraySet* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): array.set"); + } + void visitArrayLen(ArrayLen* curr) { + o << '('; + PrintExpressionContents(currFunction, o).visit(curr); + WASM_UNREACHABLE("TODO (gc): array.len"); + } // Module-level visitors void handleSignature(Signature curr, Name* funcName = nullptr) { o << "(func"; |