GCC Middle and Back End API Reference
graphite-poly.h File Reference

Go to the source code of this file.

Data Structures

struct  poly_dr
struct  poly_scattering
struct  poly_bb
struct  lst
struct  scop

Typedefs

typedef struct poly_drpoly_dr_p
typedef struct poly_bbpoly_bb_p
typedef struct scopscop_p
typedef unsigned graphite_dim_t
typedef struct poly_scatteringpoly_scattering_p
typedef struct lstlst_p

Enumerations

enum  poly_dr_type { PDR_READ, PDR_WRITE, PDR_MAY_WRITE }

Functions

static graphite_dim_t pbb_dim_iter_domain (const struct poly_bb *)
static graphite_dim_t pbb_nb_params (const struct poly_bb *)
static graphite_dim_t scop_nb_params (scop_p)
void new_poly_dr (poly_bb_p, int, enum poly_dr_type, void *, graphite_dim_t, isl_map *, isl_set *)
void free_poly_dr (poly_dr_p)
void debug_pdr (poly_dr_p, int)
void print_pdr (FILE *, poly_dr_p, int)
static scop_p pdr_scop (poly_dr_p pdr)
static graphite_dim_t pdr_dim_iter_domain ()
static graphite_dim_t pdr_nb_params ()
static graphite_dim_t pdr_alias_set_dim ()
static graphite_dim_t pdr_subscript_dim ()
static graphite_dim_t pdr_iterator_dim ()
static graphite_dim_t pdr_parameter_dim ()
static bool pdr_read_p ()
static bool pdr_write_p ()
static bool pdr_may_write_p ()
static bool same_pdr_p ()
poly_bb_p new_poly_bb (scop_p, void *)
void free_poly_bb (poly_bb_p)
void debug_loop_vec (poly_bb_p)
void schedule_to_scattering (poly_bb_p, int)
void print_pbb_domain (FILE *, poly_bb_p, int)
void print_pbb (FILE *, poly_bb_p, int)
void print_scop_context (FILE *, scop_p, int)
void print_scop (FILE *, scop_p, int)
void print_cloog (FILE *, scop_p, int)
void debug_pbb_domain (poly_bb_p, int)
void debug_pbb (poly_bb_p, int)
void print_pdrs (FILE *, poly_bb_p, int)
void debug_pdrs (poly_bb_p, int)
void debug_scop_context (scop_p, int)
void debug_scop (scop_p, int)
void debug_cloog (scop_p, int)
void print_scop_params (FILE *, scop_p, int)
void debug_scop_params (scop_p, int)
void print_iteration_domain (FILE *, poly_bb_p, int)
void print_iteration_domains (FILE *, scop_p, int)
void debug_iteration_domain (poly_bb_p, int)
void debug_iteration_domains (scop_p, int)
void print_isl_set (FILE *, isl_set *)
void print_isl_map (FILE *, isl_map *)
void print_isl_aff (FILE *, isl_aff *)
void print_isl_constraint (FILE *, isl_constraint *)
void debug_isl_set (isl_set *)
void debug_isl_map (isl_map *)
void debug_isl_aff (isl_aff *)
void debug_isl_constraint (isl_constraint *)
int scop_do_interchange (scop_p)
int scop_do_strip_mine (scop_p, int)
bool scop_do_block (scop_p)
bool flatten_all_loops (scop_p)
bool optimize_isl (scop_p)
void pbb_number_of_iterations_at_time (poly_bb_p, graphite_dim_t, mpz_t)
void debug_gmp_value (mpz_t)
static int number_of_write_pdrs ()
static gimple_bb_p gbb_from_bb ()
static poly_bb_p pbb_from_bb ()
static basic_block pbb_bb ()
static int pbb_index ()
static loop_p pbb_loop ()
static scop_p pdr_scop ()
static void pbb_set_black_box ()
static graphite_dim_t pbb_dim_iter_domain ()
static graphite_dim_t pbb_nb_params ()
static graphite_dim_t pbb_nb_scattering_orig ()
static graphite_dim_t pbb_nb_scattering_transform ()
static graphite_dim_t pbb_nb_dynamic_scattering_transform ()
static graphite_dim_t pbb_nb_local_vars ()
static graphite_dim_t pbb_iterator_dim ()
static graphite_dim_t pbb_parameter_dim ()
static graphite_dim_t psco_scattering_dim ()
static graphite_dim_t psct_scattering_dim ()
static graphite_dim_t psct_local_var_dim ()
static graphite_dim_t psco_iterator_dim ()
static graphite_dim_t psct_iterator_dim ()
static graphite_dim_t psco_parameter_dim ()
static graphite_dim_t psct_parameter_dim ()
static graphite_dim_t psct_dynamic_dim ()
static graphite_dim_t psct_static_dim ()
static graphite_dim_t psct_add_local_variable ()
void scop_to_lst (scop_p)
void print_lst (FILE *, lst_p, int)
void debug_lst (lst_p)
void dot_lst (lst_p)
static lst_p new_lst_loop ()
static lst_p new_lst_stmt ()
static void free_lst ()
static lst_p copy_lst ()
static void lst_add_loop_under_loop ()
static int lst_depth ()
static int lst_dewey_number ()
static int lst_dewey_number_at_depth ()
static lst_p lst_pred ()
static lst_p lst_succ ()
static lst_p lst_find_pbb ()
static lst_p find_lst_loop ()
static lst_p lst_find_first_pbb ()
static bool lst_empty_p ()
static lst_p lst_find_last_pbb ()
static bool lst_contains_p ()
static bool lst_contains_pbb ()
static lst_p lst_create_nest ()
static void lst_remove_from_sequence ()
static void lst_remove_loop_and_inline_stmts_in_loop_father ()
static void lst_niter_for_loop ()
static void pbb_update_scattering ()
static void lst_update_scattering_under ()
static void lst_update_scattering ()
static void lst_insert_in_sequence ()
static void lst_replace ()
static lst_p lst_substitute_3 ()
static void lst_distribute_lst ()
static bool lst_remove_all_before_including_pbb ()
static bool lst_remove_all_before_excluding_pbb ()
scop_p new_scop (void *)
void free_scop (scop_p)
void free_scops (vec< scop_p >)
void print_generated_program (FILE *, scop_p)
void debug_generated_program (scop_p)
void print_scattering_function (FILE *, poly_bb_p, int)
void print_scattering_functions (FILE *, scop_p, int)
void debug_scattering_function (poly_bb_p, int)
void debug_scattering_functions (scop_p, int)
int scop_max_loop_depth (scop_p)
int unify_scattering_dimensions (scop_p)
bool apply_poly_transforms (scop_p)
bool graphite_legal_transform (scop_p)
void cloog_checksum (scop_p)
static void scop_set_region ()
static graphite_dim_t scop_nb_params ()
static void scop_set_nb_params ()
static poly_scattering_p poly_scattering_new ()
static void poly_scattering_free ()
static poly_scattering_p poly_scattering_copy ()
static void store_scattering_pbb ()
static void store_lst_schedule ()
static void restore_lst_schedule ()
static void store_scattering ()
static void restore_scattering_pbb ()
static void restore_scattering ()
isl_map * reverse_loop_at_level (poly_bb_p, int)
isl_union_map * reverse_loop_for_pbbs (scop_p, vec< poly_bb_p >, int)
__isl_give isl_union_map * extend_schedule (__isl_take isl_union_map *)
void compute_deps (scop_p scop, vec< poly_bb_p > pbbs, 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)

