vapier 15/08/30 05:56:20 Modified: 74_all_gcc48_cloog-dl.patch README.history Added: 75_all_gcc-4.8-isl-0.15.patch Log: fix building w/isl-0.15 #557330
Revision Changes Path 1.2 src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch?rev=1.2&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch?rev=1.2&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch?r1=1.1&r2=1.2 Index: 74_all_gcc48_cloog-dl.patch =================================================================== RCS file: /var/cvsroot/gentoo/src/patchsets/gcc/4.8.5/gentoo/74_all_gcc48_cloog-dl.patch,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- 74_all_gcc48_cloog-dl.patch 24 Jun 2015 13:38:51 -0000 1.1 +++ 74_all_gcc48_cloog-dl.patch 30 Aug 2015 05:56:20 -0000 1.2 @@ -12,6 +12,9 @@ * configure: Regenerate. * Makefile.in (BACKENDLIBS): Use DL_LIB. +extended by Gentoo to support isl-0.15 +https://bugs.gentoo.org/552278 +https://bugs.gentoo.org/557330 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -112,15 +115,20 @@ mpz_clear (bound_two); --- a/gcc/graphite-poly.h +++ b/gcc/graphite-poly.h -@@ -22,6 +22,396 @@ along with GCC; see the file COPYING3. If not see +@@ -22,6 +22,410 @@ along with GCC; see the file COPYING3. If not see #ifndef GCC_GRAPHITE_POLY_H #define GCC_GRAPHITE_POLY_H +#include <isl/aff.h> ++#include <isl/constraint.h> ++#include <isl/union_set.h> +#include <isl/schedule.h> +#include <isl/ilp.h> +#include <isl/flow.h> +#include <isl/options.h> ++#include <isl/ast.h> ++#include <isl/ast_build.h> ++#include <isl/val_gmp.h> +#include <cloog/isl/cloog.h> +#include <dlfcn.h> +#ifdef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE @@ -138,6 +146,11 @@ +#define DYNSYM_ZERO_DISTANCE DYNSYM (isl_band_member_is_zero_distance) +#define NEW_DYNSYMS +#endif ++#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS ++#define DYNSYM_FUSE DYNSYM (isl_options_set_schedule_serialize_sccs) ++#else ++#define DYNSYM_FUSE DYNSYM (isl_options_set_schedule_fuse) ++#endif +#define DYNSYMS \ + DYNSYM (clast_pprint); \ + DYNSYM (cloog_clast_create_from_input); \ @@ -219,7 +232,7 @@ + DYNSYM (isl_map_set_tuple_id); \ + DYNSYM (isl_map_universe); \ + DYNSYM (isl_options_set_on_error); \ -+ DYNSYM (isl_options_set_schedule_fuse); \ ++ DYNSYM_FUSE; \ + DYNSYM (isl_options_set_schedule_max_constant_term); \ + DYNSYM (isl_options_set_schedule_maximize_band_depth); \ + DYNSYM (isl_printer_free); \ @@ -407,7 +420,11 @@ +#define isl_map_set_tuple_id (*cloog_pointers__.p_isl_map_set_tuple_id) +#define isl_map_universe (*cloog_pointers__.p_isl_map_universe) +#define isl_options_set_on_error (*cloog_pointers__.p_isl_options_set_on_error) ++#ifdef HAVE_ISL_OPTIONS_SET_SCHEDULE_SERIALIZE_SCCS ++#define isl_options_set_schedule_serialize_sccs (*cloog_pointers__.p_isl_options_set_schedule_serialize_sccs) ++#else +#define isl_options_set_schedule_fuse (*cloog_pointers__.p_isl_options_set_schedule_fuse) ++#endif +#define isl_options_set_schedule_max_constant_term (*cloog_pointers__.p_isl_options_set_schedule_max_constant_term) +#define isl_options_set_schedule_maximize_band_depth (*cloog_pointers__.p_isl_options_set_schedule_maximize_band_depth) +#define isl_printer_free (*cloog_pointers__.p_isl_printer_free) 1.4 src/patchsets/gcc/4.8.5/gentoo/README.history file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history?rev=1.4&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history?rev=1.4&content-type=text/plain diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history?r1=1.3&r2=1.4 Index: README.history =================================================================== RCS file: /var/cvsroot/gentoo/src/patchsets/gcc/4.8.5/gentoo/README.history,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- README.history 20 Aug 2015 12:24:51 -0000 1.3 +++ README.history 30 Aug 2015 05:56:20 -0000 1.4 @@ -1,3 +1,7 @@ +1.3 29 Aug 2015 + U 74_all_gcc48_cloog-dl.patch + + 75_all_gcc-4.8-isl-0.15.patch + 1.2 20 Aug 2015 U 93_all_gcc-4.8-config.h-bconfig.h-parallel-PR57125-PR61899.patch 1.1 src/patchsets/gcc/4.8.5/gentoo/75_all_gcc-4.8-isl-0.15.patch file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/75_all_gcc-4.8-isl-0.15.patch?rev=1.1&view=markup plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/gcc/4.8.5/gentoo/75_all_gcc-4.8-isl-0.15.patch?rev=1.1&content-type=text/plain Index: 75_all_gcc-4.8-isl-0.15.patch =================================================================== https://bugs.gentoo.org/552278 https://bugs.gentoo.org/557330 add support for isl-0.15 --- a/gcc/config.in +++ b/gcc/config.in @@ -1326,6 +1326,12 @@ #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 --- a/gcc/configure.ac +++ b/gcc/configure.ac @@ -5725,6 +5725,8 @@ fi # 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" @@ -5738,6 +5740,13 @@ if test "x${ISLLIBS}" != "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" @@ -5745,6 +5754,11 @@ if test "x${ISLLIBS}" != "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 --- a/gcc/configure +++ b/gcc/configure @@ -28456,6 +28456,8 @@ fi # 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" @@ -28485,6 +28487,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_cxx_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" @@ -28493,6 +28518,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 --- a/gcc/graphite-dependences.c +++ b/gcc/graphite-dependences.c @@ -205,7 +204,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); @@ -217,7 +216,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. */ @@ -241,12 +240,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. */ @@ -255,16 +254,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; --- a/gcc/graphite-optimize-isl.c +++ b/gcc/graphite-optimize-isl.c @@ -506,13 +506,13 @@ getScheduleMap (isl_schedule *Schedule, isl_union_map **map_sepcl) 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 @@ -584,7 +584,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); --- a/gcc/graphite-poly.h +++ b/gcc/graphite-poly.h @@ -24,6 +24,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;