public void JalTest2()
{
var Events = new List<int>();
ExecuteAssembly(@"
li r2, 0
li r3, 0
jal function1
nop
jal function1
nop
jal function1
nop
j end
nop
function1:
addiu r29, r29, -4
sw r31, 0(r29)
jal function2
nop
jal function2
nop
jal function2
nop
addiu r29, r29, 4
lw r31, 0(r29)
jr r31
addi r3, r3, 1
function2:
jr r31
addi r2, r2, 1
end:
");
Assert.AreEqual(3 * 3, CpuThreadState.GPR[2]);
Assert.AreEqual(3, CpuThreadState.GPR[3]);
}