Typedef Documentation

typedef unsigned graphite_dim_t
typedef struct lst* lst_p
typedef struct poly_bb* poly_bb_p
typedef struct poly_dr* poly_dr_p
typedef struct scop* scop_p

Enumeration Type Documentation

   A data reference can write or read some memory or we
   just know it may write some memory.  
Enumerator:
PDR_READ 
PDR_WRITE 
     PDR_MAY_READs are represented using PDR_READS.  This does not
     limit the expressiveness.  
PDR_MAY_WRITE 

Function Documentation

bool apply_poly_transforms ( scop_p  )
void cloog_checksum ( scop_p  )
void compute_deps ( scop_p  scop,
vec< poly_bb_p pbbs,
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 
)
   Compute the original data dependences in SCOP for all the reads and
   writes in PBBS.  

Referenced by scop_get_dependences().

static lst_p copy_lst ( )
inlinestatic
   Returns a copy of LST.  

References lst_depth(), lst_dewey_number(), and lst_dewey_number_at_depth().

void debug_cloog ( scop_p  ,
int   
)
void debug_generated_program ( scop_p  )
void debug_gmp_value ( mpz_t  )
void debug_isl_aff ( isl_aff *  )
void debug_isl_constraint ( isl_constraint *  )
void debug_isl_map ( isl_map *  )
void debug_isl_set ( isl_set *  )
void debug_iteration_domain ( poly_bb_p  ,
int   
)
void debug_iteration_domains ( scop_p  ,
int   
)
void debug_loop_vec ( poly_bb_p  )
void debug_lst ( lst_p  )
void debug_pbb ( poly_bb_p  ,
int   
)
void debug_pbb_domain ( poly_bb_p  ,
int   
)
void debug_pdr ( poly_dr_p  ,
int   
)
void debug_pdrs ( poly_bb_p  ,
int   
)
void debug_scattering_function ( poly_bb_p  ,
int   
)
void debug_scattering_functions ( scop_p  ,
int   
)
void debug_scop ( scop_p  ,
int   
)
void debug_scop_context ( scop_p  ,
int   
)
void debug_scop_params ( scop_p  ,
int   
)
void dot_lst ( lst_p  )
__isl_give isl_union_map* extend_schedule ( __isl_take isl_union_map *  )
static lst_p find_lst_loop ( )
inlinestatic
   Return the LST node corresponding to the loop around STMT at depth
   LOOP_DEPTH.  
