You may be thinking of reordering but that could not happen in this situation.There are very strict rules regarding pipelining opcodes for execution.For reading about Intel Core i7 for example you may wish to visit:http://www.intel.com/design/corei7/documentation.htm

An x86 CPU will process all instructions in a serial fashion at all times. That is, even though modern x86 CPUs can reorder instructions and execute multiple instructions in parallel, they will only do so if it doesn't affect the result.In general a mov eax, can be executed in parallel with other instructions, but in this case, the add eax, eax has a dependency on the mov. Therefore the add will wait until the mov is completed.If the add used another register, eg add edx, edx, it would execute in parallel with the mov, since they are not dependent.