+++ title = "Dependency constraints" author = "Yann Herklotz" tags = [] categories = [] backlinks = ["1c2a2"] forwardlinks = ["1c2a2b"] zettelid = "1c2a2a" +++ Data dependency constraints : If there is a data dependency between two variables, then one cannot be scheduled until the other has completed its execution. $$\forall (v_i, v_j) \in E_d, \mathit{sv}_{\mathit{end}} (v_i) -\mathit{sv}_{\mathit{beg}} (v_j) \le 0$$ Control dependency constraint : Control dependencies are also set up, so that the instructions in basic block $\mathit{bb}_j$ cannot be scheduled before instructions in $\mathit{bb}_i$. $$\forall (\mathit{bb}_i, \mathit{bb}_j) \in E_c, \mathit{sv}_{\mathit{end}}(\mathit{ssnk} (\mathit{bb}_i)) - \mathit{sv}_{\mathit{beg}} (\mathit{ssrc}(\mathit{bb}_j)) \le 0$$