rpms/gcc/devel gcc45-build-id.patch, NONE, 1.1 gcc45-c++-builtin-redecl.patch, NONE, 1.1 gcc45-cloog-dl.patch, NONE, 1.1 gcc45-hack.patch, NONE, 1.1 gcc45-i386-libgomp.patch, NONE, 1.1 gcc45-java-nomulti.patch, NONE, 1.1 gcc45-libgomp-omp_h-multilib.patch, NONE, 1.1 gcc45-libstdc++-docs.patch, NONE, 1.1 gcc45-libtool-no-rpath.patch, NONE, 1.1 gcc45-no-add-needed.patch, NONE, 1.1 gcc45-ppc32-retaddr.patch, NONE, 1.1 gcc45-pr33763.patch, NONE, 1.1 gcc45-pr38757.patch, NONE, 1.1 gcc45-pr44542.patch, NONE, 1.1 gcc45-rh330771.patch, NONE, 1.1 gcc45-sparc-config-detection.patch, NONE, 1.1 .cvsignore, 1.318, 1.319 gcc.spec, 1.100, 1.101 import.log, 1.24, 1.25 sources, 1.323, 1.324 README.libgcjwebplugin.so, 1.2, NONE gcc44-build-id.patch, 1.1, NONE gcc44-c++-builtin-redecl.patch, 1.2, NONE gcc44-cloog-dl.patch, 1.3, NONE gcc44-hack.patch, 1.6, NONE gcc44-i386-libgomp.patch, 1.1, NONE gcc44-ia64-libunwind.patch, 1.1, NONE gcc44-java-nomulti.patch, 1.1, NONE gcc44-libgomp-omp_h-multilib.patch, 1.1, NONE gcc44-libstdc++-docs.patch, 1.1, NONE gcc44-libtool-no-rpath.patch, 1.1, NONE gcc44-no-add-needed.patch, 1.1, NONE gcc44-ppc32-retaddr.patch, 1.1, NONE gcc44-ppc64-aixdesc.patch, 1.1, NONE gcc44-pr33763.patch, 1.1, NONE gcc44-pr38757.patch, 1.2, NONE gcc44-pr44542.patch, 1.1, NONE gcc44-rh330771.patch, 1.2, NONE gcc44-sparc-config-detection.patch, 1.2, NONE gcc44-unwind-debug-hook.patch, 1.2, NONE protoize.1, 1.1, NONE

Jakub Jelinek jakub at fedoraproject.org
Wed Jul 7 17:35:21 UTC 2010


Author: jakub

Update of /cvs/pkgs/rpms/gcc/devel
In directory cvs01.phx2.fedoraproject.org:/tmp/cvs-serv29239/devel

Modified Files:
	.cvsignore gcc.spec import.log sources 
Added Files:
	gcc45-build-id.patch gcc45-c++-builtin-redecl.patch 
	gcc45-cloog-dl.patch gcc45-hack.patch gcc45-i386-libgomp.patch 
	gcc45-java-nomulti.patch gcc45-libgomp-omp_h-multilib.patch 
	gcc45-libstdc++-docs.patch gcc45-libtool-no-rpath.patch 
	gcc45-no-add-needed.patch gcc45-ppc32-retaddr.patch 
	gcc45-pr33763.patch gcc45-pr38757.patch gcc45-pr44542.patch 
	gcc45-rh330771.patch gcc45-sparc-config-detection.patch 
Removed Files:
	README.libgcjwebplugin.so gcc44-build-id.patch 
	gcc44-c++-builtin-redecl.patch gcc44-cloog-dl.patch 
	gcc44-hack.patch gcc44-i386-libgomp.patch 
	gcc44-ia64-libunwind.patch gcc44-java-nomulti.patch 
	gcc44-libgomp-omp_h-multilib.patch gcc44-libstdc++-docs.patch 
	gcc44-libtool-no-rpath.patch gcc44-no-add-needed.patch 
	gcc44-ppc32-retaddr.patch gcc44-ppc64-aixdesc.patch 
	gcc44-pr33763.patch gcc44-pr38757.patch gcc44-pr44542.patch 
	gcc44-rh330771.patch gcc44-sparc-config-detection.patch 
	gcc44-unwind-debug-hook.patch protoize.1 
Log Message:
4.5.0-1


gcc45-build-id.patch:
 alpha/elf.h    |    2 +-
 ia64/linux.h   |    2 +-
 linux.h        |    2 +-
 rs6000/sysv4.h |    2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

--- NEW FILE gcc45-build-id.patch ---
2007-07-22  Roland McGrath  <roland at redhat.com>

	* config/rs6000/sysv4.h (LINK_EH_SPEC): Add --build-id for
	non-relocatable link.
	* config/linux.h (LINK_EH_SPEC): Likewise.
	* config/alpha/elf.h (LINK_EH_SPEC): Likewise.
	* config/ia64/linux.h (LINK_EH_SPEC): Likewise.

--- gcc/config/rs6000/sysv4.h.~1~
+++ gcc/config/rs6000/sysv4.h
@@ -906,7 +906,7 @@ extern int fixuplabelno;
   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \
--- gcc/config/linux.h.~1~
+++ gcc/config/linux.h
@@ -85,7 +85,7 @@ Boston, MA 02110-1301, USA.  */
     } while (0)
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 /* Define this so we can compile MS code for use with WINE.  */
--- gcc/config/alpha/elf.h.~1~
+++ gcc/config/alpha/elf.h
@@ -421,7 +421,7 @@ extern int alpha_this_gpdisp_sequence_nu
    I imagine that other systems will catch up.  In the meantime, it
    doesn't harm to make sure that the data exists to be used later.  */
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 /* A C statement (sans semicolon) to output to the stdio stream STREAM
--- gcc/config/ia64/linux.h.~1~
+++ gcc/config/ia64/linux.h
@@ -56,7 +56,7 @@ do {						\
    Signalize that because we have fde-glibc, we don't need all C shared libs
    linked against -lgcc_s.  */
 #undef LINK_EH_SPEC
-#define LINK_EH_SPEC ""
+#define LINK_EH_SPEC "%{!r:--build-id} "
 
 #define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
 

gcc45-c++-builtin-redecl.patch:
 cp/decl.c                        |   20 +++++++++-----------
 testsuite/g++.dg/ext/builtin10.C |   27 +++++++++++++++++++++++++++
 testsuite/gcc.dg/builtins-65.c   |   25 +++++++++++++++++++++++++
 3 files changed, 61 insertions(+), 11 deletions(-)

--- NEW FILE gcc45-c++-builtin-redecl.patch ---
2007-10-02  Jakub Jelinek  <jakub at redhat.com>

	* decl.c (duplicate_decls): When redeclaring a builtin function,
	keep the merged decl builtin whenever types match, even if new
	decl defines a function.

	* gcc.dg/builtins-65.c: New test.
	* g++.dg/ext/builtin10.C: New test.

--- gcc/cp/decl.c.jj	2007-10-01 22:11:09.000000000 +0200
+++ gcc/cp/decl.c	2007-10-02 11:39:46.000000000 +0200
@@ -2001,23 +2001,21 @@ duplicate_decls (tree newdecl, tree oldd
 	  DECL_ARGUMENTS (olddecl) = DECL_ARGUMENTS (newdecl);
 	  DECL_RESULT (olddecl) = DECL_RESULT (newdecl);
 	}
