From: jzhou Date: Tue, 5 Jun 2012 02:23:17 +0000 (+0000) Subject: Initialize class objects first as in the staic blocks there might be references to... X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=04ff08dbf682fdda4e70d940174fe18268aa806c;p=IRC.git Initialize class objects first as in the staic blocks there might be references to the class objects --- diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java index c18d65f2..11e4b0cc 100644 --- a/Robust/src/IR/Flat/BuildCode.java +++ b/Robust/src/IR/Flat/BuildCode.java @@ -428,9 +428,8 @@ public class BuildCode { outmethod.println(" ((struct garbagelist *)global_defs_p)->array[i]=NULL;"); outmethod.println(" }"); } - outputStaticBlocks(outmethod); outputClassObjects(outmethod); - + outputStaticBlocks(outmethod); additionalCodeAtTopOfMain(outmethod); for(BuildCodeExtension bcx: extensions) { diff --git a/Robust/src/IR/Flat/BuildCodeMGC.java b/Robust/src/IR/Flat/BuildCodeMGC.java index a88e0cb3..7c81c3d6 100644 --- a/Robust/src/IR/Flat/BuildCodeMGC.java +++ b/Robust/src/IR/Flat/BuildCodeMGC.java @@ -162,8 +162,8 @@ public class BuildCodeMGC extends BuildCode { outmethod.println(" }"); } - outputStaticBlocks(outmethod); outputClassObjects(outmethod); + outputStaticBlocks(outmethod); if ((GENERATEPRECISEGC) || state.MULTICOREGC || state.PMC) { outmethod.println(" struct ArrayObject * stringarray=allocate_newarray(NULL, STRINGARRAYTYPE, argc-1);"); diff --git a/Robust/src/IR/Flat/BuildCodeMultiCore.java b/Robust/src/IR/Flat/BuildCodeMultiCore.java index 16dc93b1..1ca99786 100644 --- a/Robust/src/IR/Flat/BuildCodeMultiCore.java +++ b/Robust/src/IR/Flat/BuildCodeMultiCore.java @@ -386,8 +386,8 @@ public class BuildCodeMultiCore extends BuildCode { outmethod.println(" }"); } - outputStaticBlocks(outmethod); outputClassObjects(outmethod); + outputStaticBlocks(outmethod); outmethod.println("}"); } diff --git a/Robust/src/IR/Flat/BuildCodeTran.java b/Robust/src/IR/Flat/BuildCodeTran.java index 7be13a5c..13214b7d 100644 --- a/Robust/src/IR/Flat/BuildCodeTran.java +++ b/Robust/src/IR/Flat/BuildCodeTran.java @@ -127,8 +127,8 @@ public class BuildCodeTran extends BuildCode { outmethod.println(" }"); } - outputStaticBlocks(outmethod); outputClassObjects(outmethod); + outputStaticBlocks(outmethod); additionalCodeAtTopOfMain(outmethod); if (state.DSM) {