public void TestMethod12() { // test ble (take branch with rd = 0) RegisterFile <int> iRF = new RegisterFile <int>(16); Memory m = new Memory(5000); ble b = new ble(2, 10); b.Process(iRF, m); Assert.AreEqual <int>(10, iRF[15]); }
public void TestMethod13() { // test ble (don't take branch with rd > 0) RegisterFile <int> iRF = new RegisterFile <int>(16); Memory m = new Memory(5000); addi a = new addi(2, 0, 1); ble b = new ble(2, 10); a.Process(iRF, m); b.Process(iRF, m); Assert.AreEqual <int>(0, iRF[15]); }
public void TestMethod17() { // ToString() test add a = new add(0, 1, 5); Assert.AreEqual("add r0 r1 r5", a.ToString()); addi ai = new addi(0, 1, 5); Assert.AreEqual("addi r0 r1 5", ai.ToString()); bz bz = new bz(1, 1); Assert.AreEqual("bz r1 1", bz.ToString()); bge bge = new bge(1, 1); Assert.AreEqual("bge r1 1", bge.ToString()); bnz bnz = new bnz(1, 1); Assert.AreEqual("bnz r1 1", bnz.ToString()); ble ble = new ble(1, 1); Assert.AreEqual("ble r1 1", ble.ToString()); finish f = new finish(); Assert.AreEqual("finish", f.ToString()); launch l = new launch(1); Assert.AreEqual("launch r1", l.ToString()); ld ld = new ld(2, 1, 3); Assert.AreEqual("ld r2 r1 3", ld.ToString()); mul m = new mul(1, 2, 3); Assert.AreEqual("mul r1 r2 r3", m.ToString()); muli mi = new muli(1, 2, 3); Assert.AreEqual("muli r1 r2 3", mi.ToString()); st s = new st(1, 2, 3); Assert.AreEqual("st r1 r2 3", s.ToString()); sub sub = new sub(1, 2, 3); Assert.AreEqual("sub r1 r2 r3", sub.ToString()); subi subi = new subi(1, 2, 3); Assert.AreEqual("subi r1 r2 3", subi.ToString()); }