문제

I want know what's the meaning of a curve or arc in PDG. Which are data dependence and which are control dependence and so on.

enter image description here

도움이 되었습니까?

해결책

The color of the edge represent the data dependencies : blue for yes, black otherwise. The shape of the arrow represent the control dependencies : circle for yes, normal arrow otherwise. The kind of the line represent the address dependencies : dotted for yes, plain otherwise.

Address dependencies are like data dependencies, but for the right part of an assignment. For instance, the statement :

*p = c ? a : b;

has a control dependency on c, data dependencies on a and b, and address dependencies on &p and p.

Well, this is not exactly like this in the real PDG since the statement is decomposed by Frama-C in :

if (c) { *p = a; } else { *p = b; }

But this is the idea.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top