projects
/
nestedvm.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
cleanup, more efficient exec, better win32 support
[nestedvm.git]
/
src
/
org
/
ibex
/
nestedvm
/
JavaSourceCompiler.java
diff --git
a/src/org/ibex/nestedvm/JavaSourceCompiler.java
b/src/org/ibex/nestedvm/JavaSourceCompiler.java
index
f7f2353
..
596e15f
100644
(file)
--- a/
src/org/ibex/nestedvm/JavaSourceCompiler.java
+++ b/
src/org/ibex/nestedvm/JavaSourceCompiler.java
@@
-33,6
+33,7
@@
public class JavaSourceCompiler extends Compiler {
}
protected void _go() throws Exn, IOException {
}
protected void _go() throws Exn, IOException {
+ if(singleFloat) throw new Exn("JavaSourceCompiler doesn't support singleFloat");
String packageName;
String className;
if (fullClassName.indexOf('.') != -1) {
String packageName;
String className;
if (fullClassName.indexOf('.') != -1) {
@@
-217,7
+218,7
@@
public class JavaSourceCompiler extends Compiler {
private void endMethod() { endMethod(endOfMethod); }
private void endMethod(int lastAddr) {
if(startOfMethod == 0) return;
private void endMethod() { endMethod(endOfMethod); }
private void endMethod(int lastAddr) {
if(startOfMethod == 0) return;
- // FEATURE: We should be able to use if(!unreachable) here (i think)
+ // We should be able to use if(!unreachable) here (i think)
// This isn't strictly necessary; its just here to work around unreachable code errors
p("case " + toHex(lastAddr) + ":");
indent++;
// This isn't strictly necessary; its just here to work around unreachable code errors
p("case " + toHex(lastAddr) + ":");
indent++;
@@
-412,7
+413,7
@@
public class JavaSourceCompiler extends Compiler {
break;
case 12: // SYSCALL
p("pc = " + toHex(pc) + ";");
break;
case 12: // SYSCALL
p("pc = " + toHex(pc) + ";");
- p( "r"+V0+" = syscall(r"+V0+",r"+A0+",r"+A1+",r"+A2+",r"+A3+");");
+ p( "r"+V0+" = syscall(r"+V0+",r"+A0+",r"+A1+",r"+A2+",r"+A3+",r"+T0+",r"+T1+");");
p("if (state != RUNNING) {");
indent++;
p("pc = " + toHex(pc+4) + ";");
p("if (state != RUNNING) {");
indent++;
p("pc = " + toHex(pc+4) + ";");