# HG changeset patch # User Peter Hofer # Date 1308760941 -7200 # Node ID 726dcfd2d91efdfd804b4c433b81133b045003ec # Parent 848dd57066add5b6f9392a3086b031044cff5d0b IdealGraphVisualizer: different coloring for usages and predecessors (and hence inputs and successors) diff -r 848dd57066ad -r 726dcfd2d91e src/share/tools/IdealGraphVisualizer/Graal/nbproject/genfiles.properties --- a/src/share/tools/IdealGraphVisualizer/Graal/nbproject/genfiles.properties Tue Jun 21 17:14:24 2011 +0200 +++ b/src/share/tools/IdealGraphVisualizer/Graal/nbproject/genfiles.properties Wed Jun 22 18:42:21 2011 +0200 @@ -1,8 +1,8 @@ -build.xml.data.CRC32=abfbe04d +build.xml.data.CRC32=2bb741e3 build.xml.script.CRC32=3534d355 build.xml.stylesheet.CRC32=a56c6a5b@1.45.1 # This file is used by a NetBeans-based IDE to track changes in generated files such as build-impl.xml. # Do not edit this file. You may delete it but then the IDE will never regenerate such files for you. -nbproject/build-impl.xml.data.CRC32=abfbe04d +nbproject/build-impl.xml.data.CRC32=2bb741e3 nbproject/build-impl.xml.script.CRC32=2867f2d5 nbproject/build-impl.xml.stylesheet.CRC32=238281d1@1.45.1 diff -r 848dd57066ad -r 726dcfd2d91e src/share/tools/IdealGraphVisualizer/Graal/nbproject/project.xml --- a/src/share/tools/IdealGraphVisualizer/Graal/nbproject/project.xml Tue Jun 21 17:14:24 2011 +0200 +++ b/src/share/tools/IdealGraphVisualizer/Graal/nbproject/project.xml Wed Jun 22 18:42:21 2011 +0200 @@ -15,6 +15,14 @@ + com.sun.hotspot.igv.filter + + + + 1.0 + + + com.sun.hotspot.igv.graph diff -r 848dd57066ad -r 726dcfd2d91e src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/filters/GraalEdgeColorFilter.java --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/filters/GraalEdgeColorFilter.java Wed Jun 22 18:42:21 2011 +0200 @@ -0,0 +1,89 @@ +/* + * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + * + */ +package com.sun.hotspot.igv.graal.filters; + +import com.sun.hotspot.igv.data.Properties; +import com.sun.hotspot.igv.filter.AbstractFilter; +import com.sun.hotspot.igv.graph.Connection; +import com.sun.hotspot.igv.graph.Diagram; +import com.sun.hotspot.igv.graph.Figure; +import com.sun.hotspot.igv.graph.OutputSlot; +import java.awt.Color; +import java.util.List; + +/** + * Filter that colors usage and successor edges differently. + * + * @author Peter Hofer + */ +public class GraalEdgeColorFilter extends AbstractFilter { + + private Color successorColor = Color.ORANGE; + private Color usageColor = Color.RED; + + public GraalEdgeColorFilter() { + } + + public String getName() { + return "Graal Edge Color Filter"; + } + + public void apply(Diagram d) { + List
figures = d.getFigures(); + for (Figure f : figures) { + Properties p = f.getProperties(); + + int succCount = Integer.parseInt(p.get("successorCount")); + for (OutputSlot os : f.getOutputSlots()) { + Color color; + if (os.getPosition() < succCount) { + color = successorColor; + } else { + color = usageColor; + } + + os.setColor(color); + for (Connection c : os.getConnections()) { + c.setColor(color); + } + } + } + } + + public Color getUsageColor() { + return usageColor; + } + + public void setUsageColor(Color usageColor) { + this.usageColor = usageColor; + } + + public Color getSuccessorColor() { + return successorColor; + } + + public void setSuccessorColor(Color successorColor) { + this.successorColor = successorColor; + } +} diff -r 848dd57066ad -r 726dcfd2d91e src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/filters/edgeColor.filter --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/filters/edgeColor.filter Wed Jun 22 18:42:21 2011 +0200 @@ -0,0 +1,4 @@ +var f = new com.sun.hotspot.igv.graal.filters.GraalEdgeColorFilter(); +f.setUsageColor(blue); +f.setSuccessorColor(red); +f.apply(graph); diff -r 848dd57066ad -r 726dcfd2d91e src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/layer.xml --- a/src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/layer.xml Tue Jun 21 17:14:24 2011 +0200 +++ b/src/share/tools/IdealGraphVisualizer/Graal/src/com/sun/hotspot/igv/graal/layer.xml Wed Jun 22 18:42:21 2011 +0200 @@ -5,5 +5,9 @@ + + + +