A system and method for performing register renaming of source registers
in a processor having a variable advance instruction window for storing a
group of instructions to be executed by the processor, wherein a new
instruction is added to the variable advance instruction window when a
location becomes available. A tag is assigned to each instruction in the
variable advance instruction window. The tag of each instruction to leave
the window is assigned to the next new instruction to be added to it. The
results of instructions executed by the processor are stored in a temp
buffer according to their corresponding tags to avoid output and
anti-dependencies. The temp buffer therefore permits the processor to
execute instructions out of order and in parallel. Data dependency checks
for input dependencies are performed only for each new instruction added
to the variable advance instruction window and register renaming is
performed to avoid input dependencies.