+      /* If redeclaring a builtin function, it stays built in.  */
+      if (types_match && DECL_BUILT_IN (olddecl))
+	{
+	  DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
+	  DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
+	  /* If we're keeping the built-in definition, keep the rtl,
+	     regardless of declaration matches.  */
+	  COPY_DECL_RTL (olddecl, newdecl);
+	}
       if (new_defines_function)
 	/* If defining a function declared with other language
 	   linkage, use the previously declared language linkage.  */
 	SET_DECL_LANGUAGE (newdecl, DECL_LANGUAGE (olddecl));
       else if (types_match)
 	{
-	  /* If redeclaring a builtin function, and not a definition,
-	     it stays built in.  */
-	  if (DECL_BUILT_IN (olddecl))
-	    {
-	      DECL_BUILT_IN_CLASS (newdecl) = DECL_BUILT_IN_CLASS (olddecl);
-	      DECL_FUNCTION_CODE (newdecl) = DECL_FUNCTION_CODE (olddecl);
-	      /* If we're keeping the built-in definition, keep the rtl,
-		 regardless of declaration matches.  */
-	      COPY_DECL_RTL (olddecl, newdecl);
-	    }
-
 	  DECL_RESULT (newdecl) = DECL_RESULT (olddecl);
 	  /* Don't clear out the arguments if we're just redeclaring a
 	     function.  */
--- gcc/testsuite/gcc.dg/builtins-65.c.jj	2007-10-02 11:23:51.000000000 +0200
+++ gcc/testsuite/gcc.dg/builtins-65.c	2007-10-02 11:24:12.000000000 +0200
@@ -0,0 +1,25 @@
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+typedef __SIZE_TYPE__ size_t;
+extern void __chk_fail (void);
+extern int snprintf (char *, size_t, const char *, ...);
+extern inline __attribute__((gnu_inline, always_inline)) int snprintf (char *a, size_t b, const char *fmt, ...)
+{
+  if (__builtin_object_size (a, 0) != -1UL && __builtin_object_size (a, 0) < b)
+    __chk_fail ();
+  return __builtin_snprintf (a, b, fmt, __builtin_va_arg_pack ());
+}
+extern int snprintf (char *, size_t, const char *, ...) __asm ("mysnprintf");
+
+char buf[10];
+
+int
+main (void)
+{
+  snprintf (buf, 10, "%d%d\n", 10, 10);
+  return 0;
+}
+
+/* { dg-final { scan-assembler "mysnprintf" } } */
+/* { dg-final { scan-assembler-not "__chk_fail" } } */
--- gcc/testsuite/g++.dg/ext/builtin10.C.jj	2007-10-02 11:19:45.000000000 +0200
+++ gcc/testsuite/g++.dg/ext/builtin10.C	2007-10-02 11:23:26.000000000 +0200
@@ -0,0 +1,27 @@
+// { dg-do compile }
+// { dg-options "-O2" }
+
+typedef __SIZE_TYPE__ size_t;
+extern "C" {
+extern void __chk_fail (void);
+extern int snprintf (char *, size_t, const char *, ...);
+extern inline __attribute__((gnu_inline, always_inline)) int snprintf (char *a, size_t b, const char *fmt, ...)
+{
+  if (__builtin_object_size (a, 0) != -1UL && __builtin_object_size (a, 0) < b)
+    __chk_fail ();
+  return __builtin_snprintf (a, b, fmt, __builtin_va_arg_pack ());
+}
+extern int snprintf (char *, size_t, const char *, ...) __asm ("mysnprintf");
+}
+
+char buf[10];
+
+int
+main (void)
+{
+  snprintf (buf, 10, "%d%d\n", 10, 10);
+  return 0;
+}
+
+// { dg-final { scan-assembler "mysnprintf" } }
+// { dg-final { scan-assembler-not "__chk_fail" } }

gcc45-cloog-dl.patch:
 Makefile.in                |    9 +
 graphite-clast-to-gimple.c |    6 -
 graphite-ppl.c             |    1 
 graphite.c                 |   35 +++++++
 graphite.h                 |  220 +++++++++++++++++++++++++++++++++++++++++++++
 5 files changed, 266 insertions(+), 5 deletions(-)

--- NEW FILE gcc45-cloog-dl.patch ---
2010-07-01  Jakub Jelinek  <jakub at redhat.com>

	* Makefile.in (BACKENDLIBS): Link against -ldl instead of -lcloog -lppl.
	(graphite.o, graphite%.o): Force -O, remove -fkeep-inline-functions.
	(graphite-ppl.o): Depend on graphite.h.
	* graphite.h: Include <dlfcn.h>.  Reference libcloog and libppl symbols
	through pointers in cloog_pointers__ variable.
	* graphite.c (init_cloog_pointers): New function.
	(graphite_transform_loops): Call init_cloog_pointers.
	* graphite-clast-to-gimple.c (gcc_type_for_iv_of_clast_loop): Rename stmt_for
	argument to stmt_fora.
	* graphite-ppl.c: Include graphite.h.

--- gcc/graphite.c.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/graphite.c	2010-07-01 16:57:48.248523237 +0200
@@ -67,6 +67,35 @@ along with GCC; see the file COPYING3.  
 #include "graphite-clast-to-gimple.h"
 #include "graphite-sese-to-poly.h"
 
+__typeof (cloog_pointers__) cloog_pointers__;
+
+static bool
+init_cloog_pointers (void)
+{
+  void *h;
+
+  if (cloog_pointers__.inited)
+    return cloog_pointers__.h != NULL;
+  h = dlopen ("libcloog.so.0", RTLD_LAZY);
+  cloog_pointers__.h = h;
+  if (h == NULL)
+    return false;
+#define DYNSYM(x) \
+  do \
+    { \
+      union { __typeof (cloog_pointers__.p_##x) p; void *q; } u; \
+      u.q = dlsym (h, #x); \
+      if (u.q == NULL) \
+	return false; \
+      cloog_pointers__.p_##x = u.p; \
+    } \
+  while (0)
+  DYNSYMS
+#undef DYNSYM
+  return true;
+}
+
+
 /* Print global statistics to FILE.  */
 
 static void
@@ -210,6 +239,12 @@ graphite_initialize (void)
       return false;
     }
 
+  if (!init_cloog_pointers ())
+    {
+      sorry ("Graphite loop optimizations cannot be used");
+      return false;
+    }
+
   recompute_all_dominators ();
   initialize_original_copy_tables ();
   cloog_initialize ();
--- gcc/graphite.h.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/graphite.h	2010-07-01 17:29:37.225491850 +0200
@@ -21,4 +21,224 @@ along with GCC; see the file COPYING3.  
 #ifndef GCC_GRAPHITE_H
 #define GCC_GRAPHITE_H
 
+#include <dlfcn.h>
+#define DYNSYMS \
+  DYNSYM (cloog_block_alloc); \
+  DYNSYM (cloog_block_list_free); \
+  DYNSYM (cloog_block_list_malloc); \
+  DYNSYM (cloog_clast_create); \
+  DYNSYM (cloog_clast_free); \
+  DYNSYM (cloog_domain_free); \
+  DYNSYM (cloog_domain_matrix2domain); \
+  DYNSYM (cloog_initialize); \
+  DYNSYM (cloog_loop_malloc); \
+  DYNSYM (cloog_matrix_alloc); \
+  DYNSYM (cloog_matrix_copy); \
+  DYNSYM (cloog_matrix_free); \
+  DYNSYM (cloog_matrix_print); \
+  DYNSYM (cloog_names_malloc); \
+  DYNSYM (cloog_names_scalarize); \
+  DYNSYM (cloog_options_free); \
+  DYNSYM (cloog_options_malloc); \
+  DYNSYM (cloog_program_dump_cloog); \
+  DYNSYM (cloog_program_extract_scalars); \
+  DYNSYM (cloog_program_free); \
+  DYNSYM (cloog_program_generate); \
+  DYNSYM (cloog_program_malloc); \
+  DYNSYM (cloog_program_print); \
+  DYNSYM (cloog_program_scatter); \
+  DYNSYM (cloog_statement_alloc); \
+  DYNSYM (cloog_domain_union); \
+  DYNSYM (cloog_matrix_read); \
+  DYNSYM (cloog_new_pol); \
+  DYNSYM (cloog_vector_gcd); \
+  DYNSYM (ppl_finalize); \
+  DYNSYM (ppl_assign_Coefficient_from_mpz_t); \
+  DYNSYM (ppl_assign_Linear_Expression_from_Linear_Expression); \
+  DYNSYM (ppl_Coefficient_to_mpz_t); \
+  DYNSYM (ppl_Constraint_coefficient); \
+  DYNSYM (ppl_Constraint_inhomogeneous_term); \
+  DYNSYM (ppl_Constraint_space_dimension); \
+  DYNSYM (ppl_Constraint_System_begin); \
+  DYNSYM (ppl_Constraint_System_const_iterator_dereference); \
+  DYNSYM (ppl_Constraint_System_const_iterator_equal_test); \
+  DYNSYM (ppl_Constraint_System_const_iterator_increment); \
+  DYNSYM (ppl_Constraint_System_end); \
+  DYNSYM (ppl_Constraint_System_insert_Constraint); \
+  DYNSYM (ppl_Constraint_System_space_dimension); \
+  DYNSYM (ppl_Constraint_type); \
+  DYNSYM (ppl_delete_Coefficient); \
+  DYNSYM (ppl_delete_Constraint); \
+  DYNSYM (ppl_delete_Constraint_System_const_iterator); \
+  DYNSYM (ppl_delete_Linear_Expression); \
+  DYNSYM (ppl_delete_Pointset_Powerset_C_Polyhedron); \
+  DYNSYM (ppl_delete_Pointset_Powerset_C_Polyhedron_iterator); \
+  DYNSYM (ppl_delete_Polyhedron); \
+  DYNSYM (ppl_Linear_Expression_add_to_coefficient); \
+  DYNSYM (ppl_Linear_Expression_add_to_inhomogeneous); \
+  DYNSYM (ppl_Linear_Expression_coefficient); \
+  DYNSYM (ppl_Linear_Expression_inhomogeneous_term); \
+  DYNSYM (ppl_Linear_Expression_space_dimension); \
+  DYNSYM (ppl_new_Coefficient); \
+  DYNSYM (ppl_new_Coefficient_from_mpz_t); \
+  DYNSYM (ppl_new_Constraint); \
+  DYNSYM (ppl_new_Constraint_System); \
+  DYNSYM (ppl_new_Constraint_System_const_iterator); \
+  DYNSYM (ppl_new_C_Polyhedron_from_C_Polyhedron); \
+  DYNSYM (ppl_new_C_Polyhedron_from_space_dimension); \
+  DYNSYM (ppl_new_C_Polyhedron_recycle_Constraint_System); \
+  DYNSYM (ppl_new_Linear_Expression); \
+  DYNSYM (ppl_new_Linear_Expression_from_Constraint); \
+  DYNSYM (ppl_new_Linear_Expression_from_Linear_Expression); \
+  DYNSYM (ppl_new_Linear_Expression_with_dimension); \
+  DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron); \
+  DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron); \
+  DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension); \
+  DYNSYM (ppl_new_Pointset_Powerset_C_Polyhedron_iterator); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_add_constraint); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_difference_assign); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_intersection_assign); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_is_empty); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_begin); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_end); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_iterator_increment); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_maximize); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_minimize); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_size); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_space_dimension); \
+  DYNSYM (ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign); \
+  DYNSYM (ppl_Polyhedron_add_constraint); \
+  DYNSYM (ppl_Polyhedron_add_constraints); \
+  DYNSYM (ppl_Polyhedron_add_space_dimensions_and_embed); \
+  DYNSYM (ppl_Polyhedron_get_constraints); \
+  DYNSYM (ppl_Polyhedron_map_space_dimensions); \
+  DYNSYM (ppl_Polyhedron_remove_space_dimensions); \
+  DYNSYM (ppl_Polyhedron_space_dimension); \
+  DYNSYM (ppl_subtract_Linear_Expression_from_Linear_Expression); \
+  DYNSYM (pprint); \
+  DYNSYM (stmt_block); \
+  DYNSYM (stmt_for); \
+  DYNSYM (stmt_guard); \
+  DYNSYM (stmt_root); \
+  DYNSYM (stmt_user);
+extern struct
+{
+  bool inited;
+  void *h;
+#define DYNSYM(x) __typeof (x) *p_##x
+  DYNSYMS
+#undef DYNSYM
+} cloog_pointers__;
+
+#define cloog_block_alloc (*cloog_pointers__.p_cloog_block_alloc)
+#define cloog_block_list_free (*cloog_pointers__.p_cloog_block_list_free)
+#define cloog_block_list_malloc (*cloog_pointers__.p_cloog_block_list_malloc)
+#define cloog_clast_create (*cloog_pointers__.p_cloog_clast_create)
+#define cloog_clast_free (*cloog_pointers__.p_cloog_clast_free)
+#define cloog_domain_free (*cloog_pointers__.p_cloog_domain_free)
+#define cloog_domain_matrix2domain (*cloog_pointers__.p_cloog_domain_matrix2domain)
+#define cloog_initialize (*cloog_pointers__.p_cloog_initialize)
+#define cloog_loop_malloc (*cloog_pointers__.p_cloog_loop_malloc)
+#define cloog_matrix_alloc (*cloog_pointers__.p_cloog_matrix_alloc)
+#define cloog_matrix_copy (*cloog_pointers__.p_cloog_matrix_copy)
+#define cloog_matrix_free (*cloog_pointers__.p_cloog_matrix_free)
+#define cloog_matrix_print (*cloog_pointers__.p_cloog_matrix_print)
+#define cloog_names_malloc (*cloog_pointers__.p_cloog_names_malloc)
+#define cloog_names_scalarize (*cloog_pointers__.p_cloog_names_scalarize)
+#define cloog_options_free (*cloog_pointers__.p_cloog_options_free)
+#define cloog_options_malloc (*cloog_pointers__.p_cloog_options_malloc)
+#define cloog_program_dump_cloog (*cloog_pointers__.p_cloog_program_dump_cloog)
+#define cloog_program_extract_scalars (*cloog_pointers__.p_cloog_program_extract_scalars)
+#define cloog_program_free (*cloog_pointers__.p_cloog_program_free)
+#define cloog_program_generate (*cloog_pointers__.p_cloog_program_generate)
+#define cloog_program_malloc (*cloog_pointers__.p_cloog_program_malloc)
+#define cloog_program_print (*cloog_pointers__.p_cloog_program_print)
+#define cloog_program_scatter (*cloog_pointers__.p_cloog_program_scatter)
+#define cloog_statement_alloc (*cloog_pointers__.p_cloog_statement_alloc)
+#define cloog_domain_union (*cloog_pointers__.p_cloog_domain_union)
+#define cloog_matrix_read (*cloog_pointers__.p_cloog_matrix_read)
+#define cloog_new_pol (*cloog_pointers__.p_cloog_new_pol)
+#define cloog_vector_gcd (*cloog_pointers__.p_cloog_vector_gcd)
+#define ppl_finalize (*cloog_pointers__.p_ppl_finalize)
+#define ppl_assign_Coefficient_from_mpz_t (*cloog_pointers__.p_ppl_assign_Coefficient_from_mpz_t)
+#define ppl_assign_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_assign_Linear_Expression_from_Linear_Expression)
+#define ppl_Coefficient_to_mpz_t (*cloog_pointers__.p_ppl_Coefficient_to_mpz_t)
+#define ppl_Constraint_coefficient (*cloog_pointers__.p_ppl_Constraint_coefficient)
+#define ppl_Constraint_inhomogeneous_term (*cloog_pointers__.p_ppl_Constraint_inhomogeneous_term)
+#define ppl_Constraint_space_dimension (*cloog_pointers__.p_ppl_Constraint_space_dimension)
+#define ppl_Constraint_System_begin (*cloog_pointers__.p_ppl_Constraint_System_begin)
+#define ppl_Constraint_System_const_iterator_dereference (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_dereference)
+#define ppl_Constraint_System_const_iterator_equal_test (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_equal_test)
+#define ppl_Constraint_System_const_iterator_increment (*cloog_pointers__.p_ppl_Constraint_System_const_iterator_increment)
+#define ppl_Constraint_System_end (*cloog_pointers__.p_ppl_Constraint_System_end)
+#define ppl_Constraint_System_insert_Constraint (*cloog_pointers__.p_ppl_Constraint_System_insert_Constraint)
+#define ppl_Constraint_System_space_dimension (*cloog_pointers__.p_ppl_Constraint_System_space_dimension)
+#define ppl_Constraint_type (*cloog_pointers__.p_ppl_Constraint_type)
+#define ppl_delete_Coefficient (*cloog_pointers__.p_ppl_delete_Coefficient)
+#define ppl_delete_Constraint (*cloog_pointers__.p_ppl_delete_Constraint)
+#define ppl_delete_Constraint_System_const_iterator (*cloog_pointers__.p_ppl_delete_Constraint_System_const_iterator)
+#define ppl_delete_Linear_Expression (*cloog_pointers__.p_ppl_delete_Linear_Expression)
+#define ppl_delete_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_delete_Pointset_Powerset_C_Polyhedron)
+#define ppl_delete_Pointset_Powerset_C_Polyhedron_iterator (*cloog_pointers__.p_ppl_delete_Pointset_Powerset_C_Polyhedron_iterator)
+#define ppl_delete_Polyhedron (*cloog_pointers__.p_ppl_delete_Polyhedron)
+#define ppl_Linear_Expression_add_to_coefficient (*cloog_pointers__.p_ppl_Linear_Expression_add_to_coefficient)
+#define ppl_Linear_Expression_add_to_inhomogeneous (*cloog_pointers__.p_ppl_Linear_Expression_add_to_inhomogeneous)
+#define ppl_Linear_Expression_coefficient (*cloog_pointers__.p_ppl_Linear_Expression_coefficient)
+#define ppl_Linear_Expression_inhomogeneous_term (*cloog_pointers__.p_ppl_Linear_Expression_inhomogeneous_term)
+#define ppl_Linear_Expression_space_dimension (*cloog_pointers__.p_ppl_Linear_Expression_space_dimension)
+#define ppl_new_Coefficient (*cloog_pointers__.p_ppl_new_Coefficient)
+#define ppl_new_Coefficient_from_mpz_t (*cloog_pointers__.p_ppl_new_Coefficient_from_mpz_t)
+#define ppl_new_Constraint (*cloog_pointers__.p_ppl_new_Constraint)
+#define ppl_new_Constraint_System (*cloog_pointers__.p_ppl_new_Constraint_System)
+#define ppl_new_Constraint_System_const_iterator (*cloog_pointers__.p_ppl_new_Constraint_System_const_iterator)
+#define ppl_new_C_Polyhedron_from_C_Polyhedron (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_C_Polyhedron)
+#define ppl_new_C_Polyhedron_from_space_dimension (*cloog_pointers__.p_ppl_new_C_Polyhedron_from_space_dimension)
+#define ppl_new_C_Polyhedron_recycle_Constraint_System (*cloog_pointers__.p_ppl_new_C_Polyhedron_recycle_Constraint_System)
+#define ppl_new_Linear_Expression (*cloog_pointers__.p_ppl_new_Linear_Expression)
+#define ppl_new_Linear_Expression_from_Constraint (*cloog_pointers__.p_ppl_new_Linear_Expression_from_Constraint)
+#define ppl_new_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_new_Linear_Expression_from_Linear_Expression)
+#define ppl_new_Linear_Expression_with_dimension (*cloog_pointers__.p_ppl_new_Linear_Expression_with_dimension)
+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_C_Polyhedron)
+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_Pointset_Powerset_C_Polyhedron)
+#define ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_from_space_dimension)
+#define ppl_new_Pointset_Powerset_C_Polyhedron_iterator (*cloog_pointers__.p_ppl_new_Pointset_Powerset_C_Polyhedron_iterator)
+#define ppl_Pointset_Powerset_C_Polyhedron_add_constraint (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_add_constraint)
+#define ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_add_space_dimensions_and_embed)
+#define ppl_Pointset_Powerset_C_Polyhedron_difference_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_difference_assign)
+#define ppl_Pointset_Powerset_C_Polyhedron_intersection_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_intersection_assign)
+#define ppl_Pointset_Powerset_C_Polyhedron_is_empty (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_is_empty)
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_begin (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_begin)
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_dereference)
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_end (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_end)
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_equal_test)
+#define ppl_Pointset_Powerset_C_Polyhedron_iterator_increment (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_iterator_increment)
+#define ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_map_space_dimensions)
+#define ppl_Pointset_Powerset_C_Polyhedron_maximize (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_maximize)
+#define ppl_Pointset_Powerset_C_Polyhedron_minimize (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_minimize)
+#define ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_remove_space_dimensions)
+#define ppl_Pointset_Powerset_C_Polyhedron_size (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_size)
+#define ppl_Pointset_Powerset_C_Polyhedron_space_dimension (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_space_dimension)
+#define ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign (*cloog_pointers__.p_ppl_Pointset_Powerset_C_Polyhedron_upper_bound_assign)
+#define ppl_Polyhedron_add_constraint (*cloog_pointers__.p_ppl_Polyhedron_add_constraint)
+#define ppl_Polyhedron_add_constraints (*cloog_pointers__.p_ppl_Polyhedron_add_constraints)
+#define ppl_Polyhedron_add_space_dimensions_and_embed (*cloog_pointers__.p_ppl_Polyhedron_add_space_dimensions_and_embed)
+#define ppl_Polyhedron_get_constraints (*cloog_pointers__.p_ppl_Polyhedron_get_constraints)
+#define ppl_Polyhedron_map_space_dimensions (*cloog_pointers__.p_ppl_Polyhedron_map_space_dimensions)
+#define ppl_Polyhedron_remove_space_dimensions (*cloog_pointers__.p_ppl_Polyhedron_remove_space_dimensions)
+#define ppl_Polyhedron_space_dimension (*cloog_pointers__.p_ppl_Polyhedron_space_dimension)
+#define ppl_subtract_Linear_Expression_from_Linear_Expression (*cloog_pointers__.p_ppl_subtract_Linear_Expression_from_Linear_Expression)
+#define pprint (*cloog_pointers__.p_pprint)
+#define stmt_block (*cloog_pointers__.p_stmt_block)
+#define stmt_for (*cloog_pointers__.p_stmt_for)
+#define stmt_guard (*cloog_pointers__.p_stmt_guard)
+#define stmt_root (*cloog_pointers__.p_stmt_root)
+#define stmt_user (*cloog_pointers__.p_stmt_user)
+
+#define cloog_finalize (*cloog_pointers__.p_ppl_finalize)
+
 #endif  /* GCC_GRAPHITE_H  */
--- gcc/Makefile.in.jj	2010-06-30 21:23:29.000000000 +0200
+++ gcc/Makefile.in	2010-07-01 17:33:11.016479963 +0200
@@ -1011,7 +1011,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY)
 # and the system's installed libraries.
 LIBS = @LIBS@ $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBIBERTY) $(LIBDECNUMBER) \
 	$(HOST_LIBS)
-BACKENDLIBS = $(CLOOGLIBS) $(PPLLIBS) $(GMPLIBS) $(PLUGINLIBS) $(HOST_LIBS) \
+BACKENDLIBS = $(GMPLIBS) $(if $(CLOOGLIBS),-ldl) $(PLUGINLIBS) $(HOST_LIBS) \
 	$(ZLIB) $(LIBELFLIBS)
 # Any system libraries needed just for GNAT.
 SYSLIBS = @GNAT_LIBEXC@
@@ -2607,7 +2607,7 @@ graphite-poly.o: graphite-poly.c $(CONFI
    $(TREE_DATA_REF_H) tree-pass.h domwalk.h graphite.h graphite-dependences.h \
    pointer-set.h value-prof.h graphite-ppl.h sese.h output.h graphite-poly.h
 graphite-ppl.o: graphite-ppl.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) \
-   $(GGC_H) graphite-ppl.h
+   $(GGC_H) graphite-ppl.h graphite.h
 graphite-scop-detection.o: graphite-scop-detection.c $(CONFIG_H) $(SYSTEM_H) \
    $(GGC_H) $(TREE_H) $(RTL_H) $(BASIC_BLOCK_H) $(DIAGNOSTIC_H) $(TOPLEV_H) \
    $(TREE_FLOW_H) $(TREE_DUMP_H) $(TIMEVAR_H) $(CFGLOOP_H) $(GIMPLE_H) \
@@ -3359,6 +3359,11 @@ $(out_object_file): $(out_file) $(CONFIG
 	$(COMPILER) -c $(ALL_COMPILERFLAGS) $(ALL_CPPFLAGS) \
 		$(out_file) $(OUTPUT_OPTION)
 
+graphite%.o : \
+  ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS))
+graphite.o : \
+  ALL_CFLAGS := -O $(filter-out -fkeep-inline-functions, $(ALL_CFLAGS))
+
 # Build auxiliary files that support ecoff format.
 mips-tfile: mips-tfile.o version.o $(LIBDEPS)
 	$(LINKER) $(LINKERFLAGS) $(LDFLAGS) -o $@ \
--- gcc/graphite-ppl.c.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/graphite-ppl.c	2010-07-01 17:08:14.161335642 +0200
@@ -29,6 +29,7 @@ along with GCC; see the file COPYING3.  
 #include "ppl_c.h"
 #include "cloog/cloog.h"
 #include "graphite-ppl.h"
+#include "graphite.h"
 
 /* Translates row ROW of the CloogMatrix MATRIX to a PPL Constraint.  */
 
