diff options
Diffstat (limited to 'src/wasm-interpreter.h')
-rw-r--r-- | src/wasm-interpreter.h | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/wasm-interpreter.h b/src/wasm-interpreter.h index 1d07af46a..e8716efbc 100644 --- a/src/wasm-interpreter.h +++ b/src/wasm-interpreter.h @@ -1317,6 +1317,13 @@ public: switch (curr->op) { case RefIsNull: return Literal(value.isNull()); + case RefIsFunc: + return Literal(!value.isNull() && value.type.isFunction()); + case RefIsData: + return Literal(!value.isNull() && value.isGCData()); + case RefIsI31: + return Literal(!value.isNull() && + value.type.getHeapType() == HeapType::i31); default: WASM_UNREACHABLE("unimplemented ref.is_*"); } |