From 6d7c8b12a9476b3336094ebdc88af6015ad561f3 Mon Sep 17 00:00:00 2001 From: Volker Berlin Date: Sat, 9 Nov 2019 18:59:47 +0100 Subject: [PATCH] add support for ref.is_null to wat parser --- src/de/inetsoftware/jwebassembly/watparser/WatParser.java | 3 +++ test/de/inetsoftware/jwebassembly/module/WatParserTest.java | 5 +++++ 2 files changed, 8 insertions(+) diff --git a/src/de/inetsoftware/jwebassembly/watparser/WatParser.java b/src/de/inetsoftware/jwebassembly/watparser/WatParser.java index 39a80f6..bd34207 100644 --- a/src/de/inetsoftware/jwebassembly/watparser/WatParser.java +++ b/src/de/inetsoftware/jwebassembly/watparser/WatParser.java @@ -175,6 +175,9 @@ public class WatParser extends WasmCodeBuilder { case "f64.trunc": addNumericInstruction( NumericOperator.trunc, ValueType.f64, javaCodePos, lineNumber ); break; + case "ref.is_null": + addNumericInstruction( NumericOperator.ifnull, ValueType.i32, javaCodePos, lineNumber ); + break; case "table.get": addTableInstruction( true, getInt( tokens, ++i), javaCodePos, lineNumber ); break; diff --git a/test/de/inetsoftware/jwebassembly/module/WatParserTest.java b/test/de/inetsoftware/jwebassembly/module/WatParserTest.java index 616e940..901dab6 100644 --- a/test/de/inetsoftware/jwebassembly/module/WatParserTest.java +++ b/test/de/inetsoftware/jwebassembly/module/WatParserTest.java @@ -269,6 +269,11 @@ public class WatParserTest { test( "f64.trunc" ); } + @Test + public void ref_is_null() throws IOException { + test( "ref.is_null" ); + } + @Test public void return_() throws IOException { test( "return" );