From 9cf7da719f67aef3a90b2f9f52f8c8857a7e00d8 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Feb 16 2012 12:19:06 +0000 Subject: 4.7.0-0.13 --- diff --git a/.gitignore b/.gitignore index 5d1ac15..8fb479b 100644 --- a/.gitignore +++ b/.gitignore @@ -18,3 +18,4 @@ /gcc-4.7.0-20120126.tar.bz2 /gcc-4.7.0-20120206.tar.bz2 /gcc-4.7.0-20120208.tar.bz2 +/gcc-4.7.0-20120216.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 20be5ce..0057147 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120208 -%global SVNREV 184012 +%global DATE 20120216 +%global SVNREV 184307 %global gcc_version 4.7.0 # Note, gcc_release must be integer, if you want to add suffixes to # %{release}, append them after %{gcc_release} on Release: line. -%global gcc_release 0.12 +%global gcc_release 0.13 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -12,7 +12,7 @@ %global build_ada 0 %endif %global build_java 1 -%ifarch %{ix86} x86_64 +%ifarch %{ix86} x86_64 ppc ppc64 s390 s390x %{arm} %global build_go 1 %else %global build_go 0 @@ -174,9 +174,6 @@ Patch12: gcc47-libstdc++-docs.patch Patch13: gcc47-no-add-needed.patch Patch14: gcc47-ppl-0.10.patch Patch15: gcc47-libitm-fno-exceptions.patch -Patch16: gcc47-pr51950.patch -Patch17: gcc47-pr52132.patch -Patch18: gcc47-pr52165.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -678,9 +675,6 @@ package or when debugging this package. %patch14 -p0 -b .ppl-0.10~ %endif %patch15 -p0 -b .libitm-fno-exceptions~ -%patch16 -p0 -b .pr51950~ -%patch17 -p0 -b .pr52132~ -%patch18 -p0 -b .pr52165~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -2641,6 +2635,23 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Thu Feb 16 2012 Jakub Jelinek 4.7.0-0.13 +- update from trunk + - PRs boehm-gc/48514, bootstrap/52172, c++/39055, c++/51910, c++/52215, + c/52181, c/52190, debug/52165, debug/52260, driver/48524, + fortran/32380, fortran/52151, go/48411, go/51874, libffi/52221, + libitm/52042, libitm/52220, libstdc++/51368, lto/52178, + middle-end/48600, middle-end/51867, middle-end/51929, + middle-end/52140, middle-end/52142, middle-end/52177, + middle-end/52209, middle-end/52214, middle-end/52230, + rtl-optimization/52175, target/51921, target/52146, target/52199, + target/52205, target/52261, testsuite/50076, translation/52193, + translation/52211, translation/52264, tree-optimization/50031, + tree-optimization/50561, tree-optimization/52210, + tree-optimization/52244, tree-optimization/52255 + - fix asm goto handling in templates (#790221, PR c++/52247) +- reenable go on ppc/ppc64/s390/s390x/arm + * Wed Feb 8 2012 Jakub Jelinek 4.7.0-0.12 - update from trunk - PRs c++/52035, fortran/51514, gcov-profile/52150, libstdc++/51296, diff --git a/gcc47-pr51950.patch b/gcc47-pr51950.patch deleted file mode 100644 index b898a49..0000000 --- a/gcc47-pr51950.patch +++ /dev/null @@ -1,54 +0,0 @@ -2012-01-25 Jakub Jelinek - - PR debug/51950 - * dwarf2out.c (clone_tree_hash): New function. - (copy_decls_walk): Use it instead of clone_tree. - ---- gcc/dwarf2out.c.jj 2012-01-23 18:23:45.000000000 +0100 -+++ gcc/dwarf2out.c 2012-01-25 18:32:24.026350399 +0100 -@@ -7406,6 +7406,32 @@ copy_ancestor_tree (dw_die_ref unit, dw_ - return copy; - } - -+/* Like clone_tree, but additionally enter all the children into -+ the hash table decl_table. */ -+ -+static dw_die_ref -+clone_tree_hash (dw_die_ref die, htab_t decl_table) -+{ -+ dw_die_ref c; -+ dw_die_ref clone = clone_die (die); -+ struct decl_table_entry *entry; -+ void **slot = htab_find_slot_with_hash (decl_table, die, -+ htab_hash_pointer (die), INSERT); -+ /* Assert that DIE isn't in the hash table yet. If it would be there -+ before, the ancestors would be necessarily there as well, therefore -+ clone_tree_hash wouldn't be called. */ -+ gcc_assert (*slot == HTAB_EMPTY_ENTRY); -+ entry = XCNEW (struct decl_table_entry); -+ entry->orig = die; -+ entry->copy = clone; -+ *slot = entry; -+ -+ FOR_EACH_CHILD (die, c, -+ add_child_die (clone, clone_tree_hash (c, decl_table))); -+ -+ return clone; -+} -+ - /* Walk the DIE and its children, looking for references to incomplete - or trivial types that are unmarked (i.e., that are not in the current - type_unit). */ -@@ -7442,7 +7468,11 @@ copy_decls_walk (dw_die_ref unit, dw_die - else - { - dw_die_ref parent = unit; -- dw_die_ref copy = clone_tree (targ); -+ dw_die_ref copy = clone_die (targ); -+ -+ FOR_EACH_CHILD (targ, c, -+ add_child_die (copy, -+ clone_tree_hash (c, decl_table))); - - /* Make sure the cloned tree is marked as part of the - type unit. */ diff --git a/gcc47-pr52132.patch b/gcc47-pr52132.patch deleted file mode 100644 index 61070cc..0000000 --- a/gcc47-pr52132.patch +++ /dev/null @@ -1,47 +0,0 @@ -2012-02-06 Jakub Jelinek - - PR debug/52132 - * reg-stack.c (subst_stack_regs_in_debug_insn): Don't use - get_true_reg. - - * gcc.dg/pr52132.c: New test. - ---- gcc/reg-stack.c.jj 2011-12-01 11:45:06.000000000 +0100 -+++ gcc/reg-stack.c 2012-02-06 11:13:28.777795938 +0100 -@@ -1323,14 +1323,10 @@ compare_for_stack_reg (rtx insn, stack r - static int - subst_stack_regs_in_debug_insn (rtx *loc, void *data) - { -- rtx *tloc = get_true_reg (loc); - stack regstack = (stack)data; - int hard_regno; - -- if (!STACK_REG_P (*tloc)) -- return 0; -- -- if (tloc != loc) -+ if (!STACK_REG_P (*loc)) - return 0; - - hard_regno = get_hard_regnum (regstack, *loc); ---- gcc/testsuite/gcc.dg/pr52132.c.jj 2012-02-06 11:14:23.572547529 +0100 -+++ gcc/testsuite/gcc.dg/pr52132.c 2012-02-06 11:14:46.656442861 +0100 -@@ -0,0 +1,18 @@ -+/* PR debug/52132 */ -+/* { dg-do compile } */ -+/* { dg-options "-std=c99 -O2 -g" } */ -+ -+int l; -+void bar (void); -+ -+void -+foo (int *x, float y) -+{ -+ float b; -+ union { float f; int i; } u = { .f = y }; -+ u.i += 127 << 23; -+ u.f = ((-1.0f / 3) * u.f + 2) * u.f - 2.0f / 3; -+ b = 0.5 * (u.f + l); -+ if (b >= *x) -+ bar (); -+} diff --git a/gcc47-pr52165.patch b/gcc47-pr52165.patch deleted file mode 100644 index 742279d..0000000 --- a/gcc47-pr52165.patch +++ /dev/null @@ -1,27 +0,0 @@ -2012-02-08 Jakub Jelinek - - PR debug/52165 - * var-tracking.c (emit_note_insn_var_location): If - EMIT_NOTE_BEFORE_INSN and insn is NOTE_INSN_CALL_ARG_LOCATION, - emit it before next non-NOTE_INSN_CALL_ARG_LOCATION - non-NOTE_DURING_CALL_P insn. - ---- gcc/var-tracking.c.jj 2012-01-30 00:10:01.000000000 +0100 -+++ gcc/var-tracking.c 2012-02-08 16:20:54.808523330 +0100 -@@ -8225,9 +8225,14 @@ emit_note_insn_var_location (void **varp - /* Make sure that the call related notes come first. */ - while (NEXT_INSN (insn) - && NOTE_P (insn) -- && NOTE_DURING_CALL_P (insn)) -+ && ((NOTE_KIND (insn) == NOTE_INSN_VAR_LOCATION -+ && NOTE_DURING_CALL_P (insn)) -+ || NOTE_KIND (insn) == NOTE_INSN_CALL_ARG_LOCATION)) - insn = NEXT_INSN (insn); -- if (NOTE_P (insn) && NOTE_DURING_CALL_P (insn)) -+ if (NOTE_P (insn) -+ && ((NOTE_KIND (insn) == NOTE_INSN_VAR_LOCATION -+ && NOTE_DURING_CALL_P (insn)) -+ || NOTE_KIND (insn) == NOTE_INSN_CALL_ARG_LOCATION)) - note = emit_note_after (NOTE_INSN_VAR_LOCATION, insn); - else - note = emit_note_before (NOTE_INSN_VAR_LOCATION, insn); diff --git a/sources b/sources index 19c32b2..bdff86a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -c76f55401f9f983074ea59e115f24260 gcc-4.7.0-20120208.tar.bz2 +0523cb594dc9fb19d515f2fb33c1a7e7 gcc-4.7.0-20120216.tar.bz2