98   if (dependence != NULL) { 
 
   99     for (j=0; j<level; j++)
 
  100       fprintf(file, 
"|\t");
 
  101     fprintf(file, 
"+-- osl_dependence_p\n");
 
  103     for (j=0; j<level; j++)
 
  104     fprintf(file, 
"|\t");
 
  105     fprintf(file, 
"+-- NULL dependence\n");
 
  108   while (dependence != NULL) {
 
  110       for (j=0; j<level; j++)
 
  111         fprintf(file, 
"|\t");
 
  112       fprintf(file, 
"|   osl_dependence_p\n");
 
  118     for (j=0; j<=level+1; j++)
 
  119       fprintf(file, 
"|\t");
 
  123     for (j=0; j<=level; j++)
 
  124       fprintf(file, 
"|\t");
 
  125     fprintf(file, 
"Type: ");
 
  126     switch (dependence->
type) {
 
  127       case OSL_UNDEFINED : fprintf(file, 
"UNSET\n");        
break;
 
  128       case OSL_DEPENDENCE_RAW   : fprintf(file, 
"RAW (flow)\n");   
break;
 
  129       case OSL_DEPENDENCE_WAR   : fprintf(file, 
"WAR (anti)\n");   
break;
 
  130       case OSL_DEPENDENCE_WAW   : fprintf(file, 
"WAW (output)\n"); 
break;
 
  131       case OSL_DEPENDENCE_RAR   : fprintf(file, 
"RAR (input)\n");  
break;
 
  132       case OSL_DEPENDENCE_RAW_SCALPRIV   : 
 
  133                    fprintf(file, 
"RAW_SCALPRIV (scalar priv)\n");  
break;
 
  134       default : fprintf(file, 
"unknown\n"); 
break;
 
  138     for (j=0; j<=level+1; j++)
 
  139       fprintf(file, 
"|\t");
 
  143     for (j=0; j<=level; j++)
 
  144       fprintf(file, 
"|\t");
 
  145     fprintf(file, 
"Depth: %d\n", dependence->
depth);
 
  148     for (j=0; j<=level+1; j++)
 
  149       fprintf(file, 
"|\t");
 
  153     for (j=0; j<=level; j++)
 
  154       fprintf(file, 
"|\t");
 
  155     fprintf(file, 
"Ref source: %d, Ref target: %d\n",
 
  159     for (j=0; j<=level+1; j++)
 
  160       fprintf(file, 
"|\t");
 
  164     for (j=0; j<=level; j++)
 
  165       fprintf(file, 
"|\t");
 
  166     fprintf(file, 
"Statement label: %d\n", dependence->
label_source);
 
  173     for (j=0; j<=level; j++)
 
  174       fprintf(file, 
"|\t");
 
  175     fprintf(file, 
"Target label: %d\n", dependence->
label_target);
 
  182     for (j=0; j<=level; j++)
 
  183       fprintf(file, 
"|\t");
 
  184     fprintf(file, 
"%d %d %d %d %d %d %d %d\n",
 
  195     dependence = dependence->
next;
 
  198     if (dependence != NULL) {
 
  199       for (j=0; j<=level; j++)
 
  200         fprintf(file, 
"|\t");
 
  201       fprintf(file, 
"V\n");
 
  206   for (j=0; j<=level; j++)
 
  207     fprintf(file, 
"|\t");
 
  228   fprintf(file, 
"%s\n", 
string);
 
  242   int buffer_size = 2048;
 
  248   OSL_malloc(buffer, 
char*, buffer_size);
 
  251   for (tmp = dependence, nb_deps = 0; tmp; tmp = tmp->
next, ++nb_deps)
 
  253   snprintf(buff, OSL_MAX_STRING, 
"# Number of dependences\n%d\n", nb_deps);
 
  254   strcat(buffer, buff);
 
  257     for (tmp = dependence, nb_deps = 1; tmp; tmp = tmp->
next, ++nb_deps) {
 
  263         case OSL_DEPENDENCE_RAW:
 
  264           type = 
"RAW #(flow)";
 
  266         case OSL_DEPENDENCE_WAR:
 
  267           type = 
"WAR #(anti)";
 
  269         case OSL_DEPENDENCE_WAW:
 
  270           type = 
"WAW #(output)";
 
  272         case OSL_DEPENDENCE_RAR:
 
  273           type = 
"RAR #(input)";
 
  275         case OSL_DEPENDENCE_RAW_SCALPRIV:
 
  276           type = 
"RAW_SCALPRIV #(scalar priv)";
 
  284       snprintf(buff, OSL_MAX_STRING, 
"# Description of dependence %d\n" 
  286               "# From source statement id\n%d\n" 
  287               "# To target statement id\n%d\n" 
  289               "# From source access ref\n%d\n" 
  290               "# To target access ref\n%d\n" 
  291               "# Dependence domain\n",
 
  323   if (! strcmp(buffer, 
"RAW"))
 
  324     dep->
type = OSL_DEPENDENCE_RAW;
 
  325   else if (! strcmp(buffer, 
"RAR"))
 
  326     dep->
type = OSL_DEPENDENCE_RAR;
 
  327   else if (! strcmp(buffer, 
"WAR"))
 
  328     dep->
type = OSL_DEPENDENCE_WAR;
 
  329   else if (! strcmp(buffer, 
"WAW"))
 
  330     dep->
type = OSL_DEPENDENCE_WAW;
 
  331   else if (! strcmp(buffer, 
"RAW_SCALPRIV"))
 
  332     dep->
type = OSL_DEPENDENCE_RAW_SCALPRIV;
 
  375   if (*input == NULL) {
 
  376     OSL_debug(
"no dependence optional tag");
 
  385   for (i = 0; i < nbdeps; i++) {
 
  388       currdep = first = adep;
 
  390       currdep->
next = adep;
 
  391       currdep = currdep->
next;
 
  418   dependence->
depth      = OSL_UNDEFINED;
 
  419   dependence->
type       = OSL_UNDEFINED;
 
  424   dependence->
domain     = NULL;
 
  425   dependence->
next       = NULL;
 
  426   dependence->
usr              = NULL;
 
  451   while (dependence != NULL) {
 
  452     next = dependence->
next;
 
  474   int first = 1, i = 0;
 
  477   while ((dep != NULL) && ((n == -1) || (i < n))) {
 
  481     node->depth = dep->
depth;
 
  482     node->type = dep->
type;
 
  505       previous->
next = node;
 
  506       previous = previous->
next;
 
  543   if ((d1->
next != NULL && d2->
next == NULL) ||
 
  544       (d1->
next == NULL && d2->
next != NULL))
 
  547   if (d1->
next != NULL && d2->
next != NULL)
 
  602   if (dependence != NULL) {
 
  603     if (*start == NULL) {
 
  607       (*now)->
next = dependence;
 
  611     while ((*now)->next != NULL)
 
  627   while (dep != NULL) {
 
  644   OSL_strdup(interface->URI, OSL_URI_DEPENDENCE);
 
osl_dependence_p osl_dependence_malloc()
void osl_relation_free(osl_relation_p relation)
int target_nb_output_dims_access
void osl_dependence_print(FILE *file, osl_dependence_p dependence)
void *(* osl_clone_f)(void *)
osl_statement_p stmt_source_ptr
void osl_dependence_add(osl_dependence_p *start, osl_dependence_p *now, osl_dependence_p dependence)
void osl_dependence_free(osl_dependence_p dependence)
int source_nb_local_dims_domain
osl_dependence_p osl_dependence_nclone(osl_dependence_p dep, int n)
osl_interface_p osl_interface_malloc()
osl_interface_p osl_dependence_interface()
struct osl_dependence * next
char * osl_relation_sprint(osl_relation_p relation)
int osl_dependence_equal(osl_dependence_p d1, osl_dependence_p d2)
void *(* osl_sread_f)(char **)
osl_statement_p stmt_target_ptr
int target_nb_output_dims_domain
osl_dependence_p osl_dependence_psread(char **input, int precision)
void osl_util_safe_strcat(char **dst, char *src, int *hwm)
int osl_relation_equal(osl_relation_p r1, osl_relation_p r2)
void osl_relation_idump(FILE *file, osl_relation_p relation, int level)
int target_nb_local_dims_access
int osl_util_get_precision()
osl_dependence_p osl_dependence_clone(osl_dependence_p dep)
void(* osl_idump_f)(FILE *, void *, int)
int osl_nb_dependences(osl_dependence_p deps)
int osl_util_read_int(FILE *file, char **str)
int target_nb_local_dims_domain
char *(* osl_sprint_f)(void *)
char * osl_util_read_string(FILE *file, char **str)
osl_relation_p ref_source_access_ptr
void osl_dependence_dump(FILE *file, osl_dependence_p dependence)
osl_relation_p osl_relation_clone(osl_relation_p relation)
int source_nb_output_dims_access
char * osl_dependence_sprint(osl_dependence_p dependence)
int(* osl_equal_f)(void *, void *)
int source_nb_local_dims_access
osl_relation_p osl_relation_psread(char **input, int precision)
osl_relation_p ref_target_access_ptr
void osl_statement_idump(FILE *file, osl_statement_p statement, int level)
int source_nb_output_dims_domain
static osl_dependence_p osl_dependence_read_one_dep(char **input, int precision)
struct osl_statement * next
void(* osl_free_f)(void *)
void osl_dependence_idump(FILE *file, osl_dependence_p dependence, int level)
osl_dependence_p osl_dependence_sread(char **input)