Annotation of researchv10no/cmd/lcomp/lcomp.1, revision 1.1

1.1     ! root        1: .TH LCOMP 1
        !             2: .SH NAME
        !             3: lcomp, lprint \(mi line-by-line profiler
        !             4: .SH SYNOPSIS
        !             5: .B lcomp
        !             6: [ option ... ] file ...
        !             7: .PP
        !             8: .B lprint
        !             9: [ option ] [ file ... ]
        !            10: .SH DESCRIPTION
        !            11: .I Lcomp
        !            12: is used in place of
        !            13: .I cc (1)
        !            14: or
        !            15: .I f77 (1)
        !            16: to insert instruction-counting code into programs.
        !            17: It recognizes options whose initial letters are taken from the string
        !            18: .LR CwpDUIRdlNnz ,
        !            19: and accepts files whose names end in
        !            20: .LR .c ,
        !            21: .LR .f ,
        !            22: .LR .s ,
        !            23: or
        !            24: .LR .o .
        !            25: From each source file it derives a 
        !            26: .L .o
        !            27: file and a
        !            28: .L .sL
        !            29: file which
        !            30: .I lprint
        !            31: uses to correlate source lines with basic blocks.
        !            32: .PP
        !            33: Option
        !            34: .B -C
        !            35: declares that
        !            36: .L .c
        !            37: files (and
        !            38: .L .o
        !            39: files, if no source files are named)
        !            40: are C++ files.
        !            41: If the
        !            42: .B -c
        !            43: option is not present
        !            44: .I lcomp
        !            45: creates
        !            46: .FR a.out .
        !            47: Each time
        !            48: .F a.out
        !            49: is run statistics are added
        !            50: to a profiling file
        !            51: .FR prof.out .
        !            52: .PP
        !            53: .I Lprint
        !            54: produces on the standard output a listing (in the style of
        !            55: .IR pr (1))
        !            56: of the programs compiled by
        !            57: .I lcomp.
        !            58: Without arguments or files,
        !            59: each line of the listing is preceded by the number of times it was executed,
        !            60: as determined from the data in
        !            61: .FR prof.out .
        !            62: .I Lprint
        !            63: interprets the following options.
        !            64: .TP
        !            65: .B -a
        !            66: Detailed listing of every machine instruction and how often it was executed.
        !            67: .TP
        !            68: .B -b
        !            69: How often each basic block was executed.
        !            70: .TP
        !            71: .B -c
        !            72: Compress the
        !            73: .F prof.out
        !            74: file, which otherwise grows with every execution of
        !            75: .LR a.out .
        !            76: .TP
        !            77: .B -f
        !            78: Print summary information by function: instruction executions, number of
        !            79: invocations, source instructions, and number of instructions never executed.
        !            80: .TP
        !            81: .B -i
        !            82: Before each line of source print the number of machine instructions executed.
        !            83: .TP
        !            84: .B -p
        !            85: Before each line of source print the number of times the first basic block
        !            86: in that line was executed.
        !            87: .TP
        !            88: .B -s
        !            89: Summarize the counts by source file: instruction exectuions, source
        !            90: instructions, instructions never executed, basic block executions, total
        !            91: number of source basic blocks, and how many were never executed.
        !            92: .PP
        !            93: If any file names are given, the arguments
        !            94: .L abip
        !            95: apply only to them.
        !            96: If no options are given,
        !            97: .L -p
        !            98: is assumed.
        !            99: Any combination of options is allowed.
        !           100: .SH FILES
        !           101: .TF /usr/lib/nexit.o   
        !           102: .TP
        !           103: .F prof.out
        !           104: counts
        !           105: .TP
        !           106: .F *.sL
        !           107: for correlating with source
        !           108: .TP
        !           109: .F /usr/lib/bb
        !           110: for finding basic blocks and inserting counting code
        !           111: .TP
        !           112: .F /usr/lib/nexit.o
        !           113: for printing counts when
        !           114: .L a.out
        !           115: exits
        !           116: .SH "SEE ALSO"
        !           117: cc(1), f77(1)
        !           118: .SH BUGS
        !           119: A line in the source file may be in zero, one, or more basic
        !           120: blocks;
        !           121: the count given in the listing corresponds to some particular
        !           122: choice of the basic block to associate with the line.
        !           123: .br
        !           124: Processing the output of
        !           125: .IR yacc (1)
        !           126: without removing
        !           127: .L #line
        !           128: directives will produce unsatisfactory results.
        !           129: .br
        !           130: Option
        !           131: .B -C
        !           132: masks an option of
        !           133: .IR cc (1).

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.