bool flatten_all_loops ( scop_p  )
static void free_lst ( )
inlinestatic
   Frees the memory used by LST.  

Referenced by lst_insert_in_sequence(), lst_perfect_nestify(), and lst_replace().

void free_poly_bb ( poly_bb_p  )
void free_poly_dr ( poly_dr_p  )
void free_scop ( scop_p  )
void free_scops ( vec< scop_p )
static gimple_bb_p gbb_from_bb ( )
inlinestatic
   Returns a gimple_bb from BB.  
bool graphite_legal_transform ( scop_p  )
static void lst_add_loop_under_loop ( )
inlinestatic
   Adds a new loop under the loop LST.  

Referenced by lst_do_strip_mine().

static bool lst_contains_p ( )
inlinestatic
   Returns true if LOOP contains LST, in other words, if LST is nested
   in LOOP.  
static bool lst_contains_pbb ( )
inlinestatic
   Returns true if LOOP contains PBB, in other words, if PBB is nested
   in LOOP.  
static lst_p lst_create_nest ( )
inlinestatic
   Creates a loop nest of depth NB_LOOPS containing LST.  

Referenced by lst_find_first_pbb().

static int lst_depth ( )
inlinestatic
   Returns the loop depth of LST.  
     The depth of the outermost "fake" loop is -1.  This outermost
     loop does not have a loop father and it is just a container, as
     in the loop representation of GCC.  

References lst_dewey_number().

Referenced by copy_lst(), lst_do_strip_mine(), and lst_indent_to().

static int lst_dewey_number ( )
inlinestatic
static int lst_dewey_number_at_depth ( )
inlinestatic
   Returns the Dewey number of LST at depth DEPTH.  

Referenced by copy_lst().

static void lst_distribute_lst ( )
inlinestatic
   Moves LST before LOOP if BEFORE is true, and after the LOOP if
   BEFORE is false.  
static bool lst_empty_p ( )
inlinestatic
   Returns true when LST is a loop that does not contain
   statements.  

Referenced by pbb_update_scattering().

static lst_p lst_find_first_pbb ( )
inlinestatic
   Return the first LST representing a PBB statement in LST.  

References lst_create_nest(), and new_lst_loop().

static lst_p lst_find_last_pbb ( )
inlinestatic
   Return the last LST representing a PBB statement in LST.  

References lst_dewey_number().

Referenced by lst_find_pbb().

static lst_p lst_find_pbb ( )
inlinestatic
   Return the LST node corresponding to PBB.  

References last, and lst_find_last_pbb().

Referenced by lst_dewey_number().

static void lst_insert_in_sequence ( )
inlinestatic
   Inserts LST1 before LST2 if BEFORE is true; inserts LST1 after LST2
   if BEFORE is false.  
     Do not insert empty loops.  

References free_lst(), and lst_remove_all_before_including_pbb().

static void lst_niter_for_loop ( )
inlinestatic
   Sets NITER to the upper bound approximation of the number of
   iterations of loop LST.  
