summaryrefslogtreecommitdiff
path: root/src/ir/effects.h
diff options
context:
space:
mode:
authorDaniel Wirtz <dcode@dcode.io>2020-09-29 22:19:09 +0200
committerGitHub <noreply@github.com>2020-09-29 22:19:09 +0200
commit7d673ce83206349159a68fe683bc7da02dcdaf98 (patch)
treeb6be0e5842b8726406c50e9481531cf456db326f /src/ir/effects.h
parent781da4c206c54e92b46358c00d079ada66cef0df (diff)
downloadbinaryen-7d673ce83206349159a68fe683bc7da02dcdaf98.tar.gz
binaryen-7d673ce83206349159a68fe683bc7da02dcdaf98.tar.bz2
binaryen-7d673ce83206349159a68fe683bc7da02dcdaf98.zip
GC: Add stubs for the remaining instructions (#3174)
NFC, except adding most of the boilerplate for the remaining GC instructions. Each implementation site is marked with a respective `TODO (gc): theInstruction` in between the typical boilerplate code.
Diffstat (limited to 'src/ir/effects.h')
-rw-r--r--src/ir/effects.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/ir/effects.h b/src/ir/effects.h
index 8199092ea..dc6c10645 100644
--- a/src/ir/effects.h
+++ b/src/ir/effects.h
@@ -507,6 +507,36 @@ struct EffectAnalyzer
void visitTupleExtract(TupleExtract* curr) {}
void visitI31New(I31New* curr) {}
void visitI31Get(I31Get* curr) {}
+ void visitRefTest(RefTest* curr) { WASM_UNREACHABLE("TODO (gc): ref.test"); }
+ void visitRefCast(RefCast* curr) { WASM_UNREACHABLE("TODO (gc): ref.cast"); }
+ void visitBrOnCast(BrOnCast* curr) {
+ WASM_UNREACHABLE("TODO (gc): br_on_cast");
+ }
+ void visitRttCanon(RttCanon* curr) {
+ WASM_UNREACHABLE("TODO (gc): rtt.canon");
+ }
+ void visitRttSub(RttSub* curr) { 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) {
+ 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) {
+ WASM_UNREACHABLE("TODO (gc): array.set");
+ }
+ void visitArrayLen(ArrayLen* curr) {
+ WASM_UNREACHABLE("TODO (gc): array.len");
+ }
// Helpers