1. A process comprising: receiving a load fencing instruction that separates memory load instructions into older loads and newer loads; allocating a load buffer in a memory ordering unit to the load fencing instruction; stalling dispatches of newer loads from a memory subsystem; retiring older loads from the memory subsystem; dispatching the load fencing instruction from the load buffer to a cache controller when all older loads from the memory subsystem are retired.