Store-set Memory Disambiguator(Chrysos & Emer - 1998)
A store set is the set of all stores a load has been observed to be dependent on.
Initially employ blind speculation for loads.
Upon memory order violation create a store set for the offending load and store.
Next time the same load is encountered make the load wait until the store issues.
Store set may contain multiple stores: chain the stores and make load dependant upon the last store.