[gcc] 4.8.0-0.5

Jakub Jelinek jakub at fedoraproject.org
Tue Jan 22 08:26:16 UTC 2013


commit 6980affb9bdc057eb99364e45f14639519fe35f9
Author: Jakub Jelinek <jakub at redhat.com>
Date:   Tue Jan 22 09:26:09 2013 +0100

    4.8.0-0.5

 .gitignore            |    1 +
 gcc.spec              |   17 +++++++++++----
 gcc48-cloog-dl.patch  |    2 +-
 gcc48-cloog-dl2.patch |   12 +++++-----
 gcc48-pr56022.patch   |   52 ------------------------------------------------
 gcc48-pr56052.patch   |   53 +++++++++++++++++++++++++++++++++++++++++++++++++
 sources               |    2 +-
 7 files changed, 74 insertions(+), 65 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 2bdff75..cbec4a2 100644
--- a/.gitignore
+++ b/.gitignore
@@ -53,3 +53,4 @@
 /gcc-4.8.0-20130121.tar.bz2
 /cloog-0.18.0.tar.gz
 /isl-0.11.1.tar.bz2
+/gcc-4.8.0-20130122.tar.bz2
diff --git a/gcc.spec b/gcc.spec
index 4a88059..f1f3bae 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -1,9 +1,9 @@
-%global DATE 20130121
-%global SVNREV 195337
+%global DATE 20130122
+%global SVNREV 195359
 %global gcc_version 4.8.0
 # Note, gcc_release must be integer, if you want to add suffixes to
 # %{release}, append them after %{gcc_release} on Release: line.
-%global gcc_release 0.4
+%global gcc_release 0.5
 %global _unpackaged_files_terminate_build 0
 %global multilib_64_archs sparc64 ppc64 s390x x86_64
 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
@@ -198,7 +198,7 @@ Patch11: gcc48-libstdc++-docs.patch
 Patch12: gcc48-no-add-needed.patch
 Patch13: gcc48-pr55608.patch
 Patch14: gcc48-pr55742.patch
-Patch15: gcc48-pr56022.patch
+Patch15: gcc48-pr56052.patch
 
 Patch1000: fastjar-0.97-segfault.patch
 Patch1001: fastjar-0.97-len1.patch
@@ -752,7 +752,7 @@ package or when debugging this package.
 %patch12 -p0 -b .no-add-needed~
 %patch13 -p0 -b .pr55608~
 %patch14 -p0 -E -b .pr55742~
-%patch15 -p0 -b .pr56022~
+%patch15 -p0 -b .pr56052~
 
 %if 0%{?_enable_debug_packages}
 cat > split-debuginfo.sh <<\EOF
@@ -2976,6 +2976,13 @@ fi
 %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin
 
 %changelog
+* Tue Jan 22 2013 Jakub Jelinek <jakub at redhat.com> 4.8.0-0.5
+- updated from trunk
+  - PRs c++/56059, fortran/55919, rtl-optimization/56023,
+	tree-optimization/56051
+- fix up cloog dlopen patches for upgrade to cloog-0.18.0
+- fix Fortran OpenMP OOP ICE (PR fortran/56052)
+
 * Mon Jan 21 2013 Jakub Jelinek <jakub at redhat.com> 4.8.0-0.4
 - updated from trunk
   - PRs ada/864, bootstrap/55792, bootstrap/55961, c++/52343, c++/55663,
diff --git a/gcc48-cloog-dl.patch b/gcc48-cloog-dl.patch
index 344bf6d..52b5c51 100644
--- a/gcc48-cloog-dl.patch
+++ b/gcc48-cloog-dl.patch
@@ -412,7 +412,7 @@
 +
 +  if (cloog_pointers__.inited)
 +    return cloog_pointers__.h != NULL;
-+  h = dlopen ("libcloog-isl.so.3", RTLD_LAZY);
++  h = dlopen ("libcloog-isl.so.4", RTLD_LAZY);
 +  cloog_pointers__.h = h;
 +  if (h == NULL)
 +    return false;
diff --git a/gcc48-cloog-dl2.patch b/gcc48-cloog-dl2.patch
index 77ffb89..2f647a3 100644
--- a/gcc48-cloog-dl2.patch
+++ b/gcc48-cloog-dl2.patch
@@ -2,7 +2,7 @@
 
 	* toplev.c (toplev_main_argv): New variable.
 	(toplev_main): Initialize it.
-	* graphite.c (init_cloog_pointers): Load libcloog-isl.so.3 from gcc's private
+	* graphite.c (init_cloog_pointers): Load libcloog-isl.so.4 from gcc's private
 	directory.
 
 --- gcc/toplev.c.jj	2008-12-09 23:59:10.000000000 +0100
