Data dependency: Difference between revisions

Content deleted Content added
Rraimii (talk | contribs)
Previous version implied that fixing the WAR dependency was introducing a new RAW dependency. That is untrue. There was already a RAW dependency in the setup of the example.
Rraimii (talk | contribs)
For clarity, added reminder that the RAW dependency cannot be removed.
 
Line 101:
A new variable, B2, has been declared as a copy of B in a new instruction, instruction N. The anti-dependency between 2 and 3 has been removed, meaning that these instructions may now be executed in parallel.
 
Note that there is still a read-after-write dependency: instruction 2 is truly dependent on instruction N, which is truly dependent upon instruction 1. This dependency existed in the original version, where instruction 2 was truly dependent on instruction 1. This dependency cannot be safely removed.<ref name="architecture"/>
 
=== Output dependency (write-after-write) ===