static lst_p lst_pred ( )
inlinestatic
   Returns the predecessor of LST in the sequence of its loop father.
   Returns NULL if LST is the first statement in the sequence.  
static bool lst_remove_all_before_excluding_pbb ( )
inlinestatic
   Removes from LOOP all the statements before/after and excluding PBB
   if BEFORE is true/false; Returns the negation of BEFORE when the
   statement PBB has been found.  
static bool lst_remove_all_before_including_pbb ( )
inlinestatic
   Removes from LOOP all the statements before/after and including PBB
   if BEFORE is true/false.  Returns the negation of BEFORE when the
   statement PBB has been found.  

Referenced by lst_insert_in_sequence().

static void lst_remove_from_sequence ( )
inlinestatic
   Removes LST from the sequence of statements of its loop father.  

References lst_dewey_number().

static void lst_remove_loop_and_inline_stmts_in_loop_father ( )
inlinestatic
   Removes the loop LST and inline its body in the father loop.  
static void lst_replace ( )
inlinestatic
   Replaces LST1 with LST2.  

References free_lst().

static lst_p lst_substitute_3 ( )
inlinestatic
   Returns a copy of ROOT where LST has been replaced by a copy of the
   LSTs A B C in this sequence.  
static lst_p lst_succ ( )
inlinestatic
   Returns the successor of LST in the sequence of its loop father.
   Returns NULL if there is none.  
static void lst_update_scattering ( )
inlinestatic
   Updates the all the scattering levels of all the PBBs under
   LST.  
static void lst_update_scattering_under ( )
inlinestatic
   Updates the scattering of all the PBBs under LST to be at the DEWEY
   number in the loop at depth LEVEL.  
static lst_p new_lst_loop ( )
inlinestatic
   Creates a new LST loop with SEQ.  

Referenced by lst_find_first_pbb(), and pbb_number_of_iterations_at_time().

static lst_p new_lst_stmt ( )
inlinestatic
   Creates a new LST statement with PBB.  

Referenced by pbb_number_of_iterations_at_time().

poly_bb_p new_poly_bb ( scop_p  ,
void *   
)
void new_poly_dr ( poly_bb_p  pbb,
int  dr_base_object_set,
enum poly_dr_type  type,
void *  cdr,
graphite_dim_t  nb_subscripts,
isl_map *  acc,
isl_set *  extent 
)
   Create a new polyhedral data reference and add it to PBB.  It is
   defined by its ACCESSES, its TYPE, and the number of subscripts
   NB_SUBSCRIPTS.  
scop_p new_scop ( void *  )
static int number_of_write_pdrs ( )
inlinestatic
   Return the number of write data references in PBB.  
bool optimize_isl ( scop_p  )
static basic_block pbb_bb ( )
inlinestatic
   The basic block of the PBB.  

References poly_bb::domain.

static graphite_dim_t pbb_dim_iter_domain ( )
inlinestatic
   The number of loops around PBB: the dimension of the iteration
   domain.  
static poly_bb_p pbb_from_bb ( )
inlinestatic
   The poly_bb of the BB.  

Referenced by translate_scalar_reduction_to_array_for_stmt().

static int pbb_index ( )
inlinestatic
   The index of the PBB.  

References scop_nb_params().

Referenced by print_scattering_function_1(), and print_scop().

static graphite_dim_t pbb_iterator_dim ( )
inlinestatic
   The dimension in the domain of PBB containing the iterator ITER.  

References pbb_dim_iter_domain(), and pbb_nb_scattering_orig().

static loop_p pbb_loop ( )
inlinestatic
   The loop of the PBB.  
static graphite_dim_t pbb_nb_dynamic_scattering_transform ( )
inlinestatic
   The number of dynamic scattering dimensions in PBB.  
     This function requires the 2d + 1 scattering format to be
     invariant during all transformations.  

References pbb_nb_scattering_transform().

static graphite_dim_t pbb_nb_local_vars ( )
inlinestatic
   Returns the number of local variables used in the transformed
   scattering polyhedron of PBB.  
     For now we do not have any local variables, as we do not do strip
     mining for example.  

References pbb_nb_scattering_transform().

Referenced by pbb_parameter_dim(), print_scattering_function_1(), and psct_scattering_dim().

static graphite_dim_t pbb_nb_params ( const struct poly_bb )
inlinestatic
static graphite_dim_t pbb_nb_params ( )
inlinestatic
   The number of params defined in PBB.  
