diff --git a/.cvsignore b/.cvsignore index 8751100..e01410a 100644 --- a/.cvsignore +++ b/.cvsignore @@ -1,2 +1,2 @@ fastjar-0.97.tar.gz -gcc-4.4.4-20100630.tar.bz2 +gcc-4.5.0-20100707.tar.bz2 diff --git a/README.libgcjwebplugin.so b/README.libgcjwebplugin.so deleted file mode 100644 index d0c9090..0000000 --- a/README.libgcjwebplugin.so +++ /dev/null @@ -1,56 +0,0 @@ -gcjwebplugin is a Firefox plugin for running Java applets. It is now -included in the libgcj sub-package, though it is not enabled by -default. - -GNU Classpath and libgcj's security implementation is under active -development, but it is not ready to be declared secure. Specifically, -it cannot run untrusted applets safely. - -When gcjwebplugin is enabled, it prompts you with a dialog before -loading an applet. The dialog tells you that a certain URL would like -to load an applet, and asks if you trust the applet. Be aware though -that this dialog is mostly informative and doesn't provide much -protection: - -- http and DNS can be spoofed meaning that the URL named in the - warning dialog cannot be trusted - -- someone could create a browser denial-of-service attack by creating a - page with hundreds of applet tags, causing gcjwebplugin to create - warning dialog after warning dialog. The browser would have to be - closed to eliminate the latest dialog - -- the whitelist is provided as a convenience, but it is unsafe because a - domain may change hands from a trusted owner to an untrusted owner. - If that domain is in the whitelist then the warning dialog will not - appear when loading the new malicious applet. - -CURRENTLY GCJWEBPLUGIN RUNS WITH NO SECURITY MANAGER. THIS MEANS THAT -APPLETS CAN DO ANYTHING A JAVA APPLICATION THAT YOU DOWNLOAD AND RUN -COULD DO. BE *VERY* CAREFUL WHICH APPLETS YOU RUN. DO NOT USE -GCJWEBPLUGIN ON YOUR SYSTEM IF YOUR SYSTEM STORES IMPORTANT DATA. -THIS DATA CAN BE DESTROYED OR STOLEN. - -The same warning applies to gappletviewer, which also runs with no -security manager (in fact, gcjwebplugin spawns gappletviewer to do the -applet loading). When run on the command line, gappletviewer issues a -warning on startup and asks you if you want to continue. - -Even considering the risks involved, you may still want to try -gcjwebplugin. GNU Classpath's AWT and Swing implementations are now -sufficiently mature that they're able to run many applets deployed on -the web. If you're interested in trying gcjwebplugin, you can do so -by creating a symbolic link in ~/.mozilla/plugins like so: - -ln -s /usr/lib/gcj-@VERSION@/libgcjwebplugin.so ~/.mozilla/plugins/ - -Type about:plugins in Firefox's URL bar to confirm that the plugin has -been loaded. To see gcjwebplugin debugging output, run: - -firefox -g - -then at the GDB prompt, type - -run - -Please report bugs in Red Hat Bugzilla: http://bugzilla.redhat.com diff --git a/gcc.spec b/gcc.spec index f3613f9..74f3d1d 100644 --- a/gcc.spec +++ b/gcc.spec @@ -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}-%{release}-root-%(%{__id_u} -n) # 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. This package includes static libraries. %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. This package includes static libraries. %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="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`" #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,@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++/%{gcc_version}/%{gcc_target_platform}/ 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} $FULLLPATH/ 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/java/gcj-endorsed \ 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 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 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 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 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 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 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 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 4.4.4-2 -- fix VTA ICE on subregs of @GOTPCREL symbols (#588154, PR debug/43972) - -* Fri Apr 30 2010 Jakub Jelinek 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 4.4.3-3 -- VTA improvements (#556975, PR debug/42861) - -* Sat Jan 23 2010 Dennis Gilmore 4.4.3-2 -- use gas .section syntax (#530847) - -* Thu Jan 21 2010 Jakub Jelinek 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 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 4.4.2-27 -- fix ICE with std::complex copy (#555705, PR middle-end/42760) -- avoid exponential hangs in gen_lsm_tmp_name - -* Fri Jan 15 2010 Jakub Jelinek 4.4.2-26 -- update from gcc-4_4-branch - - PR c++/42655 - -* Thu Jan 14 2010 Jakub Jelinek 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 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 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 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 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 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 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 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 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 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 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 4.4.2-13 -- fix security issues in libltdl bundled within libgcj (CVE-2009-3736) - -* Wed Dec 2 2009 Jakub Jelinek 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 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 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 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 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 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: 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 4.4.1-11 -- fix ICE in tls_mem_loc_descriptor (#521991) - -* Tue Sep 8 2009 Jakub Jelinek 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 4.4.1-9 -- update from gcc-4_4-branch - - fix wide char constant stringification -- __builtin_unreachable fix - -* Wed Sep 2 2009 Jakub Jelinek 4.4.1-8 -- fix up __builtin_object_size (#505862) -- fix Fortran GOTO warning (PR fortran/38507) - -* Tue Sep 1 2009 Jakub Jelinek 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 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 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 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 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 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 4.4.1-1 -- update from gcc-4_4-branch - - GCC 4.4.1 release - -* Tue Jul 21 2009 Jakub Jelinek 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 - - fix Fortran bind(c) function using RESULT() (#492657) -- fix bogus warnings on strcmp/strncmp macros (#492846) - -* Sat Mar 28 2009 Jakub Jelinek 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 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 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 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 4.4.0-0.26 -- fix ppc64 regression caused by the power7 backport (#490149, - PR target/39457) - -* Fri Mar 13 2009 Jakub Jelinek 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 -- don't build with graphite support on sparc arches - - still missing some deps - -* Tue Mar 10 2009 Jakub Jelinek 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 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 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 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 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 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 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 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 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 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 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 4.4.0-0.13 -- fix graphite make check - -* Tue Jan 27 2009 Jakub Jelinek 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 4.4.0-0.9 -- rebuilt without ppc64 ada bootstrap hacks - -* Tue Jan 20 2009 Jakub Jelinek 4.4.0-0.8 -- attempt to enable Ada support on ppc64 - -* Fri Jan 16 2009 Jakub Jelinek 4.4.0-0.3 -- initial 4.4 package, using newly created redhat/gcc-4_4-branch +* Wed Jun 7 2010 Jakub Jelinek 4.5.0-1 +- initial 4.5 package, using newly created redhat/gcc-4_5-branch diff --git a/gcc44-cloog-dl.patch b/gcc44-cloog-dl.patch deleted file mode 100644 index cb8cbc7..0000000 --- a/gcc44-cloog-dl.patch +++ /dev/null @@ -1,171 +0,0 @@ -2009-01-27 Jakub Jelinek - - * Makefile.in (BACKENDLIBS): Link against -ldl instead of -lcloog -lppl. - (graphite.o): Force -O, remove -fkeep-inline-functions. - * graphite.c: Include . Reference libcloog and libppl symbols - through pointers in cloog_pointers variable. - (init_cloog_pointers): New function. - (gcc_type_for_iv_of_clast_loop): Rename stmt_for argument to stmt_fora. - (graphite_transform_loops): Call init_cloog_pointers. - ---- gcc/Makefile.in.jj 2009-01-26 20:50:38.000000000 +0100 -+++ gcc/Makefile.in 2009-01-27 14:18:10.000000000 +0100 -@@ -915,7 +915,7 @@ BUILD_LIBDEPS= $(BUILD_LIBIBERTY) - # How to link with both our special library facilities - # and the system's installed libraries. - LIBS = @LIBS@ $(CPPLIB) $(LIBINTL) $(LIBICONV) $(LIBIBERTY) $(LIBDECNUMBER) --BACKENDLIBS = $(CLOOGLIBS) $(PPLLIBS) $(GMPLIBS) -+BACKENDLIBS = $(GMPLIBS) $(if $(CLOOGLIBS),-ldl) - # Any system libraries needed just for GNAT. - SYSLIBS = @GNAT_LIBEXC@ - -@@ -3076,6 +3076,9 @@ $(out_object_file): $(out_file) $(CONFIG - $(CC) -c $(ALL_CFLAGS) $(ALL_CPPFLAGS) \ - $(out_file) $(OUTPUT_OPTION) - -+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) - $(CC) $(CFLAGS) $(LDFLAGS) -o $@ mips-tfile.o version.o $(LIBS) ---- gcc/graphite.c.jj 2009-01-24 19:59:02.000000000 +0100 -+++ gcc/graphite.c 2009-01-27 14:52:08.000000000 +0100 -@@ -59,6 +59,110 @@ along with GCC; see the file COPYING3. - #include "cloog/cloog.h" - #include "graphite.h" - -+#include -+#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 (ppl_finalize); \ -+ DYNSYM (pprint); \ -+ DYNSYM (stmt_block); \ -+ DYNSYM (stmt_for); \ -+ DYNSYM (stmt_guard); \ -+ DYNSYM (stmt_root); \ -+ DYNSYM (stmt_user); -+static 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 ppl_finalize (*cloog_pointers.p_ppl_finalize) -+#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) -+ -+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; -+} -+ - static VEC (scop_p, heap) *current_scops; - - /* Converts a GMP constant V to a tree and returns it. */ -@@ -4019,10 +4151,10 @@ clast_get_body_of_loop (struct clast_stm - 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_user_stmt *stmt = clast_get_body_of_loop ((struct clast_stmt *) stmt_for); -- const char *cloog_iv = stmt_for->iterator; -+ struct clast_user_stmt *stmt = clast_get_body_of_loop ((struct clast_stmt *) stmt_fora); -+ const char *cloog_iv = stmt_fora->iterator; - CloogStatement *cs = stmt->statement; - graphite_bb_p gbb = (graphite_bb_p) cloog_statement_usr (cs); - -@@ -6061,6 +6193,12 @@ graphite_transform_loops (void) - if (number_of_loops () <= 1) - return; - -+ if (!init_cloog_pointers ()) -+ { -+ sorry ("Graphite loop optimizations cannot be used"); -+ return; -+ } -+ - current_scops = VEC_alloc (scop_p, heap, 3); - recompute_all_dominators (); - diff --git a/gcc44-ia64-libunwind.patch b/gcc44-ia64-libunwind.patch deleted file mode 100644 index 8e10979..0000000 --- a/gcc44-ia64-libunwind.patch +++ /dev/null @@ -1,538 +0,0 @@ -2004-11-27 Jakub Jelinek - - * config.gcc (ia64*-*-linux*): If native and libelf is installed, - use ia64/t-glibc-no-libunwind instead of the other t-*unwind* - fragments. - * config/ia64/t-glibc-no-libunwind: New file. - * config/ia64/change-symver.c: New file. - * config/ia64/unwind-ia64.c: If USE_SYMVER_GLOBAL and SHARED, - define _Unwind_* to __symverglobal_Unwind_*. - (alias): Undefine. - (symverglobal): Define. Use it on _Unwind_*. - * config/ia64/mkmap-symver-multi.awk: New file. - * config/ia64/libgcc-ia64-no-libunwind.ver: New file. - ---- gcc/config.gcc.jj 2004-10-04 08:55:44.000000000 -0400 -+++ gcc/config.gcc 2004-11-13 05:23:50.000000000 -0500 -@@ -1185,9 +1185,16 @@ ia64*-*-freebsd*) - ;; - ia64*-*-linux*) - tm_file="${tm_file} dbxelf.h elfos.h svr4.h linux.h ia64/sysv4.h ia64/linux.h" -- tmake_file="${tmake_file} ia64/t-ia64 t-libunwind ia64/t-glibc" -- if test x$with_system_libunwind != xyes ; then -- tmake_file="${tmake_file} t-libunwind-elf ia64/t-glibc-libunwind" -+ tmake_file="${tmake_file} ia64/t-ia64" -+ if test x${target} = x${host} && test x${target} = x${build} \ -+ && grep gelf_getverdef /usr/include/gelf.h > /dev/null 2>&1 \ -+ && test -f /usr/lib/libelf.so; then -+ tmake_file="${tmake_file} ia64/t-glibc-no-libunwind" -+ else -+ tmake_file="${tmake_file} t-libunwind ia64/t-glibc" -+ if test x$with_system_libunwind != xyes ; then -+ tmake_file="${tmake_file} t-libunwind-elf ia64/t-glibc-libunwind" -+ fi - fi - target_cpu_default="MASK_GNU_AS|MASK_GNU_LD" - extra_parts="crtbegin.o crtend.o crtbeginS.o crtendS.o crtfastmath.o" ---- gcc/config/ia64/t-glibc-no-libunwind.jj 2004-02-18 10:27:36.000000000 -0500 -+++ gcc/config/ia64/t-glibc-no-libunwind 2004-11-15 09:56:33.000000000 -0500 -@@ -0,0 +1,30 @@ -+# Don't use system libunwind library on IA-64 GLIBC based system, -+# but make _Unwind_* symbols unversioned, so that created programs -+# are usable even when libgcc_s uses libunwind. -+LIB2ADDEH += $(srcdir)/config/ia64/fde-glibc.c -+SHLIB_MAPFILES += $(srcdir)/config/ia64/libgcc-ia64-no-libunwind.ver -+SHLIB_MKMAP = $(srcdir)/config/ia64/mkmap-symver-multi.awk -+ -+SHLIB_LINK = $(GCC_FOR_TARGET) $(LIBGCC2_CFLAGS) -shared -nodefaultlibs \ -+ -Wl,--soname=$(SHLIB_SONAME) \ -+ -Wl,--version-script=$(SHLIB_MAP) \ -+ -o $(SHLIB_DIR)/$(SHLIB_SONAME).tmp @multilib_flags@ $(SHLIB_OBJS) -lc && \ -+ rm -f $(SHLIB_DIR)/$(SHLIB_SOLINK) && \ -+ if [ -f $(SHLIB_DIR)/$(SHLIB_SONAME) ]; then \ -+ mv -f $(SHLIB_DIR)/$(SHLIB_SONAME) \ -+ $(SHLIB_DIR)/$(SHLIB_SONAME).backup; \ -+ else true; fi && \ -+ gcc -O2 -o $(SHLIB_DIR)/$(SHLIB_SONAME).tweak \ -+ $$(gcc_srcdir)/config/ia64/change-symver.c -lelf && \ -+ $(SHLIB_DIR)/$(SHLIB_SONAME).tweak $(SHLIB_DIR)/$(SHLIB_SONAME).tmp \ -+ GCC_3.4.2 _GLOBAL_ \ -+ _Unwind_GetGR _Unwind_RaiseException _Unwind_GetRegionStart _Unwind_SetIP \ -+ _Unwind_GetIP _Unwind_GetLanguageSpecificData _Unwind_Resume \ -+ _Unwind_DeleteException _Unwind_SetGR _Unwind_ForcedUnwind \ -+ _Unwind_Backtrace _Unwind_FindEnclosingFunction _Unwind_GetCFA \ -+ _Unwind_Resume_or_Rethrow _Unwind_GetBSP && \ -+ rm -f $(SHLIB_DIR)/$(SHLIB_SONAME).tweak && \ -+ mv $(SHLIB_DIR)/$(SHLIB_SONAME).tmp $(SHLIB_DIR)/$(SHLIB_SONAME) && \ -+ $(LN_S) $(SHLIB_SONAME) $(SHLIB_DIR)/$(SHLIB_SOLINK) -+ -+TARGET_LIBGCC2_CFLAGS += -DUSE_SYMVER_GLOBAL ---- gcc/config/ia64/change-symver.c.jj 2004-02-18 10:27:36.000000000 -0500 -+++ gcc/config/ia64/change-symver.c 2004-11-13 05:23:50.000000000 -0500 -@@ -0,0 +1,211 @@ -+#define _GNU_SOURCE 1 -+#define _FILE_OFFSET_BITS 64 -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+#include -+ -+int -+compute_veridx (const char *name, Elf *elf, Elf_Data *verd, GElf_Shdr *verd_shdr) -+{ -+ if (strcmp (name, "_GLOBAL_") == 0) -+ return 1; -+ -+ int cnt; -+ size_t offset = 0; -+ for (cnt = verd_shdr->sh_info; --cnt >= 0; ) -+ { -+ GElf_Verdef defmem; -+ GElf_Verdef *def; -+ GElf_Verdaux auxmem; -+ GElf_Verdaux *aux; -+ unsigned int auxoffset; -+ -+ /* Get the data at the next offset. */ -+ def = gelf_getverdef (verd, offset, &defmem); -+ if (def == NULL) -+ break; -+ -+ auxoffset = offset + def->vd_aux; -+ aux = gelf_getverdaux (verd, auxoffset, &auxmem); -+ if (aux == NULL) -+ break; -+ -+ if (strcmp (name, elf_strptr (elf, verd_shdr->sh_link, -+ aux->vda_name)) == 0) -+ return def->vd_ndx; -+ -+ /* Find the next offset. */ -+ offset += def->vd_next; -+ } -+ -+ return -1; -+} -+ -+int -+main (int argc, char **argv) -+{ -+ if (argc < 4) -+ error (1, 0, "Usage: change_symver library from_symver to_symver symbol...\nExample: change_symver libfoo.so FOO_1.0 *global* bar baz"); -+ -+ const char *fname = argv[1]; -+ -+ /* Open the file. */ -+ int fd; -+ fd = open (fname, O_RDWR); -+ if (fd == -1) -+ error (1, errno, fname); -+ -+ elf_version (EV_CURRENT); -+ -+ /* Now get the ELF descriptor. */ -+ Elf *elf = elf_begin (fd, ELF_C_READ_MMAP, NULL); -+ if (elf == NULL || elf_kind (elf) != ELF_K_ELF) -+ error (1, 0, "Couldn't open %s: %s", fname, elf_errmsg (-1)); -+ -+ size_t shstrndx; -+ /* Get the section header string table index. */ -+ if (elf_getshstrndx (elf, &shstrndx) < 0) -+ error (1, 0, "cannot get shstrndx from %s", fname); -+ -+ GElf_Ehdr ehdr_mem; -+ GElf_Ehdr *ehdr; -+ -+ /* We need the ELF header in a few places. */ -+ ehdr = gelf_getehdr (elf, &ehdr_mem); -+ if (ehdr == NULL) -+ error (1, 0, "couldn't get ELF headers %s: %s", fname, elf_errmsg (-1)); -+ -+ Elf_Scn *scn = NULL; -+ GElf_Shdr shdr_mem, verd_shdr, ver_shdr, dynsym_shdr; -+ Elf_Data *ver = NULL, *verd = NULL, *dynsym = NULL; -+ -+ while ((scn = elf_nextscn (elf, scn)) != NULL) -+ { -+ GElf_Shdr *shdr = gelf_getshdr (scn, &shdr_mem); -+ -+ if (shdr == NULL) -+ error (1, 0, "couldn't get shdr from %s", fname); -+ -+ if ((shdr->sh_flags & SHF_ALLOC) != 0) -+ { -+ const char *name = elf_strptr (elf, shstrndx, shdr->sh_name); -+ Elf_Data **p; -+ -+ if (strcmp (name, ".gnu.version") == 0) -+ { -+ p = &ver; -+ ver_shdr = *shdr; -+ } -+ else if (strcmp (name, ".gnu.version_d") == 0) -+ { -+ p = &verd; -+ verd_shdr = *shdr; -+ } -+ else if (strcmp (name, ".dynsym") == 0) -+ { -+ p = &dynsym; -+ dynsym_shdr = *shdr; -+ } -+ else -+ continue; -+ -+ if (*p != NULL) -+ error (1, 0, "Two %s sections in %s", name, fname); -+ *p = elf_getdata (scn, NULL); -+ if (*p == NULL || elf_getdata (scn, *p) != NULL) -+ error (1, 0, "No data or non-contiguous data in %s section in %s", -+ name, fname); -+ } -+ } -+ -+ if (ver == NULL || verd == NULL || dynsym == NULL) -+ error (1, 0, "Couldn't find one of the needed sections in %s", fname); -+ -+ int from_idx = compute_veridx (argv[2], elf, verd, &verd_shdr); -+ if (from_idx == -1) -+ error (1, 0, "Could not find symbol version %s in %s", argv[2], fname); -+ -+ int to_idx = compute_veridx (argv[3], elf, verd, &verd_shdr); -+ if (to_idx == -1) -+ error (1, 0, "Could not find symbol version %s in %s", argv[3], fname); -+ -+ if (dynsym_shdr.sh_entsize != gelf_fsize (elf, ELF_T_SYM, 1, ehdr->e_version) -+ || dynsym_shdr.sh_size % dynsym_shdr.sh_entsize -+ || ver_shdr.sh_entsize != 2 -+ || (ver_shdr.sh_size & 1) -+ || dynsym_shdr.sh_size / dynsym_shdr.sh_entsize != ver_shdr.sh_size / 2) -+ error (1, 0, "Unexpected sh_size or sh_entsize in %s", fname); -+ -+ size_t nentries = ver_shdr.sh_size / 2; -+ size_t cnt; -+ GElf_Versym array[nentries]; -+ for (cnt = 0; cnt < nentries; ++cnt) -+ { -+ GElf_Versym vsymmem; -+ GElf_Versym *vsym; -+ -+ vsym = gelf_getversym (ver, cnt, &vsymmem); -+ if (vsym == NULL) -+ error (1, 0, "gelt_getversym failed in %s: %s", fname, elf_errmsg (-1)); -+ -+ array[cnt] = *vsym; -+ if (*vsym != from_idx) -+ continue; -+ -+ GElf_Sym sym_mem; -+ GElf_Sym *sym; -+ sym = gelf_getsym (dynsym, cnt, &sym_mem); -+ if (sym == NULL) -+ error (1, 0, "gelt_getsym failed in %s: %s", fname, elf_errmsg (-1)); -+ -+ const char *name = elf_strptr (elf, dynsym_shdr.sh_link, sym->st_name); -+ -+ int argn; -+ for (argn = 4; argn < argc; ++argn) -+ if (fnmatch (argv[argn], name, 0) == 0) -+ { -+ array[cnt] = to_idx; -+ break; -+ } -+ } -+ -+ if (sizeof (array[0]) != 2) -+ abort (); -+ -+#if __BYTE_ORDER == __LITTLE_ENDIAN -+ if (ehdr->e_ident[EI_DATA] == ELFDATA2LSB) -+ ; -+ else if (ehdr->e_ident[EI_DATA] == ELFDATA2MSB) -+#elif __BYTE_ORDER == __BIG_ENDIAN -+ if (ehdr->e_ident[EI_DATA] == ELFDATA2MSB) -+ ; -+ else if (ehdr->e_ident[EI_DATA] == ELFDATA2LSB) -+#else -+# error Unsupported endianity -+#endif -+ { -+ for (cnt = 0; cnt < nentries; ++cnt) -+ array[cnt] = ((array[cnt] & 0xff) << 8) | ((array[cnt] & 0xff00) >> 8); -+ } -+ else -+ error (1, 0, "Unknown EI_DATA %d in %s", ehdr->e_ident[EI_DATA], fname); -+ -+ if (elf_end (elf) != 0) -+ error (1, 0, "couldn't close %s: %s", fname, elf_errmsg (-1)); -+ -+ if (lseek (fd, ver_shdr.sh_offset, SEEK_SET) != (off_t) ver_shdr.sh_offset) -+ error (1, 0, "failed to seek to %zd in %s", (size_t) ver_shdr.sh_offset, -+ fname); -+ -+ if (write (fd, array, 2 * nentries) != (ssize_t) (2 * nentries)) -+ error (1, 0, "failed to write .gnu.version section into %s", fname); -+ -+ close (fd); -+ return 0; -+} ---- gcc/config/ia64/unwind-ia64.c.jj 2004-10-04 08:55:57.000000000 -0400 -+++ gcc/config/ia64/unwind-ia64.c 2004-11-15 09:07:45.000000000 -0500 -@@ -51,6 +51,51 @@ - #define UNW_FLAG_UHANDLER(x) ((x) & 0x0000000200000000L) - #define UNW_LENGTH(x) ((x) & 0x00000000ffffffffL) - -+#if defined (USE_SYMVER_GLOBAL) && defined (SHARED) -+extern _Unwind_Reason_Code __symverglobal_Unwind_Backtrace -+ (_Unwind_Trace_Fn, void *); -+extern void __symverglobal_Unwind_DeleteException -+ (struct _Unwind_Exception *); -+extern void * __symverglobal_Unwind_FindEnclosingFunction (void *); -+extern _Unwind_Reason_Code __symverglobal_Unwind_ForcedUnwind -+ (struct _Unwind_Exception *, _Unwind_Stop_Fn, void *); -+extern _Unwind_Word __symverglobal_Unwind_GetCFA -+ (struct _Unwind_Context *); -+extern _Unwind_Word __symverglobal_Unwind_GetBSP -+ (struct _Unwind_Context *); -+extern _Unwind_Word __symverglobal_Unwind_GetGR -+ (struct _Unwind_Context *, int ); -+extern _Unwind_Ptr __symverglobal_Unwind_GetIP (struct _Unwind_Context *); -+extern void *__symverglobal_Unwind_GetLanguageSpecificData -+ (struct _Unwind_Context *); -+extern _Unwind_Ptr __symverglobal_Unwind_GetRegionStart -+ (struct _Unwind_Context *); -+extern _Unwind_Reason_Code __symverglobal_Unwind_RaiseException -+ (struct _Unwind_Exception *); -+extern void __symverglobal_Unwind_Resume (struct _Unwind_Exception *); -+extern _Unwind_Reason_Code __symverglobal_Unwind_Resume_or_Rethrow -+ (struct _Unwind_Exception *); -+extern void __symverglobal_Unwind_SetGR -+ (struct _Unwind_Context *, int, _Unwind_Word); -+extern void __symverglobal_Unwind_SetIP -+ (struct _Unwind_Context *, _Unwind_Ptr); -+#define _Unwind_Backtrace __symverglobal_Unwind_Backtrace -+#define _Unwind_DeleteException __symverglobal_Unwind_DeleteException -+#define _Unwind_FindEnclosingFunction __symverglobal_Unwind_FindEnclosingFunction -+#define _Unwind_ForcedUnwind __symverglobal_Unwind_ForcedUnwind -+#define _Unwind_GetBSP __symverglobal_Unwind_GetBSP -+#define _Unwind_GetCFA __symverglobal_Unwind_GetCFA -+#define _Unwind_GetGR __symverglobal_Unwind_GetGR -+#define _Unwind_GetIP __symverglobal_Unwind_GetIP -+#define _Unwind_GetLanguageSpecificData __symverglobal_Unwind_GetLanguageSpecificData -+#define _Unwind_GetRegionStart __symverglobal_Unwind_GetRegionStart -+#define _Unwind_RaiseException __symverglobal_Unwind_RaiseException -+#define _Unwind_Resume __symverglobal_Unwind_Resume -+#define _Unwind_Resume_or_Rethrow __symverglobal_Unwind_Resume_or_Rethrow -+#define _Unwind_SetGR __symverglobal_Unwind_SetGR -+#define _Unwind_SetIP __symverglobal_Unwind_SetIP -+#endif -+ - enum unw_application_register - { - UNW_AR_BSP, -@@ -2402,4 +2447,44 @@ alias (_Unwind_SetGR); - alias (_Unwind_SetIP); - #endif - -+#if defined (USE_SYMVER_GLOBAL) && defined (SHARED) -+#undef alias -+#define symverglobal(name, version) \ -+__typeof (__symverglobal##name) __symverlocal##name \ -+ __attribute__ ((alias ("__symverglobal" #name))); \ -+__asm__ (".symver __symverglobal" #name"," #name "@@GCC_3.4.2");\ -+__asm__ (".symver __symverlocal" #name"," #name "@" #version) -+ -+#undef _Unwind_Backtrace -+#undef _Unwind_DeleteException -+#undef _Unwind_FindEnclosingFunction -+#undef _Unwind_ForcedUnwind -+#undef _Unwind_GetBSP -+#undef _Unwind_GetCFA -+#undef _Unwind_GetGR -+#undef _Unwind_GetIP -+#undef _Unwind_GetLanguageSpecificData -+#undef _Unwind_GetRegionStart -+#undef _Unwind_RaiseException -+#undef _Unwind_Resume -+#undef _Unwind_Resume_or_Rethrow -+#undef _Unwind_SetGR -+#undef _Unwind_SetIP -+symverglobal (_Unwind_Backtrace, GCC_3.3); -+symverglobal (_Unwind_DeleteException, GCC_3.0); -+symverglobal (_Unwind_FindEnclosingFunction, GCC_3.3); -+symverglobal (_Unwind_ForcedUnwind, GCC_3.0); -+symverglobal (_Unwind_GetBSP, GCC_3.3.2); -+symverglobal (_Unwind_GetCFA, GCC_3.3); -+symverglobal (_Unwind_GetGR, GCC_3.0); -+symverglobal (_Unwind_GetIP, GCC_3.0); -+symverglobal (_Unwind_GetLanguageSpecificData, GCC_3.0); -+symverglobal (_Unwind_GetRegionStart, GCC_3.0); -+symverglobal (_Unwind_RaiseException, GCC_3.0); -+symverglobal (_Unwind_Resume, GCC_3.0); -+symverglobal (_Unwind_Resume_or_Rethrow, GCC_3.3); -+symverglobal (_Unwind_SetGR, GCC_3.0); -+symverglobal (_Unwind_SetIP, GCC_3.0); -+#endif -+ - #endif ---- gcc/config/ia64/mkmap-symver-multi.awk.jj 2004-02-18 10:27:36.000000000 -0500 -+++ gcc/config/ia64/mkmap-symver-multi.awk 2004-11-15 09:46:50.000000000 -0500 -@@ -0,0 +1,133 @@ -+# Generate an ELF symbol version map a-la Solaris and GNU ld. -+# Contributed by Richard Henderson -+# -+# This file is part of GCC. -+# -+# GCC is free software; you can redistribute it and/or modify it under -+# the terms of the GNU General Public License as published by the Free -+# Software Foundation; either version 2, or (at your option) any later -+# version. -+# -+# GCC is distributed in the hope that it will be useful, but WITHOUT -+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY -+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public -+# License for more details. -+# -+# You should have received a copy of the GNU General Public License -+# along with GCC; see the file COPYING. If not, write to the Free -+# Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA -+# 02110-1301, USA. -+ -+BEGIN { -+ state = "nm"; -+ sawsymbol = 0; -+} -+ -+# Remove comment and blank lines. -+/^ *#/ || /^ *$/ { -+ next; -+} -+ -+# We begin with nm input. Collect the set of symbols that are present -+# so that we can not emit them into the final version script -- Solaris -+# complains at us if we do. -+ -+state == "nm" && /^%%/ { -+ state = "ver"; -+ next; -+} -+ -+state == "nm" && ($1 == "U" || $2 == "U") { -+ next; -+} -+ -+state == "nm" && NF == 3 { -+ if ($3 ~ /^[^@]*@GCC_[0-9.]*$/) { -+ def[$3] = 1 -+ tl=$3 -+ sub(/^.*@/,"",tl) -+ ver[$3] = tl -+ } else { -+ sub(/@@?GCC_[0-9.]*$/,"",$3) -+ def[$3] = 1; -+ } -+ sawsymbol = 1; -+ next; -+} -+ -+state == "nm" { -+ next; -+} -+ -+# Now we process a simplified variant of the Solaris symbol version -+# script. We have one symbol per line, no semicolons, simple markers -+# for beginning and ending each section, and %inherit markers for -+# describing version inheritence. A symbol may appear in more than -+# one symbol version, and the last seen takes effect. -+ -+NF == 3 && $1 == "%inherit" { -+ inherit[$2] = $3; -+ next; -+} -+ -+NF == 2 && $2 == "{" { -+ libs[$1] = 1; -+ thislib = $1; -+ next; -+} -+ -+$1 == "}" { -+ thislib = ""; -+ next; -+} -+ -+{ -+ ver[$1] = thislib; -+ next; -+} -+ -+END { -+ if (!sawsymbol) -+ { -+ print "No symbols seen -- broken or mis-installed nm?" | "cat 1>&2"; -+ exit 1; -+ } -+ for (l in libs) -+ output(l); -+} -+ -+function output(lib) { -+ if (done[lib]) -+ return; -+ done[lib] = 1; -+ if (inherit[lib]) -+ output(inherit[lib]); -+ -+ empty=1 -+ for (sym in ver) -+ if ((ver[sym] == lib) && (sym in def)) -+ { -+ if (empty) -+ { -+ printf("%s {\n", lib); -+ printf(" global:\n"); -+ empty = 0; -+ } -+ symp = sym; -+ sub(/@GCC_[0-9.]*$/,"",symp); -+ printf("\t%s;\n", symp); -+ if (dotsyms) -+ printf("\t.%s;\n", symp); -+ } -+ -+ if (empty) -+ { -+ for (l in libs) -+ if (inherit[l] == lib) -+ inherit[l] = inherit[lib]; -+ } -+ else if (inherit[lib]) -+ printf("} %s;\n", inherit[lib]); -+ else -+ printf ("\n local:\n\t*;\n};\n"); -+} ---- gcc/config/ia64/libgcc-ia64-no-libunwind.ver.jj 2004-02-18 10:27:36.000000000 -0500 -+++ gcc/config/ia64/libgcc-ia64-no-libunwind.ver 2004-11-15 09:19:56.000000000 -0500 -@@ -0,0 +1,17 @@ -+GCC_3.4.2 { -+ _Unwind_GetGR -+ _Unwind_RaiseException -+ _Unwind_GetRegionStart -+ _Unwind_SetIP -+ _Unwind_GetIP -+ _Unwind_GetLanguageSpecificData -+ _Unwind_Resume -+ _Unwind_DeleteException -+ _Unwind_SetGR -+ _Unwind_ForcedUnwind -+ _Unwind_Backtrace -+ _Unwind_FindEnclosingFunction -+ _Unwind_GetCFA -+ _Unwind_Resume_or_Rethrow -+ _Unwind_GetBSP -+} diff --git a/gcc44-libstdc++-docs.patch b/gcc44-libstdc++-docs.patch deleted file mode 100644 index 45caafe..0000000 --- a/gcc44-libstdc++-docs.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- libstdc++-v3/doc/html/index.html 2009-01-14 12:06:37.000000000 +0100 -+++ libstdc++-v3/doc/html/index.html 2009-05-06 09:17:30.000000000 +0200 -@@ -12,7 +12,8 @@ -
-

