bug fixes for tasks...
authorbdemsky <bdemsky>
Fri, 15 Apr 2011 23:53:34 +0000 (23:53 +0000)
committerbdemsky <bdemsky>
Fri, 15 Apr 2011 23:53:34 +0000 (23:53 +0000)
Robust/src/IR/Flat/BuildCode.java

index fb4c65fdacaf35975c9e640650786a6a11bcf6b8..48126a483497d2e9a60c490843a8db145e0b3ce7 100644 (file)
@@ -193,6 +193,7 @@ public class BuildCode {
       /* Output code for tasks */
       outputTaskCode(outtaskdefs, outmethod);
       outtaskdefs.close();
+      outtask.close();
       /* Record maximum number of task parameters */
       outstructs.println("#define MAXTASKPARAMS "+maxtaskparams);
     } else if (state.main!=null) {
@@ -204,6 +205,7 @@ public class BuildCode {
     if (state.TASK&&state.OPTIONAL) {
       generateOptionalArrays(outoptionalarrays, optionalheaders, state.getAnalysisResult(), state.getOptionalTaskDescriptors());
       outoptionalarrays.close();
+      optionalheaders.close();
     }
 
     /* Output structure definitions for repair tool */
@@ -631,6 +633,7 @@ public class BuildCode {
     }
     if (state.TASK) {
       outclassdefs.println("  int flag;");
+      outclassdefs.println("  int ___cachedCode___;");
       if(!state.MULTICORE) {
        outclassdefs.println("  void * flagptr;");
       } else {
@@ -1563,6 +1566,7 @@ public class BuildCode {
     }
     if (state.TASK) {
       classdefout.println("  int flag;");
+      classdefout.println("  int ___cachedCode___;");
       if((!state.MULTICORE) || (cn.getSymbol().equals("TagDescriptor"))) {
        classdefout.println("  void * flagptr;");
       } else if (state.MULTICORE) {