]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
configure.ac: Permit also ISL 0.15 with CLooG.
authorMatthias Klose <doko@ubuntu.com>
Thu, 19 Nov 2015 15:19:13 +0000 (15:19 +0000)
committerMatthias Klose <doko@gcc.gnu.org>
Thu, 19 Nov 2015 15:19:13 +0000 (15:19 +0000)
2015-11-18  Matthias Klose  <doko@ubuntu.com>

        * configure.ac: Permit also ISL 0.15 with CLooG.
        * configure: Regenerate.

gcc/
2015-11-18  Matthias Klose  <doko@ubuntu.com>

        Backport from the gcc-5-branch

        Backport from mainline
        2015-07-21  Mike Frysinger  <vapier@gentoo.org>
                    Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>

        * configure.ac: Add check for new options in isl-0.15.
        * config.in, configure: Rebuilt.
        * graphite-blocking.c: Include <isl/constraint.h>
        * graphite-interchange.c,  graphite-poly.c: Likewise.
        * graphhite-scop-detection.c, graphite-sese-to-poly.c: Likewise.
        * graphite.c, graphite-poly.c: Likewise.
        * graphite-dependences.c: Include <isl/constraint.h>.
        (max_number_of_out_dimensions): Returns isl_stat.
        (extend_schedule_1): Likewise
        (extend_schedule): Corresponding changes.
        * graphite-optimize-isl.c: Include <isl/constraint.h> and
        <isl/union_set.h>.
        (getSingleMap): Change return type of isl_stat.
        (optimize_isl): Conditionally use
        isl_options_set_schedule_serialize_sccs.
        * graphite-poly.h (isl_stat, isl_stat_ok): Define fallbacks
        if not HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS.

From-SVN: r230610

16 files changed:
ChangeLog
configure
configure.ac
gcc/ChangeLog
gcc/config.in
gcc/configure
gcc/configure.ac
gcc/graphite-blocking.c
gcc/graphite-dependences.c
gcc/graphite-interchange.c
gcc/graphite-optimize-isl.c
gcc/graphite-poly.c
gcc/graphite-poly.h
gcc/graphite-scop-detection.c
gcc/graphite-sese-to-poly.c
gcc/graphite.c

index 17448318c94eb23fde05e4c72c3034c02401d5cd..66f5baa755cedc1d0e5efd694393d78e922f2fa2 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-18  Matthias Klose  <doko@ubuntu.com>
+
+       * configure.ac: Permit also ISL 0.15 with CLooG.
+       * configure: Regenerate.
+
 2015-06-26  Release Manager
 
        * GCC 4.9.3 released.
index d9304d92c50d4186c86b50db890ee0f843cbd08a..9c73b1158283036419cd728b0d980e6e12a14896 100755 (executable)
--- a/configure
+++ b/configure
@@ -6072,6 +6072,55 @@ $as_echo "$gcc_cv_isl" >&6; }
   fi
 
 
