0xMiden / 0xMiden/protocol

Test all kernel and library procedures with additional stack elements

未关闭
#675 1 条评论 1 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Rust
星标
132
派生
167
平均合并
1 天 23 小时
30 天内合并 PR
110

描述

### What should be done?

Ensuring the procedures in the stdlib and the kernel ABI is correct is a requirement to build programs on top of it. Some of our procedures are not properly handling the stack, either they consume additional elements from the stack or leave elements in the stack, and this is not caught by the tests because the VM automatically fills the top of the stack with zeros.

To caught issues like the ones mentioned above, our tests should add random elements to the stack before calling any procedure, and asserting said elements are still available in the stack after the procedure call.

### How should it be done?

Change existing tests to:

- Initialize the stack with more elements than required prior to a procedure call
- Assert the elements mentioned above are untouched after calling the above procedure

### When is this task done?

When the existing tests have been updated

### Additional context

_No response_

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。