static graphite_dim_t pbb_nb_scattering_orig ( )
inlinestatic
   The number of scattering dimensions in the SCATTERING polyhedron
   of a PBB for a given SCOP.  

References pbb_dim_iter_domain().

Referenced by pbb_iterator_dim(), pbb_nb_scattering_transform(), and psco_scattering_dim().

static graphite_dim_t pbb_nb_scattering_transform ( )
inlinestatic
void pbb_number_of_iterations_at_time ( poly_bb_p  pbb,
graphite_dim_t  time_depth,
mpz_t  res 
)
   Returns the number of iterations RES of the loop around PBB at
   time(scattering) dimension TIME_DEPTH.  
     Map the iteration domain through the current scatter, and work
     on the resulting set.  
     Select the time_depth' dimension via an affine expression.  
     And find the min/max for that function.  
     XXX isl check results?  

References flow_bb_inside_loop_p(), loop::inner, basic_block_def::loop_father, loop_to_lst(), new_lst_loop(), new_lst_stmt(), and loop::next.

static graphite_dim_t pbb_parameter_dim ( )
inlinestatic
   The dimension in the domain of PBB containing the iterator ITER.  

References pbb_dim_iter_domain(), pbb_nb_local_vars(), and pbb_nb_scattering_transform().

static void pbb_set_black_box ( )
inlinestatic
   Set black box of PBB to BLACKBOX.  
static void pbb_update_scattering ( )
inlinestatic
   Updates the scattering of PBB to be at the DEWEY number in the loop
   at depth LEVEL.  

References lst_dewey_number(), and lst_empty_p().

static graphite_dim_t pdr_alias_set_dim ( )
inlinestatic
   The dimension of the alias set in PDR.  
static graphite_dim_t pdr_dim_iter_domain ( )
inlinestatic
   The dimension of the iteration domain of the scop of PDR.  
static graphite_dim_t pdr_iterator_dim ( )
inlinestatic
   The dimension in PDR containing the loop iterator ITER.  

References PDR_READ.

static bool pdr_may_write_p ( )
inlinestatic
   Returns true when PDR is a "may write".  
static graphite_dim_t pdr_nb_params ( )
inlinestatic
   The number of parameters of the scop of PDR.  
static graphite_dim_t pdr_parameter_dim ( )
inlinestatic
   The dimension in PDR containing parameter PARAM.  

References PDR_WRITE.

static bool pdr_read_p ( )
inlinestatic
   Returns true when PDR is a "read".  

References PDR_MAY_WRITE.

static scop_p pdr_scop ( poly_dr_p  pdr)
inlinestatic
static scop_p pdr_scop ( )
inlinestatic
   The scop that contains the PDR.  
static graphite_dim_t pdr_subscript_dim ( )
inlinestatic
   The dimension in PDR containing subscript S.  

References pbb_dim_iter_domain().

static bool pdr_write_p ( )
inlinestatic
   Returns true when PDR is a "write".  
static poly_scattering_p poly_scattering_copy ( )
inlinestatic
   Copies S and return a new scattering.  
static void poly_scattering_free ( )
inlinestatic
   Free a poly_scattering structure.  
static poly_scattering_p poly_scattering_new ( )
inlinestatic
   Allocates a new empty poly_scattering structure.  
void print_cloog ( FILE *  ,
scop_p  ,
int   
)
void print_generated_program ( FILE *  ,
scop_p   
)
void print_isl_aff ( FILE *  ,
isl_aff *   
)
void print_isl_constraint ( FILE *  ,
isl_constraint *   
)
void print_isl_map ( FILE *  ,
isl_map *   
)
void print_isl_set ( FILE *  ,
isl_set *   
)
void print_iteration_domain ( FILE *  ,
poly_bb_p  ,
int   
)
void print_iteration_domains ( FILE *  ,
scop_p  ,
int   
)
void print_lst ( FILE *  ,
lst_p  ,
int   
)
void print_pbb ( FILE *  ,
poly_bb_p  ,
int   
)
void print_pbb_domain ( FILE *  ,
poly_bb_p  ,
int   
)
void print_pdr ( FILE *  ,
poly_dr_p  ,
int   
)
void print_pdrs ( FILE *  ,
poly_bb_p  ,
int   
)
void print_scattering_function ( FILE *  ,
poly_bb_p  ,
int   
)
void print_scattering_functions ( FILE *  ,
scop_p  ,
int   
)
void print_scop ( FILE *  ,
scop_p  ,
int   
)
void print_scop_context ( FILE *  ,
scop_p  ,
int   
)
void print_scop_params ( FILE *  ,
scop_p  ,
int   
)
static graphite_dim_t psco_iterator_dim ( )
inlinestatic
   The dimension in the original scattering polyhedron of PBB
   containing the loop iterator ITER.  

