4.8.0-0.5
This commit is contained in:
		
							parent
							
								
									f16dbfc81a
								
							
						
					
					
						commit
						6980affb9b
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
								
							@ -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
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										17
									
								
								gcc.spec
									
									
									
									
									
								
							
							
						
						
									
										17
									
								
								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@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@redhat.com> 4.8.0-0.4
 | 
			
		||||
- updated from trunk
 | 
			
		||||
  - PRs ada/864, bootstrap/55792, bootstrap/55961, c++/52343, c++/55663,
 | 
			
		||||
 | 
			
		||||
@ -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;
 | 
			
		||||
 | 
			
		||||
@ -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)
 | 
			
		||||
 | 
			
		||||
@ -1,52 +0,0 @@
 | 
			
		||||
2013-01-21  Martin Jambor  <mjambor@suse.cz>
 | 
			
		||||
 | 
			
		||||
	PR middle-end/56022
 | 
			
		||||
	* function.c (allocate_struct_function): Call
 | 
			
		||||
	invoke_set_current_function_hook earlier.
 | 
			
		||||
 | 
			
		||||
	* gcc.target/i386/pr56022.c: New test.
 | 
			
		||||
 | 
			
		||||
--- gcc/function.c
 | 
			
		||||
+++ gcc/function.c
 | 
			
		||||
@@ -4479,7 +4479,6 @@ get_last_funcdef_no (void)
 | 
			
		||||
 void
 | 
			
		||||
 allocate_struct_function (tree fndecl, bool abstract_p)
 | 
			
		||||
 {
 | 
			
		||||
-  tree result;
 | 
			
		||||
   tree fntype = fndecl ? TREE_TYPE (fndecl) : NULL_TREE;
 | 
			
		||||
 
 | 
			
		||||
   cfun = ggc_alloc_cleared_function ();
 | 
			
		||||
@@ -4498,8 +4497,13 @@ allocate_struct_function (tree fndecl, b
 | 
			
		||||
       DECL_STRUCT_FUNCTION (fndecl) = cfun;
 | 
			
		||||
       cfun->decl = fndecl;
 | 
			
		||||
       current_function_funcdef_no = get_next_funcdef_no ();
 | 
			
		||||
+    }
 | 
			
		||||
+
 | 
			
		||||
+  invoke_set_current_function_hook (fndecl);
 | 
			
		||||
 
 | 
			
		||||
-      result = DECL_RESULT (fndecl);
 | 
			
		||||
+  if (fndecl != NULL_TREE)
 | 
			
		||||
+    {
 | 
			
		||||
+      tree result = DECL_RESULT (fndecl);
 | 
			
		||||
       if (!abstract_p && aggregate_value_p (result, fndecl))
 | 
			
		||||
 	{
 | 
			
		||||
 #ifdef PCC_STATIC_STRUCT_RETURN
 | 
			
		||||
@@ -4518,8 +4522,6 @@ allocate_struct_function (tree fndecl, b
 | 
			
		||||
          but is this worth the hassle?  */
 | 
			
		||||
       cfun->can_throw_non_call_exceptions = flag_non_call_exceptions;
 | 
			
		||||
     }
 | 
			
		||||
-
 | 
			
		||||
-  invoke_set_current_function_hook (fndecl);
 | 
			
		||||
 }
 | 
			
		||||
 
 | 
			
		||||
 /* This is like allocate_struct_function, but pushes a new cfun for FNDECL
 | 
			
		||||
--- gcc/testsuite/gcc.target/i386/pr56022.c
 | 
			
		||||
+++ gcc/testsuite/gcc.target/i386/pr56022.c
 | 
			
		||||
@@ -0,0 +1,7 @@
 | 
			
		||||
+/* { dg-do compile } */
 | 
			
		||||
+/* { dg-options "-mavx" } */
 | 
			
		||||
+
 | 
			
		||||
+typedef float __m256 __attribute__ ((__vector_size__ (32), __may_alias__));
 | 
			
		||||
+__attribute__((target("no-avx"))) static int currentImplementationSupported()
 | 
			
		||||
+{}
 | 
			
		||||
+__m256 foo0(__m256 a) {}
 | 
			
		||||
							
								
								
									
										53
									
								
								gcc48-pr56052.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								gcc48-pr56052.patch
									
									
									
									
									
										Normal file
									
								
							@ -0,0 +1,53 @@
 | 
			
		||||
2013-01-21  Jakub Jelinek  <jakub@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
 | 
			
		||||
							
								
								
									
										2
									
								
								sources
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								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
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user