.\" Copyright (c) 1980, 1990 The Regents of the University of California. .\" All rights reserved. .\" .\" %sccs.include.redist.man% .\" .\" @(#)pxp.1 6.6 (Berkeley) 06/02/91 .\" .Dd .Dt PXP 1 .Os BSD 3 .Sh NAME .Nm pxp .Nd Pascal execution profiler .Sh SYNOPSIS .Nm pxp .Op Fl acdefjnstuw_ .Op Fl 23456789 .Op Fl z Op Ar name ... .Ar name.p .Sh DESCRIPTION .Nm 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 .Fl z option to .Xr pi 1 or .Xr pix 1 , to execute the program, and to then issue the command .Bd -literal -offset indent pxp -x name.p .Ed .Pp A reformatted listing is output if none of the .Fl c , .Fl t , or .Fl z options are specified; thus .Bd -literal -offset indent pxp old.p > new.p .Ed .Pp places a pretty-printed version of the program in `old.p' in the file `new.p'. .Pp The use of the following options of .Nm pxp is discussed in sections 2.6, 5.4, 5.5 and 5.10 of the .%T "Berkeley Pascal User's Manual" . .Bl -tag -width Fl .It Fl a Print the bodies of all procedures and functions in the profile; even those which were never executed. .It Fl c Extract profile data from the file .Pa core . .It Fl d Include declaration parts in a profile. .It Fl e Eliminate .Ic include directives when reformatting a file; the .Ic include is replaced by the reformatted contents of the specified file. .It Fl f Fully parenthesize expressions. .It Fl j Left justify all procedures and functions. .It Fl n Eject a new page as each file is included; in profiles, print a blank line at the top of the page. .It Fl s Strip comments from the input text. .It Fl t Print a table summarizing .Ic procedure and .Ic function call counts. .It Fl u Card image mode; only the first 72 characters of input lines are used. .It Fl w Suppress warning diagnostics. .It Fl z Generate an execution profile. If no .Ar name Ns 's are given the profile is of the entire program. If a list of names is given, then only any specified .Ic procedure Ns s or .Cx Ic function Ns s and the contents of any specified .Ic include files will appear in the profile. .It Fl \&_ Underline keywords. .It Fl d With .Ar d a digit, 2 \*(Le .Ar d \*(Le 9, causes .Nm pxp to use .Ar d spaces as the basic indenting unit. The default is 4. .El .Sh FILES .Bl -tag -width /usr/lib/how_pxp -compact .It Pa name.p input file .It Pa name.i include file(s) .It Pa pmon.out profile data .It Pa core profile data source with .Fl c .It Pa /usr/lib/how_pxp information on basic usage .El .Sh SEE ALSO .Xr pi 1 , .Xr px 1 .Rs .%T "Berkeley Pascal User's Manual" .Re .Sh DIAGNOSTICS For a basic explanation do .Bd -literal -offset indent pxp .Ed .Pp Error diagnostics include `No profile data in file' with the .Fl c option if the .Fl z option was not enabled to .Nm pi ; `Not a Pascal system core file' if the core is not from a .Nm 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. .Sh HISTORY .Nm Pxp appeared in .Bx 3.0 . .Sh BUGS Does not place multiple statements per line.