2026-03-24 13:40:39 +00:00

90 lines
1.7 KiB
Markdown

# PR-5.5 — Remove Legacy Syscall Entry Paths
### Briefing
Any old or experimental syscall entry paths must be removed so that the slot-based ABI is the only supported mechanism.
### Target
* Ensure only the new unified syscall dispatch path exists.
### Work items
* Search for legacy or alternate syscall invocation logic.
* Remove or refactor them to use the canonical dispatch.
* Update modules and exports accordingly.
### Acceptance checklist
* [ ] Only one syscall dispatch path remains.
* [ ] No legacy syscall logic is present.
* [ ] `cargo test` passes.
### Tests
* Existing tests only.
### Junie instructions
**You MAY:**
* Remove legacy syscall code paths.
* Refactor callers to use the unified dispatch.
**You MUST NOT:**
* Introduce new syscall semantics.
* Keep compatibility shims.
**If unclear:**
* Ask before deleting anything that looks externally visible.
---
# PR-5.6 — Syscall Multi-Return Tests
### Briefing
We must ensure multi-return syscalls behave correctly with the slot-based ABI.
### Target
* Add deterministic tests covering multi-return behavior.
### Work items
* Create or adapt at least one syscall with `ret_slots > 1`.
* Add tests:
* Verify correct stack results after syscall.
* Verify incorrect caller expectations fail verification.
### Acceptance checklist
* [ ] Multi-return syscalls behave correctly.
* [ ] Verifier catches mismatches.
* [ ] `cargo test` passes.
### Tests
* New multi-return syscall tests.
### Junie instructions
**You MAY:**
* Add deterministic tests.
* Use existing syscalls or create a simple test-only syscall.
**You MUST NOT:**
* Modify syscall semantics to satisfy tests.
* Add nondeterministic behavior.
**If unclear:**
* Ask before introducing new test syscalls.