1. A method for speculatively executing instructions in a microprocessor which commits results of non speculative instructions to at least one architected facility, said method comprising the steps of: determining the occurrence of a stall condition during the execution of said instructions; speculatively executing instructions during said stall condition; determining the validity of data utilized during said speculative execution; and retrieving valid data for use by said non speculative instructions upon removal of said stall condition.