GCC Middle and Back End API Reference
|
#include <tree-data-ref.h>
Data Fields | |
struct data_reference * | a |
struct data_reference * | b |
tree | are_dependent |
vec< subscript_p > | subscripts |
vec< loop_p > | loop_nest |
vec< lambda_vector > | dir_vects |
vec< lambda_vector > | dist_vects |
unsigned | inner_loop |
bool | reversed_p |
bool | affine_p |
bool | self_reference_p |
A data_dependence_relation represents a relation between two data_references A and B.
struct data_reference* data_dependence_relation::a |
bool data_dependence_relation::affine_p |
When the dependence relation is affine, it can be represented by a distance vector.
tree data_dependence_relation::are_dependent |
A "yes/no/maybe" field for the dependence relation: - when "ARE_DEPENDENT == NULL_TREE", there exist a dependence relation between A and B, and the description of this relation is given in the SUBSCRIPTS array, - when "ARE_DEPENDENT == chrec_known", there is no dependence and SUBSCRIPTS is empty, - when "ARE_DEPENDENT == chrec_dont_know", there may be a dependence, but the analyzer cannot be more specific.
struct data_reference* data_dependence_relation::b |
vec<lambda_vector> data_dependence_relation::dir_vects |
The classic direction vector.
vec<lambda_vector> data_dependence_relation::dist_vects |
The classic distance vector.
unsigned data_dependence_relation::inner_loop |
An index in loop_nest for the innermost loop that varies for this data dependence relation.
bool data_dependence_relation::reversed_p |
Is the dependence reversed with respect to the lexicographic order?
bool data_dependence_relation::self_reference_p |
Set to true when the dependence relation is on the same data access.
vec<subscript_p> data_dependence_relation::subscripts |
For each subscript in the dependence test, there is an element in this array. This is the attribute that labels the edge A->B of the data_dependence_relation.