# 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.