@@ -35,7 +35,7 @@
 -
 -  if (cloog_pointers__.inited)
 -    return cloog_pointers__.h != NULL;
--  h = dlopen ("libcloog-isl.so.3", RTLD_LAZY);
+-  h = dlopen ("libcloog-isl.so.4", RTLD_LAZY);
 +  void *h = NULL;
 +  extern const char **toplev_main_argv;
 +  char *buf, *p;
@@ -44,10 +44,10 @@
 +  if (cloog_pointers__.inited)
 +    return cloog_pointers__.h != NULL;
 +  len = progname - toplev_main_argv[0];
-+  buf = XALLOCAVAR (char, len + sizeof "libcloog-isl.so.3");
++  buf = XALLOCAVAR (char, len + sizeof "libcloog-isl.so.4");
 +  memcpy (buf, toplev_main_argv[0], len);
-+  strcpy (buf + len, "libcloog-isl.so.3");
-+  len += sizeof "libcloog-isl.so.3";
++  strcpy (buf + len, "libcloog-isl.so.4");
++  len += sizeof "libcloog-isl.so.4";
 +  p = strstr (buf, "/libexec/");
 +  if (p != NULL)
 +    {
@@ -64,7 +64,7 @@
 +	{
 +	  len = progname - toplev_main_argv[0];
 +	  memcpy (buf, toplev_main_argv[0], len);
-+	  strcpy (buf + len, "libcloog-isl.so.3");
++	  strcpy (buf + len, "libcloog-isl.so.4");
 +	}
 +    }
 +  if (h == NULL)
diff --git a/gcc48-pr56052.patch b/gcc48-pr56052.patch
new file mode 100644
index 0000000..07f1165
--- /dev/null
+++ b/gcc48-pr56052.patch
@@ -0,0 +1,53 @@
+2013-01-21  Jakub Jelinek  <jakub at redhat.com>
+
+	PR fortran/56052
+	* trans-decl.c (gfc_get_symbol_decl): Set DECL_ARTIFICIAL
+	and DECL_IGNORED_P on select_type_temporary and don't set
+	DECL_BY_REFERENCE.
+
+	* gfortran.dg/gomp/pr56052.f90: New test.
+
+--- gcc/fortran/trans-decl.c.jj	2013-01-11 09:02:50.000000000 +0100
++++ gcc/fortran/trans-decl.c	2013-01-21 18:11:39.684529593 +0100
+@@ -1397,6 +1397,12 @@ gfc_get_symbol_decl (gfc_symbol * sym)
+ 	DECL_IGNORED_P (decl) = 1;
+     }
+ 
++  if (sym->attr.select_type_temporary)
++    {
++      DECL_ARTIFICIAL (decl) = 1;
++      DECL_IGNORED_P (decl) = 1;
++    }
++
+   if (sym->attr.dimension || sym->attr.codimension)
+     {
+       /* Create variables to hold the non-constant bits of array info.  */
+@@ -1496,7 +1502,8 @@ gfc_get_symbol_decl (gfc_symbol * sym)
+       && POINTER_TYPE_P (TREE_TYPE (decl))
+       && !sym->attr.pointer
+       && !sym->attr.allocatable
+-      && !sym->attr.proc_pointer)
++      && !sym->attr.proc_pointer
++      && !sym->attr.select_type_temporary)
+     DECL_BY_REFERENCE (decl) = 1;
+ 
+   if (sym->attr.vtab
+--- gcc/testsuite/gfortran.dg/gomp/pr56052.f90.jj	2013-01-21 18:14:38.716547446 +0100
++++ gcc/testsuite/gfortran.dg/gomp/pr56052.f90	2013-01-21 18:14:59.425432249 +0100
+@@ -0,0 +1,16 @@
++! PR fortran/56052
++! { dg-do compile }
++! { dg-options "-fopenmp" }
++
++subroutine middle(args)
++  type args_t
++  end type
++  type, extends(args_t) :: scan_args_t
++  end type
++  class(args_t),intent(inout) :: args
++  !$omp single
++    select type (args)
++      type is (scan_args_t)
++    end select
++  !$omp end single
++end subroutine middle
diff --git a/sources b/sources
index 71effe7..194c22a 100644
--- a/sources
+++ b/sources
@@ -1,4 +1,4 @@
 be78a47bd82523250eb3e91646db5b3d  cloog-0.18.0.tar.gz
 2659f09c2e43ef8b7d4406321753f1b2  fastjar-0.97.tar.gz
 bce1586384d8635a76d2f017fb067cd2  isl-0.11.1.tar.bz2
-f9dd93bbd1ad08bbbd71d2e3c36b0da0  gcc-4.8.0-20130121.tar.bz2
+a0898ee557790b350f33fd6e0f5f9b37  gcc-4.8.0-20130122.tar.bz2


More information about the scm-commits mailing list