+        if test "${gcc_cv_isl}" = no ; then
+
+  if test "${ENABLE_ISL_CHECK}" = yes ; then
+    _isl_saved_CFLAGS=$CFLAGS
+    _isl_saved_LDFLAGS=$LDFLAGS
+    _isl_saved_LIBS=$LIBS
+
+    CFLAGS="${_isl_saved_CFLAGS} ${islinc} ${gmpinc}"
+    LDFLAGS="${_isl_saved_LDFLAGS} ${isllibs}"
+    LIBS="${_isl_saved_LIBS} -lisl"
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.15 of ISL" >&5
+$as_echo_n "checking for version 0.15 of ISL... " >&6; }
+    if test "$cross_compiling" = yes; then :
+  gcc_cv_isl=yes
+else
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <isl/version.h>
+   #include <string.h>
+int
+main ()
+{
+if (strncmp (isl_version (), "isl-0.15", strlen ("isl-0.15")) != 0)
+     return 1;
+
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_run "$LINENO"; then :
+  gcc_cv_isl=yes
+else
+  gcc_cv_isl=no
+fi
+rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \
+  conftest.$ac_objext conftest.beam conftest.$ac_ext
+fi
+
+    { $as_echo "$as_me:${as_lineno-$LINENO}: result: $gcc_cv_isl" >&5
+$as_echo "$gcc_cv_isl" >&6; }
+
+    CFLAGS=$_isl_saved_CFLAGS
+    LDFLAGS=$_isl_saved_LDFLAGS
+    LIBS=$_isl_saved_LIBS
+  fi
+
+
+        fi
       fi
     fi
   fi
index 41a30dda0c52cf86df89feadb20a45b9b734af35..ae976790d326751430ef76d573d17f4f0a5b3343 100644 (file)
@@ -1660,6 +1660,9 @@ if test "x$with_isl" != "xno" &&
       ISL_CHECK_VERSION(0,12)
       if test "${gcc_cv_isl}" = no ; then
         ISL_CHECK_VERSION(0,14)
+        if test "${gcc_cv_isl}" = no ; then
+          ISL_CHECK_VERSION(0,15)
+        fi
       fi
     fi
   fi
index 5f98cb5a3d380dcf5adbab26547339be08eb0b9d..15d77ee61e7bf7444ef1aea5d78dee2fdf63b716 100644 (file)
@@ -1,3 +1,28 @@
+2015-11-19  Matthias Klose  <doko@ubuntu.com>
+
+       Backport from the gcc-5-branch
+
+       2015-07-21  Mike Frysinger  <vapier@gentoo.org>
+                   Bernhard Reutner-Fischer  <aldot@gcc.gnu.org>
+
+       * configure.ac: Add check for new options in isl-0.15.
+       * config.in, configure: Rebuilt.
+       * graphite-blocking.c: Include <isl/constraint.h>
+       * graphite-interchange.c,  graphite-poly.c: Likewise.
+       * graphhite-scop-detection.c, graphite-sese-to-poly.c: Likewise.
+       * graphite.c, graphite-poly.c: Likewise.
+       * graphite-dependences.c: Include <isl/constraint.h>.
+       (max_number_of_out_dimensions): Returns isl_stat.
+       (extend_schedule_1): Likewise
+       (extend_schedule): Corresponding changes.
+       * graphite-optimize-isl.c: Include <isl/constraint.h> and
+       <isl/union_set.h>.
+       (getSingleMap): Change return type of isl_stat.
+       (optimize_isl): Conditionally use
+       isl_options_set_schedule_serialize_sccs.
+       * graphite-poly.h (isl_stat, isl_stat_ok): Define fallbacks
+       if not HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS.
+
 2015-11-19  Eric Botcazou  <ebotcazou@adacore.com>
 
        PR lto/61313
index ba3b7fc8bb5cdd6efc46b4de07a6d22cad709474..6e120e70f39a81d1b14ba1fc23f0d70c9c7165ec 100644 (file)
 #endif
 
 
+/* Define if isl_options_set_schedule_serialize_sccs exists. */
+#ifndef USED_FOR_TARGET
+#undef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
+#endif
+
+
 /* Define if isl_schedule_constraints_compute_schedule exists. */
 #ifndef USED_FOR_TARGET
 #undef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE
index f051b2b382dcc33e0318cd8ce784272afd3132ff..1674e3063c2954c8a69875cf1d7a79d5a2932175 100755 (executable)
@@ -27947,6 +27947,8 @@ $as_echo "#define HAVE_cloog 1" >>confdefs.h
 
   # Check whether isl_schedule_constraints_compute_schedule is available;
   # it's new in ISL-0.13.
+  # Check whether isl_options_set_schedule_serialize_sccs is available;
+  # it's new in ISL-0.15.
   saved_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS $ISLINC"
   saved_LIBS="$LIBS"
@@ -27975,6 +27977,29 @@ rm -f core conftest.err conftest.$ac_objext \
   { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_schedule_constraints_compute_schedule" >&5
 $as_echo "$ac_has_isl_schedule_constraints_compute_schedule" >&6; }
 
+  { $as_echo "$as_me:${as_lineno-$LINENO}: checking Checking for isl_options_set_schedule_serialize_sccs" >&5
+$as_echo_n "checking Checking for isl_options_set_schedule_serialize_sccs... " >&6; }
+  cat confdefs.h - <<_ACEOF >conftest.$ac_ext
+/* end confdefs.h.  */
+#include <isl/schedule.h>
+int
+main ()
+{
+isl_options_set_schedule_serialize_sccs (NULL, 0);
+  ;
+  return 0;
+}
+_ACEOF
+if ac_fn_c_try_link "$LINENO"; then :
+  ac_has_isl_options_set_schedule_serialize_sccs=yes
+else
+  ac_has_isl_options_set_schedule_serialize_sccs=no
+fi
+rm -f core conftest.err conftest.$ac_objext \
+    conftest$ac_exeext conftest.$ac_ext
+  { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_has_isl_options_set_schedule_serialize_sccs" >&5
+$as_echo "$ac_has_isl_options_set_schedule_serialize_sccs" >&6; }
+
   LIBS="$saved_LIBS"
   CFLAGS="$saved_CFLAGS"
 
@@ -27983,6 +28008,12 @@ $as_echo "$ac_has_isl_schedule_constraints_compute_schedule" >&6; }
 $as_echo "#define HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE 1" >>confdefs.h
 
   fi