References pbb_nb_scattering_transform().

static graphite_dim_t psco_parameter_dim ( )
inlinestatic
   The dimension in the original scattering polyhedron of PBB
   containing parameter PARAM.  

References lst::loop_father, lst::loop_p, and lst::memory_strides.

static graphite_dim_t psco_scattering_dim ( )
inlinestatic
   The dimension in the original scattering polyhedron of PBB
   containing the scattering iterator SCATTER.  

References pbb_dim_iter_domain(), pbb_nb_params(), and pbb_nb_scattering_orig().

static graphite_dim_t psct_add_local_variable ( )
inlinestatic
   Adds to the transformed scattering polyhedron of PBB a new local
   variable and returns its index.  
static graphite_dim_t psct_dynamic_dim ( )
inlinestatic
   The scattering dimension of PBB corresponding to the dynamic level
   LEVEL.  

Referenced by lst_interchange_profitable_p().

static graphite_dim_t psct_iterator_dim ( )
inlinestatic
   The dimension in the transformed scattering polyhedron of PBB
   containing the loop iterator ITER.  
static graphite_dim_t psct_local_var_dim ( )
inlinestatic
   The dimension in the transformed scattering polyhedron of PBB of
   the local variable LV.  

References pbb_nb_scattering_transform().

static graphite_dim_t psct_parameter_dim ( )
inlinestatic
   The dimension in the transformed scattering polyhedron of PBB
   containing parameter PARAM.  

References lst::pbb, and lst::seq.

static graphite_dim_t psct_scattering_dim ( )
inlinestatic
   The dimension in the transformed scattering polyhedron of PBB
   containing the scattering iterator SCATTER.  

References pbb_dim_iter_domain(), pbb_nb_local_vars(), pbb_nb_params(), and pbb_nb_scattering_transform().

static graphite_dim_t psct_static_dim ( )
inlinestatic
   The scattering dimension of PBB corresponding to the static
   sequence of the loop level LEVEL.  
static void restore_lst_schedule ( )
inlinestatic
   Restores the SCOP_TRANSFORMED_SCHEDULE from SCOP_SAVED_SCHEDULE.  
static void restore_scattering ( )
inlinestatic
   Restores the scattering for all the pbbs in the SCOP.  
static void restore_scattering_pbb ( )
inlinestatic
   Restores the scattering of PBB.  
isl_map* reverse_loop_at_level ( poly_bb_p  ,
int   
)
isl_union_map* reverse_loop_for_pbbs ( scop_p  ,
vec< poly_bb_p ,
int   
)
static bool same_pdr_p ( )
inlinestatic
   Return true when PDR1 and PDR2 are similar data accesses: they have
   the same base array, and the same access functions.  

References poly_bb::black_box, and poly_bb::scop.

void schedule_to_scattering ( poly_bb_p  ,
int   
)
bool scop_do_block ( scop_p  )
int scop_do_interchange ( scop_p  )
int scop_do_strip_mine ( scop_p  ,
int   
)
int scop_max_loop_depth ( scop_p  )
static graphite_dim_t scop_nb_params ( )
inlinestatic
   Returns the number of parameters for SCOP.  
static void scop_set_nb_params ( )
inlinestatic
   Set the number of params of SCOP to NB_PARAMS.  
static void scop_set_region ( )
inlinestatic
   Set the region of SCOP to REGION.  
void scop_to_lst ( scop_p  )
static void store_lst_schedule ( )
inlinestatic
   Stores the SCOP_TRANSFORMED_SCHEDULE to SCOP_SAVED_SCHEDULE.  
static void store_scattering ( )
inlinestatic
   Saves the scattering for all the pbbs in the SCOP.  
static void store_scattering_pbb ( )
inlinestatic
   Saves the transformed scattering of PBB.  
int unify_scattering_dimensions ( scop_p  )