A.4 Data Dependence Relations

For any two statements, S1 and S2 , one of the three types of data dependence relations may be true, or the statements may be data independent.

If some item X is in OUT(S1) and X is in IN(S2) and S2 is to use the value of X computed in S1 , then S2 is flow dependent on S1 , as in example 1 in Section A.2.

If some item X is in IN(S1) and X is in OUT(S2) , but S1 is to use the value of X before it is changed by S2 , then S2 is antidependent on S1 , as in example 2 in Section A.2.

If some item X is in OUT(S1) and X is in OUT(S2) and the value computed by S2 is to be stored after the value computed by S1 is stored, S2 is output dependent on S1 , as in example 3 in Section A.2.

Antidependence and output dependence relations are sometimes inadvertently caused by programmers' coding practices. These dependences can often be removed by more careful coding.


Previous Page Next Page Contents Index
Command-Line Qualifiers