diff --git a/.cvsignore b/.cvsignore index 1c50f2e..a81b3c0 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ fastjar-0.97.tar.gz -gcc-4.4.0-20090330.tar.bz2 +gcc-4.4.0-20090409.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 40827e2..be369db 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%define DATE 20090330 -%define SVNREV 145311 +%define DATE 20090409 +%define SVNREV 145816 %define gcc_version 4.4.0 # Note, gcc_release must be integer, if you want to add suffixes to # %{release}, append them after %{gcc_release} on Release: line. -%define gcc_release 0.31 +%define gcc_release 0.32 %define _unpackaged_files_terminate_build 0 %define multilib_64_archs sparc64 ppc64 s390x x86_64 %define include_gappletviewer 1 @@ -148,7 +148,6 @@ Patch20: gcc44-libtool-no-rpath.patch Patch21: gcc44-cloog-dl.patch Patch22: gcc44-raw-string.patch Patch24: gcc44-atom.patch -Patch25: gcc44-pr39226.patch Patch26: gcc44-power7.patch Patch27: gcc44-power7-2.patch Patch28: gcc44-pr38757.patch @@ -438,11 +437,10 @@ which are required to compile with the GNAT. %endif %patch22 -p0 -b .raw-string~ %patch24 -p0 -b .atom~ -%patch25 -p0 -b .pr39226~ %patch26 -p0 -b .power7~ %patch27 -p0 -b .power7-2~ %patch28 -p0 -b .pr38757~ -%patch30 -p0 -b .pr39543~ +#%patch30 -p0 -b .pr39543~ # This testcase doesn't compile. rm libjava/testsuite/libjava.lang/PR35020* @@ -1753,6 +1751,19 @@ fi %doc rpm.doc/changelogs/libmudflap/ChangeLog* %changelog +* Thu Apr 9 2009 Jakub Jelinek 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 4.4.0-0.31 - update from gcc-4_4-branch - PR target/39545 diff --git a/gcc44-hack.patch b/gcc44-hack.patch index da00568..c770339 100644 --- a/gcc44-hack.patch +++ b/gcc44-hack.patch @@ -1,8 +1,8 @@ --- libada/Makefile.in.jj 2009-01-14 12:07:35.000000000 +0100 +++ libada/Makefile.in 2009-01-15 14:25:33.000000000 +0100 -@@ -66,17 +66,39 @@ target_noncanonical:=@target_noncanonica - version := $(shell cat $(srcdir)/../gcc/BASE-VER) +@@ -67,17 +67,39 @@ version := $(shell cat $(srcdir)/../gcc/ libsubdir := $(libdir)/gcc/$(target_noncanonical)/$(version)$(MULTISUBDIR) + ADA_RTS_DIR=$(GCC_DIR)/ada/rts$(subst /,_,$(MULTISUBDIR)) +DEFAULTMULTIFLAGS := +ifeq ($(MULTISUBDIR),) @@ -43,7 +43,7 @@ "TARGET_LIBGCC2_CFLAGS=$(TARGET_LIBGCC2_CFLAGS)" \ "THREAD_KIND=$(THREAD_KIND)" \ "TRACE=$(TRACE)" \ -@@ -87,7 +109,7 @@ LIBADA_FLAGS_TO_PASS = \ +@@ -88,7 +110,7 @@ LIBADA_FLAGS_TO_PASS = \ "exeext=.exeext.should.not.be.used " \ 'CC=the.host.compiler.should.not.be.needed' \ "GCC_FOR_TARGET=$(CC)" \ diff --git a/gcc44-pr39226.patch b/gcc44-pr39226.patch deleted file mode 100644 index 9b99e6e..0000000 --- a/gcc44-pr39226.patch +++ /dev/null @@ -1,108 +0,0 @@ -2009-03-03 Jakub Jelinek - - PR target/39226 - * config/rs6000/rs6000.md (andsi3_internal5_nomc, - anddi3_internal2_nomc, anddi3_internal3_nomc): Removed. - (booldi3_internal3): Use boolean_or_operator instead of - boolean_operator. - - * gcc.dg/pr39226.c: New test. - ---- gcc/config/rs6000/rs6000.md.jj 2009-03-02 18:09:02.000000000 +0100 -+++ gcc/config/rs6000/rs6000.md 2009-03-03 10:02:37.771461086 +0100 -@@ -2999,20 +2999,6 @@ - [(set_attr "type" "compare,compare,compare,delayed_compare,compare,compare,compare,compare") - (set_attr "length" "8,4,4,4,8,8,8,8")]) - --(define_insn "*andsi3_internal5_nomc" -- [(set (match_operand:CC 3 "cc_reg_operand" "=x,?y,??y,??y,?y") -- (compare:CC (and:SI (match_operand:SI 1 "gpc_reg_operand" "%r,r,r,r,r") -- (match_operand:SI 2 "and_operand" "r,r,K,L,T")) -- (const_int 0))) -- (set (match_operand:SI 0 "gpc_reg_operand" "=r,r,r,r,r") -- (and:SI (match_dup 1) -- (match_dup 2))) -- (clobber (match_scratch:CC 4 "=X,X,x,x,X"))] -- "TARGET_64BIT && !rs6000_gen_cell_microcode" -- "#" -- [(set_attr "type" "compare") -- (set_attr "length" "8,8,8,8,8")]) -- - (define_split - [(set (match_operand:CC 3 "cc_reg_not_micro_cr0_operand" "") - (compare:CC (and:SI (match_operand:SI 1 "gpc_reg_operand" "") -@@ -7684,18 +7670,6 @@ - [(set_attr "type" "compare,compare,delayed_compare,compare,compare,compare,compare,compare,compare,compare,compare,compare") - (set_attr "length" "4,4,4,4,4,8,8,8,8,8,8,12")]) - --(define_insn "*anddi3_internal2_nomc" -- [(set (match_operand:CC 0 "cc_reg_operand" "=x,?y,?y,??y,??y,?y") -- (compare:CC (and:DI (match_operand:DI 1 "gpc_reg_operand" "%r,r,r,r,r,r") -- (match_operand:DI 2 "and64_2_operand" "t,r,S,K,J,t")) -- (const_int 0))) -- (clobber (match_scratch:DI 3 "=r,r,r,r,r,r")) -- (clobber (match_scratch:CC 4 "=X,X,X,x,x,X"))] -- "TARGET_64BIT && !rs6000_gen_cell_microcode" -- "#" -- [(set_attr "type" "delayed_compare,compare,compare,compare,compare,compare") -- (set_attr "length" "8,8,8,8,8,12")]) -- - (define_split - [(set (match_operand:CC 0 "cc_reg_operand" "") - (compare:CC (and:DI (match_operand:DI 1 "gpc_reg_operand" "") -@@ -7747,18 +7721,6 @@ - [(set_attr "type" "compare,compare,delayed_compare,compare,compare,compare,compare,compare,compare,compare,compare,compare") - (set_attr "length" "4,4,4,4,4,8,8,8,8,8,8,12")]) - --(define_insn "*anddi3_internal3_nomc" -- [(set (match_operand:CC 3 "cc_reg_operand" "=x,?y,?y,??y,??y,?y") -- (compare:CC (and:DI (match_operand:DI 1 "gpc_reg_operand" "%r,r,r,r,r,r") -- (match_operand:DI 2 "and64_2_operand" "t,r,S,K,J,t")) -- (const_int 0))) -- (set (match_operand:DI 0 "gpc_reg_operand" "=r,r,r,r,r,r") -- (and:DI (match_dup 1) (match_dup 2))) -- (clobber (match_scratch:CC 4 "=X,X,X,x,x,X"))] -- "TARGET_64BIT && !rs6000_gen_cell_microcode" -- "#" -- [(set_attr "type" "delayed_compare,compare,compare,compare,compare,compare") -- (set_attr "length" "8,8,8,8,8,12")]) - (define_split - [(set (match_operand:CC 3 "cc_reg_not_micro_cr0_operand" "") - (compare:CC (and:DI (match_operand:DI 1 "gpc_reg_operand" "") -@@ -7915,7 +7877,7 @@ - - (define_insn "*booldi3_internal3" - [(set (match_operand:CC 3 "cc_reg_operand" "=x,?y") -- (compare:CC (match_operator:DI 4 "boolean_operator" -+ (compare:CC (match_operator:DI 4 "boolean_or_operator" - [(match_operand:DI 1 "gpc_reg_operand" "%r,r") - (match_operand:DI 2 "gpc_reg_operand" "r,r")]) - (const_int 0))) ---- gcc/testsuite/gcc.dg/pr39226.c.jj 2009-03-02 23:27:03.398459808 +0100 -+++ gcc/testsuite/gcc.dg/pr39226.c 2009-03-02 23:26:19.696462209 +0100 -@@ -0,0 +1,25 @@ -+/* PR target/39226 */ -+/* { dg-do compile } */ -+/* { dg-options "-O2" } */ -+/* { dg-options "-O2 -mtune=cell -mminimal-toc" { target { powerpc*-*-* && lp64 } } } */ -+ -+struct A -+{ -+ char *a; -+ unsigned int b : 1; -+ unsigned int c : 31; -+}; -+ -+struct B -+{ -+ struct A *d; -+}; -+ -+void -+foo (struct B *x, unsigned long y) -+{ -+ if (x->d[y].c) -+ return; -+ if (x->d[y].b) -+ x->d[y].a = 0; -+} diff --git a/sources b/sources index e907288..556d54b 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -1e5facb4545a0cc6d25a6e34174d6b93 gcc-4.4.0-20090330.tar.bz2 +e45f1b49ad6bc7e78ef8887cab726943 gcc-4.4.0-20090409.tar.bz2