1. A register renaming method for performing out-of-order execution of a set of computer instructions adapted for use in a computer, the computer comprising an instruction execution unit with a temporary buffer accessed by read address ports and for storing instruction operands, the method comprising the steps of: (1) determining data dependencies between instructions in an instruction window to produce data dependency results; (2) storing, in a temporary buffer, out-of-order execution results in storage locations determined by the location of an instruction in said instruction window; (3) generating one or more tags to specify an address in the temporary buffer at which said out of order results are temporarily stored; and (4) outputting a tag in place of a register address for an operand of a first instruction if said data dependency results indicate that said first instruction is dependent on a previous instruction in said instruction window, wherein said tag represents an address of said operand in said temporary buffer.