Copyright (c) 1985 Regents of the University of California. All rights reserved. The Berkeley software License Agreement specifies the terms and conditions for redistribution. @(#)DEBUGS 5.1 (Berkeley) 1/8/86 WHAT THE DEBUG FLAGS MEAN: Debug flags preceded with an X are first pass flags; the rest are second pass flags. -Xa: Print the actions taken for each operator as parse trees are assembled, from buildtree(). -Xb: Extra information from buildtree() on parse tree assembly. May be used to increase the information from -Xa. -Xd: Print information about declarations, from many places in pftn.c. May be repeated to get still more information. -Xi: Information about initializations, from several places in pftn.c. -a: From rallo(), print the address of the tree being worked on for the purpose of allocating registers, and indicate what this tree's requirements have been determined to be. -e: Print the expression tree at useful places, e.g. when an expression appears in the intermediate code file as a statement, or just before store() is called in codgen(). -l: Print line number and file name at the end of every statement. -o: Print the expression tree when order() is called, and whenever the loop in order() takes us to the top after a rewrite. Also prints the tree with extra info when a rewrite is forced due lack of a matching template. -r: Identify the register being worked on and what's in it and sometimes why it's being worked on, from rfree(), rbusy() and reclaim(). -s: From tshape(), print the address of the given node and the shape that it's being tested against. The opcode for the node is also printed. -t: From ttype(), print the node type and the type template which the node is being tested against. -u: Previously used to debug the Sethi-Ullman algorithm, currently defunct. -v: Report on multi-level tree matching. Very verbose. -x: Prints intermediate code instructions in mainp2(); also used to debug zzzcode(), the routine that does specialized template interpretation.