outclassdefs.println(" int flag;");
outclassdefs.println(" void * flagptr;");
if(state.OPTIONAL){
- outclassdefs.println(" int failedstatus;");
- outclassdefs.println(" int hashcode;");
outclassdefs.println(" int numexitfses;");
outclassdefs.println(" int * exitfses;");
- outclassdefs.println(" int numotds;");
- outclassdefs.println(" struct optionaltaskdescriptor ** otds;");
}
}
printClassStruct(typeutil.getClass(TypeUtil.ObjectClass), outclassdefs);
public boolean WEBINTERFACE=false;
public boolean TASK=false;
public boolean DSM=false;
+ public boolean PREFETCH=false;
public boolean TASKSTATE=false;
public boolean OPTIONAL=false;
public boolean THREAD=false;
import Analysis.TaskStateAnalysis.SafetyAnalysis;
import Analysis.Locality.LocalityAnalysis;
import Analysis.Locality.GenerateConversions;
+import Analysis.Prefetch.PrefetchAnalysis;
import Interface.*;
public class Main {
String option=args[i];
if (option.equals("-precise"))
IR.Flat.BuildCode.GENERATEPRECISEGC=true;
+ else if (option.equals("-prefetch"))
+ state.PREFETCH=true;
else if (option.equals("-dir"))
IR.Flat.BuildCode.PREFIX=args[++i]+"/";
else if (option.equals("-classlibrary"))
if (state.DSM) {
CallGraph callgraph=new CallGraph(state);
+ if (state.PREFETCH) {
+ PrefetchAnalysis pa=new PrefetchAnalysis(state, callgraph, tu);
+ }
LocalityAnalysis la=new LocalityAnalysis(state, callgraph, tu);
GenerateConversions gc=new GenerateConversions(la, state);
BuildCode bc=new BuildCode(state, bf.getMap(), tu, la);