[packages/gcc/GCC_4_9] - added two isl0.15 patches (isl 0.15 compatibility) - use external java-ecj package
qboosh
qboosh at pld-linux.org
Tue Sep 15 21:15:53 CEST 2015
commit 16f75e488f51b1b12d65f9556e5d55f44b100aa9
Author: Jakub Bogusz <qboosh at pld-linux.org>
Date: Tue Sep 15 21:17:34 2015 +0200
- added two isl0.15 patches (isl 0.15 compatibility)
- use external java-ecj package
gcc-isl0.15-1.patch | 237 ++++++++++++++++++++++++++++++++++++++++++++++++++++
gcc-isl0.15-2.patch | 86 +++++++++++++++++++
gcc.spec | 19 ++---
3 files changed, 332 insertions(+), 10 deletions(-)
---
diff --git a/gcc.spec b/gcc.spec
index f4a94a0..9a209b4 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -110,7 +110,7 @@
%define major_ver 4.9
%define minor_ver 3
-%define major_ecj_ver 4.9
+%define ecj_ver 4.9
# class data version seen with file(1) that this jvm is able to load
%define _classdataversion 50.0
%define gcj_soname_ver 15
@@ -128,8 +128,6 @@ Group: Development/Languages
Source0: https://ftp.gnu.org/pub/gnu/gcc/gcc-%{version}/%{name}-%{version}.tar.bz2
# Source0-md5: 6f831b4d251872736e8e9cc09746f327
Source1: %{name}-optimize-la.pl
-Source2: ftp://sourceware.org/pub/java/ecj-%{major_ecj_ver}.jar
-# Source2-md5: 7339f199ba11c941890031fd9981d7be
# check libffi version with libffi/configure.ac
Source3: libffi.pc.in
# svn diff -x --ignore-eol-style --force svn://gcc.gnu.org/svn/gcc/tags/gcc_4_9_3_release svn://gcc.gnu.org/svn/gcc/branches/gcc-4_9-branch > gcc-branch.diff
@@ -145,6 +143,8 @@ Patch7: %{name}-libjava-multilib.patch
Patch8: %{name}-enable-java-awt-qt.patch
Patch10: %{name}-moresparcs.patch
Patch11: %{name}-install-libffi.patch
+Patch12: %{name}-isl0.15-1.patch
+Patch13: %{name}-isl0.15-2.patch
URL: http://gcc.gnu.org/
BuildRequires: autoconf >= 2.64
%{?with_tests:BuildRequires: autogen}
@@ -196,6 +196,7 @@ BuildRequires: glibc-devel(sparcv9)
BuildRequires: gmp-c++-devel >= 4.1
BuildRequires: gmp-devel >= 4.1
BuildRequires: isl-devel >= 0.13
+BuildRequires: java-ecj >= %{ecj_ver}
BuildRequires: libmpc-devel
BuildRequires: mpfr-devel >= 2.3.0
%if %{with python}
@@ -1437,10 +1438,10 @@ Summary(es.UTF-8): Soporte de Java para GCC
Summary(pl.UTF-8): Obsługa języka Java dla GCC
Group: Development/Languages/Java
Requires: %{name} = %{epoch}:%{version}-%{release}
+Requires: java-ecj >= %{ecj_ver}
Requires: libgcj-devel = %{epoch}:%{version}-%{release}
Provides: gcc-java-tools
Provides: gcj = %{epoch}:%{version}-%{release}
-Obsoletes: eclipse-ecj
Obsoletes: gcc-java-tools
Obsoletes: java-gnu-classpath-tools
@@ -2789,14 +2790,11 @@ Ten pakiet zawiera wersję %{m2_desc} statycznej biblioteki GNU Atomic.
%if %{with gcc_libffi}
%patch11 -p0
%endif
+%patch12 -p1
+%patch13 -p1
mv ChangeLog ChangeLog.general
-%if %{with java}
-# see contrib/download_ecj
-cp -p %{SOURCE2} ecj.jar
-%endif
-
# override snapshot version.
echo %{version} > gcc/BASE-VER
echo "release" > gcc/DEV-PHASE
@@ -2842,6 +2840,7 @@ TEXCONFIG=false \
--enable-gnu-unique-object \
--enable-gnu-indirect-function \
--enable-initfini-array \
+ --disable-isl-version-check \
--enable-languages="c%{?with_cxx:,c++}%{?with_fortran:,fortran}%{?with_objc:,objc}%{?with_objcxx:,obj-c++}%{?with_ada:,ada}%{?with_java:,java}%{?with_go:,go}" \
--%{?with_gomp:en}%{!?with_gomp:dis}able-libgomp \
--enable-libitm \
@@ -2869,6 +2868,7 @@ TEXCONFIG=false \
--with-cpu=ultrasparc \
%endif
--with-demangler-in-ld \
+ --with-ecj-jar=%{_javadir}/ecj.jar \
--with-gnu-as \
--with-gnu-ld \
--with-linker-hash-style=gnu \
@@ -4097,7 +4097,6 @@ rm -rf $RPM_BUILD_ROOT
%attr(755,root,root) %{_libdir}/%{gcjdbexecdir}/libxmlj.so*
%{_libdir}/logging.properties
%{_javadir}/libgcj*.jar
-%{_javadir}/ecj.jar
%{_mandir}/man1/gij.1*
%files -n libgcj-devel
diff --git a/gcc-isl0.15-1.patch b/gcc-isl0.15-1.patch
new file mode 100644
index 0000000..4cdc746
--- /dev/null
+++ b/gcc-isl0.15-1.patch
@@ -0,0 +1,237 @@
+List-Id: <gcc-patches.gcc.gnu.org>
+List-Archive: <http://gcc.gnu.org/ml/gcc-patches/>
+From: Mike Frysinger <vapier at gentoo dot org>
+To: gcc-patches at gcc dot gnu dot org
+Subject: [PATCH] gcc: fix building w/isl-0.15
+Date: Tue, 14 Jul 2015 10:45:12 -0400
+Message-Id: <1436885112-2174-1-git-send-email-vapier at gentoo.org>
+
+---
+ gcc/config.in | 6 ++++++
+ gcc/configure | 31 +++++++++++++++++++++++++++++++
+ gcc/configure.ac | 14 ++++++++++++++
+ gcc/graphite-dependences.c | 14 +++++++-------
+ gcc/graphite-optimize-isl.c | 8 ++++++--
+ gcc/graphite-poly.h | 5 +++++
+ 6 files changed, 69 insertions(+), 9 deletions(-)
+
+diff --git a/gcc/config.in b/gcc/config.in
+index b031a62..23e1757 100644
+--- 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
+diff --git a/gcc/configure b/gcc/configure
+index 9561e5c..6e81298 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -27947,6 +27947,8 @@
+
+ # 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 @@
+ { $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"
+
+@@ -27983,6 +28008,12 @@
+ $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
+
+
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index cb14639..7fb964a 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -5535,6 +5535,8 @@
+
+ # 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 @@
+ [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 @@
+ 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
+
+
+diff --git a/gcc/graphite-dependences.c b/gcc/graphite-dependences.c
+index 50fe73e..9a0986d 100644
+--- a/gcc/graphite-dependences.c
++++ b/gcc/graphite-dependences.c
+@@ -205,7 +205,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 +217,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 +241,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 +255,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;
+diff --git a/gcc/graphite-optimize-isl.c b/gcc/graphite-optimize-isl.c
+index f490401..388e25c 100644
+--- 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);
+
+ #ifdef HAVE_ISL_SCHED_CONSTRAINTS_COMPUTE_SCHEDULE
+diff --git a/gcc/graphite-poly.h b/gcc/graphite-poly.h
+index 7ffd18e..7022a1d 100644
+--- a/gcc/graphite-poly.h
++++ b/gcc/graphite-poly.h
+@@ -24,6 +24,11 @@ along with GCC; see the file COPYING3. If not see
+
+ #include "sese.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;
+--
+2.4.4
+
diff --git a/gcc-isl0.15-2.patch b/gcc-isl0.15-2.patch
new file mode 100644
index 0000000..a12a08f
--- /dev/null
+++ b/gcc-isl0.15-2.patch
@@ -0,0 +1,86 @@
+List-Id: <gcc-patches.gcc.gnu.org>
+List-Archive: <http://gcc.gnu.org/ml/gcc-patches/>
+From: Bernhard Reutner-Fischer <rep dot dot dot nop at gmail dot com>
+To: gcc-patches at gcc dot gnu dot org
+Subject: [PATCH] gcc/: Fix building with isl-0.15.0; includes
+Date: Fri, 17 Jul 2015 13:10:26 +0200
+Message-Id: <1437131426-27008-1-git-send-email-rep.dot.nop at gmail.com>
+In-Reply-To: <1436885112-2174-1-git-send-email-vapier at gentoo dot org>
+References: <1436885112-2174-1-git-send-email-vapier at gentoo.org>
+
+In addition to Mike's "[PATCH] gcc: fix building w/isl-0.15" in
+https://gcc.gnu.org/ml/gcc-patches/2015-07/msg01162.html
+I seem to also need a couple of more includes for isl-0.15.0:
+
+2015-07-15 Bernhard Reutner-Fischer <aldot at gcc.gnu.org>
+
+ * graphite-blocking.c, graphite-dependences.c,
+ graphite-interchange.c, graphite-isl-ast-to-gimple.c,
+ graphite-optimize-isl.c, graphite-poly.c,
+ graphite-scop-detection.c, graphite-sese-to-poly.c,
+ graphite.c: Add missing isl includes.
+---
+ gcc/graphite-blocking.c | 1 +
+ gcc/graphite-dependences.c | 1 +
+ gcc/graphite-interchange.c | 1 +
+ gcc/graphite-isl-ast-to-gimple.c | 2 ++
+ gcc/graphite-optimize-isl.c | 2 ++
+ gcc/graphite-poly.c | 1 +
+ gcc/graphite-scop-detection.c | 1 +
+ gcc/graphite-sese-to-poly.c | 1 +
+ gcc/graphite.c | 1 +
+ 9 files changed, 11 insertions(+)
+
+diff --git a/gcc/graphite-interchange.c b/gcc/graphite-interchange.c
+index aee51a8..bcf7f3b 100644
+--- a/gcc/graphite-interchange.c
++++ b/gcc/graphite-interchange.c
+@@ -24,6 +24,7 @@ along with GCC; see the file COPYING3.
+ #include "config.h"
+
+ #ifdef HAVE_cloog
++#include <isl/constraint.h>
+ #include <isl/aff.h>
+ #include <isl/set.h>
+ #include <isl/map.h>
+diff --git a/gcc/graphite-optimize-isl.c b/gcc/graphite-optimize-isl.c
+index 388e25c..2b55783 100644
+--- a/gcc/graphite-optimize-isl.c
++++ b/gcc/graphite-optimize-isl.c
+@@ -21,7 +21,9 @@ along with GCC; see the file COPYING3.
+ #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>
+diff --git a/gcc/graphite-scop-detection.c b/gcc/graphite-scop-detection.c
+index 47e0da0..22fdde3 100644
+--- a/gcc/graphite-scop-detection.c
++++ b/gcc/graphite-scop-detection.c
+@@ -22,6 +22,7 @@ along with GCC; see the file COPYING3.
+ #include "config.h"
+
+ #ifdef HAVE_cloog
++#include <isl/constraint.h>
+ #include <isl/set.h>
+ #include <isl/map.h>
+ #include <isl/union_map.h>
+diff --git a/gcc/graphite.c b/gcc/graphite.c
+index a81ef6a..32f405a 100644
+--- a/gcc/graphite.c
++++ b/gcc/graphite.c
+@@ -35,6 +35,7 @@ along with GCC; see the file COPYING3.
+ #include "config.h"
+
+ #ifdef HAVE_cloog
++#include <isl/constraint.h>
+ #include <isl/set.h>
+ #include <isl/map.h>
+ #include <isl/options.h>
+--
+1.7.10.4
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/gcc.git/commitdiff/16f75e488f51b1b12d65f9556e5d55f44b100aa9
More information about the pld-cvs-commit
mailing list