|
|
1.1 ! root 1: .\" Copyright (c) 1980, 1990 The Regents of the University of California. ! 2: .\" All rights reserved. ! 3: .\" ! 4: .\" Redistribution and use in source and binary forms are permitted provided ! 5: .\" that: (1) source distributions retain this entire copyright notice and ! 6: .\" comment, and (2) distributions including binaries display the following ! 7: .\" acknowledgement: ``This product includes software developed by the ! 8: .\" University of California, Berkeley and its contributors'' in the ! 9: .\" documentation or other materials provided with the distribution and in ! 10: .\" all advertising materials mentioning features or use of this software. ! 11: .\" Neither the name of the University nor the names of its contributors may ! 12: .\" be used to endorse or promote products derived from this software without ! 13: .\" specific prior written permission. ! 14: .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED ! 15: .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF ! 16: .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ! 17: .\" ! 18: .\" @(#)pxp.1 6.3 (Berkeley) 6/26/90 ! 19: .\" ! 20: .Dd June 26, 1990 ! 21: .Dt PXP 1 ! 22: .Sh NAME ! 23: .Nm pxp ! 24: .Nd Pascal execution profiler ! 25: .Sh SYNOPSIS ! 26: .Nm pxp ! 27: .Op Fl acdefjnstuw_ ! 28: .Op Fl 23456789 ! 29: .Op Fl z Op Ar name ... ! 30: .Ar name.p ! 31: .Sh DESCRIPTION ! 32: .Nm Pxp ! 33: can be used to obtain execution profiles of Pascal programs or ! 34: as a pretty-printer. ! 35: To produce an execution profile all that is necessary is to translate ! 36: the program specifying the ! 37: .Fl z ! 38: option to ! 39: .Xr pi 1 ! 40: or ! 41: .Xr pix 1 , ! 42: to execute the program, ! 43: and to then issue the command ! 44: .Pp ! 45: .Dl pxp -x name.p ! 46: .Pp ! 47: A reformatted listing is output if none of the ! 48: .Fl c , ! 49: .Fl t , ! 50: or ! 51: .Fl z ! 52: options are specified; ! 53: thus ! 54: .Pp ! 55: .Dl pxp old.p > new.p ! 56: .Pp ! 57: places a pretty-printed version of the program in `old.p' in the file `new.p'. ! 58: .Pp ! 59: The use of the following options of ! 60: .Nm pxp ! 61: is discussed in sections 2.6, 5.4, 5.5 and 5.10 of the ! 62: .Em Berkeley Pascal User's Manual . ! 63: .Tp Fl a ! 64: Print the bodies of all procedures and functions in the profile; ! 65: even those which were never executed. ! 66: .Tp Fl c ! 67: Extract profile data from the file ! 68: .Pa core . ! 69: .Tp Fl d ! 70: Include declaration parts in a profile. ! 71: .Tp Fl e ! 72: Eliminate ! 73: .Ic include ! 74: directives when reformatting a file; ! 75: the ! 76: .Ic include ! 77: is replaced by the reformatted contents of the specified ! 78: file. ! 79: .Tp Fl f ! 80: Fully parenthesize expressions. ! 81: .Tp Fl j ! 82: Left justify all procedures and functions. ! 83: .Tp Fl n ! 84: Eject a new page ! 85: as each file is included; ! 86: in profiles, print a blank line at the top of the page. ! 87: .Tp Fl s ! 88: Strip comments from the input text. ! 89: .Tp Fl t ! 90: Print a table summarizing ! 91: .Ic procedure ! 92: and ! 93: .Ic function ! 94: call counts. ! 95: .Tp Fl u ! 96: Card image mode; only the first 72 characters of input lines ! 97: are used. ! 98: .Tp Fl w ! 99: Suppress warning diagnostics. ! 100: .Tp Fl z ! 101: Generate an execution profile. ! 102: If no ! 103: .Cx Ar name ! 104: .Cx \&\'s ! 105: .Cx ! 106: are given the profile is of the entire program. ! 107: If a list of names is given, then only any specified ! 108: .Cx Ic procedure ! 109: .Cx \&s ! 110: .Cx ! 111: or ! 112: .Cx Ic function ! 113: .Cx \&s ! 114: .Cx ! 115: and the contents of any specified ! 116: .Ic include ! 117: files will appear in the profile. ! 118: .Tp Fl \&_ ! 119: Underline keywords. ! 120: .Tp Fl d ! 121: With ! 122: .Ar d ! 123: a digit, 2 \(<= ! 124: .Ar d ! 125: \(<= 9, ! 126: causes ! 127: .Nm pxp ! 128: to use ! 129: .Ar d ! 130: spaces as the basic indenting unit. ! 131: The default is 4. ! 132: .Sh FILES ! 133: .Dw /usr/lib/how_pxp ! 134: .Di L ! 135: .Dp Pa name.p ! 136: input file ! 137: .Dp Pa name.i ! 138: include file(s) ! 139: .Dp Pa pmon.out ! 140: profile data ! 141: .Dp Pa core ! 142: profile data source with ! 143: .Fl c ! 144: .Dp Pa /usr/lib/how_pxp ! 145: information on basic usage ! 146: .Dp ! 147: .Sh SEE ALSO ! 148: .Em Berkeley Pascal User's Manual ! 149: .br ! 150: .Xr pi 1 , ! 151: .Xr px 1 ! 152: .Sh DIAGNOSTICS ! 153: For a basic explanation do ! 154: .Pp ! 155: .Df I ! 156: .Nm pxp ! 157: .De ! 158: .Pp ! 159: Error diagnostics include ! 160: `No profile data in file' ! 161: with the ! 162: .Fl c ! 163: option if the ! 164: .Fl z ! 165: option was not enabled to ! 166: .Nm pi ; ! 167: `Not a Pascal system core file' ! 168: if the core is not from a ! 169: .Nm px ! 170: execution; ! 171: `Program and count data do not correspond' ! 172: if the program was changed after compilation, before profiling; ! 173: or if the wrong program is specified. ! 174: .Sh AUTHOR ! 175: William Joy ! 176: .Sh HISTORY ! 177: .Nm Pxp ! 178: appeared in 3 BSD. ! 179: .Sh BUGS ! 180: Does not place multiple statements per line.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.