+
+  if test x"$ac_has_isl_options_set_schedule_serialize_sccs" = x"yes"; then
+
+$as_echo "#define HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS 1" >>confdefs.h
+
+  fi
 fi
 
 
index 0e9bf7e6dff708ff287aac76b33666e47f613203..1a009c87b0c49f59ec0c1e7537747a87d98ad14f 100644 (file)
@@ -5535,6 +5535,8 @@ if test "x${CLOOGLIBS}" != "x" ; then
 
   # Check whether isl_schedule_constraints_compute_schedule is available;
   # it's new in ISL-0.13.
+  # Check whether isl_options_set_schedule_serialize_sccs is available;
+  # it's new in ISL-0.15.
   saved_CFLAGS="$CFLAGS"
   CFLAGS="$CFLAGS $ISLINC"
   saved_LIBS="$LIBS"
@@ -5547,6 +5549,13 @@ if test "x${CLOOGLIBS}" != "x" ; then
               [ac_has_isl_schedule_constraints_compute_schedule=no])
   AC_MSG_RESULT($ac_has_isl_schedule_constraints_compute_schedule)
 
+  AC_MSG_CHECKING([Checking for isl_options_set_schedule_serialize_sccs])
+  AC_TRY_LINK([#include <isl/schedule.h>],
+              [isl_options_set_schedule_serialize_sccs (NULL, 0);],
+              [ac_has_isl_options_set_schedule_serialize_sccs=yes],
+              [ac_has_isl_options_set_schedule_serialize_sccs=no])
+  AC_MSG_RESULT($ac_has_isl_options_set_schedule_serialize_sccs)
+
   LIBS="$saved_LIBS"
   CFLAGS="$saved_CFLAGS"
 
@@ -5554,6 +5563,11 @@ if test "x${CLOOGLIBS}" != "x" ; then
      AC_DEFINE(HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE, 1,
                [Define if isl_schedule_constraints_compute_schedule exists.])
   fi
+
+  if test x"$ac_has_isl_options_set_schedule_serialize_sccs" = x"yes"; then
+     AC_DEFINE(HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS, 1,
+               [Define if isl_options_set_schedule_serialize_sccs exists.])
+  fi
 fi
 
 
index 20a24eb2cf344b7a9b9ff625f797c9c284f996fb..27742ccdbe85743650a254087723b4a308bbf273 100644 (file)
@@ -24,6 +24,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
 #include <isl/map.h>
 #include <isl/union_map.h>
index b0f868077ae0217edf7cbe4296ef4e68c817aad8..9308c279670e21df757654643a82f0bf24a33177 100644 (file)
@@ -22,6 +22,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
 #include <isl/map.h>
 #include <isl/union_map.h>
@@ -183,7 +184,7 @@ scop_get_transformed_schedule (scop_p scop, vec<poly_bb_p> pbbs)
 /* Helper function used on each MAP of a isl_union_map.  Computes the
    maximal output dimension.  */
 
-static int
+static isl_stat
 max_number_of_out_dimensions (__isl_take isl_map *map, void *user)
 {
   int global_max = *((int *) user);
@@ -195,7 +196,7 @@ max_number_of_out_dimensions (__isl_take isl_map *map, void *user)
 
   isl_map_free (map);
   isl_space_free (space);
-  return 0;
+  return isl_stat_ok;
 }
 
 /* Extends the output dimension of MAP to MAX dimensions.  */
@@ -219,12 +220,12 @@ struct extend_schedule_str {
 
 /* Helper function for extend_schedule.  */
 
-static int
+static isl_stat
 extend_schedule_1 (__isl_take isl_map *map, void *user)
 {
   struct extend_schedule_str *str = (struct extend_schedule_str *) user;
   str->umap = isl_union_map_add_map (str->umap, extend_map (map, str->max));
-  return 0;
+  return isl_stat_ok;
 }
 
 /* Return a relation that has uniform output dimensions.  */
@@ -233,16 +234,16 @@ __isl_give isl_union_map *
 extend_schedule (__isl_take isl_union_map *x)
 {
   int max = 0;
-  int res;
+  isl_stat res;
   struct extend_schedule_str str;
 
   res = isl_union_map_foreach_map (x, max_number_of_out_dimensions, (void *) &max);
-  gcc_assert (res == 0);
+  gcc_assert (res == isl_stat_ok);
 
   str.max = max;
   str.umap = isl_union_map_empty (isl_union_map_get_space (x));
   res = isl_union_map_foreach_map (x, extend_schedule_1, (void *) &str);
-  gcc_assert (res == 0);
+  gcc_assert (res == isl_stat_ok);
 
   isl_union_map_free (x);
   return str.umap;
index 2e625c127bad9e1f0355490f14cc0c7b28eaffda..a4def578df283db289d1e2926647d57b5416eef6 100644 (file)
@@ -24,6 +24,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/aff.h>
 #include <isl/set.h>
 #include <isl/map.h>
index fc12eebbf109204bd77dba8f8ab0091fcfad4c10..82a65691d9ed91dad53d7729e667da7ff9312941 100644 (file)
@@ -21,7 +21,9 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
+#include <isl/union_set.h>
 #include <isl/map.h>
 #include <isl/union_map.h>
 #include <isl/schedule.h>
@@ -415,13 +417,13 @@ getScheduleMap (isl_schedule *Schedule)
   return ScheduleMap;
 }
 
-static int
+static isl_stat
 getSingleMap (__isl_take isl_map *map, void *user)
 {
   isl_map **singleMap = (isl_map **) user;
   *singleMap = map;
 
-  return 0;
+  return isl_stat_ok;
 }
 
 static void
@@ -469,7 +471,11 @@ optimize_isl (scop_p scop)
 
   isl_options_set_schedule_max_constant_term (scop->ctx, CONSTANT_BOUND);
   isl_options_set_schedule_maximize_band_depth (scop->ctx, 1);
+#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
+  isl_options_set_schedule_serialize_sccs (scop->ctx, 1);
+#else
   isl_options_set_schedule_fuse (scop->ctx, ISL_SCHEDULE_FUSE_MIN);
+#endif
   isl_options_set_on_error (scop->ctx, ISL_ON_ERROR_CONTINUE);
   schedule = isl_union_set_compute_schedule (domain, validity, proximity);
   isl_options_set_on_error (scop->ctx, ISL_ON_ERROR_ABORT);
index fccc2ec6de5b0d0573b5e87c11ebb2c6f71f6432..c7b6e22c3152151396410e8663f95a0666a8098b 100644 (file)
@@ -22,6 +22,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
 #include <isl/map.h>
 #include <isl/union_map.h>
index 06d320eea49d54b1d5986425d1640ed220038e6f..c75200e1d58b08ac4c183fe3a6f89a7e56639369 100644 (file)
@@ -22,6 +22,11 @@ along with GCC; see the file COPYING3.  If not see
 #ifndef GCC_GRAPHITE_POLY_H
 #define GCC_GRAPHITE_POLY_H
 
+#ifndef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS
+# define isl_stat int
+# define isl_stat_ok 0
+#endif
+
 typedef struct poly_dr *poly_dr_p;
 
 typedef struct poly_bb *poly_bb_p;
index 635e21a8519b53464edd8298fdda0d9d6f09c61c..b68d15deaab9504e3a94fda8f8d75712332940ac 100644 (file)
@@ -22,6 +22,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
 #include <isl/map.h>
 #include <isl/union_map.h>
index 7adf2a9d1b5856cff469b844d2856efbc33fd4b7..c3f758472042242b78ae66f69050a143df249e1d 100644 (file)
@@ -21,6 +21,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
 #include <isl/map.h>
 #include <isl/union_map.h>
index 311b7e361520adca68e001f2dc6e18ebc67be84f..52182a55a034a5d1bd630eb10ff9e7d1ec6985a4 100644 (file)
@@ -35,6 +35,7 @@ along with GCC; see the file COPYING3.  If not see
 #include "config.h"
 
 #ifdef HAVE_cloog
+#include <isl/constraint.h>
 #include <isl/set.h>
 #include <isl/map.h>
 #include <isl/options.h>