Add functionality of returning data from the program executed via a CALL syscall. The syscall helper supports returning up to 1024B for now. It allocates a buffer for the (possible) returned data on the caller's heap, which is populated (if needed) by the VM syscall handler (if the call returns any data).
Closes #36
Other changes:
updated the recursive-call test to use the data returned from the call() instead of the host storage.
refactored the recursive-call-test to be included in the main workspace (similarly as the host-test before). It gets linting, formatting, go-to definition and so on. Its tests are automatically executed with cargo t.
Add functionality of returning data from the program executed via a
CALL
syscall. The syscall helper supports returning up to 1024B for now. It allocates a buffer for the (possible) returned data on the caller's heap, which is populated (if needed) by the VM syscall handler (if thecall
returns any data).Closes #36
Other changes:
call()
instead of the host storage.recursive-call-test
to be included in the main workspace (similarly as thehost-test
before). It gets linting, formatting, go-to definition and so on. Its tests are automatically executed withcargo t
.