The GNU C++ Library Documentation

- --

Copyright 2008 FSF

-+

Release 4.4.0

-+

Copyright 2008, 2009 FSF

- -

- Permission is granted to copy, distribute and/or modify this ---- libstdc++-v3/doc/html/api.html 2009-04-20 21:21:15.000000000 +0200 -+++ libstdc++-v3/doc/html/api.html 2009-05-06 09:17:24.000000000 +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. -

--The source-level documentation for the most recent releases can be --viewed online: --

  • -- for the 3.4 release -+The source-level documentation can be viewed here: -+

    -+

    - This generated HTML collection, as above, is also available for download in the libstdc++ snapshots directory at - <URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/>. diff --git a/gcc44-ppc64-aixdesc.patch b/gcc44-ppc64-aixdesc.patch deleted file mode 100644 index b9f4a8b..0000000 --- a/gcc44-ppc64-aixdesc.patch +++ /dev/null @@ -1,24 +0,0 @@ -2009-09-16 Jakub Jelinek - - * config/rs6000/sysv4.h (FP_SAVE_INLINE, GP_SAVE_INLINE): Disable - out of line gpr/fpr saving for -m64 -Os -mcall-aixdesc. - ---- gcc/config/rs6000/sysv4.h.jj 2009-09-16 14:46:19.000000000 +0200 -+++ gcc/config/rs6000/sysv4.h 2009-09-16 14:46:19.000000000 +0200 -@@ -273,12 +273,14 @@ do { \ - /* Define cutoff for using external functions to save floating point. - When optimizing for size, use external functions when profitable. */ - #define FP_SAVE_INLINE(FIRST_REG) (optimize_size \ -+ && (!TARGET_64BIT || !DOT_SYMBOLS) \ - ? ((FIRST_REG) == 62 \ - || (FIRST_REG) == 63) \ - : (FIRST_REG) < 64) - /* And similarly for general purpose registers. */ --#define GP_SAVE_INLINE(FIRST_REG) ((FIRST_REG) < 32 \ -- && !optimize_size) -+#define GP_SAVE_INLINE(FIRST_REG) ((FIRST_REG) < 32 \ -+ && (!optimize_size \ -+ || (TARGET_64BIT && DOT_SYMBOLS))) - - /* Put jump tables in read-only memory, rather than in .text. */ - #define JUMP_TABLES_IN_TEXT_SECTION 0 diff --git a/gcc44-rh330771.patch b/gcc44-rh330771.patch deleted file mode 100644 index f7c365d..0000000 --- a/gcc44-rh330771.patch +++ /dev/null @@ -1,34 +0,0 @@ -2007-10-16 Jakub Jelinek - - * 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 -@@ -314,6 +314,8 @@ libgcj_tools_la_SOURCES = classpath/tool - libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS) -findirect-dispatch \ - -fno-bootstrap-classes -fno-indirect-classes \ - -fsource-filename=$(here)/classpath/tools/all-classes.lst -+## See jv_convert_LDADD. -+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la - libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \ - -version-info `grep -v '^\#' $(srcdir)/libtool-version` \ - $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) ---- libjava/Makefile.in.jj 2009-05-06 08:14:49.000000000 +0200 -+++ libjava/Makefile.in 2009-05-06 10:27:18.000000000 +0200 -@@ -160,7 +160,6 @@ am__objects_1 = gnu/gcj/xlib/lib_gnu_awt - am_lib_gnu_awt_xlib_la_OBJECTS = $(am__objects_1) - lib_gnu_awt_xlib_la_OBJECTS = $(am_lib_gnu_awt_xlib_la_OBJECTS) - @XLIB_AWT_TRUE@am_lib_gnu_awt_xlib_la_rpath = -rpath $(toolexeclibdir) --libgcj_tools_la_LIBADD = - am_libgcj_tools_la_OBJECTS = classpath/tools/libgcj_tools_la-tools.lo - libgcj_tools_la_OBJECTS = $(am_libgcj_tools_la_OBJECTS) - @INTERPRETER_TRUE@am__DEPENDENCIES_1 = gnu/classpath/jdwp.lo \ -@@ -1041,6 +1040,7 @@ libgcj_tools_la_GCJFLAGS = $(AM_GCJFLAGS - -fno-bootstrap-classes -fno-indirect-classes \ - -fsource-filename=$(here)/classpath/tools/all-classes.lst - -+libgcj_tools_la_LIBADD = -L$(here)/.libs libgcj.la - libgcj_tools_la_LDFLAGS = -rpath $(toolexeclibdir) \ - -version-info `grep -v '^\#' $(srcdir)/libtool-version` \ - $(LIBGCJ_LD_SYMBOLIC_FUNCTIONS) diff --git a/gcc44-unwind-debug-hook.patch b/gcc44-unwind-debug-hook.patch deleted file mode 100644 index 9b7c59e..0000000 --- a/gcc44-unwind-debug-hook.patch +++ /dev/null @@ -1,51 +0,0 @@ -2010-04-27 Jakub Jelinek - - * unwind-dw2.c (_Unwind_DebugHook): Add used attribute. - -2009-05-27 Tom Tromey - - * unwind-dw2.c (_Unwind_DebugHook): New function. - (uw_install_context): Call _Unwind_DebugHook. - ---- gcc/unwind-dw2.c (revision 147933) -+++ gcc/unwind-dw2.c (revision 147934) -@@ -1473,18 +1473,32 @@ uw_init_context_1 (struct _Unwind_Contex - context->ra = __builtin_extract_return_addr (outer_ra); - } - -+static void _Unwind_DebugHook (void *, void *) -+ __attribute__ ((__noinline__, __used__)); -+ -+/* This function is called during unwinding. It is intended as a hook -+ for a debugger to intercept exceptions. CFA is the CFA of the -+ target frame. HANDLER is the PC to which control will be -+ transferred. */ -+static void -+_Unwind_DebugHook (void *cfa __attribute__ ((__unused__)), -+ void *handler __attribute__ ((__unused__))) -+{ -+ asm (""); -+} - - /* Install TARGET into CURRENT so that we can return to it. This is a - macro because __builtin_eh_return must be invoked in the context of - our caller. */ - --#define uw_install_context(CURRENT, TARGET) \ -- do \ -- { \ -- long offset = uw_install_context_1 ((CURRENT), (TARGET)); \ -- void *handler = __builtin_frob_return_addr ((TARGET)->ra); \ -- __builtin_eh_return (offset, handler); \ -- } \ -+#define uw_install_context(CURRENT, TARGET) \ -+ do \ -+ { \ -+ long offset = uw_install_context_1 ((CURRENT), (TARGET)); \ -+ void *handler = __builtin_frob_return_addr ((TARGET)->ra); \ -+ _Unwind_DebugHook ((TARGET)->cfa, handler); \ -+ __builtin_eh_return (offset, handler); \ -+ } \ - while (0) - - static long diff --git a/gcc44-build-id.patch b/gcc45-build-id.patch similarity index 100% rename from gcc44-build-id.patch rename to gcc45-build-id.patch diff --git a/gcc44-c++-builtin-redecl.patch b/gcc45-c++-builtin-redecl.patch similarity index 100% rename from gcc44-c++-builtin-redecl.patch rename to gcc45-c++-builtin-redecl.patch diff --git a/gcc45-cloog-dl.patch b/gcc45-cloog-dl.patch new file mode 100644 index 0000000..a3ea1ea --- /dev/null +++ b/gcc45-cloog-dl.patch @@ -0,0 +1,350 @@ +2010-07-01 Jakub Jelinek + + * 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 . 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 ++#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); + diff --git a/gcc44-hack.patch b/gcc45-hack.patch similarity index 69% rename from gcc44-hack.patch rename to gcc45-hack.patch index 8719d17..2427264 100644 --- a/gcc44-hack.patch +++ b/gcc45-hack.patch @@ -56,11 +56,44 @@ .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 -@@ -8039,6 +8039,7 @@ package body Make is +@@ -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); + 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}" \ diff --git a/gcc44-i386-libgomp.patch b/gcc45-i386-libgomp.patch similarity index 100% rename from gcc44-i386-libgomp.patch rename to gcc45-i386-libgomp.patch diff --git a/gcc44-java-nomulti.patch b/gcc45-java-nomulti.patch similarity index 100% rename from gcc44-java-nomulti.patch rename to gcc45-java-nomulti.patch diff --git a/gcc44-libgomp-omp_h-multilib.patch b/gcc45-libgomp-omp_h-multilib.patch similarity index 100% rename from gcc44-libgomp-omp_h-multilib.patch rename to gcc45-libgomp-omp_h-multilib.patch diff --git a/gcc45-libstdc++-docs.patch b/gcc45-libstdc++-docs.patch new file mode 100644 index 0000000..2d18f44 --- /dev/null +++ b/gcc45-libstdc++-docs.patch @@ -0,0 +1,47 @@ +--- 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 @@ +

    +

    The GNU C++ Library Documentation

    + +-

    Copyright 2008, 2009 FSF

    ++

    Release 4.5.0

    ++

    Copyright 2008, 2009, 2010 FSF

    + +

    + 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. +

    +-The source-level documentation for the most recent releases can be +-viewed online: +-

    • +- for the 3.4 release ++The source-level documentation can be viewed here: ++

      ++

      + This generated HTML collection, as above, is also available for download in the libstdc++ snapshots directory at + <URL:ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/>. diff --git a/gcc44-libtool-no-rpath.patch b/gcc45-libtool-no-rpath.patch similarity index 100% rename from gcc44-libtool-no-rpath.patch rename to gcc45-libtool-no-rpath.patch diff --git a/gcc44-no-add-needed.patch b/gcc45-no-add-needed.patch similarity index 100% rename from gcc44-no-add-needed.patch rename to gcc45-no-add-needed.patch diff --git a/gcc44-ppc32-retaddr.patch b/gcc45-ppc32-retaddr.patch similarity index 100% rename from gcc44-ppc32-retaddr.patch rename to gcc45-ppc32-retaddr.patch diff --git a/gcc44-pr33763.patch b/gcc45-pr33763.patch similarity index 100% rename from gcc44-pr33763.patch rename to gcc45-pr33763.patch diff --git a/gcc44-pr38757.patch b/gcc45-pr38757.patch similarity index 68% rename from gcc44-pr38757.patch rename to gcc45-pr38757.patch index 805996f..d550988 100644 --- a/gcc44-pr38757.patch +++ b/gcc45-pr38757.patch @@ -11,18 +11,11 @@ (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 2009-03-02 09:45:47.000000000 +0100 -+++ gcc/langhooks.h 2009-03-18 12:53:24.000000000 +0100 -@@ -1,5 +1,5 @@ - /* 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. - - This file is part of GCC. -@@ -414,6 +414,10 @@ struct lang_hooks - if in the process TREE_CONSTANT or TREE_SIDE_EFFECTS need updating. */ - tree (*expr_to_decl) (tree expr, bool *tc, bool *se); +--- 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. */ @@ -31,8 +24,8 @@ /* Whenever you add entries here, make sure you adjust langhooks-def.h and langhooks.c accordingly. */ }; ---- gcc/langhooks-def.h.jj 2009-03-02 09:45:47.000000000 +0100 -+++ gcc/langhooks-def.h 2009-03-18 12:53:45.000000000 +0100 +--- 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 @@ -40,24 +33,24 @@ Free Software Foundation, Inc. Contributed by Alexandre Oliva -@@ -113,6 +113,7 @@ extern void lhd_omp_firstprivatize_type_ - #define LANG_HOOKS_EXPR_TO_DECL lhd_expr_to_decl - #define LANG_HOOKS_TO_TARGET_CHARSET lhd_to_target_charset - #define LANG_HOOKS_INIT_TS lhd_do_nothing +@@ -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 -@@ -270,6 +271,7 @@ extern tree lhd_make_node (enum tree_cod - LANG_HOOKS_BUILTIN_FUNCTION_EXT_SCOPE, \ - LANG_HOOKS_INIT_TS, \ - LANG_HOOKS_EXPR_TO_DECL, \ +@@ -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 2009-02-20 15:06:14.000000000 +0100 -+++ gcc/c-lang.c 2009-03-18 13:33:41.000000000 +0100 +--- 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, @@ -87,10 +80,10 @@ +#define LANG_HOOKS_SOURCE_LANGUAGE c_source_language /* Each front end provides its own lang hook initializer. */ - const struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; ---- gcc/dwarf2out.c.jj 2009-03-17 13:06:29.000000000 +0100 -+++ gcc/dwarf2out.c 2009-03-18 12:55:36.000000000 +0100 -@@ -14286,9 +14286,18 @@ add_bit_size_attribute (dw_die_ref die, + 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) { @@ -112,7 +105,7 @@ } /* Add an 'abstract_origin' attribute below a given DIE. The DIE is found -@@ -16290,6 +16299,10 @@ gen_compile_unit_die (const char *filena +@@ -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; diff --git a/gcc44-pr44542.patch b/gcc45-pr44542.patch similarity index 68% rename from gcc44-pr44542.patch rename to gcc45-pr44542.patch index 0926e40..340fb44 100644 --- a/gcc44-pr44542.patch +++ b/gcc45-pr44542.patch @@ -9,7 +9,7 @@ --- gcc/cfgexpand.c.jj 2010-06-17 17:01:11.964198458 +0200 +++ gcc/cfgexpand.c 2010-06-17 18:25:18.940335757 +0200 -@@ -839,7 +839,7 @@ static void +@@ -705,7 +705,7 @@ static void expand_one_stack_var_at (tree decl, HOST_WIDE_INT offset) { /* Alignment is unsigned. */ @@ -18,22 +18,22 @@ rtx x; /* If this fails, we've overflowed the stack frame. Error nicely? */ -@@ -852,10 +852,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; +@@ -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; -@@ -1054,6 +1054,13 @@ expand_one_var (tree var, bool toplevel, + 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))); diff --git a/gcc45-rh330771.patch b/gcc45-rh330771.patch new file mode 100644 index 0000000..1d91cc8 --- /dev/null +++ b/gcc45-rh330771.patch @@ -0,0 +1,27 @@ +2007-10-16 Jakub Jelinek + + * 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 diff --git a/gcc44-sparc-config-detection.patch b/gcc45-sparc-config-detection.patch similarity index 86% rename from gcc44-sparc-config-detection.patch rename to gcc45-sparc-config-detection.patch index 9c6b57e..d94b17d 100644 --- a/gcc44-sparc-config-detection.patch +++ b/gcc45-sparc-config-detection.patch @@ -1,21 +1,21 @@ --- gcc/config.gcc.jj 2008-04-24 15:42:46.000000000 -0500 +++ gcc/config.gcc 2008-04-24 15:44:51.000000000 -0500 -@@ -2175,7 +2175,7 @@ sparc-*-elf*) +@@ -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 sparc/gas.h linux.h" + 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" -@@ -2287,7 +2287,7 @@ sparc64-*-freebsd*|ultrasparc-*-freebsd* +@@ -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 sparc/gas.h linux.h sparc/linux64.h" + 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 diff --git a/import.log b/import.log index 1615cd8..4a3b2a2 100644 --- a/import.log +++ b/import.log @@ -22,3 +22,4 @@ gcc-4_4_4-7_fc14:HEAD:gcc-4.4.4-7.fc14.src.rpm:1275991256 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 diff --git a/protoize.1 b/protoize.1 deleted file mode 100644 index 5dde73d..0000000 --- a/protoize.1 +++ /dev/null @@ -1,291 +0,0 @@ -.\" Copyright (c) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation -.\" See section COPYING for conditions for redistribution -.\" -.TH protoize 1 "8 December 2006" "GCC" "GNU" -.SH NAME -protoize, unprotoize \- automatically add or remove function prototypes -.SH SYNOPSIS -.HP 7 -\fBprotoize\fR [\-CfgklNnqv] [\-B \fIDIRECTORY\fR] [\-c \fICOMPILATION-OPTIONS\fR] [\-d \fIDIRECTORY\fR] [\-i \fISTRING\fR] [\-p \fIPROGRAM\fR] [\-x \fIFILE\fR] [\fIFILE\fR...] -.HP 7 -\fBunprotoize\fR [\-fkNnqv] [\-c \fICOMPILATION-OPTIONS\fR] [\-d \fIDIRECTORY\fR] [\-i \fISTRING\fR] [\-p \fIPROGRAM\fR] [\-x \fIFILE\fR] [\fIFILE\fR...] -.SH DESCRIPTION -.PP -\fBprotoize\fR is an optional part of GCC. -You can use it to add prototypes to a program, -thus converting the program to ANSI C in one respect. -The companion program -\fBunprotoize\fR does the reverse: it removes argument types from any prototypes that are found. -.PP -When you run these programs, you must specify a set of source files -as command line arguments. -The conversion programs start out by compiling these files -to see what functions they define. -The information gathered about a file -\fIFOO\fR is saved in a file named \fIFOO.X\fR. -.PP -After scanning comes the actual conversion. -The specified files are all eligible to be converted; -any files they include (whether sources or just headers) are eligible as well. -.PP -But not all the eligible files are converted. -By default, -\fBprotoize\fR and \fBunprotoize\fR -convert only source and header files in the current directory. -You can specify additional directories whose files -should be converted with the -\fB\-d\fR \fIDIRECTORY\fR option. -You can also specify particular files to exclude with the -\fB\-x\fR \fIFILE\fR option. -A file is converted if it is eligible, its directory name matches one of the -specified directory names, and its name within the directory has not -been excluded. -.PP -Basic conversion with -\fBprotoize\fR consists of rewriting most function definitions and function declarations -to specify the types of the arguments. -The only ones not rewritten are those for varargs functions. -.PP -\fBprotoize\fR optionally inserts prototype declarations at the beginning of the source file, -to make them available for any calls that precede the function's definition. -Or it can insert prototype declarations with block scope -in the blocks where undeclared functions are called. -.PP -Basic conversion with -\fBunprotoize\fR -consists of rewriting most function declarations to remove any argument types, -and rewriting function definitions to the old-style pre-ANSI form. -.PP -Both conversion programs print a warning for any function -declaration or definition that they can't convert. -You can suppress these warnings with the -\fB\-q\fR option. -.PP -The output from -\fBprotoize\fR or \fBunprotoize\fR -replaces the original source file. -The original file is renamed to a name ending with -\fI.save\fR. -If the \fI.save\fR file already exists, then the source file is simply discarded. -.PP -\fBprotoize\fR and \fBunprotoize\fR both depend on -\fBgcc\fR\|(1) to scan the program and collect information about the functions it uses. -.PP -The options are as follows: -.TP -\fB\-B\fR \fIDIRECTORY\fR -Look for the file -\fISYSCALLS.c.X\fR in \fIdirectory\fR, -instead of the usual directory (normally \fI/usr/local/lib\fR). -This file contains prototype information about standard system functions. -This option applies only to \fBprotoize\fR. -.TP -\fB\-C\fR -Rename files to end in -\fI.C\fR instead of \fI.c\fR. -This is convenient if you are converting a C program to C++. -This option applies only to -\fBprotoize\fR. -.TP -\fB\-c\fR \fICOMPILATION-OPTIONS\fR -Use \fICOMPILATION-OPTIONS\fR as the options when running \fBgcc\fR\|(1) to produce the -\fI.X\fR files. -The special option \fB\-aux-info\fR is always passed in addition, to tell gcc to write a -\fI.X\fR file. -Note that the compilation options must be given as a single argument to -\fBprotoize\fR or \fBunprotoize\fR. -If you want to specify several gcc options, you must quote the entire set of -compilation options to make them a single word in the shell. -There are certain gcc arguments that you cannot use, because they -would produce the wrong kind of output. -These include -\fB\-g\fR, \fB\-O\fR, \fB\-c\fR, \fB\-S\fR,\fB\-o\fR. -If you include these in the \fICOMPILATION-OPTIONS\fR, they are ignored. -.TP -\fB\-d\fR \fIDIRECTORY\fR -Specify additional directories whose files should be converted. -.TP -\fB\-g\fR -Add explicit global declarations. -This means inserting explicit declarations at the beginning of each -source file for each function that is called in the file and was not declared. -These declarations precede the first function definition that contains a -call to an undeclared function. -This option applies only to -.\fBprotoize\fR. -.TP -\fB\-i\fR \fISTRING\fR -Indent old-style parameter declarations with the string -\fISTRING\fR. -This option applies only to -\fBprotoize\fR. -\fBunprotoize\fR converts prototyped function definitions to old-style -function definitions, where the arguments are declared between the -argument list and the initial -\fB{\fR. -By default, -\fBunprotoize\fR uses five spaces as the indentation. -If you want to indent with just one space instead, use -\fB\-i " "\fR. -.TP -\fB\-k\fR -Keep the -\fI.X\fR files. -Normally, they are deleted after conversion is finished. -.TP -\fB\-l\fR -Add explicit local declarations. -\fBprotoize\fR with -\fB\-l\fR inserts a prototype declaration for each function in each block which calls -the function without any declaration. -This option applies only to -\fBprotoize\fR. -.TP -\fB\-N\fR -Make no \fI.save\fR files. -The original files are simply deleted. -Use this option with caution. -.TP -\fB\-n\fR -Make no real changes. -This mode just prints information about the conversions -that would have been done without -\fB\-n\fR. -.TP -\fB\-p\fR \fIPROGRAM\fR -Use the program -\fBPROGRAM\fR as the compiler. -Normally, the name -\fBgcc\fR is used. -.TP -\fB\-q\fR -Work quietly. -Most warnings are suppressed. -.TP -\fB\-v\fR -Print the version number, just like -\fB\-v\fR for gcc. -.TP -\fB\-x\fR \fBFILE\fR -List of files to exclude from the conversion process. -.PP -If you need special compiler options to compile one of your program's -source files, then you should generate that file's -\fI.X\fR file specially, by running gcc on that source file with -the appropriate options and the option -\fB\-aux-info\fR. -Then run -\fBprotoize\fR on the entire set of files. -\fBprotoize\fR will use the existing -\fI.X\fR file because it is newer than the source file. -For example: -.PP -.DL $ gcc -Dfoo=bar file1.c -aux-info -.DL $ protoize *.c -.PP -You need to include the special files along with the rest in the -\fBprotoize\fR command, even though their -\fI.X\fR files already exist, because otherwise they won't get converted. -.PP -.SH SEE ALSO -\fBgcc\fR\|(1), and the Info entry for \fBgcc\fR, particularly -\fBRunning protoize\fR section. -.SH HISTORY -Ron Guilmette implemented the -\fBprotoize\fR and \fBunprotoize\fR tools. -.SH AUTHORS -See the GCC manual for the contributors to GCC. -.SH CAVEATS -The conversion programs \fBprotoize\fR and \fBunprotoize\fR -can sometimes change a source file in a way that won't work -unless you rearrange it. -.PP -\fBprotoize\fR can insert references to a type name or type tag before -the definition, or in a file where they are not defined. -.PP -If this happens, compiler error messages should indicate where the -new references are, so fixing the file by hand is straightforward. -.PP -There are some C constructs which \fBprotoize\fR -cannot figure out. -For example, it can't determine argument types for declaring a -pointer-to-function variable; this must be done by hand. \fBprotoize\fR -inserts a comment containing \fB???\fR each time it finds such a variable; -all such variables can be found by searching for this string. -ANSI C does not require declaring the argument types of -pointer-to-function types. -.PP -Using \fBunprotoize\fR can easily introduce bugs. -If the program relied on prototypes to bring about conversion of arguments, -these conversions will not take place in the program without prototypes. -One case in which you can be sure \fBunprotoize\fR -is safe is when you are removing prototypes that were made with -\fBprotoize\fR; if the program worked before without any prototypes, -it will work again without them. -.PP -You can find all the places where this problem might occur by -compiling the program with the \fB\-Wconversion\fR option. -It prints a warning whenever an argument is converted. -.PP -Both conversion programs can be confused if there are macro calls -in and around the text to be converted. -In other words, the standard syntax for a declaration or definition -must not result from expanding a macro. -This problem is inherent in the design of C and cannot be fixed. -If only a few functions have confusing macro calls, -you can easily convert them manually. -.PP -\fBprotoize\fR cannot get the argument types for a function whose definition was not -actually compiled due to preprocessing conditionals. -When this happens, \fBprotoize\fR changes nothing in regard to such a function. -\fBprotoize\fR tries to detect such instances and warn about them. -.PP -You can generally work around this problem by using -\fBprotoize\fR step by step, each time specifying a different set of -\fB\-D\fR options for compilation, until all of the functions have been converted. -There is no automatic way to verify that you have got them all, however. -.PP -Confusion may result if there is an occasion to convert a function -declaration or definition in a region of source code where there -is more than one formal parameter list present. -Thus, attempts to convert code containing multiple (conditionally compiled) -versions of a single function header (in the same vicinity) -may not produce the desired (or expected) results. -.PP -If you plan on converting source files which contain such code, -it is recommended that you first make sure that each conditionally -compiled region of source code which contains an alternative -function header also contains at least one additional follower -token (past the final right parenthesis of the function header). -This should circumvent the problem. -.PP -\fBunprotoize\fR can become confused when trying to convert a function -definition or declaration which contains a declaration for a -pointer-to-function formal argument which has the same name as the -function being defined or declared. -We recommand you avoid such choices of formal parameter names. -.PP -It might be necessary to correct some of the indentation by hand and -break long lines. -(The conversion programs don't write lines longer than eighty characters -in any case.) -.SH BUGS -For instructions on reporting bugs, see the GCC manual. -.SH COPYING -Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -2000, 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. -.PP -Permission is granted to make and distribute verbatim copies of -this manual provided the copyright notice and this permission notice -are preserved on all copies. -.PP -Permission is granted to copy and distribute modified versions of this -manual under the conditions for verbatim copying, provided that the -entire resulting derived work is distributed under the terms of a -permission notice identical to this one. -.PP -Permission is granted to copy and distribute translations of this -manual into another language, under the above conditions for modified -versions, except that this permission notice may be included in -translations approved by the Free Software Foundation instead of in -the original English. diff --git a/sources b/sources index 9ecbe6e..bd7a734 100644 --- a/sources +++ b/sources @@ -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