|
Message
From: cvs at opencores.org<cvs@o...>
Date: Tue Dec 18 18:41:25 CET 2007
Subject: [cvs-checkins] MODIFIED: jop ...
Date: 00/07/12 18:18:41 Modified: jop/java/target/src/common/com/jopdesign/sys Startup.java Log: local variable in boot() for CMP Revision Changes Path 1.29 jop/java/target/src/common/com/jopdesign/sys/Startup.java http://www.opencores.org/cvsweb.shtml/jop/java/target/src/common/com/jopdesign/sys/Startup.java.diff?r1=1.28&r2=1.29 (In the diff below, changes in quantity of whitespace are not shown.) Index: Startup.java =================================================================== RCS file: /cvsroot/9914pich/jop/java/target/src/common/com/jopdesign/sys/Startup.java,v retrieving revision 1.28 retrieving revision 1.29 diff -u -b -r1.28 -r1.29 --- Startup.java 8 Dec 2007 14:49:09 -0000 1.28 +++ Startup.java 18 Dec 2007 17:41:25 -0000 1.29 @@ -31,6 +31,9 @@ */ static void boot() { + // use local variable - statics are not CMP save! + int val; + // set moncnt in jvm.asm to zero to enable int's // on monitorexit from now on Native.wrIntMem(0, 5); @@ -44,16 +47,15 @@ mem_size = getRamSize(); // mem(0) is the length of the application // or in other words the heap start - var = Native.rdMem(1); // pointer to 'special' pointers + val = Native.rdMem(1); // pointer to 'special' pointers // first initialize the GC with the address of static ref. fields - GC.init(mem_size, var+4); + GC.init(mem_size, val+4); // place for some initialization: // could be placed in <clinit> in the future System.init(); version(); started = true; clazzinit(); - } // clear all pending interrupts (e.g. timer after reset) @@ -62,9 +64,9 @@ Native.wr(1, Const.IO_INT_ENA); // call main() - var = Native.rdMem(1); // pointer to 'special' pointers - var = Native.rdMem(var+3); // pointer to main method struct - Native.invoke(0, var); // call main (with null pointer on TOS + val = Native.rdMem(1); // pointer to 'special' pointers + val = Native.rdMem(val+3); // pointer to main method struct + Native.invoke(0, val); // call main (with null pointer on TOS exit(); }
|
 |