commit 6531dd4072ced92cdbacd56d4e681d5b5157aa96 parent 969640aaafc5bc2a6f86bf9a3708ef670cf75fd8 Author: Bradley Gannon <bradley@bradleygannon.com> Date: Mon, 23 Feb 2026 19:44:27 -0500 Add test for jal Diffstat:
| M | src/test/scala/perilus/main.scala | | | 25 | ++++++++++++++++++++++++- |
1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/src/test/scala/perilus/main.scala b/src/test/scala/perilus/main.scala @@ -342,7 +342,30 @@ class PerilusTests extends AnyFunSpec with ChiselSim { } } it("executes jal") { - cancel("Not yet implemented") + var registerFile = ArrayBuffer.fill(32)(0x00000000) + var memory = ArrayBuffer.fill(64)(0x00000000) + memory(0) = 0x01e003ef // jal x7, 0x1e + simulate( + new Perilus( + initRegs = initMemFile(registerFile), + initMem = initMemFile(memory), + withDebug = true + ) + ) { perilus => + { + val perilusDebug = perilus.io.debug.get + + perilus.io.pc.expect(0) + perilusDebug.reg.poke(7) + perilusDebug.regData.expect(0) + + perilus.clock.step(4) + + perilus.io.pc.expect(0x1e) + perilusDebug.reg.poke(7) + perilusDebug.regData.expect(4) + } + } } describe("runs small test programs") { it("20th Fibonacci number") {