rpms/gcc/devel gcc41-pr28690.patch, NONE, 1.1 gcc41-pr32468-2.patch, NONE, 1.1 gcc41-pr32468.patch, NONE, 1.1 gcc41-rh245424.patch, NONE, 1.1 gcc41.spec, 1.161, 1.162 gcc41-amdfam10.patch, 1.2, NONE gcc41-multi32-hack.patch, 1.1, NONE gcc41-objc-rh185398.patch, 1.2, NONE gcc41-pr24036-revert.patch, 1.1, NONE gcc41-pr27567.patch, 1.1, NONE gcc41-pr28709.patch, 1.1, NONE gcc41-pr29059.patch, 1.1, NONE gcc41-pr29272.patch, 1.2, NONE gcc41-pr29299.patch, 1.1, NONE gcc41-pr31187.patch, 1.2, NONE gcc41-pr31809.patch, 1.1, NONE gcc41-pr32285.patch, 1.1, NONE gcc41-pr32353.patch, 1.1, NONE gcc41-rh234515.patch, 1.2, NONE gcc41-strncat-chk.patch, 1.2, NONE gcc41-tests.patch, 1.4, NONE
Jakub Jelinek (jakub)
fedora-extras-commits at redhat.com
Tue Jun 26 13:04:59 UTC 2007
Author: jakub
Update of /cvs/pkgs/rpms/gcc/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv27647
Modified Files:
gcc41.spec
Added Files:
gcc41-pr28690.patch gcc41-pr32468-2.patch gcc41-pr32468.patch
gcc41-rh245424.patch
Removed Files:
gcc41-amdfam10.patch gcc41-multi32-hack.patch
gcc41-objc-rh185398.patch gcc41-pr24036-revert.patch
gcc41-pr27567.patch gcc41-pr28709.patch gcc41-pr29059.patch
gcc41-pr29272.patch gcc41-pr29299.patch gcc41-pr31187.patch
gcc41-pr31809.patch gcc41-pr32285.patch gcc41-pr32353.patch
gcc41-rh234515.patch gcc41-strncat-chk.patch gcc41-tests.patch
Log Message:
4.1.2-14
gcc41-pr28690.patch:
--- NEW FILE gcc41-pr28690.patch ---
2007-06-26 Jakub Jelinek <jakub at redhat.com>
* defaults.h (TARGET_INDEX_OPERAND_FIRST): Define.
* config/rs6000/rs6000.h (TARGET_INDEX_OPERAND_FIRST): Define.
* optabs.c (emit_cmp_and_jump_insns): Don't call swap_operand
twice.
* rtlanal.c (commutative_operand_precedence): Only prefer
REG_POINTER and MEM_POINTER operands over REG and MEM operands
if TARGET_INDEX_OPERAND_FIRST.
(swap_commutative_operands_p): Only sort on REGNO if
TARGET_INDEX_OPERAND_FIRST.
* tree-ssa-address.c (gen_addr_rtx): Only use simplify_gen_binary
instead of gen_rtx_PLUS if TARGET_INDEX_OPERAND_FIRST.
2007-06-20 Peter Bergner <bergner at vnet.ibm.com>
PR middle-end/28690
* optabs.c (emit_cmp_and_jump_insns): Allow EQ compares.
* rtlanal.c (commutative_operand_precedence): Prefer both REG_POINTER
and MEM_POINTER operands over REG and MEM operands.
(swap_commutative_operands_p): In case of a tie, sort on REGNO.
* tree-ssa-address.c (gen_addr_rtx): Use simplify_gen_binary
instead of gen_rtx_PLUS.
--- gcc/defaults.h.jj 2007-02-20 22:39:12.000000000 +0100
+++ gcc/defaults.h 2007-06-26 00:32:16.000000000 +0200
@@ -785,6 +785,10 @@ Software Foundation, 51 Franklin Street,
#define TARGET_C99_FUNCTIONS 0
#endif
+#ifndef TARGET_INDEX_OPERAND_FIRST
+#define TARGET_INDEX_OPERAND_FIRST 0
+#endif
+
/* Indicate that CLZ and CTZ are undefined at zero. */
#ifndef CLZ_DEFINED_VALUE_AT_ZERO
#define CLZ_DEFINED_VALUE_AT_ZERO(MODE, VALUE) 0
--- gcc/config/rs6000/rs6000.h.jj 2007-02-20 22:39:00.000000000 +0100
+++ gcc/config/rs6000/rs6000.h 2007-06-26 00:33:32.000000000 +0200
@@ -57,6 +57,8 @@
#define PPC405_ERRATUM77 0
#endif
+#define TARGET_INDEX_OPERAND_FIRST (rs6000_cpu == PROCESSOR_POWER6)
+
/* Common ASM definitions used by ASM_SPEC among the various targets
for handling -mcpu=xxx switches. */
#define ASM_CPU_SPEC \
--- gcc/optabs.c.jj 2007-02-20 22:39:12.000000000 +0100
+++ gcc/optabs.c 2007-06-26 00:30:27.000000000 +0200
@@ -3673,12 +3673,16 @@ emit_cmp_and_jump_insns (rtx x, rtx y, e
/* Swap operands and condition to ensure canonical RTL. */
if (swap_commutative_operands_p (x, y))
{
- /* If we're not emitting a branch, this means some caller
- is out of sync. */
- gcc_assert (label);
+ enum rtx_code swapped_comparison = swap_condition (comparison);
+
+ /* If we're not emitting a branch, callers are required to pass
+ operands in an order conforming to canonical RTL. We relax this
+ for commutative comparsions so callers using EQ don't need to do
+ swapping by hand. */
+ gcc_assert (label || swapped_comparison == comparison);
op0 = y, op1 = x;
- comparison = swap_condition (comparison);
+ comparison = swapped_comparison;
}
#ifdef HAVE_cc0
--- gcc/rtlanal.c.jj 2007-02-20 22:39:12.000000000 +0100
+++ gcc/rtlanal.c 2007-06-26 00:28:56.000000000 +0200
@@ -2890,9 +2890,9 @@ commutative_operand_precedence (rtx op)
/* Constants always come the second operand. Prefer "nice" constants. */
if (code == CONST_INT)
- return -7;
+ return -10;
if (code == CONST_DOUBLE)
- return -6;
+ return -9;
op = avoid_constant_pool_reference (op);
code = GET_CODE (op);
@@ -2900,26 +2900,31 @@ commutative_operand_precedence (rtx op)
{
case RTX_CONST_OBJ:
if (code == CONST_INT)
- return -5;
+ return -8;
if (code == CONST_DOUBLE)
- return -4;
- return -3;
+ return -7;
+ return -6;
case RTX_EXTRA:
/* SUBREGs of objects should come second. */
if (code == SUBREG && OBJECT_P (SUBREG_REG (op)))
- return -2;
+ return -5;
if (!CONSTANT_P (op))
return 0;
else
/* As for RTX_CONST_OBJ. */
- return -3;
+ return -6;
case RTX_OBJ:
/* Complex expressions should be the first, so decrease priority
of objects. */
- return -1;
+ if (!TARGET_INDEX_OPERAND_FIRST)
+ return -1;
+ if (REG_P (op))
+ return (REG_POINTER (op)) ? -1 : -3;
+ else
+ return (MEM_P (op) && MEM_POINTER (op)) ? -2 : -4;
case RTX_COMM_ARITH:
/* Prefer operands that are themselves commutative to be first.
@@ -2949,8 +2954,16 @@ commutative_operand_precedence (rtx op)
int
swap_commutative_operands_p (rtx x, rtx y)
{
- return (commutative_operand_precedence (x)
- < commutative_operand_precedence (y));
+ int result = (commutative_operand_precedence (x)
+ - commutative_operand_precedence (y));
+ if (!TARGET_INDEX_OPERAND_FIRST || result)
+ return result < 0;
+
+ /* Group together equal REGs to do more simplification. */
+ if (REG_P (x) && REG_P (y))
+ return REGNO (x) > REGNO (y);
+
+ return 0;
}
/* Return 1 if X is an autoincrement side effect and the register is
--- gcc/tree-ssa-address.c.jj 2007-02-20 22:39:12.000000000 +0100
+++ gcc/tree-ssa-address.c 2007-06-26 00:29:49.000000000 +0200
@@ -124,7 +124,9 @@ gen_addr_rtx (rtx symbol, rtx base, rtx
if (base)
{
if (*addr)
- *addr = gen_rtx_PLUS (Pmode, *addr, base);
+ *addr = (TARGET_INDEX_OPERAND_FIRST
+ ? simplify_gen_binary (PLUS, Pmode, base, *addr)
+ : gen_rtx_PLUS (Pmode, *addr, base));
else
*addr = base;
}
gcc41-pr32468-2.patch:
--- NEW FILE gcc41-pr32468-2.patch ---
2007-06-25 Jakub Jelinek <jakub at redhat.com>
PR libgomp/32468
* omp-low.c (check_combined_parallel): New function.
(lower_omp_parallel): Call it via walk_stmts, set
OMP_PARALLEL_COMBINED if appropriate.
(determine_parallel_type): If OMP_FOR resp. OMP_SECTIONS
isn't the only statement in WS_ENTRY_BB or OMP_RETURN
the only one in PAR_EXIT_BB and not OMP_PARALLEL_COMBINED,
don't consider it as combined parallel.
--- gcc/omp-low.c.jj 2007-06-21 13:38:10.000000000 +0200
+++ gcc/omp-low.c 2007-06-25 19:21:35.000000000 +0200
@@ -385,10 +385,13 @@ determine_parallel_type (struct omp_regi
if (single_succ (par_entry_bb) == ws_entry_bb
&& single_succ (ws_exit_bb) == par_exit_bb
- && workshare_safe_to_combine_p (par_entry_bb, ws_entry_bb))
+ && workshare_safe_to_combine_p (par_entry_bb, ws_entry_bb)
+ && (OMP_PARALLEL_COMBINED (last_stmt (par_entry_bb))
+ || (last_and_only_stmt (ws_entry_bb)
+ && last_and_only_stmt (par_exit_bb))))
{
- tree ws_stmt = last_stmt (region->inner->entry);
+ tree ws_stmt = last_stmt (ws_entry_bb);
if (region->inner->type == OMP_FOR)
{
/* If this is a combined parallel loop, we need to determine
@@ -4060,6 +4065,28 @@ lower_omp_for (tree *stmt_p, omp_context
*stmt_p = new_stmt;
}
+/* Callback for walk_stmts. Check if *TP only contains OMP_FOR
+ or OMP_PARALLEL. */
+
+static tree
+check_combined_parallel (tree *tp, int *walk_subtrees, void *data)
+{
+ struct walk_stmt_info *wi = data;
+ int *info = wi->info;
+
+ *walk_subtrees = 0;
+ switch (TREE_CODE (*tp))
+ {
+ case OMP_FOR:
+ case OMP_SECTIONS:
+ *info = *info == 0 ? 1 : -1;
+ break;
+ default:
+ *info = -1;
+ break;
+ }
+ return NULL;
+}
/* Lower the OpenMP parallel directive in *STMT_P. CTX holds context
information for the directive. */
@@ -4077,6 +4104,19 @@ lower_omp_parallel (tree *stmt_p, omp_co
par_bind = OMP_PARALLEL_BODY (stmt);
par_body = BIND_EXPR_BODY (par_bind);
child_fn = ctx->cb.dst_fn;
+ if (!OMP_PARALLEL_COMBINED (stmt))
+ {
+ struct walk_stmt_info wi;
+ int ws_num = 0;
+
+ memset (&wi, 0, sizeof (wi));
+ wi.callback = check_combined_parallel;
+ wi.info = &ws_num;
+ wi.val_only = true;
+ walk_stmts (&wi, &par_bind);
+ if (ws_num == 1)
+ OMP_PARALLEL_COMBINED (stmt) = 1;
+ }
push_gimplify_context ();
--- gcc/testsuite/gcc.dg/gomp/pr32468-1.c.jj 2007-06-25 21:04:31.000000000 +0200
+++ gcc/testsuite/gcc.dg/gomp/pr32468-1.c 2007-06-25 21:07:35.000000000 +0200
@@ -0,0 +1,100 @@
+/* PR libgomp/32468 */
+/* { dg-do compile } */
+/* { dg-options "-O2 -fopenmp -fdump-tree-ompexp" } */
+
+extern int printf (const char *, ...);
+extern int omp_get_thread_num (void), omp_get_num_threads (void);
+extern int bar (void);
+extern int baz (const char *, ...);
+
+void
+f1 (void)
+{
+#pragma omp parallel
+ {
+ baz ("%d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ #pragma omp sections
+ {
+ #pragma omp section
+ printf ("section1 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ #pragma omp section
+ printf ("section2 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+ }
+}
+
+void
+f2 (void)
+{
+#pragma omp parallel
+ {
+ #pragma omp sections
+ {
+ #pragma omp section
+ printf ("section1 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ #pragma omp section
+ printf ("section2 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+ baz ("%d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+}
+
+void
+f3 (void)
+{
+#pragma omp parallel
+ {
+ int bb = bar ();
+ #pragma omp sections
+ {
+ #pragma omp section
+ printf ("section1 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ #pragma omp section
+ printf ("section2 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+ }
+}
+
+void
+f4 (void)
+{
+ int i;
+#pragma omp parallel
+ {
+ baz ("%d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ #pragma omp for schedule (dynamic, 15)
+ for (i = 0; i < 10000; i++)
+ printf ("section1 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+}
+
+void
+f5 (void)
+{
+ int i;
+#pragma omp parallel
+ {
+ #pragma omp for schedule (dynamic, 15)
+ for (i = 0; i < 10000; i++)
+ printf ("section1 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ baz ("%d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+}
+
+void
+f6 (void)
+{
+ int i;
+#pragma omp parallel
+ {
+ int bb = bar ();
+ #pragma omp for schedule (runtime)
+ for (i = 0; i < 10000; i++)
+ printf ("section1 %d/%d\n", omp_get_thread_num (), omp_get_num_threads ());
+ }
+}
+
+/* There should not be a GOMP_parallel_{loop,sections}* call. */
+/* { dg-final { scan-tree-dump-times "GOMP_parallel_loop" 0 "ompexp"} } */
+/* { dg-final { scan-tree-dump-times "GOMP_parallel_sections" 0 "ompexp"} } */
+/* { dg-final { cleanup-tree-dump "ompexp" } } */
Jakub
gcc41-pr32468.patch:
--- NEW FILE gcc41-pr32468.patch ---
2007-06-25 Jakub Jelinek <jakub at redhat.com>
PR libgomp/32468
* sections.c (GOMP_parallel_sections_start): Only decrease
number of threads to COUNT if dyn_var is true.
* libgomp.c/pr32468.c: New test.
--- libgomp/sections.c.jj 2006-10-05 00:24:40.000000000 +0200
+++ libgomp/sections.c 2007-06-25 22:03:17.000000000 +0200
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005 Free Software Foundation, Inc.
+/* Copyright (C) 2005, 2007 Free Software Foundation, Inc.
Contributed by Richard Henderson <rth at redhat.com>.
This file is part of the GNU OpenMP Library (libgomp).
@@ -106,7 +106,7 @@ GOMP_parallel_sections_start (void (*fn)
struct gomp_work_share *ws;
num_threads = gomp_resolve_num_threads (num_threads);
- if (num_threads > count)
+ if (gomp_dyn_var && num_threads > count)
num_threads = count;
ws = gomp_new_work_share (false, num_threads);
--- libgomp/testsuite/libgomp.c/pr32468.c.jj 2007-06-25 21:51:07.000000000 +0200
+++ libgomp/testsuite/libgomp.c/pr32468.c 2007-06-25 21:55:44.000000000 +0200
@@ -0,0 +1,26 @@
+/* PR libgomp/32468 */
+/* { dg-do run } */
+
+#include <omp.h>
+#include <stdlib.h>
+
+int
+main (void)
+{
+ int res[2] = { -1, -1 };
+ omp_set_dynamic (0);
+ omp_set_num_threads (4);
+#pragma omp parallel
+ {
+ #pragma omp sections
+ {
+ #pragma omp section
+ res[0] = omp_get_num_threads () != 4;
+ #pragma omp section
+ res[1] = omp_get_num_threads () != 4;
+ }
+ }
+ if (res[0] != 0 || res[1] != 0)
+ abort ();
+ return 0;
+}
gcc41-rh245424.patch:
--- NEW FILE gcc41-rh245424.patch ---
2007-06-25 Jakub Jelinek <jakub at redhat.com>
* config/rs6000/rs6000.c (rs6000_function_ok_for_sibcall): Ensure
decl is non-external for AIX ABI.
2007-06-25 David Edelsohn <edelsohn at gnu.org>
* config/rs6000/predicates.md (current_file_function_operand):
Ensure the symbol is non-external for AIX ABI.
--- gcc/config/rs6000/rs6000.c.jj 2007-06-25 22:22:41.000000000 +0200
+++ gcc/config/rs6000/rs6000.c 2007-06-25 23:11:20.000000000 +0200
@@ -13938,7 +13938,8 @@ rs6000_function_ok_for_sibcall (tree dec
}
}
if (DEFAULT_ABI == ABI_DARWIN
- || (*targetm.binds_local_p) (decl))
+ || ((*targetm.binds_local_p) (decl)
+ && (DEFAULT_ABI != ABI_AIX || !DECL_EXTERNAL (decl))))
{
tree attr_list = TYPE_ATTRIBUTES (TREE_TYPE (decl));
--- gcc/config/rs6000/predicates.md.jj 2007-06-25 22:22:41.000000000 +0200
+++ gcc/config/rs6000/predicates.md 2007-06-25 22:57:19.000000000 +0200
@@ -696,7 +696,9 @@
(define_predicate "current_file_function_operand"
(and (match_code "symbol_ref")
(match_test "(DEFAULT_ABI != ABI_AIX || SYMBOL_REF_FUNCTION_P (op))
- && (SYMBOL_REF_LOCAL_P (op)
+ && ((SYMBOL_REF_LOCAL_P (op)
+ && (DEFAULT_ABI != ABI_AIX
+ || !SYMBOL_REF_EXTERNAL_P (op)))
|| (op == XEXP (DECL_RTL (current_function_decl),
0)))")))
Index: gcc41.spec
===================================================================
RCS file: /cvs/pkgs/rpms/gcc/devel/gcc41.spec,v
retrieving revision 1.161
retrieving revision 1.162
diff -u -r1.161 -r1.162
--- gcc41.spec 15 Jun 2007 17:42:21 -0000 1.161
+++ gcc41.spec 26 Jun 2007 13:04:20 -0000 1.162
@@ -1,6 +1,6 @@
-%define DATE 20070615
+%define DATE 20070626
%define gcc_version 4.1.2
-%define gcc_release 13
+%define gcc_release 14
%define _unpackaged_files_terminate_build 0
%define multilib_64_archs sparc64 ppc64 s390x x86_64
%define include_gappletviewer 1
@@ -118,33 +118,23 @@
Patch7: gcc41-ada-tweaks.patch
Patch8: gcc41-java-slow_pthread_self.patch
Patch9: gcc41-ppc32-retaddr.patch
-Patch10: gcc41-amdfam10.patch
-Patch11: gcc41-dsohandle.patch
-Patch12: gcc41-rh184446.patch
-Patch13: gcc41-pr20297-test.patch
-Patch14: gcc41-objc-rh185398.patch
-Patch15: gcc41-tests.patch
-Patch16: gcc41-hash-style-gnu.patch
-Patch17: gcc41-java-libdotdotlib.patch
-Patch18: gcc41-pr28709.patch
-Patch19: gcc41-pr28755.patch
-Patch20: gcc41-pr27898.patch
-Patch21: gcc41-pr27567.patch
-Patch22: gcc41-pr29272.patch
-Patch23: gcc41-pr29059.patch
-Patch24: gcc41-strncat-chk.patch
-Patch25: gcc41-pr29299.patch
-Patch26: gcc41-java-bogus-debugline.patch
-Patch27: gcc41-libjava-visibility.patch
-Patch28: gcc41-pr31187.patch
-Patch29: gcc41-pr31809.patch
-Patch30: gcc41-rh234515.patch
-Patch31: gcc41-pr32139.patch
-Patch32: gcc41-rh236895.patch
-Patch33: gcc41-pr32285.patch
-Patch34: gcc41-rh235008.patch
-Patch35: gcc41-pr31748.patch
-Patch36: gcc41-pr32353.patch
+Patch10: gcc41-dsohandle.patch
+Patch11: gcc41-rh184446.patch
+Patch12: gcc41-pr20297-test.patch
+Patch13: gcc41-hash-style-gnu.patch
+Patch14: gcc41-java-libdotdotlib.patch
+Patch15: gcc41-pr28755.patch
+Patch16: gcc41-pr27898.patch
+Patch17: gcc41-java-bogus-debugline.patch
+Patch18: gcc41-libjava-visibility.patch
+Patch19: gcc41-pr32139.patch
+Patch20: gcc41-rh236895.patch
+Patch21: gcc41-rh235008.patch
+Patch22: gcc41-pr31748.patch
+Patch23: gcc41-pr28690.patch
+Patch24: gcc41-pr32468.patch
+Patch25: gcc41-pr32468-2.patch
+Patch26: gcc41-rh245424.patch
%define _gnu %{nil}
%ifarch sparc
@@ -433,33 +423,23 @@
%patch7 -p0 -b .ada-tweaks~
%patch8 -p0 -b .java-slow_pthread_self~
%patch9 -p0 -b .ppc32-retaddr~
-%patch10 -p0 -b .amdfam10~
-%patch11 -p0 -b .dsohandle~
-%patch12 -p0 -b .rh184446~
-%patch13 -p0 -E -b .pr20297-test~
-%patch14 -p0 -b .objc-rh185398~
-%patch15 -p0 -b .tests~
-%patch16 -p0 -b .hash-style-gnu~
-%patch17 -p0 -b .java-libdotdotlib~
-%patch18 -p0 -b .pr28709~
-%patch19 -p0 -b .pr28755~
-%patch20 -p0 -b .pr27898~
-%patch21 -p0 -b .pr27567~
-%patch22 -p0 -b .pr29272~
-%patch23 -p0 -b .pr29059~
-%patch24 -p0 -b .strncat-chk~
-%patch25 -p0 -b .pr29299~
-%patch26 -p0 -b .java-bogus-debugline~
-%patch27 -p0 -b .libjava-visibility~
-%patch28 -p0 -b .pr31187~
-%patch29 -p0 -b .pr31809~
-%patch30 -p0 -b .rh234515~
-%patch31 -p0 -b .pr32139~
-%patch32 -p0 -b .rh236895~
-%patch33 -p0 -b .pr32285~
-%patch34 -p0 -b .rh235008~
-%patch35 -p0 -b .pr31748~
-%patch36 -p0 -b .pr32353~
+%patch10 -p0 -b .dsohandle~
+%patch11 -p0 -b .rh184446~
+%patch12 -p0 -E -b .pr20297-test~
+%patch13 -p0 -b .hash-style-gnu~
+%patch14 -p0 -b .java-libdotdotlib~
+%patch15 -p0 -b .pr28755~
+%patch16 -p0 -b .pr27898~
+%patch17 -p0 -b .java-bogus-debugline~
+%patch18 -p0 -b .libjava-visibility~
+%patch19 -p0 -b .pr32139~
+%patch20 -p0 -b .rh236895~
+%patch21 -p0 -b .rh235008~
+%patch22 -p0 -b .pr31748~
+%patch23 -p0 -b .pr28690~
+%patch24 -p0 -b .pr32468~
+%patch25 -p0 -b .pr32468-2~
+%patch26 -p0 -b .rh245424~
sed -i -e 's/4\.1\.3/4.1.2/' gcc/BASE-VER gcc/version.c
sed -i -e 's/" (Red Hat[^)]*)"/" (Red Hat %{version}-%{gcc_release})"/' gcc/version.c
@@ -1583,6 +1563,20 @@
%doc rpm.doc/changelogs/libmudflap/ChangeLog*
%changelog
+* Tue Jun 26 2007 Jakub Jelinek <jakub at redhat.com> 4.1.2-14
+- update from gcc-4_1-branch (-r125727:126008)
+ - PRs inline-asm/32109, rtl-optimization/28011, target/32389
+- gomp update from gcc-4_2-branch (-r125917:125918)
+ - PR middle-end/32362
+- on ppc{,64} when tuning for power6{,x}, try to put the base
+ register as first operand in instructions to improve
+ performance (Peter Bergner, #225425, PR middle-end/28690)
+- on ppc64 emit nop after a call and disallow sibling calls
+ if the target function is not defined in the same object file
+ (David Edelsohn, #245424)
+- gomp parallel sections fix and fix for checking whether combined
+ parallel can be used (PR libgomp/32468)
+
* Fri Jun 15 2007 Jakub Jelinek <jakub at redhat.com> 4.1.2-13
- update from gcc-4_1-branch (-r124365:125727)
- PRs libfortran/31409, libfortran/31880, libfortran/31964,
--- gcc41-amdfam10.patch DELETED ---
--- gcc41-multi32-hack.patch DELETED ---
--- gcc41-objc-rh185398.patch DELETED ---
--- gcc41-pr24036-revert.patch DELETED ---
--- gcc41-pr27567.patch DELETED ---
--- gcc41-pr28709.patch DELETED ---
--- gcc41-pr29059.patch DELETED ---
--- gcc41-pr29272.patch DELETED ---
--- gcc41-pr29299.patch DELETED ---
--- gcc41-pr31187.patch DELETED ---
--- gcc41-pr31809.patch DELETED ---
--- gcc41-pr32285.patch DELETED ---
--- gcc41-pr32353.patch DELETED ---
--- gcc41-rh234515.patch DELETED ---
--- gcc41-strncat-chk.patch DELETED ---
--- gcc41-tests.patch DELETED ---
More information about the fedora-extras-commits
mailing list