Hardware-based instruction reordering always preserves the behaviour of the original program. (Assuming the original program is valid.)
For example, an Intel CPU won't reorder `x += 1` and `x *= 2`.