1. A multi-processor system comprising: a processor having a processor pipeline that executes program instructions with data from speculative fills that are provided in response to source requests; and a non-retired store cache that retains non-retired store data based on program instructions to store data into a data cache associated with the processor, the non-retired store data being written to the data cache if data of a speculative fill associated with the non-retired store data is determined to be coherent.