# HG changeset patch # User Thomas Wuerthinger # Date 1320293542 -3600 # Node ID 4ac37df2b9ad18bf4082ff4ba0e88c568098d861 # Parent d7db2a3a9b9c245f8c76077fd96345b23db37c7d Updated the combine filter. diff -r d7db2a3a9b9c -r 4ac37df2b9ad runfilter.sh --- a/runfilter.sh Wed Nov 02 18:45:14 2011 +0100 +++ b/runfilter.sh Thu Nov 03 05:12:22 2011 +0100 @@ -14,4 +14,4 @@ FILTER=$1 shift 1 TESTDIR=${MAXINE}/com.oracle.max.vm/test -${JDK7}/bin/java -graal -ea -esa -Xcomp -XX:+PrintCompilation -XX:CompileOnly=jtt -Xbootclasspath/p:"${MAXINE}/com.oracle.max.vm/bin" -Xbootclasspath/p:"${MAXINE}/com.oracle.max.base/bin" $@ test.com.sun.max.vm.compiler.JavaTester -filter=${FILTER} -verbose=1 -gen-run-scheme=false -run-scheme-package=all $@ ${TESTDIR}/jtt/bytecode ${TESTDIR}/jtt/except ${TESTDIR}/jtt/hotpath ${TESTDIR}/jtt/jdk ${TESTDIR}/jtt/lang ${TESTDIR}/jtt/loop ${TESTDIR}/jtt/micro ${TESTDIR}/jtt/optimize ${TESTDIR}/jtt/reflect ${TESTDIR}/jtt/threads ${TESTDIR}/jtt/reflect ${TESTDIR}/jtt/hotspot +${JDK7}/bin/java -graal -ea -esa -Xcomp -G:Plot -XX:+PrintCompilation -XX:CompileOnly=jtt -Xbootclasspath/p:"${MAXINE}/com.oracle.max.vm/bin" -Xbootclasspath/p:"${MAXINE}/com.oracle.max.base/bin" $@ test.com.sun.max.vm.compiler.JavaTester -filter=${FILTER} -verbose=1 -gen-run-scheme=false -run-scheme-package=all $@ ${TESTDIR}/jtt/bytecode ${TESTDIR}/jtt/except ${TESTDIR}/jtt/hotpath ${TESTDIR}/jtt/jdk ${TESTDIR}/jtt/lang ${TESTDIR}/jtt/loop ${TESTDIR}/jtt/micro ${TESTDIR}/jtt/optimize ${TESTDIR}/jtt/reflect ${TESTDIR}/jtt/threads ${TESTDIR}/jtt/reflect ${TESTDIR}/jtt/hotspot diff -r d7db2a3a9b9c -r 4ac37df2b9ad src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/CombineFilter.java --- a/src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/CombineFilter.java Wed Nov 02 18:45:14 2011 +0100 +++ b/src/share/tools/IdealGraphVisualizer/Filter/src/com/sun/hotspot/igv/filter/CombineFilter.java Thu Nov 03 05:12:22 2011 +0100 @@ -30,6 +30,7 @@ import com.sun.hotspot.igv.graph.OutputSlot; import com.sun.hotspot.igv.data.Properties; import com.sun.hotspot.igv.data.Properties.PropertyMatcher; +import java.awt.Color; import java.util.ArrayList; import java.util.HashSet; import java.util.List; @@ -76,16 +77,25 @@ } } - assert slot != null; - slot.setText(f.getProperties().get("dump_spec")); - if (f.getProperties().get("short_name") != null) { - slot.setShortName(f.getProperties().get("short_name")); + slot.getSource().addSourceNodes(f.getSource()); + if (r.getShortProperty() != null) { + String s = f.getProperties().get(r.getShortProperty()); + if (s != null && s.length() > 0) { + slot.setShortName(s); + slot.setText(s); + slot.setColor(f.getColor()); + } } else { - String s = f.getProperties().get("dump_spec"); - if (s != null && s.length() <= 5) { - slot.setShortName(s); + assert slot != null; + slot.setText(f.getProperties().get("dump_spec")); + if (f.getProperties().get("short_name") != null) { + slot.setShortName(f.getProperties().get("short_name")); + } else { + String s = f.getProperties().get("dump_spec"); + if (s != null && s.length() <= 5) { + slot.setShortName(s); + } } - } for (InputSlot s : f.getInputSlots()) { @@ -101,7 +111,7 @@ } else { for (Figure succ : successors) { - if (succ.getPredecessors().size() == 1) { + if (succ.getPredecessors().size() == 1 && succ.getInputSlots().size() == 1) { if (succ.getProperties().selectSingle(r.getSecondMatcher()) != null && succ.getOutputSlots().size() == 1) { @@ -122,17 +132,27 @@ pos = Integer.parseInt(succ.getProperties().get("con")); } OutputSlot slot = f.createOutputSlot(pos); - slot.setText(succ.getProperties().get("dump_spec")); - if (succ.getProperties().get("short_name") != null) { - slot.setShortName(succ.getProperties().get("short_name")); + slot.getSource().addSourceNodes(succ.getSource()); + if (r.getShortProperty() != null) { + String s = succ.getProperties().get(r.getShortProperty()); + if (s != null && s.length() > 0) { + slot.setShortName(s); + slot.setText(s); + slot.setColor(succ.getColor()); + } } else { - String s = succ.getProperties().get("dump_spec"); - if (s != null && s.length() <= 2) { - slot.setShortName(s); + slot.setText(succ.getProperties().get("dump_spec")); + if (succ.getProperties().get("short_name") != null) { + slot.setShortName(succ.getProperties().get("short_name")); } else { - String tmpName = succ.getProperties().get("name"); - if (tmpName != null && tmpName.length() > 0) { - slot.setShortName(tmpName.substring(0, 1)); + String s = succ.getProperties().get("dump_spec"); + if (s != null && s.length() <= 2) { + slot.setShortName(s); + } else { + String tmpName = succ.getProperties().get("name"); + if (tmpName != null && tmpName.length() > 0) { + slot.setShortName(tmpName.substring(0, 1)); + } } } } @@ -167,6 +187,7 @@ private PropertyMatcher first; private PropertyMatcher second; private boolean reversed; + private String shortProperty; public CombineRule(PropertyMatcher first, PropertyMatcher second) { this(first, second, false); @@ -174,9 +195,14 @@ } public CombineRule(PropertyMatcher first, PropertyMatcher second, boolean reversed) { + this(first, second, reversed, null); + } + + public CombineRule(PropertyMatcher first, PropertyMatcher second, boolean reversed, String shortProperty) { this.first = first; this.second = second; this.reversed = reversed; + this.shortProperty = shortProperty; } public boolean isReversed() { @@ -190,5 +216,9 @@ public PropertyMatcher getSecondMatcher() { return second; } + + public String getShortProperty() { + return shortProperty; + } } }