<?xml version="1.0" encoding='utf-8'?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="card1" title="Instruction scheduling - Page 4 - Wikipedia">
<p>
<a accesskey="1" href="page.php?w=Instruction_scheduling&amp;p=3">1.Previous</a><br />
<a accesskey="3" href="page.php?w=Instruction_scheduling&amp;p=5">3.Next</a>
</p>
<p>2. Instruction 1 must come first, or it will read the new value instead of the old.<br/>
# Write after Write (WAW or "Output"): Two instructions both write the same location. They must occur in their original order.</p>

<p>Technically, there is a fourth type, Read after Read (RAR or "Input"): Both instructions read the same location. Input dependence does not constrain the execution order of two statements, but it is useful in scalar replacement of array elements.</p>

<p>To make sure we respect the three types of dependencies, we construct</p><p>
<a accesskey="1" href="page.php?w=Instruction_scheduling&amp;p=3">1.Previous</a><br />
<a accesskey="3" href="page.php?w=Instruction_scheduling&amp;p=5">3.Next</a>
</p>

<do type="prev" label="Search">
        <go href="search.wml"/>
</do>

</card>
</wml>
