This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH 62/65] Remove cloog_initialize and cloog_finalize when using official CLooG releases.
- From: Sebastian Pop <sebpop at gmail dot com>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Tobias Grosser <grosser at fim dot uni-passau dot de>, gcc-graphite <gcc-graphite at googlegroups dot com>
- Date: Mon, 2 Aug 2010 15:20:35 -0500
- Subject: [PATCH 62/65] Remove cloog_initialize and cloog_finalize when using official CLooG releases.
- References: <1280780438-17543-1-git-send-email-sebpop@gmail.com>
From: spop <spop@138bc75d-0d04-0410-961f-82ee72b054a4>
This requires to initialize the Parma Polyhedra Library by graphite,
as newer CLooG versions are not bound to a PPL backend.
2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
* graphite.c (graphite_initialize): Do not initialize
CLooG and initialize the Parma Polyhedra Library
manually when using CLOOG_ORG.
(graphite_finalize): Do not finalize CLooG and finalize
the Parma Polyhedra Library manually when using CLOOG_ORG.
* graphite-cloog-compat.h (cloog_initialize): Hide function
when using CLOOG_ORG.
(cloog_finalize): Same.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/graphite@162609 138bc75d-0d04-0410-961f-82ee72b054a4
---
gcc/ChangeLog | 19 +++++++++++++++++++
gcc/ChangeLog.graphite | 11 +++++++++++
gcc/graphite-cloog-compat.h | 5 +++++
gcc/graphite.c | 8 ++++++++
4 files changed, 43 insertions(+), 0 deletions(-)
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dfa57af..bdc5f26 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,24 @@
2010-08-02 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
+ * graphite-cloog-util.c (oppose_constraint):
+ Extend loop counter's value range (CLOOG_ORG).
+ (cloog_matrix_to_ppl_constraint): Same.
+ (new_Constraint_System_from_Cloog_matrix): Same.
+ * graphite-cloog-compat.h (matrix_num_type): New.
+
+2010-08-02 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
+
+ * graphite.c (graphite_initialize): Do not initialize
+ CLooG and initialize the Parma Polyhedra Library
+ manually when using CLOOG_ORG.
+ (graphite_finalize): Do not finalize CLooG and finalize
+ the Parma Polyhedra Library manually when using CLOOG_ORG.
+ * graphite-cloog-compat.h (cloog_initialize): Hide function
+ when using CLOOG_ORG.
+ (cloog_finalize): Same.
+
+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).
diff --git a/gcc/ChangeLog.graphite b/gcc/ChangeLog.graphite
index 4916f91..7a7b02c 100644
--- a/gcc/ChangeLog.graphite
+++ b/gcc/ChangeLog.graphite
@@ -1,5 +1,16 @@
2010-07-27 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
+ * graphite.c (graphite_initialize): Do not initialize
+ CLooG and initialize the Parma Polyhedra Library
+ manually when using CLOOG_ORG.
+ (graphite_finalize): Do not finalize CLooG and finalize
+ the Parma Polyhedra Library manually when using CLOOG_ORG.
+ * graphite-cloog-compat.h (cloog_initialize): Hide function
+ when using CLOOG_ORG.
+ (cloog_finalize): Same.
+
+2010-07-18 Andreas Simbuerger <simbuerg@fim.uni-passau.de>
+
* graphite-clast-to-gimple.c (free_scattering): Change
CloogDomainList/CloogDomain to CloogScatteringList/CloogScattering
(CLOOG_ORG).
diff --git a/gcc/graphite-cloog-compat.h b/gcc/graphite-cloog-compat.h
index 56b6bb3..c39b18e 100644
--- a/gcc/graphite-cloog-compat.h
+++ b/gcc/graphite-cloog-compat.h
@@ -29,6 +29,11 @@ typedef const struct clast_expr *clast_name_p;
typedef const char *clast_name_p;
#endif
+#ifdef CLOOG_ORG
+#define cloog_initialize()
+#define cloog_finalize()
+#endif
+
#ifndef CLOOG_ORG
/* CloogOptions compatibility. */
diff --git a/gcc/graphite.c b/gcc/graphite.c
index 4bb4344..12dbd0c 100644
--- a/gcc/graphite.c
+++ b/gcc/graphite.c
@@ -61,6 +61,7 @@ along with GCC; see the file COPYING3. If not see
#include "cloog/cloog.h"
#include "ppl_c.h"
+#include "graphite-cloog-compat.h"
#include "graphite-ppl.h"
#include "graphite.h"
#include "graphite-poly.h"
@@ -200,6 +201,8 @@ print_graphite_statistics (FILE* file, VEC (scop_p, heap) *scops)
static bool
graphite_initialize (void)
{
+ int ppl_initialized;
+
if (number_of_loops () <= 1
/* FIXME: This limit on the number of basic blocks of a function
should be removed when the SCOP detection is faster. */
@@ -213,6 +216,10 @@ graphite_initialize (void)
recompute_all_dominators ();
initialize_original_copy_tables ();
+
+ ppl_initialized = ppl_initialize ();
+ gcc_assert (ppl_initialized == 0);
+
cloog_initialize ();
if (dump_file && dump_flags)
@@ -237,6 +244,7 @@ graphite_finalize (bool need_cfg_cleanup_p)
}
cloog_finalize ();
+ ppl_finalize ();
free_original_copy_tables ();
if (dump_file && dump_flags)
--
1.7.0.4