From: bdemsky Date: Mon, 24 Mar 2008 00:26:44 +0000 (+0000) Subject: printflat option X-Git-Tag: preEdgeChange~215 X-Git-Url: http://plrg.eecs.uci.edu/git/?a=commitdiff_plain;h=49ac6bd9d16f3311ac1286bd97472e78a1510862;p=IRC.git printflat option --- diff --git a/Robust/src/Benchmarks/Prefetch/MatrixMultiply/makefile b/Robust/src/Benchmarks/Prefetch/MatrixMultiply/makefile index 76bb6ac3..2767c1ee 100644 --- a/Robust/src/Benchmarks/Prefetch/MatrixMultiply/makefile +++ b/Robust/src/Benchmarks/Prefetch/MatrixMultiply/makefile @@ -1,6 +1,6 @@ MAINCLASS=MatrixMultiply SRC=${MAINCLASS}.java -FLAGS=-dsm -prefetch -nooptimize -profile -debug -excprefetch MatrixMultiply.main -excprefetch MMul.setValues -excprefetch MMul.transpose -mainclass ${MAINCLASS} -o ${MAINCLASS} +FLAGS=-dsm -prefetch -nooptimize -printflat -profile -debug -excprefetch MatrixMultiply.main -excprefetch MMul.setValues -excprefetch MMul.transpose -mainclass ${MAINCLASS} -o ${MAINCLASS} default: ../../../buildscript ${FLAGS} ${SRC} clean: diff --git a/Robust/src/IR/Flat/BuildCode.java b/Robust/src/IR/Flat/BuildCode.java index c7c7e61c..6f82f318 100644 --- a/Robust/src/IR/Flat/BuildCode.java +++ b/Robust/src/IR/Flat/BuildCode.java @@ -1200,6 +1200,8 @@ public class BuildCode { /***** Generate code for FlatMethod fm. *****/ private void generateFlatMethod(FlatMethod fm, LocalityBinding lb, PrintWriter output) { + if (State.PRINTFLAT) + System.out.println(fm.printMethod()); MethodDescriptor md=fm.getMethod(); TaskDescriptor task=fm.getTask(); diff --git a/Robust/src/IR/Flat/FlatPrefetchNode.java b/Robust/src/IR/Flat/FlatPrefetchNode.java index c89bb90b..1623fb89 100644 --- a/Robust/src/IR/Flat/FlatPrefetchNode.java +++ b/Robust/src/IR/Flat/FlatPrefetchNode.java @@ -10,7 +10,16 @@ public class FlatPrefetchNode extends FlatNode { } public String toString() { - return "prefetchnode"; + String st="prefetch("; + boolean first=true; + for(Iterator it=hspp.iterator();it.hasNext();) { + PrefetchPair pp=it.next(); + if (!first) + st+=", "; + first=false; + st+=pp; + } + return st+")"; } public int kind() { diff --git a/Robust/src/IR/State.java b/Robust/src/IR/State.java index 679d93f8..eab81282 100644 --- a/Robust/src/IR/State.java +++ b/Robust/src/IR/State.java @@ -58,6 +58,7 @@ public class State { public boolean THREAD=false; public boolean CONSCHECK=false; public boolean INSTRUCTIONFAILURE=false; + public static boolean PRINTFLAT=false; public String structfile; public String main; diff --git a/Robust/src/Main/Main.java b/Robust/src/Main/Main.java index b8f2b039..d9130458 100644 --- a/Robust/src/Main/Main.java +++ b/Robust/src/Main/Main.java @@ -65,6 +65,8 @@ public class Main { ClassLibraryPrefix=args[++i]+"/"; else if (option.equals("-mainclass")) state.main=args[++i]; + else if (option.equals("-printflat")) + State.PRINTFLAT=true; else if (option.equals("-struct")) state.structfile=args[++i]; else if (option.equals("-conscheck")) @@ -112,6 +114,7 @@ public class Main { System.out.println("-conscheck -- turn on consistency checking"); System.out.println("-task -- compiler for tasks"); System.out.println("-thread -- threads"); + System.out.println("-printflat -- print out flat representation"); System.out.println("-instructionfailures -- insert code for instruction level failures"); System.out.println("-taskstate -- do task state analysis"); System.out.println("-flatirtasks -- create dot files for flat IR graphs of tasks"); diff --git a/Robust/src/buildscript b/Robust/src/buildscript index 16087770..1cb06015 100755 --- a/Robust/src/buildscript +++ b/Robust/src/buildscript @@ -7,6 +7,7 @@ echo -check generate check code echo -dmalloc link in dmalloc echo -recover compile task code echo -specdir directory +echo -printflat print out flat representation echo -selfloop task - this task cannot self loop forever echo "-excprefetch methoddescriptor - exclude prefetches for this method (specified as class.method)" echo -taskstate do task state analysis @@ -81,6 +82,9 @@ DSMFLAG=true elif [[ $1 = '-prefetch' ]] then JAVAOPTS="$JAVAOPTS -prefetch" +elif [[ $1 = '-printflat' ]] +then +JAVAOPTS="$JAVAOPTS -printflat" elif [[ $1 = '-mac' ]] then EXTRAOPTIONS="$EXTRAOPTIONS -DMAC"