Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ pixie(1) — sysv — mips UMIPS RISC/os 5.01

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

prof(1)

pixstats(1)



PIXIE(1-SysV)       RISC/os Reference Manual        PIXIE(1-SysV)



NAME
     pixie - add profiling code to a program

SYNOPSIS
     pixie in_prog_name [ options ]

DESCRIPTION
     pixie reads an executable program, partitions it into basic
     blocks, and writes an equivalent program containing addi-
     tional 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) and pix-
     stats(1) can analyze these files and produce a listing of
     profiling data.

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

     -[no]branchcounts
          -branchcounts inserts extra counters to track whether
          each branch instruction is taken or not taken.  When
          this option is used, pixstats will automatically print
          more statistics. Default: -nobranchcounts.

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

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

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

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



                        Printed 11/19/92                   Page 1





PIXIE(1-SysV)       RISC/os Reference Manual        PIXIE(1-SysV)



     -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".

     -bbcounts name
          Specifies the full filename of the basic block counts
          file. Default: objfile.Counts.

     -[no]pids
          Generates unique ".Counts" filenames.  Useful for
          processes that fork.  Default:  -nopids.

     -mips1
          Use the MIPS1 instruction set (R2000, R3000) for output
          executable.  This is the default.

     -mips2
          Use the MIPS2 instruction set (a superset of MIPS1) for
          output executable.

SEE ALSO
     prof(1), pixstats(1).
     RISCompiler and C 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.

     Programs that call vfork() will not work pixified because
     the child process will modify the parent state required for
     pixie operation.  Use fork() instead.

     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.

















 Page 2                 Printed 11/19/92



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