One embodiment of the present invention provides a system for facilitating
speculative store operations in a multiprocessor system. This system
operates by maintaining a record of speculative store operations that are
in process at an L2 cache in the multiprocessor system, wherein a
speculative store operation is a store operation that is speculatively
executed before a preceding store operation has returned. Upon receiving a
load operation at the L2 cache from an L1 cache, the system examines the
record of speculative store operations to determine if there exists a
matching speculative store operation that is directed to the same location
that the load operation is directed to. If so, the system ensures that the
load operation takes place after the matching speculative store operation
completes.
Uma incorporação da invenção atual fornece um sistema facilitando operações speculative da loja em um sistema do multiprocessor. Este sistema opera-se mantendo um registro das operações speculative da loja que estão no processo em um esconderijo L2 no sistema do multiprocessor, wherein uma operação speculative da loja é uma operação da loja que seja executada speculatively antes que uma operação precedente da loja retorne. Em cima de receber uma operação da carga no esconderijo L2 de um esconderijo L1, o sistema examina o registro de operações speculative da loja para determinar se existir uma operação speculative combinando da loja que esteja dirigida à mesma posição que a operação da carga está dirigida a. Se assim, o sistema assegura-se de que a operação da carga ocorra depois que a operação speculative combinando da loja termina.