--- gcc/graphite-clast-to-gimple.c.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/graphite-clast-to-gimple.c	2010-07-01 16:50:15.812485671 +0200
@@ -613,11 +613,11 @@ gcc_type_for_cloog_iv (const char *cloog
    STMT.  */
 
 static tree
-gcc_type_for_iv_of_clast_loop (struct clast_for *stmt_for)
+gcc_type_for_iv_of_clast_loop (struct clast_for *stmt_fora)
 {
-  struct clast_stmt *stmt = (struct clast_stmt *) stmt_for;
+  struct clast_stmt *stmt = (struct clast_stmt *) stmt_fora;
   struct clast_user_stmt *body = clast_get_body_of_loop (stmt);
-  const char *cloog_iv = stmt_for->iterator;
+  const char *cloog_iv = stmt_fora->iterator;
   CloogStatement *cs = body->statement;
   poly_bb_p pbb = (poly_bb_p) cloog_statement_usr (cs);
 

gcc45-hack.patch:
 config-ml.in         |    1 +
 gcc/ada/make.adb     |    1 +
 gcc/ada/sem_util.adb |    6 +++++-
 libada/Makefile.in   |   32 +++++++++++++++++++++++++++-----
 4 files changed, 34 insertions(+), 6 deletions(-)

--- NEW FILE gcc45-hack.patch ---
--- libada/Makefile.in.jj	2009-01-14 12:07:35.000000000 +0100
+++ libada/Makefile.in	2009-01-15 14:25:33.000000000 +0100
@@ -69,18 +69,40 @@ version := $(shell cat $(srcdir)/../gcc/
 libsubdir := $(libdir)/gcc/$(target_noncanonical)/$(version)$(MULTISUBDIR)
 ADA_RTS_DIR=$(GCC_DIR)/ada/rts$(subst /,_,$(MULTISUBDIR))
 
+DEFAULTMULTIFLAGS :=
+ifeq ($(MULTISUBDIR),)
+targ:=$(subst -, ,$(target))
+arch:=$(word 1,$(targ))
+ifeq ($(words $(targ)),2)
+osys:=$(word 2,$(targ))
+else
+osys:=$(word 3,$(targ))
+endif
+ifeq ($(strip $(filter-out i%86 x86_64 powerpc% ppc% s390% sparc% linux%, $(arch) $(osys))),)
+ifeq ($(shell $(CC) $(CFLAGS) -print-multi-os-directory),../lib64)
+DEFAULTMULTIFLAGS := -m64
+else
+ifeq ($(strip $(filter-out s390%, $(arch))),)
+DEFAULTMULTIFLAGS := -m31
+else
+DEFAULTMULTIFLAGS := -m32
+endif
+endif
+endif
+endif
+
 # exeext should not be used because it's the *host* exeext.  We're building
 # a *target* library, aren't we?!?  Likewise for CC.  Still, provide bogus
 # definitions just in case something slips through the safety net provided
 # by recursive make invocations in gcc/ada/Makefile.in
 LIBADA_FLAGS_TO_PASS = \
         "MAKEOVERRIDES=" \
-        "LDFLAGS=$(LDFLAGS)" \
+        "LDFLAGS=$(strip $(LDFLAGS) $(DEFAULTMULTIFLAGS))" \
         "LN_S=$(LN_S)" \
         "SHELL=$(SHELL)" \
-        "GNATLIBFLAGS=$(GNATLIBFLAGS) $(MULTIFLAGS)" \
-        "GNATLIBCFLAGS=$(GNATLIBCFLAGS) $(MULTIFLAGS)" \
-        "GNATLIBCFLAGS_FOR_C=$(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS)" \
+        "GNATLIBFLAGS=$(strip $(GNATLIBFLAGS) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS))" \
+        "GNATLIBCFLAGS=$(strip $(GNATLIBCFLAGS) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS))" \
+        "GNATLIBCFLAGS_FOR_C=$(strip $(GNATLIBCFLAGS_FOR_C) $(MULTIFLAGS) $(DEFAULTMULTIFLAGS))" \
         "TARGET_LIBGCC2_CFLAGS=$(TARGET_LIBGCC2_CFLAGS)" \
         "THREAD_KIND=$(THREAD_KIND)" \
         "TRACE=$(TRACE)" \
@@ -91,7 +113,7 @@ LIBADA_FLAGS_TO_PASS = \
         "exeext=.exeext.should.not.be.used " \
 	'CC=the.host.compiler.should.not.be.needed' \
 	"GCC_FOR_TARGET=$(CC)" \
-        "CFLAGS=$(CFLAGS) $(WARN_CFLAGS)"
+        "CFLAGS=$(strip $(CFLAGS) $(DEFAULTMULTIFLAGS) $(WARN_CFLAGS))"
 
 # Rules to build gnatlib.
 .PHONY: gnatlib gnatlib-plain gnatlib-sjlj gnatlib-zcx gnatlib-shared oscons
--- gcc/ada/make.adb	2008-11-07 23:00:32.000000000 +0100
+++ gcc/ada/make.adb	2009-01-16 17:55:02.000000000 +0100
@@ -8007,6 +8007,7 @@ package body Make is
              or else Argv (2 .. Argv'Last) = "pg"
              or else (Argv (2) = 'm' and then Argv'Last > 2)
              or else (Argv (2) = 'f' and then Argv'Last > 2)
+             or else (Argv'Last >= 8 and then Argv (2 .. 8) = "-param=")
          then
             Add_Switch (Argv, Compiler, And_Save => And_Save);
             Add_Switch (Argv, Linker,   And_Save => And_Save);
--- gcc/ada/sem_util.adb	(revision 161677)
+++ gcc/ada/sem_util.adb	(working copy)
@@ -2246,7 +2246,11 @@
          end if;
 
       elsif Is_Entity_Name (A2) then
+
+         --  Triggered by -Wall
+         pragma Warnings (Off);
          return Denotes_Same_Prefix (A2, A1);
+         pragma Warnings (On);
 
       elsif Nkind_In (A1, N_Selected_Component, N_Indexed_Component, N_Slice)
               and then
@@ -4694,7 +4698,7 @@
             Exp           : Node_Id;
             Assn          : Node_Id;
             Choice        : Node_Id;
-            Comp_Type     : Entity_Id;
+            Comp_Type     : Entity_Id := Empty;
             Is_Array_Aggr : Boolean;
 
          begin
--- config-ml.in.jj	2010-06-30 09:50:44.000000000 +0200
+++ config-ml.in	2010-07-02 21:24:17.994211151 +0200
@@ -516,6 +516,7 @@ multi-do:
 				ADAFLAGS="$(ADAFLAGS) $${flags}" \
 				prefix="$(prefix)" \
 				exec_prefix="$(exec_prefix)" \
+				mandir="$(mandir)" \
 				GCJFLAGS="$(GCJFLAGS) $${flags}" \
 				CXXFLAGS="$(CXXFLAGS) $${flags}" \
 				LIBCFLAGS="$(LIBCFLAGS) $${flags}" \

gcc45-i386-libgomp.patch:
 libgomp/configure.tgt           |    6 +++---
 libstdc++-v3/libsupc++/guard.cc |   21 +++++++++++++++++++++
 2 files changed, 24 insertions(+), 3 deletions(-)

--- NEW FILE gcc45-i386-libgomp.patch ---
Build i386.rpm libgomp and libsupc++.a(guard.o) as i486+, pre-i486
hardware isn't supported because NPTL doesn't support it anyway.

--- libgomp/configure.tgt.jj	2008-01-10 20:53:48.000000000 +0100
+++ libgomp/configure.tgt	2008-03-27 12:44:51.000000000 +0100
@@ -44,14 +44,14 @@ if test $enable_linux_futex = yes; then
 	;;
 
     # Note that bare i386 is not included here.  We need cmpxchg.
-    i[456]86-*-linux*)
+    i[3456]86-*-linux*)
 	config_path="linux/x86 linux posix"
 	case " ${CC} ${CFLAGS} " in
 	  *" -m64 "*)
 	    ;;
 	  *)
 	    if test -z "$with_arch"; then
-	      XCFLAGS="${XCFLAGS} -march=i486 -mtune=${target_cpu}"
+	      XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic"
 	    fi
 	esac
 	;;
@@ -63,7 +63,7 @@ if test $enable_linux_futex = yes; then
 	config_path="linux/x86 linux posix"
 	case " ${CC} ${CFLAGS} " in
 	  *" -m32 "*)
-	    XCFLAGS="${XCFLAGS} -march=i486 -mtune=i686"
+	    XCFLAGS="${XCFLAGS} -march=i486 -mtune=generic"
 	    ;;
 	esac
 	;;
--- libstdc++-v3/libsupc++/guard.cc.jj	2008-03-01 00:58:24.000000000 +0100
+++ libstdc++-v3/libsupc++/guard.cc	2008-03-27 14:08:44.000000000 +0100
@@ -35,6 +35,27 @@
 #include <new>
 #include <ext/atomicity.h>
 #include <ext/concurrence.h>
+#if defined __i386__ && !defined _GLIBCXX_ATOMIC_BUILTINS_4
+# define _GLIBCXX_ATOMIC_BUILTINS_4 1
+# define __sync_val_compare_and_swap(a, b, c) \
+  ({								\
+     typedef char sltast[sizeof (*a) == sizeof (int) ? 1 : -1];	\
+     int sltas;							\
+     __asm __volatile ("lock; cmpxchgl %3, (%1)"		\
+		       : "=a" (sltas)				\
+		       : "r" (a), "0" (b), "r" (c) : "memory");	\
+     sltas;							\
+   })
+# define __sync_lock_test_and_set(a, b) \
+  ({								\
+     typedef char sltast[sizeof (*a) == sizeof (int) ? 1 : -1];	\
+     int sltas;							\
+     __asm __volatile ("xchgl (%1), %0"				\
+		       : "=r" (sltas)				\
+		       : "r" (a), "0" (b) : "memory");		\
+     sltas;							\
+   })
+#endif
 #if defined(__GTHREADS) && defined(__GTHREAD_HAS_COND) \
     && defined(_GLIBCXX_ATOMIC_BUILTINS_4) && defined(_GLIBCXX_HAVE_LINUX_FUTEX)
 # include <climits>

gcc45-java-nomulti.patch:
 configure    |   12 ++++++++++++
 configure.ac |    7 +++++++
 2 files changed, 19 insertions(+)

--- NEW FILE gcc45-java-nomulti.patch ---
--- libjava/configure.ac.jj	2007-12-07 17:55:50.000000000 +0100
+++ libjava/configure.ac	2007-12-07 18:36:56.000000000 +0100
@@ -82,6 +82,13 @@ AC_ARG_ENABLE(java-maintainer-mode,
 	[allow rebuilding of .class and .h files]))
 AM_CONDITIONAL(JAVA_MAINTAINER_MODE, test "$enable_java_maintainer_mode" = yes)
 
+AC_ARG_ENABLE(libjava-multilib,
+	AS_HELP_STRING([--enable-libjava-multilib], [build libjava as multilib]))
+if test "$enable_libjava_multilib" = no; then
+  multilib=no
+  ac_configure_args="$ac_configure_args --disable-multilib"
+fi
+
 # It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
 GCC_NO_EXECUTABLES
 
--- libjava/configure.jj	2007-12-07 17:55:50.000000000 +0100
+++ libjava/configure	2007-12-07 18:39:58.000000000 +0100
@@ -1021,6 +1021,8 @@ Optional Features:
                           default=yes
   --enable-java-maintainer-mode
                           allow rebuilding of .class and .h files
+  --enable-libjava-multilib
+                          build libjava as multilib
   --disable-dependency-tracking  speeds up one-time build
   --enable-dependency-tracking   do not reject slow dependency extractors
   --enable-maintainer-mode  enable make rules and dependencies not useful
@@ -1973,6 +1975,16 @@ else
 fi
 
 
+# Check whether --enable-libjava-multilib was given.
+if test "${enable_libjava_multilib+set}" = set; then
+  enableval=$enable_libjava_multilib;
+fi
+
+if test "$enable_libjava_multilib" = no; then
+  multilib=no
+  ac_configure_args="$ac_configure_args --disable-multilib"
+fi
+
 # It may not be safe to run linking tests in AC_PROG_CC/AC_PROG_CXX.
 
 

gcc45-libgomp-omp_h-multilib.patch:
 omp.h.in |    4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

--- NEW FILE gcc45-libgomp-omp_h-multilib.patch ---
2008-06-09  Jakub Jelinek  <jakub at redhat.com>

	* omp.h.in (omp_nest_lock_t): Fix up for Linux multilibs.

--- libgomp/omp.h.in.jj	2008-06-09 13:34:05.000000000 +0200
+++ libgomp/omp.h.in	2008-06-09 13:34:48.000000000 +0200
@@ -42,8 +42,8 @@ typedef struct
 
 typedef struct
 {
-  unsigned char _x[@OMP_NEST_LOCK_SIZE@] 
-    __attribute__((__aligned__(@OMP_NEST_LOCK_ALIGN@)));
+  unsigned char _x[8 + sizeof (void *)] 
+    __attribute__((__aligned__(sizeof (void *))));
 } omp_nest_lock_t;
 #endif
 

gcc45-libstdc++-docs.patch:
 api.html   |   25 +++++--------------------
 index.html |    3 ++-
 2 files changed, 7 insertions(+), 21 deletions(-)

--- NEW FILE gcc45-libstdc++-docs.patch ---
--- libstdc++-v3/doc/html/index.html.jj	2010-06-30 09:48:38.000000000 +0200
+++ libstdc++-v3/doc/html/index.html	2010-07-01 16:22:25.066491878 +0200
@@ -12,7 +12,8 @@
 <div>
 <h1>The GNU C++ Library Documentation</h1>
 
-<p>Copyright 2008, 2009 FSF</p>
+<p>Release 4.5.0</p>
+<p>Copyright 2008, 2009, 2010 FSF</p>
 
 <p>
   Permission is granted to copy, distribute and/or modify this
--- libstdc++-v3/doc/html/api.html.jj	2010-06-30 09:48:38.000000000 +0200
+++ libstdc++-v3/doc/html/api.html	2010-07-01 16:24:39.158429410 +0200
@@ -17,27 +17,12 @@ useful for examining the signatures of p
 the library classes, finding out what is in a particular include
 file, looking at inheritance diagrams, etc.
 </p><p>
-The source-level documentation for the most recent releases can be
-viewed online:
-</p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem"><p>
-      <a class="ulink" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-3.4/index.html" target="_top">for the 3.4 release
+The source-level documentation can be viewed here:
+</p>
+<div class="itemizedlist"><ul type="disc">
+    <li><p>
+      <a class="ulink" href="api/index.html" target="_top">for the 4.5 release
       </a>
-    </p></li><li class="listitem"><p>
-      <a class="ulink" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.1/index.html" target="_top">for the 4.1 release
-      </a>
-    </p></li><li class="listitem"><p>
-      <a class="ulink" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.2/index.html" target="_top">for the 4.2 release
-      </a>
-    </p></li><li class="listitem"><p>
-      <a class="ulink" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.3/index.html" target="_top">for the 4.3 release
-      </a>
-    </p></li><li class="listitem"><p>
-      <a class="ulink" href="http://gcc.gnu.org/onlinedocs/libstdc++/libstdc++-html-USERS-4.4/index.html" target="_top">for the 4.4 release
-      </a>
-    </p></li><li class="listitem"><p>
-      <a class="ulink" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/index.html" target="_top">"the latest collection"
-      </a>
-      (For the main development tree; see the date on the first page.)
     </p></li></ul></div><p>
 This generated HTML collection, as above, is also available for download in the libstdc++ snapshots directory at
    <code class="literal">&lt;URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/&gt;</code>.

gcc45-libtool-no-rpath.patch:
 ltmain.sh |    3 +++
 1 file changed, 3 insertions(+)

--- NEW FILE gcc45-libtool-no-rpath.patch ---
libtool sucks.
--- ltmain.sh.jj	2007-12-07 14:53:21.000000000 +0100
+++ ltmain.sh	2008-09-05 21:51:48.000000000 +0200
@@ -5394,6 +5394,7 @@ EOF
 	  rpath="$finalize_rpath"
 	  test "$mode" != relink && rpath="$compile_rpath$rpath"
 	  for libdir in $rpath; do
+	    case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac
 	    if test -n "$hardcode_libdir_flag_spec"; then
 	      if test -n "$hardcode_libdir_separator"; then
 		if test -z "$hardcode_libdirs"; then
@@ -6071,6 +6072,7 @@ EOF
       rpath=
       hardcode_libdirs=
       for libdir in $compile_rpath $finalize_rpath; do
+	case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac
 	if test -n "$hardcode_libdir_flag_spec"; then
 	  if test -n "$hardcode_libdir_separator"; then
 	    if test -z "$hardcode_libdirs"; then
@@ -6120,6 +6122,7 @@ EOF
       rpath=
       hardcode_libdirs=
       for libdir in $finalize_rpath; do
+	case "$libdir" in /usr/lib|/usr/lib64|/usr/lib/../lib|/usr/lib/../lib64) continue;; esac
 	if test -n "$hardcode_libdir_flag_spec"; then
 	  if test -n "$hardcode_libdir_separator"; then
 	    if test -z "$hardcode_libdirs"; then

gcc45-no-add-needed.patch:
 alpha/elf.h    |    2 +-
 ia64/linux.h   |    2 +-
 linux.h        |    2 +-
 rs6000/sysv4.h |    2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

--- NEW FILE gcc45-no-add-needed.patch ---
2010-02-08  Roland McGrath  <roland at redhat.com>

	* config/rs6000/sysv4.h (LINK_EH_SPEC): Pass --no-add-needed to the
	linker.
	* config/linux.h (LINK_EH_SPEC): Likewise.
	* config/alpha/elf.h (LINK_EH_SPEC): Likewise.
	* config/ia64/linux.h (LINK_EH_SPEC): Likewise.

--- gcc/config/alpha/elf.h.~1~
+++ gcc/config/alpha/elf.h
@@ -421,7 +421,7 @@ extern int alpha_this_gpdisp_sequence_nu
    I imagine that other systems will catch up.  In the meantime, it
    doesn't harm to make sure that the data exists to be used later.  */
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 /* A C statement (sans semicolon) to output to the stdio stream STREAM
--- gcc/config/ia64/linux.h.~1~
+++ gcc/config/ia64/linux.h
@@ -58,7 +58,7 @@ do {						\
    Signalize that because we have fde-glibc, we don't need all C shared libs
    linked against -lgcc_s.  */
 #undef LINK_EH_SPEC
-#define LINK_EH_SPEC "%{!r:--build-id} "
+#define LINK_EH_SPEC "--no-add-needed %{!r:--build-id} "
 
 #define MD_UNWIND_SUPPORT "config/ia64/linux-unwind.h"
 
--- gcc/config/linux.h.~1~
+++ gcc/config/linux.h
@@ -89,7 +89,7 @@ see the files COPYING3 and COPYING.RUNTI
     } while (0)
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-#define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
+#define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 /* Define this so we can compile MS code for use with WINE.  */
--- gcc/config/rs6000/sysv4.h.~1~
+++ gcc/config/rs6000/sysv4.h
@@ -917,7 +917,7 @@ SVR4_ASM_SPEC \
   %{!dynamic-linker:-dynamic-linker " LINUX_DYNAMIC_LINKER "}}}"
 
 #if defined(HAVE_LD_EH_FRAME_HDR)
-# define LINK_EH_SPEC "%{!static:--eh-frame-hdr} %{!r:--build-id} "
+# define LINK_EH_SPEC "--no-add-needed %{!static:--eh-frame-hdr} %{!r:--build-id} "
 #endif
 
 #define CPP_OS_LINUX_SPEC "-D__unix__ -D__gnu_linux__ -D__linux__ \

gcc45-ppc32-retaddr.patch:
 config/rs6000/rs6000.c        |   23 ++++++++++++++---------
 testsuite/gcc.dg/20051128-1.c |   41 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 55 insertions(+), 9 deletions(-)

--- NEW FILE gcc45-ppc32-retaddr.patch ---
2005-11-28  Jakub Jelinek  <jakub at redhat.com>

	* config/rs6000/rs6000.c (rs6000_return_addr): If COUNT == 0,
	read word RETURN_ADDRESS_OFFSET bytes above arg_pointer_rtx
	instead of doing an extran indirection from frame_pointer_rtx.

	* gcc.dg/20051128-1.c: New test.

--- gcc/config/rs6000/rs6000.c.jj	2005-11-26 14:38:01.000000000 +0100
+++ gcc/config/rs6000/rs6000.c	2005-11-28 20:32:18.000000000 +0100
@@ -13166,17 +13166,22 @@ rs6000_return_addr (int count, rtx frame
      don't try to be too clever here.  */
   if (count != 0 || (DEFAULT_ABI != ABI_AIX && flag_pic))
     {
+      rtx x;
       cfun->machine->ra_needs_full_frame = 1;
 
-      return
-	gen_rtx_MEM
-	  (Pmode,
-	   memory_address
-	   (Pmode,
-	    plus_constant (copy_to_reg
-			   (gen_rtx_MEM (Pmode,
-					 memory_address (Pmode, frame))),
-			   RETURN_ADDRESS_OFFSET)));
+      if (count == 0)
+	{
+	  gcc_assert (frame == frame_pointer_rtx);
+	  x = arg_pointer_rtx;
+	}
+      else
+	{
+	  x = memory_address (Pmode, frame);
+	  x = copy_to_reg (gen_rtx_MEM (Pmode, x));
+	}
+
+      x = plus_constant (x, RETURN_ADDRESS_OFFSET);
+      return gen_rtx_MEM (Pmode, memory_address (Pmode, x));
     }
 
   cfun->machine->ra_need_lr = 1;
--- gcc/testsuite/gcc.dg/20051128-1.c.jj	2005-10-10 11:21:41.096999000 +0200
+++ gcc/testsuite/gcc.dg/20051128-1.c	2005-11-28 12:30:57.000000000 +0100
@@ -0,0 +1,41 @@
+/* { dg-do run } */
+/* { dg-options "-O2 -fpic" } */
+
+extern void exit (int);
+extern void abort (void);
+
+int b;
+
+struct A
+{
+  void *pad[147];
+  void *ra, *h;
+  long o;
+};
+
+void
+__attribute__((noinline))
+foo (struct A *a, void *x)
+{
+  __builtin_memset (a, 0, sizeof (a));
+  if (!b)
+    exit (0);
+}
+
+void
+__attribute__((noinline))
+bar (void)
+{
+  struct A a;
+
+  __builtin_unwind_init ();
+  foo (&a, __builtin_return_address (0));
+}
+
+int
+main (void)
+{
+  bar ();
+  abort ();
+  return 0;
+}

gcc45-pr33763.patch:
 testsuite/g++.dg/opt/inline13.C |   60 ++++++++++++++++++++++++++++++++++++++++
 testsuite/gcc.dg/pr33763.c      |   60 ++++++++++++++++++++++++++++++++++++++++
 tree-inline.c                   |    6 ++++
 3 files changed, 126 insertions(+)

--- NEW FILE gcc45-pr33763.patch ---
2007-11-06  Jakub Jelinek  <jakub at redhat.com>

	PR tree-optimization/33763
	* gcc.dg/pr33763.c: New test.
	* g++.dg/opt/inline13.C: New test.

2007-11-06  Jan Hubicka  <jh at suse.cz>

	PR tree-optimization/33763
	* tree-inline.c (expand_call_inline): Silently ignore always_inline
	attribute for redefined extern inline functions.

--- gcc/tree-inline.c.jj	2007-11-06 09:29:04.000000000 +0100
+++ gcc/tree-inline.c	2007-11-06 16:19:12.000000000 +0100
@@ -3157,6 +3157,12 @@ expand_call_inline (basic_block bb, gimp
 	goto egress;
 
       if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn))
