Before revision: If the processor fetches a pointer to some data after this reordering , it might not fetch the data itself but use stale data which it has already cached and not yet invalidated.
After revision: If the processor fetches a pointer to some data and then the datafirst , it might not fetch the data itself but use stale data which it has already cached and not yet invalidated.