mirror of git://gcc.gnu.org/git/gcc.git
Adapt to new CloogScattering abstraction, introduced in official CLooG versions (CLOOG_ORG).
2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de> * graphite-clast-to-gimple.c (free_scattering): Change CloogDomainList/CloogDomain to CloogScatteringList/CloogScattering (CLOOG_ORG). (build_cloog_prog): Same. * graphite-cloog-compat.h (cloog_domain): Removed. (cloog_scattering): New. (cloog_set_domain): Removed. (cloog_set_scattering): New. (cloog_next_domain): Removed. (cloog_next_scattering): New. (cloog_set_next_domain): Removed. (cloog_set_next_scattering): New. (CloogScatteringList): New. (CloogScattering): New. (cloog_scattering_free): New. (new_Cloog_Scattering_from_ppl_Polyhedron): New. * graphite-cloog-util.c (new_Cloog_Scattering_from_ppl_Polyhedron): New. From-SVN: r163165
This commit is contained in:
parent
60f8785522
commit
1461761bf9
|
|
@ -1,3 +1,24 @@
|
|||
2010-08-02 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
|
||||
|
||||
* graphite-clast-to-gimple.c (free_scattering): Change
|
||||
CloogDomainList/CloogDomain to CloogScatteringList/CloogScattering
|
||||
(CLOOG_ORG).
|
||||
(build_cloog_prog): Same.
|
||||
* graphite-cloog-compat.h (cloog_domain): Removed.
|
||||
(cloog_scattering): New.
|
||||
(cloog_set_domain): Removed.
|
||||
(cloog_set_scattering): New.
|
||||
(cloog_next_domain): Removed.
|
||||
(cloog_next_scattering): New.
|
||||
(cloog_set_next_domain): Removed.
|
||||
(cloog_set_next_scattering): New.
|
||||
(CloogScatteringList): New.
|
||||
(CloogScattering): New.
|
||||
(cloog_scattering_free): New.
|
||||
(new_Cloog_Scattering_from_ppl_Polyhedron): New.
|
||||
* graphite-cloog-util.c (new_Cloog_Scattering_from_ppl_Polyhedron):
|
||||
New.
|
||||
|
||||
2010-08-02 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
|
||||
|
||||
* graphite-clast-to-gimple.c (build_cloog_prog): Extend with
|
||||
|
|
|
|||
|
|
@ -1,3 +1,24 @@
|
|||
2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
|
||||
|
||||
* graphite-clast-to-gimple.c (free_scattering): Change
|
||||
CloogDomainList/CloogDomain to CloogScatteringList/CloogScattering
|
||||
(CLOOG_ORG).
|
||||
(build_cloog_prog): Same.
|
||||
* graphite-cloog-compat.h (cloog_domain): Removed.
|
||||
(cloog_scattering): New.
|
||||
(cloog_set_domain): Removed.
|
||||
(cloog_set_scattering): New.
|
||||
(cloog_next_domain): Removed.
|
||||
(cloog_next_scattering): New.
|
||||
(cloog_set_next_domain): Removed.
|
||||
(cloog_set_next_scattering): New.
|
||||
(CloogScatteringList): New.
|
||||
(CloogScattering): New.
|
||||
(cloog_scattering_free): New.
|
||||
(new_Cloog_Scattering_from_ppl_Polyhedron): New.
|
||||
* graphite-cloog-util.c (new_Cloog_Scattering_from_ppl_Polyhedron):
|
||||
New.
|
||||
|
||||
2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
|
||||
|
||||
* graphite-clast-to-gimple.c (build_cloog_prog): Extend with
|
||||
|
|
|
|||
|
|
@ -1127,14 +1127,14 @@ translate_clast (sese region, loop_p context_loop, struct clast_stmt *stmt,
|
|||
/* Free the SCATTERING domain list. */
|
||||
|
||||
static void
|
||||
free_scattering (CloogDomainList *scattering)
|
||||
free_scattering (CloogScatteringList *scattering)
|
||||
{
|
||||
while (scattering)
|
||||
{
|
||||
CloogDomain *dom = cloog_domain (scattering);
|
||||
CloogDomainList *next = cloog_next_domain (scattering);
|
||||
CloogScattering *dom = cloog_scattering (scattering);
|
||||
CloogScatteringList *next = cloog_next_scattering (scattering);
|
||||
|
||||
cloog_domain_free (dom);
|
||||
cloog_scattering_free (dom);
|
||||
free (scattering);
|
||||
scattering = next;
|
||||
}
|
||||
|
|
@ -1212,7 +1212,7 @@ build_cloog_prog (scop_p scop, CloogProgram *prog,
|
|||
poly_bb_p pbb;
|
||||
CloogLoop *loop_list = NULL;
|
||||
CloogBlockList *block_list = NULL;
|
||||
CloogDomainList *scattering = NULL;
|
||||
CloogScatteringList *scattering = NULL;
|
||||
int nbs = 2 * max_nb_loops + 1;
|
||||
int *scaldims;
|
||||
|
||||
|
|
@ -1264,17 +1264,18 @@ build_cloog_prog (scop_p scop, CloogProgram *prog,
|
|||
/* Build scattering list. */
|
||||
{
|
||||
/* XXX: Replace with cloog_domain_list_alloc(), when available. */
|
||||
CloogDomainList *new_scattering
|
||||
= (CloogDomainList *) xmalloc (sizeof (CloogDomainList));
|
||||
CloogScatteringList *new_scattering
|
||||
= (CloogScatteringList *) xmalloc (sizeof (CloogScatteringList));
|
||||
ppl_Polyhedron_t scat;
|
||||
CloogDomain *dom;
|
||||
CloogScattering *dom;
|
||||
|
||||
scat = PBB_TRANSFORMED_SCATTERING (pbb);
|
||||
dom = new_Cloog_Domain_from_ppl_Polyhedron (scat, scop_nb_params (scop),
|
||||
state);
|
||||
dom = new_Cloog_Scattering_from_ppl_Polyhedron
|
||||
(scat, scop_nb_params (scop), pbb_nb_scattering_transform (pbb),
|
||||
state);
|
||||
|
||||
cloog_set_next_domain (new_scattering, scattering);
|
||||
cloog_set_domain (new_scattering, dom);
|
||||
cloog_set_next_scattering (new_scattering, scattering);
|
||||
cloog_set_scattering (new_scattering, dom);
|
||||
scattering = new_scattering;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,6 +58,16 @@ typedef const char *clast_name_p;
|
|||
new_Cloog_Domain_from_ppl_Polyhedron (POLY)
|
||||
#define cloog_domain_from_cloog_matrix(STATE, MAT, NB)\
|
||||
cloog_domain_matrix2domain (MAT)
|
||||
|
||||
/* CloogScatteringList compatibility. */
|
||||
#define CloogScatteringList CloogDomainList
|
||||
#define CloogScattering CloogDomain
|
||||
#define cloog_set_next_scattering cloog_set_next_domain
|
||||
#define cloog_set_scattering cloog_set_domain
|
||||
#define cloog_scattering cloog_domain
|
||||
#define cloog_next_scattering cloog_next_domain
|
||||
#define cloog_scattering_free cloog_domain_free
|
||||
|
||||
#endif
|
||||
|
||||
/* Adapt CLooG accessors from CLooG legacy to
|
||||
|
|
@ -71,28 +81,28 @@ cloog_statement_usr (CloogStatement *cs)
|
|||
return cs->usr;
|
||||
}
|
||||
|
||||
static inline CloogDomain *
|
||||
cloog_domain (CloogDomainList *dl)
|
||||
static inline CloogScattering *
|
||||
cloog_scattering (CloogScatteringList *sl)
|
||||
{
|
||||
return dl->domain;
|
||||
return sl->scatt;
|
||||
}
|
||||
|
||||
static inline void
|
||||
cloog_set_domain (CloogDomainList *dl, CloogDomain *domain)
|
||||
cloog_set_scattering (CloogScatteringList *sl, CloogScattering *scatt)
|
||||
{
|
||||
dl->domain = domain;
|
||||
sl->scatt = scatt;
|
||||
}
|
||||
|
||||
static inline CloogDomainList *
|
||||
cloog_next_domain (CloogDomainList *dl)
|
||||
static inline CloogScatteringList *
|
||||
cloog_next_scattering (CloogScatteringList *sl)
|
||||
{
|
||||
return dl->next;
|
||||
return sl->next;
|
||||
}
|
||||
|
||||
static inline void
|
||||
cloog_set_next_domain (CloogDomainList *dl, CloogDomainList *next)
|
||||
cloog_set_next_scattering (CloogScatteringList *sl, CloogScatteringList *next)
|
||||
{
|
||||
dl->next = next;
|
||||
sl->next = next;
|
||||
}
|
||||
|
||||
static inline int
|
||||
|
|
|
|||
|
|
@ -238,6 +238,27 @@ new_Cloog_Domain_from_ppl_Polyhedron (ppl_const_Polyhedron_t ph, int nb_params,
|
|||
return res;
|
||||
}
|
||||
|
||||
/* Create a CloogScattering from polyhedron PH. */
|
||||
|
||||
CloogScattering *
|
||||
new_Cloog_Scattering_from_ppl_Polyhedron (ppl_const_Polyhedron_t ph,
|
||||
int nb_params ATTRIBUTE_UNUSED,
|
||||
int nb_scatt ATTRIBUTE_UNUSED,
|
||||
CloogState *state ATTRIBUTE_UNUSED)
|
||||
{
|
||||
#ifdef CLOOG_ORG
|
||||
CloogMatrix *mat = new_Cloog_Matrix_from_ppl_Polyhedron (ph);
|
||||
CloogScattering *res = cloog_scattering_from_cloog_matrix (state, mat,
|
||||
nb_scatt,
|
||||
nb_params);
|
||||
|
||||
cloog_matrix_free (mat);
|
||||
return res;
|
||||
#else
|
||||
return new_Cloog_Domain_from_ppl_Polyhedron (ph, nb_params, state);
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Creates a CloogDomain from a pointset powerset PS. */
|
||||
|
||||
CloogDomain *
|
||||
|
|
|
|||
|
|
@ -27,6 +27,8 @@ along with GCC; see the file COPYING3. If not see
|
|||
CloogMatrix *new_Cloog_Matrix_from_ppl_Polyhedron (ppl_const_Polyhedron_t);
|
||||
CloogDomain *new_Cloog_Domain_from_ppl_Polyhedron (ppl_const_Polyhedron_t,
|
||||
int, CloogState *);
|
||||
CloogScattering *new_Cloog_Scattering_from_ppl_Polyhedron
|
||||
(ppl_const_Polyhedron_t, int, int, CloogState *);
|
||||
CloogDomain * new_Cloog_Domain_from_ppl_Pointset_Powerset
|
||||
(ppl_Pointset_Powerset_C_Polyhedron_t, int, CloogState *);
|
||||
void new_C_Polyhedron_from_Cloog_Matrix (ppl_Polyhedron_t *, CloogMatrix *);
|
||||
|
|
|
|||
Loading…
Reference in New Issue