ROSE  0.9.6a
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
SDG::PDGEdge Struct Reference

Define the edge type of PDG. More...

#include <PDG.h>

Collaboration diagram for SDG::PDGEdge:

Public Types

enum  EdgeType {
  ControlDependence,
  DataDependence
}
 

Public Attributes

EdgeType type
 Indicate the type of this edge, whether control or data dependence. More...
 
VirtualCFG::EdgeConditionKind condition
 The condition attached to edges in the CDG. More...
 
SgExpressioncaseLabel
 If the condition is a case edge, this expression is the case value. More...
 
std::set< VarNamevarNames
 All variable names in data dependence of this edge. More...
 

Detailed Description

Define the edge type of PDG.

Note that in this structure, if its type is "ControlDependence", only the member "key" is used, else only the member "varNames" is used.

Definition at line 28 of file PDG.h.

Member Enumeration Documentation

Enumerator
ControlDependence 
DataDependence 

Definition at line 32 of file PDG.h.

Member Data Documentation

EdgeType SDG::PDGEdge::type

Indicate the type of this edge, whether control or data dependence.

Definition at line 39 of file PDG.h.

VirtualCFG::EdgeConditionKind SDG::PDGEdge::condition

The condition attached to edges in the CDG.

Definition at line 45 of file PDG.h.

SgExpression* SDG::PDGEdge::caseLabel

If the condition is a case edge, this expression is the case value.

Definition at line 48 of file PDG.h.

std::set<VarName> SDG::PDGEdge::varNames

All variable names in data dependence of this edge.

Definition at line 58 of file PDG.h.


The documentation for this struct was generated from the following file: