summaryrefslogtreecommitdiff
path: root/scripts/gen-s-parser.py
diff options
context:
space:
mode:
authorAlon Zakai <azakai@google.com>2020-11-24 12:36:11 -0800
committerGitHub <noreply@github.com>2020-11-24 12:36:11 -0800
commit78ccc1976bac069ae65b2ec227e8c2c515a02801 (patch)
treeb875343fa47a62a44db4370811080dc963a91233 /scripts/gen-s-parser.py
parentcecff82aff317c3132f80a764dba163bcd852a78 (diff)
downloadbinaryen-78ccc1976bac069ae65b2ec227e8c2c515a02801.tar.gz
binaryen-78ccc1976bac069ae65b2ec227e8c2c515a02801.tar.bz2
binaryen-78ccc1976bac069ae65b2ec227e8c2c515a02801.zip
[TypedFunctionReferences] Implement call_ref (#3396)
Includes minimal support in various passes. Also includes actual optimization work in Directize, which was easy to add. Almost has fuzzer support, but the actual makeCallRef is just a stub so far. Includes s-parser support for parsing typed function references types.
Diffstat (limited to 'scripts/gen-s-parser.py')
-rwxr-xr-xscripts/gen-s-parser.py3
1 files changed, 3 insertions, 0 deletions
diff --git a/scripts/gen-s-parser.py b/scripts/gen-s-parser.py
index fc3a5b522..e94c58086 100755
--- a/scripts/gen-s-parser.py
+++ b/scripts/gen-s-parser.py
@@ -518,6 +518,9 @@ instructions = [
("tuple.make", "makeTupleMake(s)"),
("tuple.extract", "makeTupleExtract(s)"),
("pop", "makePop(s)"),
+ # Typed function references instructions
+ ("call_ref", "makeCallRef(s, /*isReturn=*/false)"),
+ ("return_call_ref", "makeCallRef(s, /*isReturn=*/true)"),
# GC
("ref.eq", "makeRefEq(s)"),
("i31.new", "makeI31New(s)"),