+	/* For extern inline functions that get redefined we always
+	   silently ignored alway_inline flag. Better behaviour would
+	   be to be able to keep both bodies and use extern inline body
+	   for inlining, but we can't do that because frontends overwrite
+	   the body.  */
+	  && !cg_edge->callee->local.redefined_extern_inline
 	  /* Avoid warnings during early inline pass. */
 	  && cgraph_global_info_ready)
 	{
--- gcc/testsuite/gcc.dg/pr33763.c.jj	2007-11-06 16:19:12.000000000 +0100
+++ gcc/testsuite/gcc.dg/pr33763.c	2007-11-06 16:19:12.000000000 +0100
@@ -0,0 +1,60 @@
+/* PR tree-optimization/33763 */
+/* { dg-do compile } */
+/* { dg-options "-O2" } */
+
+typedef struct
+{
+  void *a;
+  void *b;
+} T;
+extern void *foo (const char *, const char *);
+extern void *bar (void *, const char *, T);
+extern int baz (const char *, int);
+
+extern inline __attribute__ ((always_inline, gnu_inline)) int
+baz (const char *x, int y)
+{
+  return 2;
+}
+
+int
+baz (const char *x, int y)
+{
+  return 1;
+}
+
+int xa, xb;
+
+static void *
+inl (const char *x, const char *y)
+{
+  T t = { &xa, &xb };
+  int *f = (int *) __builtin_malloc (sizeof (int));
+  const char *z;
+  int o = 0;
+  void *r = 0;
+
+  for (z = y; *z; z++)
+    {
+      if (*z == 'r')
+	o |= 1;
+      if (*z == 'w')
+	o |= 2;
+    }
+  if (o == 1)
+    *f = baz (x, 0);
+  if (o == 2)
+    *f = baz (x, 1);
+  if (o == 3)
+    *f = baz (x, 2);
+
+  if (o && *f > 0)
+    r = bar (f, "w", t);
+  return r;
+}
+
+void *
+foo (const char *x, const char *y)
+{
+  return inl (x, y);
+}
--- gcc/testsuite/g++.dg/opt/inline13.C.jj	2007-11-06 16:20:20.000000000 +0100
+++ gcc/testsuite/g++.dg/opt/inline13.C	2007-11-06 16:21:30.000000000 +0100
@@ -0,0 +1,60 @@
+// PR tree-optimization/33763
+// { dg-do compile }
+// { dg-options "-O2" }
+
+typedef struct
+{
+  void *a;
+  void *b;
+} T;
+extern void *foo (const char *, const char *);
+extern void *bar (void *, const char *, T);
+extern int baz (const char *, int);
+
+extern inline __attribute__ ((always_inline, gnu_inline)) int
+baz (const char *x, int y)
+{
+  return 2;
+}
+
+int
+baz (const char *x, int y)
+{
+  return 1;
+}
+
+int xa, xb;
+
+static void *
+inl (const char *x, const char *y)
+{
+  T t = { &xa, &xb };
+  int *f = (int *) __builtin_malloc (sizeof (int));
+  const char *z;
+  int o = 0;
+  void *r = 0;
+
+  for (z = y; *z; z++)
+    {
+      if (*z == 'r')
+	o |= 1;
+      if (*z == 'w')
+	o |= 2;
+    }
+  if (o == 1)
+    *f = baz (x, 0);
+  if (o == 2)
+    *f = baz (x, 1);
+  if (o == 3)
+    *f = baz (x, 2);
+
+  if (o && *f > 0)
+    r = bar (f, "w", t);
+  return r;
+}
+
+void *
+foo (const char *x, const char *y)
+{
+  return inl (x, y);
+}

gcc45-pr38757.patch:
 c-lang.c        |   10 +++++++++-
 dwarf2out.c     |   19 ++++++++++++++++---
 langhooks-def.h |    4 +++-
 langhooks.h     |    4 ++++
 4 files changed, 32 insertions(+), 5 deletions(-)

--- NEW FILE gcc45-pr38757.patch ---
2009-03-18  Jakub Jelinek  <jakub at redhat.com>

	PR debug/38757
	* langhooks.h (struct lang_hooks): Add source_language langhook.
	* langhooks-def.h (LANG_HOOKS_SOURCE_LANGUAGE): Define to NULL.
	(LANG_HOOKS_INITIALIZER): Add LANG_HOOKS_SOURCE_LANGUAGE.
	* c-lang.c (c_source_language): New function.
	(LANG_HOOKS_SOURCE_LANGUAGE): Define.
	* dwarf2out.c (add_prototyped_attribute): Add DW_AT_prototype
	also for DW_LANG_{C,C99,ObjC}.
	(gen_compile_unit_die): Use lang_hooks.source_language () to
	determine if DW_LANG_C99 or DW_LANG_C89 should be returned.

--- gcc/langhooks.h.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/langhooks.h	2010-07-01 16:15:22.432616871 +0200
@@ -454,6 +454,10 @@ struct lang_hooks
      is enabled.  */
   bool eh_use_cxa_end_cleanup;
 
+  /* Return year of the source language standard version if the FE supports
+     multiple versions of the standard.  */
+  int (*source_language) (void);
+
   /* Whenever you add entries here, make sure you adjust langhooks-def.h
      and langhooks.c accordingly.  */
 };
--- gcc/langhooks-def.h.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/langhooks-def.h	2010-07-01 16:16:07.427460761 +0200
@@ -1,5 +1,5 @@
 /* Default macros to initialize the lang_hooks data structure.
-   Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008
+   Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009
    Free Software Foundation, Inc.
    Contributed by Alexandre Oliva  <aoliva at redhat.com>
 
@@ -111,6 +111,7 @@ extern void lhd_omp_firstprivatize_type_
 #define LANG_HOOKS_EH_PERSONALITY	lhd_gcc_personality
 #define LANG_HOOKS_EH_RUNTIME_TYPE	lhd_pass_through_t
 #define LANG_HOOKS_EH_USE_CXA_END_CLEANUP	false
+#define LANG_HOOKS_SOURCE_LANGUAGE	NULL
 
 /* Attribute hooks.  */
 #define LANG_HOOKS_ATTRIBUTE_TABLE		NULL
@@ -301,6 +302,7 @@ extern void lhd_end_section (void);
   LANG_HOOKS_EH_PERSONALITY, \
   LANG_HOOKS_EH_RUNTIME_TYPE, \
   LANG_HOOKS_EH_USE_CXA_END_CLEANUP, \
+  LANG_HOOKS_SOURCE_LANGUAGE, \
 }
 
 #endif /* GCC_LANG_HOOKS_DEF_H */
--- gcc/c-lang.c.jj	2010-06-30 09:48:30.000000000 +0200
+++ gcc/c-lang.c	2010-07-01 16:14:25.396197804 +0200
@@ -1,6 +1,6 @@
 /* Language-specific hook definitions for C front end.
    Copyright (C) 1991, 1995, 1997, 1998,
-   1999, 2000, 2001, 2003, 2004, 2005, 2007, 2008
+   1999, 2000, 2001, 2003, 2004, 2005, 2007, 2008, 2009
    Free Software Foundation, Inc.
 
 This file is part of GCC.
@@ -37,6 +37,12 @@ along with GCC; see the file COPYING3.  
 
 enum c_language_kind c_language = clk_c;
 
+static int
+c_source_language (void)
+{
+  return flag_isoc99 ? 1999 : 1989;
+}
+
 /* Lang hooks common to C and ObjC are declared in c-objc-common.h;
    consequently, there should be very few hooks below.  */
 
@@ -44,6 +50,8 @@ enum c_language_kind c_language = clk_c;
 #define LANG_HOOKS_NAME "GNU C"
 #undef LANG_HOOKS_INIT
 #define LANG_HOOKS_INIT c_objc_common_init
+#undef LANG_HOOKS_SOURCE_LANGUAGE
+#define LANG_HOOKS_SOURCE_LANGUAGE c_source_language
 
 /* Each front end provides its own lang hook initializer.  */
 struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER;
--- gcc/dwarf2out.c.jj	2010-07-01 14:07:41.000000000 +0200
+++ gcc/dwarf2out.c	2010-07-01 16:13:24.597354717 +0200
@@ -17150,9 +17150,18 @@ add_bit_size_attribute (dw_die_ref die, 
 static inline void
 add_prototyped_attribute (dw_die_ref die, tree func_type)
 {
-  if (get_AT_unsigned (comp_unit_die, DW_AT_language) == DW_LANG_C89
-      && TYPE_ARG_TYPES (func_type) != NULL)
-    add_AT_flag (die, DW_AT_prototyped, 1);
+  switch (get_AT_unsigned (comp_unit_die, DW_AT_language))
+    {
+    case DW_LANG_C:
+    case DW_LANG_C89:
+    case DW_LANG_C99:
+    case DW_LANG_ObjC:
+      if (TYPE_ARG_TYPES (func_type) != NULL)
+	add_AT_flag (die, DW_AT_prototyped, 1);
+      break;
+    default:
+      break;
+    }
 }
 
 /* Add an 'abstract_origin' attribute below a given DIE.  The DIE is found
@@ -19246,6 +19255,10 @@ gen_compile_unit_die (const char *filena
 	language = DW_LANG_ObjC;
       else if (strcmp (language_string, "GNU Objective-C++") == 0)
 	language = DW_LANG_ObjC_plus_plus;
+      else if (strcmp (language_string, "GNU C") == 0
+	       && lang_hooks.source_language
+	       && lang_hooks.source_language () >= 1999)
+	language = DW_LANG_C99;
     }
 
   add_AT_unsigned (die, DW_AT_language, language);

gcc45-pr44542.patch:
 cfgexpand.c |   17 ++++++++++++-----
 1 file changed, 12 insertions(+), 5 deletions(-)

--- NEW FILE gcc45-pr44542.patch ---
2010-06-17  Jakub Jelinek  <jakub at redhat.com>

	PR target/44542
	* cfgexpand.c (expand_one_stack_var_at): Limit align to maximum
	of max_used_stack_slot_alignment and PREFERRED_STACK_BOUNDARY
	instead of MAX_SUPPORTED_STACK_ALIGNMENT.
	(expand_one_var): Don't consider DECL_ALIGN for variables for
	which expand_one_stack_var_at has been already called.

--- gcc/cfgexpand.c.jj	2010-06-17 17:01:11.964198458 +0200
+++ gcc/cfgexpand.c	2010-06-17 18:25:18.940335757 +0200
@@ -705,7 +705,7 @@ static void
 expand_one_stack_var_at (tree decl, HOST_WIDE_INT offset)
 {
   /* Alignment is unsigned.   */
-  unsigned HOST_WIDE_INT align;
+  unsigned HOST_WIDE_INT align, max_align;
   rtx x;
 
   /* If this fails, we've overflowed the stack frame.  Error nicely?  */
@@ -722,10 +722,10 @@ expand_one_stack_var_at (tree decl, HOST
       offset -= frame_phase;
       align = offset & -offset;
       align *= BITS_PER_UNIT;
-      if (align == 0)
-	align = STACK_BOUNDARY;
-      else if (align > MAX_SUPPORTED_STACK_ALIGNMENT)
-	align = MAX_SUPPORTED_STACK_ALIGNMENT;
+      max_align = MAX (crtl->max_used_stack_slot_alignment,
+		       PREFERRED_STACK_BOUNDARY);
+      if (align == 0 || align > max_align)
+	align = max_align;
 
       DECL_ALIGN (decl) = align;
       DECL_USER_ALIGN (decl) = 0;
@@ -930,6 +930,13 @@ expand_one_var (tree var, bool toplevel,
 	align = MINIMUM_ALIGNMENT (TREE_TYPE (var),
 				   TYPE_MODE (TREE_TYPE (var)),
 				   TYPE_ALIGN (TREE_TYPE (var)));
+      else if (DECL_HAS_VALUE_EXPR_P (var)
+	       || (DECL_RTL_SET_P (var) && MEM_P (DECL_RTL (var))))
+	/* Don't consider debug only variables with DECL_HAS_VALUE_EXPR_P set
+	   or variables which were assigned a stack slot already by
+	   expand_one_stack_var_at - in the latter case DECL_ALIGN has been
+	   changed from the offset chosen to it.  */
+	align = crtl->stack_alignment_estimated;
       else
 	align = MINIMUM_ALIGNMENT (var, DECL_MODE (var), DECL_ALIGN (var));
 

gcc45-rh330771.patch:
 Makefile.am |    2 +-
 Makefile.in |    2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

--- NEW FILE gcc45-rh330771.patch ---
2007-10-16  Jakub Jelinek  <jakub at redhat.com>

	* Makefile.am (libgcj_tools_la_LIBADD): Add.
	* Makefile.in: Regenerated.

--- libjava/Makefile.am.jj	2009-05-06 08:14:50.000000000 +0200
+++ libjava/Makefile.am	2009-05-06 10:26:43.000000000 +0200
@@ -510,7 +510,7 @@ libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS
 libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \
  -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF)
-libgcj_tools_la_LIBADD = libgcj.la -lm
+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la -lm
 libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec
 if BUILD_SUBLIBS
 libgcj_tools_la_DEPENDENCIES += libgcj-noncore.la
--- libjava/Makefile.in.jj	2009-05-06 08:14:49.000000000 +0200
+++ libjava/Makefile.in	2009-05-06 10:27:18.000000000 +0200
@@ -1190,7 +1190,7 @@ libgcj_tools_la_LDFLAGS = -rpath $(toole
  -version-info `grep -v '^\#' $(srcdir)/libtool-version` \
  $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) $(LIBJAVA_LDFLAGS_NOUNDEF)
 
-libgcj_tools_la_LIBADD = libgcj.la -lm
+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la -lm
 libgcj_tools_la_DEPENDENCIES = libgcj.la libgcj.spec $(am__append_22)
 libgcj_tools_la_LINK = $(LIBLINK) $(libgcj_tools_la_LDFLAGS)
 libjvm_la_SOURCES = jni-libjvm.cc

gcc45-sparc-config-detection.patch:
 gcc/config.gcc     |    4 ++--
 libgcc/config.host |    4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

--- NEW FILE gcc45-sparc-config-detection.patch ---
--- gcc/config.gcc.jj	2008-04-24 15:42:46.000000000 -0500
+++ gcc/config.gcc	2008-04-24 15:44:51.000000000 -0500
@@ -2393,7 +2393,7 @@ sparc-*-elf*)
 	tmake_file="sparc/t-elf sparc/t-crtfm"
 	extra_parts="crti.o crtn.o crtbegin.o crtend.o"
 	;;
-sparc-*-linux*)		# SPARC's running GNU/Linux, libc6
+sparc-*-linux* | sparcv9*-*-linux*)		# SPARC's running GNU/Linux, libc6
 	tm_file="${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h linux.h glibc-stdint.h"
 	extra_options="${extra_options} sparc/long-double-switch.opt"
 	tmake_file="${tmake_file} sparc/t-linux"
@@ -2481,7 +2481,7 @@ sparc64-*-freebsd*|ultrasparc-*-freebsd*
 		*) echo "$with_cpu not supported for freebsd target"; exit 1 ;;
 	esac
 	;;
-sparc64-*-linux*)		# 64-bit SPARC's running GNU/Linux
+sparc64*-*-linux*)		# 64-bit SPARC's running GNU/Linux
 	tm_file="sparc/biarch64.h ${tm_file} dbxelf.h elfos.h svr4.h sparc/sysv4.h linux.h glibc-stdint.h sparc/linux64.h"
 	extra_options="${extra_options} sparc/long-double-switch.opt"
 	tmake_file="${tmake_file} sparc/t-linux sparc/t-linux64 sparc/t-crtfm"
--- libgcc/config.host.jj	2008-04-24 15:46:19.000000000 -0500
+++ libgcc/config.host	2008-04-24 15:46:49.000000000 -0500
@@ -572,7 +572,7 @@ sparc64-*-openbsd*)
 	;;
 sparc-*-elf*)
 	;;
-sparc-*-linux*)		# SPARC's running GNU/Linux, libc6
+sparc-*-linux* | sparcv9*-*-linux*)		# SPARC's running GNU/Linux, libc6
 	extra_parts="$extra_parts crtfastmath.o"
 	tmake_file="${tmake_file} sparc/t-crtfm"
 	;;
@@ -590,7 +590,7 @@ sparc-wrs-vxworks)
 	;;
 sparc64-*-freebsd*|ultrasparc-*-freebsd*)
 	;;
-sparc64-*-linux*)		# 64-bit SPARC's running GNU/Linux
+sparc64*-*-linux*)		# 64-bit SPARC's running GNU/Linux
 	extra_parts="$extra_parts crtfastmath.o"
 	tmake_file="${tmake_file} sparc/t-crtfm"
 	;;


Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/.cvsignore,v
retrieving revision 1.318
retrieving revision 1.319
diff -u -p -r1.318 -r1.319
--- .cvsignore	30 Jun 2010 07:32:29 -0000	1.318
+++ .cvsignore	7 Jul 2010 17:35:17 -0000	1.319
@@ -1,2 +1,2 @@
 fastjar-0.97.tar.gz
