GCC Middle and Back End API Reference
scop Struct Reference

#include <graphite-poly.h>

Collaboration diagram for scop:

Data Fields

void * region
graphite_dim_t nb_params
vec< poly_bb_pbbs
lst_p original_schedule
lst_p transformed_schedule
lst_p saved_schedule
isl_set * context
isl_ctx * ctx
isl_union_map * must_raw
isl_union_map * may_raw
isl_union_map * must_raw_no_source
isl_union_map * may_raw_no_source
isl_union_map * must_war
isl_union_map * may_war
isl_union_map * must_war_no_source
isl_union_map * may_war_no_source
isl_union_map * must_waw
isl_union_map * may_waw
isl_union_map * must_waw_no_source
isl_union_map * may_waw_no_source
bool poly_scop_p

Detailed Description

   A SCOP is a Static Control Part of the program, simple enough to be
   represented in polyhedral form.  

Field Documentation

vec<poly_bb_p> scop::bbs
     All the basic blocks in this scop that contain memory references
     and that will be represented as statements in the polyhedral
     representation.  

Referenced by getScheduleMap(), and scop_get_domains().

isl_set* scop::context
@verbatim 

The context describes known restrictions concerning the parameters and relations in between the parameters.

void f (int8_t a, uint_16_t b) { c = 2 a + b; ... }

Here we can add these restrictions to the context:

-128 >= a >= 127 0 >= b >= 65,535 c = 2a + b

Referenced by scop_get_domains(), and set_index().

isl_ctx* scop::ctx
     The context used internally by ISL.  
isl_union_map * scop::may_raw

Referenced by scop_get_dependences().

isl_union_map * scop::may_raw_no_source

Referenced by scop_get_dependences().

isl_union_map * scop::may_war

Referenced by scop_get_dependences().

isl_union_map * scop::may_war_no_source

Referenced by scop_get_dependences().

isl_union_map * scop::may_waw

Referenced by scop_get_dependences().

isl_union_map * scop::may_waw_no_source

Referenced by scop_get_dependences().

isl_union_map* scop::must_raw
     The original dependence relations:
     RAW are read after write dependences,
     WAR are write after read dependences,
     WAW are write after write dependences.  

Referenced by scop_get_dependences().

isl_union_map * scop::must_raw_no_source

Referenced by scop_get_dependences().

isl_union_map * scop::must_war

Referenced by scop_get_dependences().

isl_union_map * scop::must_war_no_source

Referenced by scop_get_dependences().

isl_union_map * scop::must_waw

Referenced by scop_get_dependences().

isl_union_map * scop::must_waw_no_source

Referenced by scop_get_dependences().

graphite_dim_t scop::nb_params
     Number of parameters in SCoP.  
lst_p scop::original_schedule
     Original, transformed and saved schedules.  
bool scop::poly_scop_p
     True when the scop has been converted to its polyhedral
     representation.  
void* scop::region
     A SCOP is defined as a SESE region.  
lst_p scop::saved_schedule
lst_p scop::transformed_schedule

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