diff options
author | Alon Zakai <azakai@google.com> | 2022-07-13 14:38:10 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-07-13 14:38:10 -0700 |
commit | 9671e95adbfcf0984a7e9800a7ea2ed33e1670ad (patch) | |
tree | d7273e64ed26429d18568439cdfb7b1fb6369645 /src/wasm/wasm-s-parser.cpp | |
parent | 7b9c18b98c020f887aa9cb1750543751ebe5c530 (diff) | |
download | binaryen-9671e95adbfcf0984a7e9800a7ea2ed33e1670ad.tar.gz binaryen-9671e95adbfcf0984a7e9800a7ea2ed33e1670ad.tar.bz2 binaryen-9671e95adbfcf0984a7e9800a7ea2ed33e1670ad.zip |
[Strings] stringview access operations (#4798)
Diffstat (limited to 'src/wasm/wasm-s-parser.cpp')
-rw-r--r-- | src/wasm/wasm-s-parser.cpp | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/wasm/wasm-s-parser.cpp b/src/wasm/wasm-s-parser.cpp index b3779e5e5..905c77523 100644 --- a/src/wasm/wasm-s-parser.cpp +++ b/src/wasm/wasm-s-parser.cpp @@ -3004,6 +3004,26 @@ Expression* SExpressionWasmBuilder::makeStringAs(Element& s, StringAsOp op) { return Builder(wasm).makeStringAs(op, parseExpression(s[1])); } +Expression* SExpressionWasmBuilder::makeStringWTF8Advance(Element& s) { + return Builder(wasm).makeStringWTF8Advance( + parseExpression(s[1]), parseExpression(s[2]), parseExpression(s[3])); +} + +Expression* SExpressionWasmBuilder::makeStringWTF16Get(Element& s) { + return Builder(wasm).makeStringWTF16Get(parseExpression(s[1]), + parseExpression(s[2])); +} + +Expression* SExpressionWasmBuilder::makeStringIterNext(Element& s) { + return Builder(wasm).makeStringIterNext(parseExpression(s[1])); +} + +Expression* SExpressionWasmBuilder::makeStringIterMove(Element& s, + StringIterMoveOp op) { + return Builder(wasm).makeStringIterMove( + op, parseExpression(s[1]), parseExpression(s[2])); +} + // converts an s-expression string representing binary data into an output // sequence of raw bytes this appends to data, which may already contain // content. |