PXP(1)

NAME
pxp - Pascal execution profiler

SYNOPSIS
pxp [ -acdefjnstuw_ ] [ -23456789 ] [ -z [ name ... ] ] name.p

DESCRIPTION
Pxp can be used to obtain execution profiles of Pascal programs or as a pretty-printer. To produce an execution profile all that is necessary is to translate the program specifying the z option to pi or pix, to execute the program, and to then issue the command

    pxp -z name.p

A reformatted listing is output if none of the c, t, or z options are specified; thus

    pxp old.p > new.p

places a pretty-printed version of the program in `old.p' in the file `new.p'.

The use of the following options of pxp is discussed in sections 2.6, 5.4, 5.5 and 5.10 of the Berkeley Pascal User's Manual.

-a  Print the bodies of all procedures and functions in the profile; even those which were never executed.

-c  Extract profile data from the file core.

-d  Include declaration parts in a profile.

-e  Eliminate include directives when reformatting a file; the include is replaced by the reformatted contents of the specified file.

-f  Fully parenthesize expressions.

-j  Left justify all procedures and functions.

-n  Eject a new page as each file is included; in profiles, print a blank line at the top of the page.

-s  Strip comments from the input text.

-t  Print a table summarizing procedure and function call counts.

-u  Card image mode; only the first 72 characters of input lines are used.

-w  Suppress warning diagnostics.

-z  Generate an execution profile. If no names, are given the profile is of the entire program. If a list of names is given, then only any specified procedures or functions and the contents of any specified include files will appear in the profile.

-_  Underline keywords.

-d  With d a digit, 2 ≤ d ≤ 9, causes pxp to use d spaces as the basic indenting unit. The default is 4.

FILES
name.p    input file
name.i    include file(s)
pmon.out    profile data
core    profile data source with
-c
/usr/share/pascal/how_pxp    information on basic usage

SEE ALSO
Berkeley Pascal User's Manual
pi(1), px(1)

DIAGNOSTICS
For a basic explanation do

    pxp

Error diagnostics include `No profile data in file' with the c option if the z option was not enabled to pi; `Not a Pascal system core file' if the core is not from a px execution; `Program and count data do not correspond' if the program was changed after compilation, before profiling; or if the wrong program is specified.

AUTHOR
William N. Joy

BUGS
Does not place multiple statements per line.