
DISCLAMER:
        THIS IS A BETA VERSION!
        Although this program was written using information obtained from
        Intel, Intel cannot be held responsible in any way for its use.
        The author has tried to produce a useful program, but cannot be
        held responsible in any way for its use. (Please let me know if
        any bugs are found...)


Intel Pentium(tm) Source Code Analyser.
---------------------------------------

This archive is stage 1 of a 2 stage project. The aim is to produce a 
program that will take as input assembly source code and produce an output
showing the amount of parallism in the source code (meaning instructions
that can be issued, and execute, as a pair). The Pentium processor shows
its true power when it is allowed to execute two instructions at the same
time. A 133Mhz Pentium can execute a >theoretical< 266 Mips! ;)

Stage 1 analyses instructions on their own, indicating the type of 
instruction in respect to pairing. Stage 2 (almost finished) will evaluate 
flow dependance, register dependance, etc, showing the execution flow of the 
two parallel pipes (the U pipe and the V pipe) as well as the floating point 
pipeline.

An invaluable source of further information can be obtained from Intel's
forum on Compuserve. The file OPT32.DOC is a 'must read' for developers
serious about extracting maximum potential from the Pentium.

An instruction can be one of the following type:
        NP =  Not pairable, issued to the U pipe.
        PU =  Pairable only if issued to the U pipe.
        PV =  Pairable only if issued to the V pipe.
        UV =  Pairable in either the U or V pipe.
        FX =  Floating point instruction, pairable only with FXCH
        EX =  My own code for the FXCH instruction.

NOTE: Two instructions may both be UV and still not execute at the same time.
      See the aforementioned OPT32.DOC for further information.

Using The Program
-----------------
Simple. Type PAIR <filename.extension>.
Your source code will NOT be altered.
Output is to <filename.PAI>. 

If your source code is called FASTCODE.ASM then type PAIR FASTCODE.ASM 
Output will be in FASTCODE.PAI

Keith Harrison, CIS:100431,1675
11th August 1994.

-----------------------------------------------------------------------------

NB. Included is an early version of Stage 2. An additional file is output
showing the instructions being issued to the U & V pipes. The pipeline 
file output file has an extension of .PIP

-----------------------------------------------------------------------------


