
--------------------------------------------------------------------
      Announcement: A visualization tool for compiler graphs
--------------------------------------------------------------------
     
			The VCG Tool 
			============
	   A Visualization Tool for compiler graphs


DESCRIPTION
     The VCG tool reads a textual and readable specification of a 
     graph and visualizes  the graph.   If  not  all positions of 
     nodes are fixed,  the tool  layouts the graph using  several 
     heuristics as reducing  the number of crossings,  minimizing 
     the  size of  edges,  centering of nodes.  The specification 
     language of  the  VCG  tool is nearly compatible to GRL, the 
     language of the edge tool, but contains many extensions. The 
     VCG tool  allows folding of dynamically or statically speci-
     fied  regions  of the  graph.  It uses  colors and  runs  on 
     Sunview or X11.

     The VCG tool has been developed and tested on a Sparc ELC with
     SunOs 4.1.3, Sunview and X11 Release 5, and different ANSI C 
     and K&R C compilers. It has further been tested on a Silicon 
     Graphics (IRIX 4.0.5), on a IBM R6000 (AIX 2 with AIX Windows), 
     and on Linux (X11R5, gcc).


FEATURES
     0) The VCG tool is not a graph editor. It is intended to
	visualize large graphs that are automatically generated by
	programs, e.g. debuggers of data structures.
     
     1) Speed is always the first priority. Examples:

	Type  | Nr.of nodes | Nr.of edges | Time     |  Mode   
        -------------------------------------------------------------
        tree  |  4095       |  4094       |  15 sec. | normal
	graph |    70       |   104       |   3 sec. | normal
	graph |    75       |  3983       |  89 sec. | -f (fast mode)

	The graph 3 with 75 specified nodes and 3983 edges consists of 
	21694 internal nodes and 23540 internal edge segments.

	The tests were done using a xvcg (X11 version, compiled by 
	gcc version 2.4.5, gcc options -O -finline-functions).
	They were done on a Sparc 10/30 (arch = sun4m) with 32 MB
	main memory. 
	The times include time for loading, layouting and displaying. 

     2) The layout algorithm can be controlled in different ways. 
	There are 11 basic layout methods and two variants of crossing 
	reduction.
	Further, the priorities of edges and the number of layout 
	iterations may be set to influence the layout.

     3) Folding of subgraphs, of dynamically specified regions and
	the hiding of classes of edges allow to select exactly the
	part of the graph that is of interest.	

     4) Arbitrary zooming of graphs.

     5) Color support.

     6) Export into PBM-P4 files (black and white) or PNM-P6 files
	(color). For these formats, there are a lot of converters
	and printer drivers in the world. (For instance, the PBM+ 
	package is available by anonymous ftp at ftp.cs.uni-sb.de 
	in the directory /pub/graphics)

     7) Interface to program animations that provide the VCG tool
	with a sequence of graph descriptions.
 

LICENSE CONDITIONS
     Copyright (C) 1993-2005 Saarland University

     This work is supported by the ESPRIT project 5399 Compare.
     We thank the Compare Consortium for the permission to distribute
     this software and documentation freely.  You can redistribute 
     it under the terms of the  GNU General Public License as published by
     the  Free Software Foundation;  version 2  of the License.

     The members of the Compare Consortium are ACE Associated Computer 
     Experts bv, GMD Forschungsstelle an der Universitaet Karlsruhe,
     Harlequin Limited, INRIA, STERIA, Stichting Mathematisch Centrum (CWI), 
     and Universitaet des Saarlandes.

     The Compare Consortium will neither assume responsibility for any 
     damages caused by the use of its products, nor accept warranty or 
     update claims. This product 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 for more details.  


AVAILABILITY
     The software is available by anonymous ftp at ftp.cs.uni-sb.de
     (134.96.7.254) in the directory /pub/graphics/vcg. This site is
     in Germany. 
     Contact  sander@cs.uni-sb.de  for additional information.


AUTHORS
     Georg Sander, University of Saarland, 66041 Saarbruecken, Germany.
     Iris Lemke,   University of Saarland, 66041 Saarbruecken, Germany.
	
     The VCG tool has been developed at the Institute for Compiler 
     Construction, Department of Computer Science, at the University
     of Saarland, conducted by Prof. Dr. R. Wilhelm. 


