Repository navigation
rex3: pin the IRIX 7 auxiliary-plane clear against the JIT - #320
Merged
Merged
Conversation
The IRIX 7 kernel's gfx::init clears OLAY, PUP and CID with three full-screen 1280x1024 block fills before it touches anything else. Exercise that exact register sequence on both engines and require: the compiled path matches the interpreter, no write past the 1280th column, STATUS idle afterwards (the guest's wait_idle polls it), and no primitive left mid-flight.
16 tasks
belikh
added a commit
to irix7/iris
that referenced
this pull request
Oct 25, 2026
Cache default reverted (e7a7f62), VCE branch confirmed already converged, REX3 aux-clear test and NFS host-MAC fix opened as upstream techomancer#320/techomancer#321.
belikh
added a commit
to irix7/iris
that referenced
this pull request
Oct 25, 2026
techomancer#319, techomancer#320 and techomancer#321 are merged upstream and merged back; the send queue is renumbered around them.
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.
IRIX 7's kernel clears the overlay, popup and CID planes with three full-screen 1280x1024 block fills at the top of
gfx::init, before VC2/XMAP/RAMDAC programming. A bug in that shape traps the guest with no graphics output, so it is worth pinning exactly.The test runs the kernel's register sequence (
DRAWMODE1planes 4/5/6 with 24-bit RGB, WRMASK 0x00FF_FFFF, zero colours, XYENDI 1279,1023, XYSTARTI 0,0,DRAWMODE0= 0x0306) on both engines and requires:STATUSis idle afterwards, so the guest'swait_idlereturns;Evidence: this is the conformance test itself — it fails if the aux-plane base, the bounds check, the FIFO drain or the block-fill writeback regresses.
Tests:
cargo test -p iris --lib --features rex-jit dev::ng1::rex3::tests::jit_tests::jit_full_screen_aux_clear_like_irix7— 1 passed; the rest of the REX3 suite passes unchanged.