-gcc-4.4.4-20100630.tar.bz2
+gcc-4.5.0-20100707.tar.bz2


Index: gcc.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/gcc.spec,v
retrieving revision 1.100
retrieving revision 1.101
diff -u -p -r1.100 -r1.101
--- gcc.spec	30 Jun 2010 07:32:29 -0000	1.100
+++ gcc.spec	7 Jul 2010 17:35:17 -0000	1.101
@@ -1,16 +1,11 @@
-%global DATE 20100630
-%global SVNREV 161589
-%global gcc_version 4.4.4
+%global DATE 20100707
+%global SVNREV 161912
+%global gcc_version 4.5.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 10
+%global gcc_release 1
 %global _unpackaged_files_terminate_build 0
 %global multilib_64_archs sparc64 ppc64 s390x x86_64
-%if 0%{?fedora} >= 13 || 0%{?rhel} >= 6
-%global include_gappletviewer 0
-%else
-%global include_gappletviewer 1
-%endif
 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha
 %global build_ada 1
 %else
@@ -55,8 +50,6 @@ Group: Development/Languages
 # tar cf - gcc-%{version}-%{DATE} | bzip2 -9 > gcc-%{version}-%{DATE}.tar.bz2
 Source0: gcc-%{version}-%{DATE}.tar.bz2
 Source1: libgcc_post_upgrade.c
-Source2: README.libgcjwebplugin.so
-Source3: protoize.1
 %global fastjar_ver 0.97
 Source4: http://download.savannah.nongnu.org/releases/fastjar/fastjar-%{fastjar_ver}.tar.gz
 URL: http://gcc.gnu.org
