OpenScop  0.9.0
Data Fields
osl_dependence Struct Reference

#include <dependence.h>

Collaboration diagram for osl_dependence:
Collaboration graph
[legend]

Data Fields

int label_source
int label_target
int ref_source
int ref_target
int depth
int type
osl_relation_p domain
int source_nb_output_dims_domain
int source_nb_output_dims_access
int target_nb_output_dims_domain
int target_nb_output_dims_access
int source_nb_local_dims_domain
int source_nb_local_dims_access
int target_nb_local_dims_domain
int target_nb_local_dims_access
void * usr
struct osl_dependencenext
osl_relation_p ref_source_access_ptr
osl_relation_p ref_target_access_ptr
osl_statement_p stmt_source_ptr
osl_statement_p stmt_target_ptr

Detailed Description

osl_dependence structure: this structure contains all the informations about a data dependence, it is also a node of the linked list of all dependences of the dependence graph.

Dependence domain structure


/ source (output) | target (input) | local dims \ __ |_________________|_________________|_______________________________|_____________ / eq | output | output | output | output |ld dom |ld acc |ld dom |ld acc | | \ | in | domain | access | domain | access |source |source |target |target |parameters | 1 | ________________|____|________|________|________|________|_______|_______|_______|_______|___________|___| |Domain source | X | X : | : | X : | : | X | X | |________________|____|________:________|________:________|_______:_______|_______:_______|___________|___| |Domain target | X | : | X : | : | X : | X | X | |________________|____|________:________|________:________|_______:_______|_______:_______|___________|___| |Access source | X | X : X | : | : X | : | X | X | |________________|____|________:________|________:________|_______:_______|_______:_______|___________|___| |Access target | X | : | X : X | : | : X | X | X | |________________|____|________:________|________:________|_______:_______|_______:_______|___________|___| |Access equality | | : Id | : -Id | : | : | | | |________________|____|________:________|________:________|_______:_______|_______:_______|___________|___| | 0 : 0..depth-1 |Precedence | X | Id : | -Id : | : | : | | X | <--| 0|-1 : depth ________________|____|________:________|________:________|_______:_______|_______:_______|___________|___/

                     (1)      (2)      (3)      (4)      (5)     (6)     (7)     (8)

Definition at line 124 of file dependence.h.


Field Documentation

Position of source reference in the array access list.

Definition at line 127 of file dependence.h.

Referenced by osl_dependence_equal(), osl_dependence_idump(), osl_dependence_malloc(), osl_dependence_nclone(), osl_dependence_read_one_dep(), and osl_dependence_sprint().

Pointer to the source access.

Definition at line 166 of file dependence.h.

Referenced by osl_dependence_malloc().

Position of target reference in the array access list.

Definition at line 128 of file dependence.h.

Referenced by osl_dependence_equal(), osl_dependence_idump(), osl_dependence_malloc(), osl_dependence_nclone(), osl_dependence_read_one_dep(), and osl_dependence_sprint().

Pointer to the target access.

Definition at line 167 of file dependence.h.

Referenced by osl_dependence_malloc().

Pointer to source statement.

Definition at line 169 of file dependence.h.

Referenced by osl_dependence_idump(), osl_dependence_malloc(), and osl_dependence_nclone().

Pointer to target statement.

Definition at line 170 of file dependence.h.

Referenced by osl_dependence_idump(), osl_dependence_malloc(), and osl_dependence_nclone().

Dependence type: a dependence from source to target can be:

  • OSL_DEPENDENCE_UNSET if the dependence type is still not set,
  • OSL_DEPENDENCE_RAW if source writes M and target read M (flow-dependence),
  • OSL_DEPENDENCE_WAR if source reads M and target writes M (anti-dependence),
  • OSL_DEPENDENCE_WAW if source writes M and target writes M too (output-dependence)
  • OSL_DEPENDENCE_RAR if source reads M and target reads M too (input-dependence).

Definition at line 130 of file dependence.h.

Referenced by osl_dependence_equal(), osl_dependence_idump(), osl_dependence_malloc(), osl_dependence_nclone(), osl_dependence_read_one_dep(), and osl_dependence_sprint().

User field, for library users convenience.

Definition at line 158 of file dependence.h.

Referenced by osl_dependence_malloc().


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