22 lines
1.3 KiB
Markdown
22 lines
1.3 KiB
Markdown
#### Зависимость по управлению.
|
||
|
||
Определяют порядок инструкции с учетом инструкций перехода.
|
||
|
||
Каждая инструкция в программе кроме тех, которые находятся в самом первом базовом блоке программы, зависима по управлению от некоторого множества переходов.
|
||
|
||
Инструкцию, зависимую по управлению от перехода нельзя переместить перед переходом так, что ее исполнение более не будет управляться переходом.
|
||
|
||
Инструкцию, не зависимую по управлению от перехода нельзя переместить так, что ее исполнение будет управляться переходом (в часть then).
|
||
|
||
В некоторых случаях возможно обойти эти ограничения и сохранить корректное исполнение.
|
||
|
||
**Пример зависимости:**
|
||
```c
|
||
if p1 {
|
||
s1; // s1 зависима по управлению от p1
|
||
}
|
||
|
||
if p2 {
|
||
s2; // s2 зависима по управлению от p2, но не от p1
|
||
}
|
||
``` |