feat: add WASM host functions (Wasmi version)#6075
Open
mvadari wants to merge 121 commits intoripple/wasmifrom
Open
feat: add WASM host functions (Wasmi version)#6075mvadari wants to merge 121 commits intoripple/wasmifrom
mvadari wants to merge 121 commits intoripple/wasmifrom
Conversation
* add Vector256 nesting/length support * [WIP] add tests * fix tests * simplify with helper function * oops typo * remove static variable * respond to comments * STBaseOrUInt256->FieldValue * oops * add more tests for coverage * respond to comments
* adjust trace statements * add helper function * use lambda instead * use same paradigm in TestHostFunctions * oops
* Check wasm return type * Add more tests
* Switch to series expansion method for ln() Add float lg() tests to Number tests; * Rename lg -> log10 * Add check for 0 to log10()
* Ensure request size less than int limit * Move size check to wasmParams function
* Reject non-canonical binaries * Review fixes * Cleanup Number2 class * Use enum instead of 0
* add readme to src/xrpl/app/wasm * important block * respond to copilot
* Add functions with many parameters * Add 10k locals function * Module with 5k functions * fix typo Co-authored-by: Mayukha Vadari <mvadari@gmail.com> --------- Co-authored-by: Mayukha Vadari <mvadari@gmail.com>
* clean up some hf code * fix comments * fix ubsan * Revert "fix ubsan"
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
High Level Overview of Change
This PR adds all the Wasmi integration code and the host functions specified in XLS-102. It also adds tests for all of this.
Note for reviewers: 10k lines of this PR are just WASM-compiled test fixtures, and another 4k lines are WASM test fixture source code. So while this PR is still quite large, it's not as large as it seems on the surface.
Context of Change
This PR depends on #5999 and replaces #5791
It is part of an effort to split up the Smart Escrow work into smaller, more managable-to-review PRs.
XLS-102: XRPLF/XRPL-Standards#303
Type of Change
.gitignore, formatting, dropping support for older tooling)API Impact
N/A
Test Plan
Several tests are added to this PR.