From: brian Date: Tue, 1 Jun 2004 01:04:38 +0000 (-0700) Subject: prememread(true) for S* X-Git-Url: http://git.megacz.com/?p=nestedvm.git;a=commitdiff_plain;h=f138e115bc00194fdcf6800bbe63ebb2ae95525a prememread(true) for S* darcs-hash:20040601010438-24bed-67c02d4e46e54363bb4eea1df755583bfacadb8c.gz --- diff --git a/src/org/ibex/nestedvm/ClassFileCompiler.java b/src/org/ibex/nestedvm/ClassFileCompiler.java index 3b9e2d6..0572ea1 100644 --- a/src/org/ibex/nestedvm/ClassFileCompiler.java +++ b/src/org/ibex/nestedvm/ClassFileCompiler.java @@ -1472,7 +1472,6 @@ public class ClassFileCompiler extends Compiler implements CGConst { addiu(R+rs,signedImmediate); setTmp(); // addr - // FEATURE: DO the preMemRead(true) thing for the rest of the S* instructions preMemRead(true); pushTmp(); memRead(true); @@ -1512,19 +1511,13 @@ public class ClassFileCompiler extends Compiler implements CGConst { break; } case 41: { // SH - preMemWrite1(); - addiu(R+rs,signedImmediate); + setTmp(); - mg.add(DUP); - setTmp(); // addr - - preMemWrite2(true); - - preMemRead(); + preMemRead(true); pushTmp(); memRead(true); - + mg.add(LDC,0xffff); pushTmp(); @@ -1558,15 +1551,10 @@ public class ClassFileCompiler extends Compiler implements CGConst { break; } case 42: { // SWL - preMemWrite1(); - addiu(R+rs,signedImmediate); - mg.add(DUP); - setTmp(); // addr - - preMemWrite2(true); + setTmp(); - preMemRead(); + preMemRead(true); pushTmp(); memRead(true); @@ -1603,15 +1591,10 @@ public class ClassFileCompiler extends Compiler implements CGConst { memWrite(); break; case 46: { // SWR - preMemWrite1(); - addiu(R+rs,signedImmediate); - mg.add(DUP); - setTmp(); // addr - - preMemWrite2(true); + setTmp(); - preMemRead(); + preMemRead(true); pushTmp(); memRead(true);