Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pixie(1) — 4D1 2.0

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

prof(1)



     PIXIE(1)                                                 PIXIE(1)



     NAME
          pixie - add profiling code to a program

     SYNOPSIS
          pixie in_prog_name -o out_prog_name [ options ]

     DESCRIPTION
          Pixie reads an executable program, partitions it into basic
          blocks, and writes an equivalent program containing
          additional code that counts the execution of each basic
          block. (A basic block is a region of the program that can be
          entered only at the beginning and exited only at the end).
          Pixie also generates a file containing the address of each
          of the basic blocks.

          When you run the pixie-generated program, it will (provided
          it terminates normally or via a call to exit(2)) generate a
          file containing the basic block counts. The name of the file
          is that of the original program with any leading directory
          names removed and ".Counts" appended.  Prof(1) can analyze
          these files and produce a listing of profiling data.

          You must specify an input program name and an output program
          name.

          -bbaddrs name
               Specify a name for the file of basic block addresses.
               Default is to remove any leading directory names from
               the in_prog_name and append ".Addrs".

          -[no]quiet
               [Permits] or suppresses messages summarizing the
               binary-to-binary translation process. Default:
               -noquiet.

          -[no]dwops
               Controls translation of double-word load/store
               instructions so that binaries using these instructions
               can be run on old processors.  Default:  -dwops (don't
               translate).

          -[no]idtrace
               [Disable] or enable tracing of instruction and data
               memory references.  -idtrace is equivalent to using
               both -itrace and -dtrace together.  Default:
               -noidtrace

          -[no]itrace
               [Disable] or enable tracing of instruction memory
               references.  Default:  -noitrace

          -[no]dtrace



     Page 1                                        (last mod. 8/20/87)





     PIXIE(1)                                                 PIXIE(1)



               [Disable] or enable tracing of data memory references.
               For the moment, -dtrace requires -itrace.  Default:
               -nodtrace

          -[no]oldtrace
               [Disable] or enable the old memory reference trace
               format.  Default:  -oldtrace.

          -idtracesample number
               Record only 1 out of every number memory reference
               chunks.  (This feature not yet implemented.)

          -idtracefile number
               Specify a UNIX file descriptor number for the trace
               output file.  Default:  19.

     SEE ALSO
          prof(1), The MIPS Languages Programmer's Guide.

     BUGS
          The handler function address to the signal system calls is
          not translated, and so programs that receive signals will
          not work pixified.

          Pixified code is substantially larger than the original
          code.  Conditional branches that used to fit in the 16-bit
          branch displacement field may no longer fit, generating a
          pixie error.

     ORIGIN
          MIPS Computer Systems
























     Page 2                                        (last mod. 8/20/87)



Typewritten Software • bear@typewritten.org • Edmonds, WA 98026