@@ -70,12 +63,8 @@ BuildRoot: %{_tmppath}/%{name}-%{version
 # Need binutils which support --build-id >= 2.17.50.0.17-3
 # Need binutils which support %gnu_unique_object >= 2.19.51.0.14
 # Need binutils which support .cfi_sections >= 2.19.51.0.14-33
-%if 0%{?fedora} >= 13
 # Need binutils which support --no-add-needed >= 2.20.51.0.2-12
 BuildRequires: binutils >= 2.20.51.0.2-12
-%else
-BuildRequires: binutils >= 2.19.51.0.14-33
-%endif
 # While gcc doesn't include statically linked binaries, during testing
 # -static is used several times.
 BuildRequires: glibc-static
@@ -94,7 +83,8 @@ BuildRequires: gcc-java, libgcj
 # Make sure glibc supports stack protector
 # Make sure glibc supports DT_GNU_HASH
 BuildRequires: glibc-devel >= 2.4.90-13
-BuildRequires: elfutils-devel >= 0.72
+BuildRequires: elfutils-devel >= 0.147
+BuildRequires: elfutils-libelf-devel >= 0.147
 %ifarch ppc ppc64 s390 s390x sparc sparcv9 alpha
 # Make sure glibc supports TFmode long double
 BuildRequires: glibc >= 2.3.90-35
@@ -130,12 +120,8 @@ Requires: cpp = %{version}-%{release}
 # Need binutils that support --build-id
 # Need binutils that support %gnu_unique_object
 # Need binutils that support .cfi_sections
-%if 0%{?fedora} >= 13
 # Need binutils that support --no-add-needed
 Requires: binutils >= 2.20.51.0.2-12
-%else
-Requires: binutils >= 2.19.51.0.14-33
-%endif
 # Make sure gdb will understand DW_FORM_strp
 Conflicts: gdb < 5.1-2
 Requires: glibc-devel >= 2.2.90-12
@@ -156,25 +142,22 @@ Requires(post): /sbin/install-info
 Requires(preun): /sbin/install-info
 AutoReq: true
 
-Patch0: gcc44-hack.patch
-Patch1: gcc44-build-id.patch
-Patch2: gcc44-c++-builtin-redecl.patch
-Patch3: gcc44-ia64-libunwind.patch
-Patch4: gcc44-java-nomulti.patch
-Patch5: gcc44-ppc32-retaddr.patch
-Patch6: gcc44-pr33763.patch
-Patch7: gcc44-rh330771.patch
-Patch8: gcc44-i386-libgomp.patch
-Patch9: gcc44-sparc-config-detection.patch
-Patch10: gcc44-libgomp-omp_h-multilib.patch
-Patch11: gcc44-libtool-no-rpath.patch
-Patch12: gcc44-cloog-dl.patch
-Patch13: gcc44-unwind-debug-hook.patch
-Patch14: gcc44-pr38757.patch
-Patch15: gcc44-libstdc++-docs.patch
-Patch16: gcc44-ppc64-aixdesc.patch
-Patch17: gcc44-no-add-needed.patch
-Patch18: gcc44-pr44542.patch
+Patch0: gcc45-hack.patch
+Patch1: gcc45-build-id.patch
+Patch2: gcc45-c++-builtin-redecl.patch
+Patch4: gcc45-java-nomulti.patch
+Patch5: gcc45-ppc32-retaddr.patch
+Patch6: gcc45-pr33763.patch
+Patch7: gcc45-rh330771.patch
+Patch8: gcc45-i386-libgomp.patch
+Patch9: gcc45-sparc-config-detection.patch
+Patch10: gcc45-libgomp-omp_h-multilib.patch
+Patch11: gcc45-libtool-no-rpath.patch
+Patch12: gcc45-cloog-dl.patch
+Patch14: gcc45-pr38757.patch
+Patch15: gcc45-libstdc++-docs.patch
+Patch17: gcc45-no-add-needed.patch
+Patch18: gcc45-pr44542.patch
 
 Patch1000: fastjar-0.97-segfault.patch
 Patch1001: fastjar-0.97-len1.patch
@@ -198,11 +181,11 @@ Patch1004: fastjar-man.patch
 %endif
 
 %description
-The gcc package contains the GNU Compiler Collection version 4.4.
+The gcc package contains the GNU Compiler Collection version 4.5.
 You'll need this package in order to compile C code.
 
 %package -n libgcc
-Summary: GCC version 4.4 shared support library
+Summary: GCC version 4.5 shared support library
 Group: System Environment/Libraries
 Autoreq: false
 
@@ -297,7 +280,7 @@ Summary: Fortran support
 Group: Development/Languages
 Requires: gcc = %{version}-%{release}
 Requires: libgfortran = %{version}-%{release}
-BuildRequires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1
+BuildRequires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1, libmpc-devel >= 0.8.1
 Requires(post): /sbin/install-info
 Requires(preun): /sbin/install-info
 Autoreq: true
@@ -382,9 +365,6 @@ Requires: libart_lgpl >= 2.1.0
 %if %{build_java}
 BuildRequires: gtk2-devel >= 2.4.0
 BuildRequires: glib2-devel >= 2.4.0
-%if %{include_gappletviewer}
-BuildRequires: xulrunner-devel
-%endif
 BuildRequires: libart_lgpl-devel >= 2.1.0
 BuildRequires: alsa-lib-devel
 BuildRequires: libXtst-devel
@@ -492,7 +472,6 @@ GNAT is a GNU Ada 95 front-end to GCC. T
 %patch0 -p0 -b .hack~
 %patch1 -p0 -b .build-id~
 %patch2 -p0 -b .c++-builtin-redecl~
-%patch3 -p0 -b .ia64-libunwind~
 %patch4 -p0 -b .java-nomulti~
 %patch5 -p0 -b .ppc32-retaddr~
 %patch6 -p0 -b .pr33763~
@@ -504,15 +483,11 @@ GNAT is a GNU Ada 95 front-end to GCC. T
 %if %{build_cloog}
 %patch12 -p0 -b .cloog-dl~
 %endif
-%patch13 -p0 -b .unwind-debug-hook~
 %patch14 -p0 -b .pr38757~
 %if %{build_libstdcxx_docs}
 %patch15 -p0 -b .libstdc++-docs~
 %endif
-%patch16 -p0 -b .ppc64-aixdesc~
-%if 0%{?fedora} >= 13
 %patch17 -p0 -b .no-add-needed~
-%endif
 %patch18 -p0 -b .pr44542~
 
 # This testcase doesn't compile.
@@ -530,7 +505,7 @@ tar xzf %{SOURCE4}
 tar xjf %{SOURCE10}
 %endif
 
-sed -i -e 's/4\.4\.5/4.4.4/' gcc/BASE-VER
+sed -i -e 's/4\.5\.1/4.5.0/' gcc/BASE-VER
 echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE
 
 # Default to -gdwarf-3 rather than -gdwarf-2
@@ -649,25 +624,23 @@ case "$OPT_FLAGS" in
       ../gcc/Makefile.in
     ;;
 esac
-CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`" XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" \
-	GCJFLAGS="$OPT_FLAGS" \
+CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`" \
+	XCFLAGS="$OPT_FLAGS" TCFLAGS="$OPT_FLAGS" GCJFLAGS="$OPT_FLAGS" \
 	../configure --prefix=%{_prefix} --mandir=%{_mandir} --infodir=%{_infodir} \
 	--with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap \
 	--enable-shared --enable-threads=posix --enable-checking=release \
 	--with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions \
 	--enable-gnu-unique-object \
 %if !%{build_ada}
-	--enable-languages=c,c++,objc,obj-c++,java,fortran \
+	--enable-languages=c,c++,objc,obj-c++,java,fortran,lto \
 %else
-	--enable-languages=c,c++,objc,obj-c++,java,fortran,ada \
+	--enable-languages=c,c++,objc,obj-c++,java,fortran,ada,lto \
 %endif
+	--enable-plugin \
 %if !%{build_java}
 	--disable-libgcj \
 %else
 	--enable-java-awt=gtk --disable-dssi \
-%if %{include_gappletviewer}
-	--enable-plugin \
-%endif
 	--with-java-home=%{_prefix}/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre \
 	--enable-libgcj-multifile \
 %if !%{bootstrap_java}
@@ -724,9 +697,6 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`
 #GCJFLAGS="$OPT_FLAGS" make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" bootstrap
 GCJFLAGS="$OPT_FLAGS" make %{?_smp_mflags} BOOT_CFLAGS="$OPT_FLAGS" profiledbootstrap
 
-# Make protoize
-make -C gcc CC="./xgcc -B ./ -O2" proto
-
 # Make generated man pages even if Pod::Man is not new enough
 perl -pi -e 's/head3/head2/' ../contrib/texi2pod.pl
 for i in ../gcc/doc/*.texi; do
@@ -748,7 +718,6 @@ cd ..
 mkdir -p rpm.doc/gfortran rpm.doc/objc
 mkdir -p rpm.doc/boehm-gc rpm.doc/fastjar rpm.doc/libffi rpm.doc/libjava
 mkdir -p rpm.doc/changelogs/{gcc/cp,gcc/java,gcc/ada,libstdc++-v3,libobjc,libmudflap,libgomp}
-sed -e 's, at VERSION@,%{gcc_version},' %{SOURCE2} > rpm.doc/README.libgcjwebplugin.so
 
 for i in {gcc,gcc/cp,gcc/java,gcc/ada,libstdc++-v3,libobjc,libmudflap,libgomp}/ChangeLog*; do
 	cp -p $i rpm.doc/changelogs/$i
@@ -878,9 +847,9 @@ rm -rf %{buildroot}%{_prefix}/include/c+
 libstdcxx_doc_builddir=%{gcc_target_platform}/libstdc++-v3/doc/doxygen
 mkdir -p ../rpm.doc/libstdc++-v3
 cp -r -p ../libstdc++-v3/doc/html ../rpm.doc/libstdc++-v3/html
-mv $libstdcxx_doc_builddir/html ../rpm.doc/libstdc++-v3/html/api
+cp -r -p $libstdcxx_doc_builddir/html ../rpm.doc/libstdc++-v3/html/api
 mkdir -p %{buildroot}%{_mandir}
-mv $libstdcxx_doc_builddir/man/man3 %{buildroot}%{_mandir}/man3/
+cp -r -p $libstdcxx_doc_builddir/man/man3 %{buildroot}%{_mandir}/man3/
 find ../rpm.doc/libstdc++-v3 -name \*~ | xargs rm
 %endif
 
@@ -974,10 +943,14 @@ if [ "%{_lib}" != "lib" ]; then
 fi
 %endif
 
+mkdir -p %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}
+mv -f %{buildroot}%{_prefix}/%{_lib}/libstdc++*gdb.py* \
+      %{buildroot}%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
+
 pushd $FULLPATH
 if [ "%{_lib}" = "lib" ]; then
 ln -sf ../../../libobjc.so.2 libobjc.so
-ln -sf ../../../libstdc++.so.6.* libstdc++.so
+ln -sf ../../../libstdc++.so.6.*[0-9] libstdc++.so
 ln -sf ../../../libgfortran.so.3.* libgfortran.so
 ln -sf ../../../libgomp.so.1.* libgomp.so
 ln -sf ../../../libmudflap.so.0.* libmudflap.so
@@ -989,7 +962,7 @@ ln -sf ../../../libgij.so.10.* libgij.so
 %endif
 else
 ln -sf ../../../../%{_lib}/libobjc.so.2 libobjc.so
-ln -sf ../../../../%{_lib}/libstdc++.so.6.* libstdc++.so
+ln -sf ../../../../%{_lib}/libstdc++.so.6.*[0-9] libstdc++.so
 ln -sf ../../../../%{_lib}/libgfortran.so.3.* libgfortran.so
 ln -sf ../../../../%{_lib}/libgomp.so.1.* libgomp.so
 ln -sf ../../../../%{_lib}/libmudflap.so.0.* libmudflap.so
@@ -1022,28 +995,28 @@ mv -f $FULLPATH/ada{include,lib} $FULLLP
 pushd $FULLLPATH/adalib
 if [ "%{_lib}" = "lib" ]; then
 ln -sf ../../../../../libgnarl-*.so libgnarl.so
-ln -sf ../../../../../libgnarl-*.so libgnarl-4.4.so
+ln -sf ../../../../../libgnarl-*.so libgnarl-4.5.so
 ln -sf ../../../../../libgnat-*.so libgnat.so
-ln -sf ../../../../../libgnat-*.so libgnat-4.4.so
+ln -sf ../../../../../libgnat-*.so libgnat-4.5.so
 else
 ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl.so
-ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl-4.4.so
+ln -sf ../../../../../../%{_lib}/libgnarl-*.so libgnarl-4.5.so
 ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat.so
-ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat-4.4.so
+ln -sf ../../../../../../%{_lib}/libgnat-*.so libgnat-4.5.so
 fi
 popd
 else
 pushd $FULLPATH/adalib
 if [ "%{_lib}" = "lib" ]; then
 ln -sf ../../../../libgnarl-*.so libgnarl.so
-ln -sf ../../../../libgnarl-*.so libgnarl-4.4.so
+ln -sf ../../../../libgnarl-*.so libgnarl-4.5.so
 ln -sf ../../../../libgnat-*.so libgnat.so
-ln -sf ../../../../libgnat-*.so libgnat-4.4.so
+ln -sf ../../../../libgnat-*.so libgnat-4.5.so
 else
 ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl.so
-ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl-4.4.so
+ln -sf ../../../../../%{_lib}/libgnarl-*.so libgnarl-4.5.so
 ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat.so
-ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat-4.4.so
+ln -sf ../../../../../%{_lib}/libgnat-*.so libgnat-4.5.so
 fi
 popd
 fi
@@ -1051,7 +1024,7 @@ fi
 
 %ifarch sparcv9 ppc
 ln -sf ../../../../../lib64/libobjc.so.2 64/libobjc.so
-ln -sf ../`echo ../../../../lib/libstdc++.so.6.* | sed s~/lib/~/lib64/~` 64/libstdc++.so
+ln -sf ../`echo ../../../../lib/libstdc++.so.6.*[0-9] | sed s~/lib/~/lib64/~` 64/libstdc++.so
 ln -sf ../`echo ../../../../lib/libgfortran.so.3.* | sed s~/lib/~/lib64/~` 64/libgfortran.so
 ln -sf ../`echo ../../../../lib/libgomp.so.1.* | sed s~/lib/~/lib64/~` 64/libgomp.so
 rm -f libmudflap.so libmudflapth.so
@@ -1087,7 +1060,7 @@ ln -sf ../lib64/adalib 64/adalib
 %ifarch %{multilib_64_archs}
 mkdir -p 32
 ln -sf ../../../../libobjc.so.2 32/libobjc.so
-ln -sf ../`echo ../../../../lib64/libstdc++.so.6.* | sed s~/../lib64/~/~` 32/libstdc++.so
+ln -sf ../`echo ../../../../lib64/libstdc++.so.6.*[0-9] | sed s~/../lib64/~/~` 32/libstdc++.so
 ln -sf ../`echo ../../../../lib64/libgfortran.so.3.* | sed s~/../lib64/~/~` 32/libgfortran.so
 ln -sf ../`echo ../../../../lib64/libgomp.so.1.* | sed s~/../lib64/~/~` 32/libgomp.so
 rm -f libmudflap.so libmudflapth.so
@@ -1226,10 +1199,6 @@ chmod 755 %{buildroot}%{_prefix}/share/j
 touch %{buildroot}%{_prefix}/%{_lib}/gcj-%{version}/classmap.db
 %endif
 
-install -m644 %{SOURCE3} %{buildroot}%{_mandir}/man1/protoize.1
-echo '.so man1/protoize.1' > %{buildroot}%{_mandir}/man1/unprotoize.1
-chmod 644 %{buildroot}%{_mandir}/man1/unprotoize.1
-
 %check
 cd obj-%{gcc_target_platform}
 
@@ -1390,8 +1359,6 @@ fi
 %{_prefix}/bin/c99
 %{_prefix}/bin/gcc
 %{_prefix}/bin/gcov
-%{_prefix}/bin/protoize
-%{_prefix}/bin/unprotoize
 %ifarch ppc
 %{_prefix}/bin/%{_target_platform}-gcc
 %endif
@@ -1404,8 +1371,6 @@ fi
 %{_prefix}/bin/%{gcc_target_platform}-gcc
 %{_mandir}/man1/gcc.1*
 %{_mandir}/man1/gcov.1*
-%{_mandir}/man1/protoize.1*
-%{_mandir}/man1/unprotoize.1*
 %{_infodir}/gcc*
 %dir %{_prefix}/lib/gcc
 %dir %{_prefix}/lib/gcc/%{gcc_target_platform}
@@ -1414,7 +1379,8 @@ fi
 %dir %{_prefix}/libexec/gcc/%{gcc_target_platform}
 %dir %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}
 %dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include
-%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/SYSCALLS.c.X
+%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/lto1
+%{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/lto-wrapper
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/stddef.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/stdarg.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/stdfix.h
@@ -1426,6 +1392,8 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/syslimits.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/unwind.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/omp.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/stdint.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/stdint-gcc.h
 %ifarch %{ix86} x86_64
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/mmintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/xmmintrin.h
@@ -1445,6 +1413,7 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/lwpintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/abmintrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/popcntintrin.h
+%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/ia32intrin.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/mm_malloc.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/mm3dnow.h
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/cpuid.h
@@ -1565,6 +1534,13 @@ fi
 %files -n libstdc++
 %defattr(-,root,root,-)
 %{_prefix}/%{_lib}/libstdc++.so.6*
+%dir %{_datadir}/gdb
+%dir %{_datadir}/gdb/auto-load
+%dir %{_datadir}/gdb/auto-load/%{_prefix}
+%dir %{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/
+%{_datadir}/gdb/auto-load/%{_prefix}/%{_lib}/libstdc*gdb.py*
+%dir %{_prefix}/share/gcc-%{gcc_version}
+%{_prefix}/share/gcc-%{gcc_version}/python
 
 %files -n libstdc++-devel
 %defattr(-,root,root,-)
@@ -1597,7 +1573,6 @@ fi
 %endif
 %doc rpm.doc/changelogs/libstdc++-v3/ChangeLog* libstdc++-v3/README*
 
-%if 0%{?fedora} >= 14
 %files -n libstdc++-static
 %defattr(-,root,root,-)
 %dir %{_prefix}/lib/gcc
@@ -1617,7 +1592,6 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/libstdc++.a
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/libsupc++.a
 %endif
-%endif
 
 %if %{build_libstdcxx_docs}
 %files -n libstdc++-docs
@@ -1760,10 +1734,6 @@ fi
 %{_prefix}/bin/gorbd
 %{_prefix}/bin/gserialver
 %{_prefix}/bin/gcj-dbtool
-%if %{include_gappletviewer}
-%{_prefix}/bin/gappletviewer
-%{_mandir}/man1/gappletviewer.1*
-%endif
 %{_prefix}/bin/gjarsigner
 %{_mandir}/man1/fastjar.1*
 %{_mandir}/man1/grepjar.1*
@@ -1789,9 +1759,6 @@ fi
 %{_prefix}/%{_lib}/gcj-%{version}/libgtkpeer.so
 %{_prefix}/%{_lib}/gcj-%{version}/libgjsmalsa.so
 %{_prefix}/%{_lib}/gcj-%{version}/libjawt.so
-%if %{include_gappletviewer}
-%{_prefix}/%{_lib}/gcj-%{version}/libgcjwebplugin.so
-%endif
 %{_prefix}/%{_lib}/gcj-%{version}/libjvm.so
 %{_prefix}/%{_lib}/gcj-%{version}/libjavamath.so
 %dir %{_prefix}/share/java
@@ -1802,9 +1769,6 @@ fi
 %{_prefix}/%{_lib}/logging.properties
 %dir %{_prefix}/%{_lib}/gcj-%{version}/classmap.db.d
 %attr(0644,root,root) %verify(not md5 size mtime) %ghost %config(missingok,noreplace) %{_prefix}/%{_lib}/gcj-%{version}/classmap.db
-%if %{include_gappletviewer}
-%doc rpm.doc/README.libgcjwebplugin.so
-%endif
 
 %files -n libgcj-devel
 %defattr(-,root,root,-)
@@ -1888,30 +1852,23 @@ fi
 %dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib32
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib32/adainclude
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib32/adalib
-%if 0%{?fedora} >= 14
 %exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib32/adalib/libgnat.a
 %exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib32/adalib/libgnarl.a
 %endif
-%endif
 %ifarch sparc64 ppc64
 %dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib64
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib64/adainclude
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib64/adalib
-%if 0%{?fedora} >= 14
 %exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib64/adalib/libgnat.a
 %exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/lib64/adalib/libgnarl.a
 %endif
-%endif
 %ifnarch sparcv9 sparc64 ppc ppc64
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/adainclude
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/adalib
-%if 0%{?fedora} >= 14
 %exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/adalib/libgnat.a
 %exclude %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/adalib/libgnarl.a
 %endif
-%endif
 
-%if 0%{?fedora} >= 14
 %files -n libgnat-static
 %defattr(-,root,root,-)
 %dir %{_prefix}/lib/gcc
@@ -1935,7 +1892,6 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/adalib/libgnarl.a
 %endif
 %endif
-%endif
 
 %files -n libgomp
 %defattr(-,root,root,-)
@@ -1977,7 +1933,6 @@ fi
 %endif
 %doc rpm.doc/changelogs/libmudflap/ChangeLog*
 
-%if 0%{?fedora} >= 14
 %files -n libmudflap-static
 %defattr(-,root,root,-)
 %dir %{_prefix}/lib/gcc
@@ -1997,993 +1952,7 @@ fi
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/libmudflap.a
 %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/libmudflapth.a
 %endif
-%endif
 
 %changelog
-* Wed Jun 30 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-10
-- update from gcc-4_4-branch
-  - PRs fortran/43841, fortran/43843, tree-optimization/44683
-  - fix qualified-id as template argument handling (#605761, PR c++/44587)
-- -Wunused-but-set-* static_cast fix (PR c++/44682)
-- VTA backports
-  - PRs debug/44610, debug/44668, debug/44694
-- unswitching fixes (PR middle-end/43866)
-
-* Thu Jun 24 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-9
-- update from gcc-4_4-branch
-  - PRs bootstrap/44426, bootstrap/44544, c++/44627, fortran/44536,
-	libgcj/44216, target/39690, target/43740, target/44261, target/44481,
-	target/44534, target/44615, testsuite/32843, testsuite/43739,
-	tree-optimization/44508
-- VTA backports
-  - PRs debug/43650, debug/44181, debug/44247
-- -Wunused-but-set-* ->*/.* fix (PR c++/44619)
-- undeprecate #ident and #sccs (#606069)
-%if 0%{?fedora} >= 14
-- fix up libgnat-static
-%endif
-- fixup dates in generated man pages even for fastjar and gcc/ man pages
-- don't realign stack on x86/x86-64 just because a DECL_ALIGN was set
-  too high by expansion code (#603924, PR target/44542)
-- don't allow side-effects in inline-asm memory operands unless
-  < or > is present in operand's constraint (#602359, PR middle-end/44492)
-
-* Fri Jun 11 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-8
-- update from gcc-4_4-branch
-  - fix demangler (PR other/43838)
-- VTA backports
-  - further var-tracking speedup (#598310, PR debug/41371)
-- for typedefs in non-template classes adjust underlying type to
-  emit proper debug info (#601893)
-- fix up fastjar directory traversal bugs (CVE-2010-0831)
-
-* Tue Jun  8 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-7
-- update from gcc-4_4-branch
-  - PRs c++/43555, fortran/42900, fortran/44360, libfortran/41169,
-	libgcj/38251, libobjc/36610, libstdc++/32499, pch/14940,
-	rtl-optimization/39580, target/44075, target/44169, target/44199
-- VTA backports
-  - PRs debug/44367, debug/44375, rtl-optimization/44013,
-	tree-optimization/44182
-  - speed up var-tracking (#598310, PR debug/41371)
-- -Wunused-but-set-* bugfixes
-  - PRs c++/44361, c++/44362, c++/44412, c++/44443, c++/44444
-- fix -mno-fused-madd -mfma4 on i?86/x86_64 (PR target/44338)
-- use GCJ_PROPERTIES=jdt.compiler.useSingleThread=true when
-  building classes with ecj1 (#524155)
-%if 0%{?fedora} >= 14
-- add some static subpackages (#556049)
-%endif
-
-* Tue May 25 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-5
-- update from gcc-4_4-branch
-  - PRs bootstrap/43870, debug/44205, target/43733, target/44074,
-	target/44202, target/44245, tree-optimization/43845
-  - fix cv-qual issue with function types (#593750, PR c++/44193)
-- VTA backports
-  - PRs debug/41371, debug/42801, debug/43260, debug/43521
-
-* Tue May 18 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-4
-- update from gcc-4_4-branch
-  - PR fortran/44135
-- C++ -Wunused-but-set-variable fix (PR c++/44108)
-- avoid C++ gimplification affecting mangling (#591635, PR c++/44148)
-- asm goto fixes (PRs middle-end/44102, bootstrap/42347)
-- VTA backports
-  - PRs debug/41371, debug/44112
-
-* Fri May 14 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-3
-- update from gcc-4_4-branch
-  - PRs debug/43370, documentation/44016, fortran/44036, middle-end/43671,
-	middle-end/44085, target/43744
-- make comdat guards of STB_GNU_UNIQUE variables also STB_GNU_UNIQUE
-  (PR c++/44059)
-- VTA backports
-  - PRs debug/42278, debug/43950, debug/43983,debug/44104, debug/44136
-  - fix up .debug_macinfo (#479914)
-- asm goto fixes (PRs middle-end/44071, middle-end/42739)
-- fix up -march=native (PR target/44046)
-- C++ -Wunused-but-set-{variable,parameter} support, fixes for C support
-  (#538266, PRs c++/44062, c/43981)
-- -march=bdver1 and -mtune=bdver1 support
-
-* Mon May  3 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-2
-- fix VTA ICE on subregs of @GOTPCREL symbols (#588154, PR debug/43972)
-
-* Fri Apr 30 2010 Jakub Jelinek <jakub at redhat.com> 4.4.4-1
-- update from gcc-4_4-branch
-  - GCC 4.4.4 release
-- VTA backports
-  - PR target/43921
-
-* Tue Apr 27 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-19
-- Power7 backports (#584993, #585005)
-  - PRs tree-optimization/43544, target/41787, target/43154, middle-end/42431,
-	rtl-optimization/43413
-- add @GCC_4.5.0 symbols to libgcc_s
-  - PRs target/43383, other/25232
-- force DW_CFA_def_cfa instead of DW_CFA_def_cfa_{register,offset{,_sf}}
-  after DW_CFA_def_cfa_expression
-- make sure _Unwind_DebugHook uses standard calling convention
-- #pragma omp for fix (PR c/43893)
-
-* Thu Apr 22 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-18
-- update from gcc-4_4-branch
-  - PRs fortran/43339, fortran/43836, libgcj/40860, libgomp/43569,
-	libgomp/43706, libstdc++/40518, middle-end/43337, middle-end/43570,
-	tree-optimization/43769, tree-optimization/43771
-  - fix ICE when compiling 64-bit Wine (#583501, PR target/43662)
-- VTA backports
-  - PRs debug/40040, debug/43762
-- add support for -Wunused-but-set-{parameter,variable} non-default
-  warnings for C (#538266, PRs c/18624, bootstrap/43699)
-
-* Fri Apr  9 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-16
-- update from gcc-4_4-branch
-  - PRs ada/41912, fortran/43539, middle-end/42956, middle-end/43614,
-	target/38085, target/43458, target/43643, target/43668,
-	tree-optimization/43186, tree-optimization/43560,
-	tree-optimization/43607, tree-optimization/43629
-- VTA backports
-  - PR debug/43670
-- fix xop-vpermil2p* tests (target/43103)
-
-* Wed Apr  7 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-15
-- update from gcc-4_4-branch
-  - PRs libfortran/43605, target/43638
-- AMD XOP fixes (#579493, PRs target/42664, target/43667)
-- fix raw string support on big endian hosts (PR preprocessor/43642)
-- allow -gdwarf-4 option
-
-* Thu Apr  1 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-14
-- update from gcc-4_4-branch
-  - PRs other/43562, c++/41185, c++/41786, fortran/43409, fortran/43551,
-	libfortran/43409, middle-end/43600, target/39254, target/43524,
-	tree-optimization/43528
-- update raw string support to match N3077
-- VTA backports
-  - PRs bootstrap/43596, debug/42977, debug/43557, debug/43593,
-	target/43580
-
-* Sat Mar 27 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-13
-- update from gcc-4_4-branch
-  - PRs c/43381, libfortran/43517, target/42113
-- VTA backports
-  - PRs debug/43516, debug/43540
-
-* Thu Mar 25 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-12
-- update from gcc-4_4-branch
-  - PRs c/43385, target/43348, tree-optimization/43415
-- VTA backports
-  - PRs bootstrap/43511, debug/19192, debug/43479, debug/43508
-- provide unwind info even for C++ thunks on x86, x86-64 and s390{,x}
-  (PR target/43498)
-- provide unwind info for x86 PIC thunks even when not using CFI assembler
-  directives (PR debug/43293)
-
-* Mon Mar 22 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-11
-- update from gcc-4_4-branch
-  - PRs c++/43116, libfortran/43265, libgomp/42942, middle-end/42718,
-	middle-end/43419, rtl-optimization/43360, rtl-optimization/43438,
-	target/43305, target/43417
-- VTA backports
-  - PRs bootstrap/43399, bootstrap/43403, debug/42873, debug/43058,
-	debug/43443, target/43399
-
-* Tue Mar 16 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-10
-- update from gcc-4_4-branch
-  - PRs fortran/43228, fortran/43303, libfortran/43265, libfortran/43320
-- VTA backports
-  - PRs debug/36728, debug/43051, debug/43092, debug/43290,
-	tree-optimization/42917, tree-optimization/43317
-  - fix non-localized vars handling and forwarder block merging
-    (#572260, PR debug/43329)
-%if 0%{?rhel} >= 6
-- remove gappletviewer, gcjwebplugin and related files even for
-  RHEL, as xulrunner got updated to 1.9.2.1
-%endif
-
-* Tue Mar  9 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-9
-- update from gcc-4_4-branch
-  - PRs ada/42253, bootstrap/43121, c/43248, tree-optimization/43220
-- VTA backports
-  - PRs debug/42897, debug/43176, debug/43177, debug/43229, debug/43237,
-	debug/43290, debug/43299, debug/43304
-- fix unwind info in i?86 PIC register setup sequences (PR debug/43293)
-
-* Fri Feb 26 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-8
-- update from gcc-4_4-branch
-  - PR libstdc++/21769
-- VTA backports
-  - PRs debug/42800, debug/43077, debug/43150, debug/43160, debug/43161,
-	debug/43165, debug/43166, debug/43190, target/43139
-- fix alignment of some stack vars (PR middle-end/39315)
-
-* Sun Feb 21 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-7
-- update from gcc-4_4-branch
-  - PRs c++/43024, c++/43033, fortran/41869, target/40887,
-	tree-optimization/42871, tree-optimization/43074
-- VTA backports (PRs debug/42918, debug/43084)
-- --enable-decimal-float on s390{,x} (#565871)
-- improve __builtin_expect handling, propagate branch probabilities
-  during expansion even for sequences with more than one jump
-  (PR middle-end/42233)
-
-* Thu Feb 11 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-6
-- update from gcc-4_4-branch
-  - PR tree-optimization/42705
-  - fix up -femit-struct-debug-baseonly (#561320, PR debug/43010)
-  - --enable-checking=valgrind bugfixes (PRs fortran/43029, fortran/43030)
-- VTA backports (#562312)
-- some further --enable-checking=valgrind bugfixes (PR target/38781)
-
-* Mon Feb  8 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-5
-- update from gcc-4_4-branch
-  - PRs fortran/38324, fortran/41044, fortran/41167, fortran/42309,
-	fortran/42650, fortran/42736, libfortran/42901, middle-end/42898,
-	middle-end/42995, rtl-optimization/42952, tree-optimization/42462,
-	tree-optimization/42890, tree-optimization/42931
-- VTA backports
-  - PRs target/42924, debug/42896, rtl-optimization/42889
-%if 0%{?fedora} >= 13
-- pass --no-add-needed to the linker
-%endif
-
-* Wed Jan 27 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-4
-- update from gcc-4_4-branch
-  - PRs bootstrap/42786, fortran/42866, target/38697, target/42841
-- fix up handling of constant pool elements in dwarf2out
-- fix acats norun.lst handling
-- fix asm redirection of builtin ffs on 64-bit arches (#559186)
-
-* Mon Jan 25 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-3
-- VTA improvements (#556975, PR debug/42861)
-
-* Sat Jan 23 2010 Dennis Gilmore <dennis at ausil.us> 4.4.3-2
-- use gas .section syntax (#530847)
-
-* Thu Jan 21 2010 Jakub Jelinek <jakub at redhat.com> 4.4.3-1
-- update from gcc-4_4-branch
-  - GCC 4.4.3 release
-- don't insert DEBUG_STMTs after stmts that can throw, instead insert them
-  at the start of the next bb
-
-* Thu Jan 21 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-28
-- update from gcc-4_4-branch
-  - PRs middle-end/42803, rtl-optimization/42691, target/42542, target/42774,
-	tree-optimization/41826, tree-optimization/42773
-  - fix DW_OP_mod handling in the unwinder
-- VTA backports
-  - PRs debug/42782, debug/42767
-  - avoid dead VALUES to magically reappear during var-tracking
-    (#557068, PR debug/42715)
-  - don't assume non-addressable automatic MEMs die at each call
-    during var-tracking (#556975, PR debug/42728)
-
-* Fri Jan 15 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-27
-- fix ICE with std::complex<float> copy (#555705, PR middle-end/42760)
-- avoid exponential hangs in gen_lsm_tmp_name
-
-* Fri Jan 15 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-26
-- update from gcc-4_4-branch
-  - PR c++/42655
-
-* Thu Jan 14 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-25
-- update from gcc-4_4-branch
-  - PRs c/42721, middle-end/40281, middle-end/42667, rtl-optimization/42699
-- re-add --param max-vartrack-size patch, but this time with default 50mil
-  instead of 5mil (#531218, #548826)
-- don't emit -Wreturn-type warnings in noreturn functions
-  (PR middle-end/42674)
-- march=native fixes for ix86/x86_64
-
-* Tue Jan 12 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-24
-- update from gcc-4_4-branch
-  - PRs debug/42662, libjava/40859
-- speed up var-tracking on various KDE sources (PR debug/41371)
-- revert --param max-vartrack-size=NNNN hack
-- fix up epilogue unwinding with -fsched2-use-superblocks (PR middle-end/41883)
-- fix a -fcompare-debug failure (PR tree-optimization/42645)
-- don't make undef symbols weak just because they are known to have C++ vague
-  linkage (PR c++/42608)
-
-* Sat Jan  9 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-23
-- update from gcc-4_4-branch
-  - PRs target/42511, target/42542, target/42564
-- VTA backports
-  - PRs debug/42630, debug/42631
-- improve construction of ppc64 constants between 0x80000000 and 0xffffffff
-- fix inliner and var-tracking not to drop location info needlessly in certain
-  cases (#552376, PR debug/42657)
-
-* Wed Jan  6 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-22
-- add --param max-vartrack-size=NNNN parameter, give up on
-  -fvar-tracking-assignments if var-tracking hash tables are over that limit
-- fix VTA bugs in the vectorizer (PRs debug/42604, debug/42395)
-- fix VTA bug with noreturn calls (PR middle-end/42363)
-
-* Tue Jan  5 2010 Jakub Jelinek <jakub at redhat.com> 4.4.2-21
-- update from gcc-4_4-branch
-  - PRs c++/42331, middle-end/41344, middle-end/42099, other/42611,
-	rtl-optimization/42475, target/40134, target/42448, target/42503,
-	target/42549, tree-optimization/41956, tree-optimization/42231,
-	tree-optimization/42337, tree-optimization/42614
-- fix -m*=native with several sources on the command line (PR driver/42442)
-- avoid code size differences from traversing decl hash tables hashed by uid
-  if uid gap sizes differ
-- fix .debug_ranges with -ffunction-sections (PR debug/42454)
-
-* Tue Dec 22 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-20
-- fix MEM_SIZE of reload created stack slots (#548825,
-  PR rtl-optimization/42429)
-%if !%{include_gappletviewer}
-- remove gappletviewer, gcjwebplugin and related files for F13 (#548783)
-%endif
-- fix addition of one character long filenames in fastjar (#549493)
-
-* Thu Dec 17 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-18
-- update from gcc-4_4-branch
-  - PRs c++/42387
-- another C++ virtual dtors fix (PR c++/42386)
-- VTA mode and COND_EXEC fixes (PR debug/41679)
-- fix ICE in chrec_convert_1 (#547775)
-- fix debuginfo for optimized out TLS vars
-- use DW_AT_location with DW_OP_addr + DW_OP_stack_value instead of
-  DW_AT_const_value with address in it, use DW_OP_addr + DW_OP_stack_value
-  instead of DW_OP_implicit_value with address (#546017)
-
-* Mon Dec 14 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-17
-- propagate TREE_NOTHROW/TREE_READONLY/DECL_PURE_P from ipa-pure-const and
-  EH opt to all same body aliases (#547286)
-- don't emit DWARF location list entries with no location or DW_AT_location
-  with empty blocks (PR debug/41473)
-- fix up AMD LWP support
-- don't crash when mangling C++ decls inside of middle-end generated functions
-  (PR c++/41183)
-
-* Fri Dec 11 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-16
-- update from gcc-4_4-branch
-  - PRs c++/27425, c++/34274, c++/42301, fortran/42268, java/41991,
-	libstdc++/42273, rtl-optimization/41574, target/41196, target/41939
-	target/42263
-
-* Wed Dec  9 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-15
-- VTA backports
-  - PRs debug/42166, debug/42234, debug/42244, debug/42299
-- fix handling of C++ COMDAT virtual destructors
-- some x86/x86_64 FMA4, XOP, ABM and LWP fixes
-- fix a decltype handling bug in templates (PR c++/42277)
-
-* Fri Dec  4 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-14
-- update from gcc-4_4-branch
-  - PRs libstdc++/42261, middle-end/42049
-- backport C++0x ICE fix from trunk (PR c++/42266)
-- fortran !$omp workshare improvements (PR fortran/35423)
-- FMA4 and XOP fixes
-
-* Wed Dec  2 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-13
-- fix security issues in libltdl bundled within libgcj (CVE-2009-3736)
-
-* Wed Dec  2 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-12
-- update from gcc-4_4-branch
-  - PRs c++/42234, fortran/41278, fortran/41807, fortran/42162, target/42113,
-	target/42165
-  - don't ICE on -O256 (#539923)
-- fix -mregnames on ppc/ppc64
-- optimize even COMDAT constructors and destructors without virtual
-  bases (PR c++/3187)
-
-* Mon Nov 23 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-11
-- update from gcc-4_4-branch
-  - PRs c++/42059, c++/42061, libgfortran/42090
-- VTA backports
-  - PRs debug/41886, debug/41888, debug/41926, tree-optimization/42078
-- optimize non-COMDAT constructors and destructors without virtual
-  bases by making the base and complete ctor or dtor aliases of
-  each other (PR c++/3187)
-
-* Sat Nov 14 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-10
-- update from gcc-4_4-branch
-  - PRs c++/21008, c++/37037, c++/41972, c++/41994, middle-end/40946,
-	middle-end/42029
-- VTA backports
-  - PR middle-end/41930
-- optimize deleting destructors for size (PR c++/3187)
-- try to avoid file Requires by requiring package%%{?_isa} (#533947)
-
-* Mon Nov  9 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-9
-- update from gcc-4_4-branch
-  - PRs c++/35067, c++/36912, c++/36959, c++/37093, c++/38699, c++/39786,
-	c++/41856, c++/41876, c++/41967, c++/9381, fortran/41772,
-	fortran/41909, middle-end/41963, rtl-optimization/41917,
-	target/41900, tree-optimization/41643
-- selected backports from trunk
-  - PRs debug/41801, middle-end/41837, target/41985, tree-optimization/41841
-- initial AMD Orochi -mxop and -mlwp support
-- try to avoid wrapping CONST_INTs/VOIDmode CONST_DOUBLEs into CONST
-
-* Mon Nov  2 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-8
-- update from gcc-4_4-branch
-  - PRs c++/41754, fortran/41777, fortran/41850, libstdc++/40852
-- fix ICE with unmatched #pragma GCC visibility push/pop (PR c++/41774)
-- fix VTA ICE with -combine (#531385, PR debug/41893)
-- fix RTTI for anon namespace classes
-- fix incorrect uses of __restrict keyword in valarray (PR libstdc++/41763)
-
-* Tue Oct 27 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-7
-- update from gcc-4_4-branch
-  - PRs c++/40808, c/41842, cp-tools/39177
-- VTA backports
-  - PR bootstrap/41345
-- don't emit DW_AT_name: <anonymous struct> etc. into debug info
-  (#530304, PR debug/41828)
-- power7 ABI fixes (PR target/41787)
-- fix ICE in ix86_pic_register_p (PR target/41762)
-
-* Thu Oct 22 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-6
-- update from gcc-4_4-branch
-  - PR target/41702
-  - fix a pod2man error in gcc.1 (#530102)
-  - fix mangling of very large names
-- document -print-multi-os-directory in gcc.info and gcc.1
-  (#529659, PR other/25507)
-
-* Mon Oct 19 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-5
-- update from gcc-4_4-branch
-  - PR fortran/41755
-  - s390 z10 tuning fixes
-- provide accurate attributes for powerpc builtins (PR target/23983)
-- fix -fcompare-debug differences caused by DCE removal of debug stmts
-- fix updating of speculation status with VTA (PR debug/41739)
-
-* Sun Oct 18 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-4
-- update from gcc-4_4-branch
-  - PRs c++/37204, c++/37766, c++/37875, c++/38798, c++/40092,
-	libstdc++/40654, libstdc++/40826
-- fix VTA ICE on invalid pointer arithmetics (#529512)
-
-* Sat Oct 17 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-3
-- fix VTA handling in the scheduler (PR debug/41535)
-- fix up %%check section to be able to find ecj1
-
-* Fri Oct 16 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-2
-- update from gcc-4_4-branch
-  - PR target/40913
-- VTA backports
-  - PR debug/41717
-- fix Ada .eh_frame generation (PR debug/40521)
-
-* Thu Oct 15 2009 Jakub Jelinek <jakub at redhat.com> 4.4.2-1
-- update from gcc-4_4-branch
-  - GCC 4.4.2 release
-  - PRs middle-end/22072, target/41665
-- don't emit -Wpadded warnings for builtin structures
-- don't generate .eh_frame, but generate .debug_frame when -g and none of
-  -fasynchronous-unwind-tables/-fexceptions/-funwind-tables is used
-  (PR debug/40521)
-
-* Wed Oct 14 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-22
-- update from gcc-4_4-branch
-  - PRs target/26515, target/38948
-  - fix s390{,x} BLKmode symbol handling
-  - fix i?86 testqi splitter (#528206, PR target/41680)
-- VTA backports
-  - introduce debug temps (PRs debug/41264, debug/41338, debug/41343,
-    debug/41447, target/41693)
-  - build debug stmts on updates (PR debug/41616)
-  - fix another with/without -save-temps debug info difference
-    (#526841, PR preprocessor/41543)
-  - fix invalid ranges in .debug_loc section (PR debug/41695)
-%if 0%{?rhel} >= 6
-- if -mcpu= isn't specified, default to -mcpu=power4 (#463549)
-%endif
-
-* Sat Oct 10 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-21
-- update from gcc-4_4-branch
-  - fix s390{,x} prefetch for pre-z10 CPUs (#524552)
-- VTA backports
-  - fix debug info differences with/without -save-temps
-    (PR preprocessor/41445)
-- fix ICE with small BLKmode returning call (#516028,
-  PR rtl-optimization/41646)
-
-* Thu Oct  8 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-20
-- update from gcc-4_4-branch
-  - PRs c++/39863, c++/41038
-- avoid redundant DW_AT_const_value when abstract origin already has one
-  (#527430)
-- another VTA debug stmt renaming bugfix (#521991)
-
-* Mon Oct  5 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-19
-- update from gcc-4_4-branch
-  - PRs fortran/41479, fortran/41515
-- VTA backports
-  - PRs debug/41353, debug/41404, rtl-optimization/41511
-  - another debug info fix for decls passed by reference (#527057,
-    PR debug/41558)
-  - don't emit DW_AT_name on DW_TAG_const_type (#526970)
-- avoid invalid folding of casts to addresses of first fields
-  (#527121, PR middle-end/41317)
-
-* Thu Oct  1 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-18
-- update from gcc-4_4-branch
-  - PRs ada/41100, target/22093
-- VTA backports
-  - PRs debug/41438, debug/41474, target/41279, testsuite/41444
-- fix VTA ICE on Linux kernel (#521991)
-- AMD Orochi -mfma4 support
-- don't run install-info if info files are missing because of --excludedocs
-  (#515921, #515960, #515962, #515965, #516000, #516008, #516014)
-
-* Fri Sep 25 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-17
-- update from gcc-4_4-branch
-  - fix vectorizer for power7 (#463846)
-- VTA backports
-  - fix debug info for parameters passed by reference (#525709)
-  - PR bootstrap/41457
-- remove power7 VSX load/store with update insn support
-- remove SSE5 support
-
-* Wed Sep 23 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-16
-- update from gcc-4_4-branch
-  - PRs c/39779, c/41049, debug/41065, libffi/40242, libffi/41443,
-	libgfortran/41328, testsuite/41288
-- VTA backports
-  - PRs bootstrap/41397, bootstrap/41404, bootstrap/41405, debug/41295,
-	debug/41411, debug/41439
-  - fix ICE caused by reload substitution of const_int into zero_extend
-    in debug_insn (#524439)
-- fix altivec vec_cmp{lt,gt} (#524273)
-- fix -mno-sched-epilogue on ppc (#524216, PR target/40473)
-- don't look at MUDFLAP_OPTIONS env var in suid/sgid programs
-  (PR libmudflap/41433)
-
-* Fri Sep 18 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-15
-- for now disable out of line gpr/fpr saving on ppc with -m64 -Os -mcall-aixdesc
-- fix DW_AT_decl_{file,location} for DW_TAG_structure_type for C structs
-  with forward declarations (#523810)
-
-* Wed Sep 16 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-14
-- update from gcc-4_4-branch
-  - PRs fortran/39876, tree-optimization/41101
-- asm goto support
-- VTA delayed branch scheduling fix (PR bootstrap/41349)
-- power7 VSX fix (PR target/41210)
-- ppc bswap fixes (PR target/41331)
-
-* Fri Sep 11 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-13
-- fix ICE in debuginfo output with BLOCK_NONLOCALIZED_VARS (#518303)
-- wrap_constant when propagating for subst in debug in the combiner (#522577)
-- further fix for ppc -m32 -Os out of line gpr/fpr restoring (PR target/41175)
-
-* Thu Sep 10 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-12
-- update from gcc-4_4-branch
-  - PRs bootstrap/41180, target/41315
-- fix ICE in tree-ssa-phiprop.c (#522277, PR tree-optimization/39827)
-- ppc64 bswap fix
-- fix ppc/ppc64 -mmultiple and out of line gpr/fpr saving bugs
-  (#519409, PR target/40677, PR target/41175)
-
-* Wed Sep  9 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-11
-- fix ICE in tls_mem_loc_descriptor (#521991)
-
-* Tue Sep  8 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-10
-- update from gcc-4_4-branch
-  - PRs fortran/41258, rtl-optimization/40861
-- fix scheduler not to reorder potentially trapping insns across
-  calls that might not always return (#520916, PR rtl-optimization/41239)
-- merge in VTA
-
-* Thu Sep  3 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-9
-- update from gcc-4_4-branch
-  - fix wide char constant stringification
-- __builtin_unreachable fix
-
-* Wed Sep  2 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-8
-- fix up __builtin_object_size (#505862)
-- fix Fortran GOTO warning (PR fortran/38507)
-
-* Tue Sep  1 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-7
-- update from gcc-4_4-branch
-  - PRs c++/41120, c++/41127, c++/41131, fortran/41062, fortran/41102,
-	fortran/41121, fortran/41126, fortran/41139, fortran/41157,
-	fortran/41162, libfortran/40962, libstdc++/41005, middle-end/41094,
-	middle-end/41123, middle-end/41163, target/34412, target/40718
-- fix pr22033.C on ppc*/ia64/sparc*
-- emit namespace DIE even if it contains just some used type (PR debug/41170)
-- fix dynamic_cast (#519517)
-- backport power7 changes from the trunk, instead of using the old incomplete
-  backport from ibm/power7-meissner
-
-* Tue Aug 18 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-6
-- update from gcc-4_4-branch
-  - PRs bootstrap/41018, c/41046, debug/37801, debug/40990, fortran/40847,
-	rtl-optimization/41033, target/41015, target/41019, target/8603,
-	tree-optimization/41016
-
-* Fri Aug  7 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-5
-- update from gcc-4_4-branch
-  - PRs c++/40948, target/40906
-- -fexceptions support for -freorder-blocks-and-partition
-
-* Wed Aug  5 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-4
-- update from gcc-4_4-branch
-  - PRs build/40010, c++/39987, c++/40749, c++/40834, c++/40948, debug/39706,
-	fortran/40822, fortran/40848, fortran/40851, fortran/40878,
-	libfortran/40853, middle-end/40943, rtl-optimization/40924,
-	target/40577, testsuite/40829, testsuite/40891,
-	tree-optimization/40570
-- backport __builtin_unreachable () support
-- fix powerpc ICE in memory_address (#515672, PR target/40971)
-
-* Sat Jul 25 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-3
-- update from gcc-4_4-branch
-  - PR fortran/40727
-- fix unwind info for -freorder-blocks-and-partitions
-  (PR rtl-optimization/34999)
-- fix Fortran MINLOC/MAXLOC/MINVAL/MAXVAL handling of infinities and NaNs,
-  speed them up (PRs fortran/40643, fortran/31067)
-- fix ICE with Fortran data xfer without io unit (PR fortran/40839)
-
-* Thu Jul 23 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-2
-- update from gcc-4_4-branch
-  - PRs rtl-optimization/40710, target/40832, tree-optimization/40321
-- use STB_GNU_UNIQUE symbols for inline fn local statics and
-  template static data members
-- use strcmp for C++ typeinfo comparisons instead of pointer comparison
-
-* Wed Jul 22 2009 Jakub Jelinek <jakub at redhat.com> 4.4.1-1
-- update from gcc-4_4-branch
-  - GCC 4.4.1 release
-
-* Tue Jul 21 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-15
-- update from gcc-4_4-branch
-  - PRs libfortran/40714, target/39943, target/40809, tree-optimization/40792
-  - fix ICE in gsi_insert_seq_nodes_after (#505798,
-    PR tree-optimization/40813)
-- slightly relax -D_FORTIFY_SOURCE=2 rules for flexible-array-member like
-  constructs (#512689, #511573)
-- vectorize unsigned int -> {float,double} conversions on x86/x86_64
-  (PR target/40811)
-- update for i586.rpm -> i686.rpm switch (default to -march=i686 -mtune=generic
-  in i686.rpm gcc and also with -m32 in x86_64.rpm gcc)
-
-* Fri Jul 17 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-14
-- update from gcc-4_4-branch
-  - PRs c++/40740, libstdc++/40691, middle-end/40747
-  - fix ICE in gimplify_conversion (#511229, PR c++/40780)
-
-* Mon Jul 13 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-13
-- update from gcc-4_4-branch
-  - PRs c++/36628, c++/37206, c++/40502, c++/40684, c++/40689, fortran/40440,
-	rtl-optimization/40667, target/40668
-- avoid overlapping entries in .debug_ranges section (PR debug/40713)
-
-* Wed Jul  8 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-12
-- update from gcc-4_4-branch
-  - PRs c++/35828, c++/37816, c++/37946, c++/40557, c++/40633, c++/40639,
-	debug/40666, target/38900
-- use more compact DW_AT_member_location for constant offsets (PR debug/40659)
-
-* Tue Jul  7 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-11
-- update from gcc-4_4-branch
-  - PRs c++/40274, c++/40342, c++/40566, c++/40595, c++/40619, c/39902,
-	fortran/40443, fortran/40551, fortran/40576, fortran/40594,
-	fortran/40638, libfortran/40576, libstdc++/40297, libstdc++/40600,
-	middle-end/40585, middle-end/40669, other/40024, target/40587,
-	tree-optimization/40493, tree-optimization/40542,
-	tree-optimization/40550, tree-optimization/40579,
-	tree-optimization/40582, tree-optimization/40640
-- backports from trunk
-  - fix debuginfo in dynamically realigned functions (PR debug/40596)
-  - speed up polyhedron NF (PR middle-end/34163)
-  - epilogue unwinding fixes (PRs bootstrap/40347, debug/40462)
-  - fix debug info for inlines (PR debug/40573)
-  - optimize assuming allocatable arrays in the innermost
-    dimension are always stride 1 (PR fortran/32131)
-
-* Tue Jun 23 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-10
-- update from gcc-4_4-branch
-  - PRs fortran/39800, fortran/40402, libstdc++/40497, middle-end/40389,
-	middle-end/40404, middle-end/40446, middle-end/40460, objc/28050,
-	target/40470, tree-optimization/40492
-- decrease memory consumption and speed up var-tracking pass (#503816)
-- __builtin_object_size fix for C++ (#506952)
-
-* Mon Jun 15 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-9
-- update from gcc-4_4-branch
-  - PR fortran/40168
-- fix up debug.exp testsuite (PR testsuite/40426)
-- fix up a pasto in recent -D_FORTIFY_SOURCE changes (#506099)
-
-* Fri Jun 12 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-8
-- update from gcc-4_4-branch
-  - PRs c++/40381, libfortran/40330
-- add -mcrc32 support on ix86
-- support -gdwarf-3 and default to it, emit DW_OP_call_frame_cfa
-- fix up ix86 padding for branch mispredicts
-- improve .debug_loc generation
-
-* Tue Jun  9 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-7
-- update from gcc-4_4-branch
-  - PRs ada/40166, bootstrap/40027, c++/38064, c++/39754, c++/40007,
-	c++/40139, c/40172, c++/40306, c++/40307, c++/40308, c++/40311,
-	c++/40370, c++/40372, c++/40373, debug/40109, fortran/22423,
-	fortran/38654, fortran/39893, fortran/40019, fortran/40195,
-	libfortran/25561, libfortran/37754, libfortran/38668,
-	libfortran/39665, libfortran/39667, libfortran/39702,
-	libfortran/39709, libfortran/39782, libfortran/40334,
-	libgfortran/39664, libgomp/40174, libstdc++/36211, libstdc++/40192,
-	libstdc++/40296, libstdc++/40299, middle-end/32950, middle-end/40147,
-	middle-end/40204, middle-end/40233, middle-end/40252,
-	middle-end/40291, middle-end/40328, middle-end/40340,
-	rtl-optimization/40105, target/40017, target/40153, target/40266,
-	testsuite/39907, tree-optimization/39999, tree-optimization/40087,
-	tree-optimization/40238, tree-optimization/40254
-- support Atom for -march=native
-- add -mmovbe support for Atom
-- improve ix86 instruction length computation, remove some unneeded padding
-- -D_FORTIFY_SOURCE improvements
-- emit accurate epilogue unwinding information
-- add unwind debug hook for gdb
-
-* Thu May 14 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-5
-- update from gcc-4_4-branch
-  - PRs c++/17395, c/39983, fortran/38863, fortran/38956, fortran/39879,
-	fortran/40018, libstdc++/39546, libstdc++/40038, middle-end/39986,
-	middle-end/40021, middle-end/40023, middle-end/40043,
-	middle-end/40057, middle-end/40080, target/37179,
-	tree-optimization/40062, tree-optimization/40074
-- fix Fortran FMT= character array arguments (#492209, PR fortran/39865)
-- allow putting breakpoints on Fortran END{SUBROUTINE,FUNCTION}
-  (PR fortran/34153)
-- incorporate changes suggested in gcc44 package review (#498911)
-
-* Wed May  6 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-4
-- update from gcc-4_4-branch
-  - PRs c++/40013, libgcj/39899, libstdc++/39868, libstdc++/39880,
-	libstdc++/39881, libstdc++/39882, libstdc++/39909, middle-end/39937,
-	rtl-optimization/39914, target/39565, testsuite/39769,
-	testsuite/39776, testsuite/39790, testsuite/39807,
-	tree-optimization/39941
-  - fix phiprop tuplification (#496400, PR tree-optimization/40022)
-- don't add artificial default case label if switch labels already
-  cover the whole range (PR middle-end/39666)
-- fix DSE with block reads (PR middle-end/40035)
-- fix debuginfo for C++ typedef struct {...} T (PR debug/35463)
-- remove some unnecessary padding on x86_64/i386 added for >= 4 control
-  flow insns in a 16-byte block (PR target/39942)
-- don't create invalid DWARF location lists containing DW_OP_reg*
-  followed by DW_OP_deref*, instead use DW_OP_breg* 0 (#481675)
-- add libstdc++-docs subpackage, move html manual to it, add doxygen
-  generated html and man pages
-
-* Mon Apr 27 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-3
-- update from gcc-4_4-branch
-  - PR bootstrap/39739
-  - fix -Wunused-value (#497545, PR c/39889)
-- backport further power7-meissner branch changes (#497816)
-- fix reg-stack ICE on SPEC2k6 453.povray with -m32 -O3 -msse3
-  (PR target/39856)
-- fix x86_64 ICE on passing structure with flexible array member
-  (PR target/39903)
-
-* Fri Apr 24 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-2
-- update from gcc-4_4-branch
-  - PR c++/38228
-- fix folding of cond expr with comparison to MAX/MIN (PR middle-end/39867)
-- fix up gcc-gnat install-info arguments (#452783)
-
-* Thu Apr 23 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-1
-- update from gcc-4_4-branch
-  - GCC 4.4.0 release
-  - PRs libstdc++/39802, c++/39639, c/39855, rtl-optimization/39762,
-	testsuite/39781, tree-optimization/39824
-- fix up DSE (PR rtl-optimization/39794)
-- debuginfo fixes for VLA and nested/contained functions (#459374)
-- improve -ftree-switch-conversion optimization if the constant is the
-  same in all cases
-
-* Mon Apr 20 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.35
-- update from gcc-4_4-branch
-  - PRs middle-end/39804, target/39678, target/39767, tree-optimization/39675,
-	tree-optimization/39764
-
-* Tue Apr 14 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.34
-- update from gcc-4_4-branch
-  - GCC 4.4.0-rc1
-  - license changes to GPLv3+ with GCC Runtime Exception for most of the
-    lib* files
-  - PRs c++/28301, c++/39480, c++/39742, c++/39750, c/39613, c/39614, c/39673,
-	libobjc/36610, target/39740, testsuite/35621, tree-optimization/39713
-- fix another -Wshadow C++ issue (PR c++/39763)
-
-* Thu Apr  9 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.32
-- update from gcc-4_4-branch
-  - PRs c++/34691, c++/35146, c++/35240, c++/37806, c++/38030, c++/38850,
-	c++/39608, c++/39637, c++/4926, c/37772, fortran/38152,
-	fortran/39519, fortran/39594, libmudflap/38462, libstdc++/39310,
-	middle-end/39573, objc/18456, objc/27377, other/39591,
-	rtl-optimization/39588, rtl-optimization/39607, target/39501,
-	target/39592, target/39634, testsuite/39325, tree-optimization/35011,
-	tree-optimization/39595, tree-optimization/39648
-  - handle .cfi_undefined(%ip) in libgcc_s unwinder (#491542)
-- fix debug info for C++ static data members (#410691)
-- revert fwprop fix, it causes glibc.i586 miscompilation
-
-* Mon Mar 30 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.31
-- update from gcc-4_4-branch
-  - PR target/39545
-  - fix Fortran bind(c) function using RESULT() (#492657)
-- fix bogus warnings on strcmp/strncmp macros (#492846)
-
-* Sat Mar 28 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.30
-- update from gcc-4_4-branch
-  - PRs c++/39380, c++/28274, c++/29727, c++/35652, c++/36799, c++/37647,
-	c++/38638, c++/39554, libfortran/39528, middle-end/39497,
-	rtl-optimization/39522, target/38034, target/39523,
-	tree-optimization/39529, tree-optimization/39548,
-	tree-optimization/39557
-- emit debuginfo for block local externs in C (PR debug/39563)
-- fix -maltivec conditional vector macro (PR target/39558)
-- teach fwprop to handle asm (PR inline-asm/39543)
-
-* Tue Mar 24 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.29
-- update from trunk
-  - PRs c++/28879, c++/37729, c++/39526, debug/39524, tree-optimization/39516
-
-* Thu Mar 19 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.28
-- update from trunk
-  - PRs c++/39425, c++/39475, c/39495, debug/39485, middle-end/37805,
-	middle-end/38609, middle-end/39378, middle-end/39447,
-	middle-end/39500, target/35180, target/39063, target/39496
-  - fix RA bug with global reg variables (#490509)
-- use DW_LANG_C99 for -std=c99 or -std=gnu99 compiled C code (PR debug/38757)
-- emit DW_AT_explicit when needed (PR debug/37959)
-- optimize memmove into memcpy in more cases when we can prove src and dest
-  don't overlap
-
-* Tue Mar 17 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.27
-- update from trunk
-  - PRs debug/37890, debug/39471, debug/39474, libstdc++/39405, target/34299,
-	target/39473, target/39476, target/39477, target/39482,
-	testsuite/37628, testsuite/37630, testsuite/37960, testsuite/38526,
-	tree-optimization/39455
-
-* Sat Mar 14 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.26
-- fix ppc64 regression caused by the power7 backport (#490149,
-  PR target/39457)
-
-* Fri Mar 13 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.25
-- update from trunk
-  - PRs debug/39086, debug/39432, libobjc/27466, middle-end/37850,
-	target/39137, target/39181, target/39431, target/39445, target/5362,
-	testsuite/39451, tree-optimization/39422
-- fix ICE in gen_tagged_type_instantiation_die (#489308, PR debug/39412)
-- fix memcmp builtin asm redirection (PR middle-end/39443)
-- fix sparcv9 profiledbootstrap (PR bootstrap/39454)
-
-* Thu Mar 12 2009 Dennis Gilmore <dennis at ausil.us>
-- don't build with graphite support on sparc arches
-  - still missing some deps
-
-* Tue Mar 10 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.24
-- update from trunk
-  - PRs ada/39221, c++/39060, c++/39367, c++/39371, libfortran/39402,
-	middle-end/38028, target/39361, tree-optimization/39394
-- use system cloog-ppl instead of building a private libcloog.so.0 (#489183)
-- preliminary Power7 support (#463846)
-
-* Sat Mar  7 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.23
-- update from trunk
-  - PRs c++/13549, c++/29469, c++/29607, c++/33492, c++/37520, c++/38908,
-	c++/9634, debug/39372, middle-end/39360, rtl-optimization/39235,
-	testsuite/39357, tree-optimization/39349
-  - emit DW_TAG_imported* even in main or in lexical blocks that
-    contain no automatic variables (#488547, PR debug/39379)
-  - fix DW_AT_decl_line on DW_TAG_imported* (#488771, PR debug/39387)
-  - fix SCCVN with SSA names occurring in abnormal PHIs (#488061,
-    PR tree-optimization/39362)
-
-* Wed Mar  4 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.22
-- update from trunk
-  - PRs ada/39172, ada/39264, bootstrap/39257, c++/36411, c++/37789,
-	c++/38880, c++/39225, c++/39242, c/12245, classpath/38417,
-	classpath/38912, debug/39267, debug/39285, fortran/38914,
-	fortran/39292, fortran/39295, fortran/39309, fortran/39354,
-	libgcj/38861, middle-end/10109, middle-end/34443,
-	middle-end/39157, middle-end/39272, middle-end/39308,
-	middle-end/39335, middle-end/39345, rtl-optimization/39241,
-	target/33785, target/35965, target/39256, target/39261,
-	target/39327, testsuite/38164, tree-optimization/37709,
-	tree-optimization/39248, tree-optimization/39259,
-	tree-optimization/39260, tree-optimization/39318,
-	tree-optimization/39331, tree-optimizations/39259,
-	tree-optimization/39358
-  - fix ivopts (#486088, PR tree-optimization/39233)
-  - fix SRA (#487795, PR tree-optimization/39339)
-  - fix __builtin_object_size with unions (#487702,
-    PR tree-optimization/39343)
-- fix ppc -m64 -O2 -mtune=cell and patterns (#485067, PR target/39226)
-- -march=atom/-mtune=atom support from ix86/atom branch
-
-* Thu Feb 19 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.21
-- update from trunk
-  - PRs c++/39188, c++/39219, c/35447, c/38483, target/34587,
-	target/38891, target/39082, target/39179, target/39224,
-	target/39228, testsuite/38165, testsuite/38166,
-	tree-optimization/36922, tree-optimization/39074,
-  - another bogus aliasing warning fix (#485463, PR tree-optimization/39207)
-- fix tail call optimization on ppc (#485067, PR target/39240)
-
-* Tue Feb 17 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.20
-- update from trunk
-  - PRs c/35446, middle-end/39214, tree-optimization/39202
-  - fix ICE in compute_attic (#485708, PR tree-optimization/39204)
-  - fix bogus aliasing warning (#485463, PR tree-optimization/39207)
-- update for i386.rpm -> i586.rpm switch
-
-* Mon Feb 16 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.19
-- update from trunk
-  - PRs c++/39070, fortran/36528, fortran/36703, fortran/38259,
-	libstdc++/39168, target/37049, target/38056, target/39149,
-	target/39162, target/39196
-  - ix86 peephole fix (#485729, PR target/39152)
-  - uglify function parameter names in gthr*.h (#485619)
-
-* Fri Feb 13 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.18
-- update from trunk
-  - PRs c++/30111, c++/38950, c++/39153, c/35444, middle-end/39154,
-	target/38824, target/39152
-- fix ICE on ppc32 with -fpic -fvisibility=hidden (#485232, PR target/39175)
-
-* Wed Feb 11 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.17
-- update from trunk
-  - fix ICE on xen (PR target/39139)
-  - PRs c++/34397, c++/35147, c++/36744, c++/37737, c++/38649, c++/39109,
-	c/35434, c/36432, c/39035, c/39084, middle-end/35202,
-	middle-end/38953, middle-end/38981, middle-end/39124,
-	middle-end/39127, target/39118, target/39119, testsuite/33300,
-	tree-optimization/39132
-- force emitting .debug_info for empty CUs with -g3 (#479912)
-
-* Fri Feb  6 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.16
-- update from trunk
-  - don't emit thunks for versioned functions (PR c++/39106)
-  - fix -fstrict-aliasing miscompilation (PR tree-optimization/39100)
-
-* Wed Feb  4 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.15
-- update from trunk
-  - C++ mangling fix (PR c++/39095)
-  - only complain about calling main in C++ if -pedantic
-- add raw string support
-
-* Tue Feb  3 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.14
-- update from trunk
-- when compiling with -march=i386, don't use __sync_* builtins in
-  ext/atomicity.h
-
-* Wed Jan 28 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.13
-- fix graphite make check
-
-* Tue Jan 27 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.12
-- update from trunk
-- add graphite support
-- change gcc default ISA and tuning:
-  i386 and x86_64 -m32:
-  -march=i586 -mtune=generic from -march=i386 -mtune=generic
-  x86_64 -m64 remains at:
-  -march=x86-64 -mtune=generic
-  s390 and s390x -m31:
-  -march=z9-109 -mtune=z10 from -march=g5 -mtune=z9-109
-  s390x -m64:
-  -march=z9-109 -mtune=z10 from -march=z900 -mtune=z9-109
-
-* Wed Jan 21 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.9
-- rebuilt without ppc64 ada bootstrap hacks
-
-* Tue Jan 20 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.8
-- attempt to enable Ada support on ppc64
-
-* Fri Jan 16 2009 Jakub Jelinek <jakub at redhat.com> 4.4.0-0.3
-- initial 4.4 package, using newly created redhat/gcc-4_4-branch
+* Wed Jun  7 2010 Jakub Jelinek <jakub at redhat.com> 4.5.0-1
+- initial 4.5 package, using newly created redhat/gcc-4_5-branch


Index: import.log
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/import.log,v
retrieving revision 1.24
retrieving revision 1.25
diff -u -p -r1.24 -r1.25
--- import.log	30 Jun 2010 07:32:30 -0000	1.24
+++ import.log	7 Jul 2010 17:35:21 -0000	1.25
@@ -22,3 +22,4 @@ gcc-4_4_4-7_fc14:HEAD:gcc-4.4.4-7.fc14.s
 gcc-4_4_4-8_fc14:HEAD:gcc-4.4.4-8.fc14.src.rpm:1276244517
 gcc-4_4_4-9_fc14:HEAD:gcc-4.4.4-9.fc14.src.rpm:1277410688
 gcc-4_4_4-10_fc14:HEAD:gcc-4.4.4-10.fc14.src.rpm:1277882958
+gcc-4_5_0-1_fc14:HEAD:gcc-4.5.0-1.fc14.src.rpm:1278524061


Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/sources,v
retrieving revision 1.323
retrieving revision 1.324
diff -u -p -r1.323 -r1.324
--- sources	30 Jun 2010 07:32:30 -0000	1.323
+++ sources	7 Jul 2010 17:35:21 -0000	1.324
@@ -1,2 +1,2 @@
 2659f09c2e43ef8b7d4406321753f1b2  fastjar-0.97.tar.gz
-1e5a3dc8063ea17ed92939cd01d244d0  gcc-4.4.4-20100630.tar.bz2
+cba4eec9853841706747987fb1bc58c5  gcc-4.5.0-20100707.tar.bz2


--- README.libgcjwebplugin.so DELETED ---


--- gcc44-build-id.patch DELETED ---


--- gcc44-c++-builtin-redecl.patch DELETED ---


--- gcc44-cloog-dl.patch DELETED ---


--- gcc44-hack.patch DELETED ---


--- gcc44-i386-libgomp.patch DELETED ---


--- gcc44-ia64-libunwind.patch DELETED ---


--- gcc44-java-nomulti.patch DELETED ---


--- gcc44-libgomp-omp_h-multilib.patch DELETED ---


--- gcc44-libstdc++-docs.patch DELETED ---


--- gcc44-libtool-no-rpath.patch DELETED ---


--- gcc44-no-add-needed.patch DELETED ---


--- gcc44-ppc32-retaddr.patch DELETED ---


--- gcc44-ppc64-aixdesc.patch DELETED ---


--- gcc44-pr33763.patch DELETED ---


--- gcc44-pr38757.patch DELETED ---


--- gcc44-pr44542.patch DELETED ---


--- gcc44-rh330771.patch DELETED ---


--- gcc44-sparc-config-detection.patch DELETED ---


--- gcc44-unwind-debug-hook.patch DELETED ---


--- protoize.1 DELETED ---



More information about the scm-commits mailing list