From b1be385d8b62102daf4eebf94e312f38244fd125 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 29 Jun 2012 10:44:22 +0200 Subject: [PATCH 01/13] 4.7.1-1 --- .gitignore | 1 + gcc.spec | 23 ++++++++++++++++++----- sources | 2 +- 3 files changed, 20 insertions(+), 6 deletions(-) diff --git a/.gitignore b/.gitignore index ef775f7..58aeb5e 100644 --- a/.gitignore +++ b/.gitignore @@ -33,3 +33,4 @@ /gcc-4.7.0-20120507.tar.bz2 /gcc-4.7.0-20120525.tar.bz2 /gcc-4.7.0-20120604.tar.bz2 +/gcc-4.7.1-20120629.tar.bz2 diff --git a/gcc.spec b/gcc.spec index fa30127..d73020a 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120604 -%global SVNREV 188193 -%global gcc_version 4.7.0 +%global DATE 20120629 +%global SVNREV 189066 +%global gcc_version 4.7.1 # 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 7 +%global gcc_release 1 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -738,7 +738,7 @@ tar xzf %{SOURCE4} tar xjf %{SOURCE10} %endif -sed -i -e 's/4\.7\.1/4.7.0/' gcc/BASE-VER +sed -i -e 's/4\.7\.2/4.7.1/' gcc/BASE-VER echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE %if 0%{?fedora} >= 16 || 0%{?rhel} >= 7 @@ -2641,6 +2641,19 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Fri Jun 29 2012 Jakub Jelinek 4.7.1-1 +- update from the 4.7 branch + - GCC 4.7.1 release + - PRs ada/53592, c++/51214, c++/52637, c++/52841, c++/52988, c++/53202, + c++/53305, c++/53498, c++/53524, c++/53594, c++/53599, c++/53602, + c++/53616, c++/53651, c++/53752, debug/53682, fortran/50619, + fortran/53597, fortran/53685, fortran/53691, gcov-profile/53744, + libgomp/52993, libstdc++/53270, libstdc++/53678, middle-end/53470, + middle-end/53580, middle-end/53790, preprocessor/37215, + rtl-optimization/53589, rtl-optimization/53700, target/52908, + target/53559, target/53595, target/53621, target/53759, + tree-optimization/52558 + * Mon Jun 4 2012 Jakub Jelinek 4.7.0-7 - update from the 4.7 branch - PRs ada/53517, c++/52725, c++/52905, c++/52973, c++/53137, c++/53220, diff --git a/sources b/sources index 258be59..b8d0789 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -996050ff9fa029f4671efd77f77b8e14 gcc-4.7.0-20120604.tar.bz2 +b8a5e8e7ec11d199d72e38e8055459fa gcc-4.7.1-20120629.tar.bz2 From 8eaabf978c8f82e898ce43a2a1eeba53baee2125 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 29 Jun 2012 14:26:07 +0200 Subject: [PATCH 02/13] 4.7.1-1 --- gcc.spec | 2 ++ gcc47-libgo-mksysinfo.patch | 15 +++++++++++++++ 2 files changed, 17 insertions(+) create mode 100644 gcc47-libgo-mksysinfo.patch diff --git a/gcc.spec b/gcc.spec index d73020a..07dbee3 100644 --- a/gcc.spec +++ b/gcc.spec @@ -174,6 +174,7 @@ Patch12: gcc47-libstdc++-docs.patch Patch13: gcc47-no-add-needed.patch Patch14: gcc47-ppl-0.10.patch Patch15: gcc47-libitm-fno-exceptions.patch +Patch16: gcc47-libgo-mksysinfo.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -675,6 +676,7 @@ package or when debugging this package. %patch14 -p0 -b .ppl-0.10~ %endif %patch15 -p0 -b .libitm-fno-exceptions~ +%patch16 -p0 -b .libgo-mksysinfo~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF diff --git a/gcc47-libgo-mksysinfo.patch b/gcc47-libgo-mksysinfo.patch new file mode 100644 index 0000000..427efe8 --- /dev/null +++ b/gcc47-libgo-mksysinfo.patch @@ -0,0 +1,15 @@ +--- libgo/mksysinfo.sh 2012-06-29 14:23:30.684708901 +0200 ++++ libgo/mksysinfo.sh 2012-06-29 14:23:20.782761973 +0200 +@@ -522,10 +522,10 @@ grep '^const _DT_' gen-sysinfo.go | + # The rusage struct. + rusage=`grep '^type _rusage struct' gen-sysinfo.go` + if test "$rusage" != ""; then +- rusage=`echo $rusage | sed -e 's/type _rusage struct //' -e 's/[{}]//g'` +- rusage=`echo $rusage | sed -e 's/^ *//'` + # Remove anonymous unions from GNU/Linux . + rusage=`echo $rusage | sed -e 's/Godump_[0-9]* struct {\([^}]*\)};/\1/g'` ++ rusage=`echo $rusage | sed -e 's/type _rusage struct //' -e 's/[{}]//g'` ++ rusage=`echo $rusage | sed -e 's/^ *//'` + nrusage= + while test -n "$rusage"; do + field=`echo $rusage | sed -e 's/^\([^;]*\);.*$/\1/'` From ee79e7e0ab94afd05abe2439ea284fbdc16ea99b Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 13 Jul 2012 11:36:11 +0200 Subject: [PATCH 03/13] 4.7.1-2 --- gcc.spec | 16 ++++++++++++- gcc47-arm-hfp-ldso.patch | 52 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 67 insertions(+), 1 deletion(-) create mode 100644 gcc47-arm-hfp-ldso.patch diff --git a/gcc.spec b/gcc.spec index 07dbee3..4ee2d2b 100644 --- a/gcc.spec +++ b/gcc.spec @@ -3,7 +3,7 @@ %global gcc_version 4.7.1 # 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 1 +%global gcc_release 2 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -145,6 +145,11 @@ Requires: glibc-devel >= 2.2.90-12 # Make sure glibc supports TFmode long double Requires: glibc >= 2.3.90-35 %endif +%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 +%ifarch armv7hl +Requires: glibc >= 2.16 +%endif +%endif Requires: libgcc >= %{version}-%{release} Requires: libgomp = %{version}-%{release} %if !%{build_ada} @@ -175,6 +180,7 @@ Patch13: gcc47-no-add-needed.patch Patch14: gcc47-ppl-0.10.patch Patch15: gcc47-libitm-fno-exceptions.patch Patch16: gcc47-libgo-mksysinfo.patch +Patch17: gcc47-arm-hfp-ldso.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -677,6 +683,11 @@ package or when debugging this package. %endif %patch15 -p0 -b .libitm-fno-exceptions~ %patch16 -p0 -b .libgo-mksysinfo~ +%if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 +%ifarch armv7hl +%patch17 -p0 -b .arm-hfp-ldso~ +%endif +%endif %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -2643,6 +2654,9 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Fri Jul 13 2012 Jakub Jelinek 4.7.1-2 +- change ld.so pathname for arm hfp for F18+ + * Fri Jun 29 2012 Jakub Jelinek 4.7.1-1 - update from the 4.7 branch - GCC 4.7.1 release diff --git a/gcc47-arm-hfp-ldso.patch b/gcc47-arm-hfp-ldso.patch new file mode 100644 index 0000000..2f0b8c4 --- /dev/null +++ b/gcc47-arm-hfp-ldso.patch @@ -0,0 +1,52 @@ +2012-05-01 Richard Earnshaw + + * arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_DEFAULT): Avoid ifdef + comparing enumeration values. Update comments. + +2012-04-26 Michael Hope + Richard Earnshaw + + * config/arm/linux-eabi.h (GLIBC_DYNAMIC_LINKER_SOFT_FLOAT): Define. + (GLIBC_DYNAMIC_LINKER_HARD_FLOAT): Define. + (GLIBC_DYNAMIC_LINKER_DEFAULT): Define. + (GLIBC_DYNAMIC_LINKER): Redefine to use the hard float path. + +--- gcc/config/arm/linux-eabi.h (revision 186858) ++++ gcc/config/arm/linux-eabi.h (revision 187012) +@@ -32,7 +32,8 @@ + while (false) + + /* We default to a soft-float ABI so that binaries can run on all +- target hardware. */ ++ target hardware. If you override this to use the hard-float ABI then ++ change the setting of GLIBC_DYNAMIC_LINKER_DEFAULT as well. */ + #undef TARGET_DEFAULT_FLOAT_ABI + #define TARGET_DEFAULT_FLOAT_ABI ARM_FLOAT_ABI_SOFT + +@@ -59,10 +60,23 @@ + #undef SUBTARGET_EXTRA_LINK_SPEC + #define SUBTARGET_EXTRA_LINK_SPEC " -m " TARGET_LINKER_EMULATION + +-/* Use ld-linux.so.3 so that it will be possible to run "classic" +- GNU/Linux binaries on an EABI system. */ ++/* GNU/Linux on ARM currently supports three dynamic linkers: ++ - ld-linux.so.2 - for the legacy ABI ++ - ld-linux.so.3 - for the EABI-derived soft-float ABI ++ - ld-linux-armhf.so.3 - for the EABI-derived hard-float ABI. ++ All the dynamic linkers live in /lib. ++ We default to soft-float, but this can be overridden by changing both ++ GLIBC_DYNAMIC_LINKER_DEFAULT and TARGET_DEFAULT_FLOAT_ABI. */ ++ + #undef GLIBC_DYNAMIC_LINKER +-#define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.3" ++#define GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "/lib/ld-linux.so.3" ++#define GLIBC_DYNAMIC_LINKER_HARD_FLOAT "/lib/ld-linux-armhf.so.3" ++#define GLIBC_DYNAMIC_LINKER_DEFAULT GLIBC_DYNAMIC_LINKER_SOFT_FLOAT ++ ++#define GLIBC_DYNAMIC_LINKER \ ++ "%{mfloat-abi=hard:" GLIBC_DYNAMIC_LINKER_HARD_FLOAT "} \ ++ %{mfloat-abi=soft*:" GLIBC_DYNAMIC_LINKER_SOFT_FLOAT "} \ ++ %{!mfloat-abi=*:" GLIBC_DYNAMIC_LINKER_DEFAULT "}" + + /* At this point, bpabi.h will have clobbered LINK_SPEC. We want to + use the GNU/Linux version, not the generic BPABI version. */ From 43ee372cff76147dd351f23b031f0e85eaebc07f Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 16 Jul 2012 12:54:55 +0200 Subject: [PATCH 04/13] 4.7.1-3 --- .gitignore | 1 + gcc.spec | 35 ++++++++++++++++++++++++++--------- gcc47-libgo-mksysinfo.patch | 15 --------------- gcc47-rh837630.patch | 16 ++++++++++++++++ sources | 2 +- 5 files changed, 44 insertions(+), 25 deletions(-) delete mode 100644 gcc47-libgo-mksysinfo.patch create mode 100644 gcc47-rh837630.patch diff --git a/.gitignore b/.gitignore index 58aeb5e..294cc14 100644 --- a/.gitignore +++ b/.gitignore @@ -34,3 +34,4 @@ /gcc-4.7.0-20120525.tar.bz2 /gcc-4.7.0-20120604.tar.bz2 /gcc-4.7.1-20120629.tar.bz2 +/gcc-4.7.1-20120716.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 4ee2d2b..a323f66 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120629 -%global SVNREV 189066 +%global DATE 20120716 +%global SVNREV 189515 %global gcc_version 4.7.1 # 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 2 +%global gcc_release 3 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -12,7 +12,7 @@ %global build_ada 0 %endif %global build_java 1 -%ifarch %{ix86} x86_64 ppc ppc64 s390 s390x +%ifarch %{ix86} x86_64 ppc ppc64 s390 s390x %{arm} %global build_go 1 %else %global build_go 0 @@ -146,7 +146,7 @@ Requires: glibc-devel >= 2.2.90-12 Requires: glibc >= 2.3.90-35 %endif %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 -%ifarch armv7hl +%ifarch %{arm} Requires: glibc >= 2.16 %endif %endif @@ -179,7 +179,7 @@ Patch12: gcc47-libstdc++-docs.patch Patch13: gcc47-no-add-needed.patch Patch14: gcc47-ppl-0.10.patch Patch15: gcc47-libitm-fno-exceptions.patch -Patch16: gcc47-libgo-mksysinfo.patch +Patch16: gcc47-rh837630.patch Patch17: gcc47-arm-hfp-ldso.patch Patch1000: fastjar-0.97-segfault.patch @@ -682,12 +682,10 @@ package or when debugging this package. %patch14 -p0 -b .ppl-0.10~ %endif %patch15 -p0 -b .libitm-fno-exceptions~ -%patch16 -p0 -b .libgo-mksysinfo~ +%patch16 -p0 -b .rh837630~ %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 -%ifarch armv7hl %patch17 -p0 -b .arm-hfp-ldso~ %endif -%endif %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -1915,6 +1913,8 @@ fi %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/f16cintrin.h %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/fmaintrin.h %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/lzcntintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/rtmintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/xtestintrin.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 @@ -2654,6 +2654,23 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Mon Jul 16 2012 Jakub Jelinek 4.7.1-3 +- update from the 4.7 branch + - C++11 ABI change - std::list and std::pair in C++11 ABI compatible again + with C++03, but ABI incompatible with C++11 in GCC 4.7.[01] + - PRs bootstrap/52947, c++/53733, c++/53816, c++/53821, c++/53826, + c++/53882, c++/53953, fortran/53732, libstdc++/49561, + libstdc++/53578, libstdc++/53657, libstdc++/53830, libstdc++/53872, + middle-end/38474, middle-end/50708, middle-end/52621, + middle-end/52786, middle-end/53433, rtl-optimization/53908, + target/53110, target/53811, target/53853, target/53961, + testsuite/20771, tree-optimization/53693 +- backport -mrtm and -mhle support (PRs target/53194, target/53201, + target/53315) +- fix up ppc32 *movdi_internal32 pattern (#837630) +- apply ld.so arm hfp patch on all arm arches +- enable go support on arm + * Fri Jul 13 2012 Jakub Jelinek 4.7.1-2 - change ld.so pathname for arm hfp for F18+ diff --git a/gcc47-libgo-mksysinfo.patch b/gcc47-libgo-mksysinfo.patch deleted file mode 100644 index 427efe8..0000000 --- a/gcc47-libgo-mksysinfo.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- libgo/mksysinfo.sh 2012-06-29 14:23:30.684708901 +0200 -+++ libgo/mksysinfo.sh 2012-06-29 14:23:20.782761973 +0200 -@@ -522,10 +522,10 @@ grep '^const _DT_' gen-sysinfo.go | - # The rusage struct. - rusage=`grep '^type _rusage struct' gen-sysinfo.go` - if test "$rusage" != ""; then -- rusage=`echo $rusage | sed -e 's/type _rusage struct //' -e 's/[{}]//g'` -- rusage=`echo $rusage | sed -e 's/^ *//'` - # Remove anonymous unions from GNU/Linux . - rusage=`echo $rusage | sed -e 's/Godump_[0-9]* struct {\([^}]*\)};/\1/g'` -+ rusage=`echo $rusage | sed -e 's/type _rusage struct //' -e 's/[{}]//g'` -+ rusage=`echo $rusage | sed -e 's/^ *//'` - nrusage= - while test -n "$rusage"; do - field=`echo $rusage | sed -e 's/^\([^;]*\);.*$/\1/'` diff --git a/gcc47-rh837630.patch b/gcc47-rh837630.patch new file mode 100644 index 0000000..d7d1e94 --- /dev/null +++ b/gcc47-rh837630.patch @@ -0,0 +1,16 @@ +2012-07-16 Alan Modra + + * config/rs6000/rs6000.md (*movdi_internal32): Use m constraint instead + of o<>. + +--- gcc/config/rs6000/rs6000.md 2012-07-16 10:14:43.198085150 +0200 ++++ gcc/config/rs6000/rs6000.md 2012-07-16 10:33:31.856023210 +0200 +@@ -10145,7 +10145,7 @@ + ; List r->r after r->"o<>", otherwise reload will try to reload a + ; non-offsettable address by using r->r which won't make progress. + (define_insn "*movdi_internal32" +- [(set (match_operand:DI 0 "rs6000_nonimmediate_operand" "=o<>,r,r,*d,*d,m,r,?wa") ++ [(set (match_operand:DI 0 "rs6000_nonimmediate_operand" "=m,r,r,*d,*d,m,r,?wa") + (match_operand:DI 1 "input_operand" "r,r,m,d,m,d,IJKnGHF,O"))] + "! TARGET_POWERPC64 + && (gpc_reg_operand (operands[0], DImode) diff --git a/sources b/sources index b8d0789..8083207 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -b8a5e8e7ec11d199d72e38e8055459fa gcc-4.7.1-20120629.tar.bz2 +127fda38132e1db4e003da69ea7adc08 gcc-4.7.1-20120716.tar.bz2 From a54b05b75ccfdbd9c00c6c94e29c184fe94e08ba Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Wed, 18 Jul 2012 10:50:12 +0200 Subject: [PATCH 05/13] 4.7.1-4 --- .gitignore | 1 + gcc.spec | 10 +++++++--- sources | 2 +- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 294cc14..55cb5e9 100644 --- a/.gitignore +++ b/.gitignore @@ -35,3 +35,4 @@ /gcc-4.7.0-20120604.tar.bz2 /gcc-4.7.1-20120629.tar.bz2 /gcc-4.7.1-20120716.tar.bz2 +/gcc-4.7.1-20120718.tar.bz2 diff --git a/gcc.spec b/gcc.spec index a323f66..61de315 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120716 -%global SVNREV 189515 +%global DATE 20120718 +%global SVNREV 189600 %global gcc_version 4.7.1 # 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 3 +%global gcc_release 4 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -2654,6 +2654,10 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Wed Jul 18 2012 Jakub Jelinek 4.7.1-4 +- update from the 4.7 branch + - PRs c++/53549, c++/53989, c++/53995, libstdc++/53978 + * Mon Jul 16 2012 Jakub Jelinek 4.7.1-3 - update from the 4.7 branch - C++11 ABI change - std::list and std::pair in C++11 ABI compatible again diff --git a/sources b/sources index 8083207..542db45 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -127fda38132e1db4e003da69ea7adc08 gcc-4.7.1-20120716.tar.bz2 +0de28e680208fc056f38b62decbed062 gcc-4.7.1-20120718.tar.bz2 From 5ef5ca7845f6ad113ef4db1a3e80a92422a70573 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 20 Jul 2012 19:01:30 +0200 Subject: [PATCH 06/13] 4.7.1-5 --- .gitignore | 1 + gcc.spec | 12 +++++++++--- sources | 2 +- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 55cb5e9..6a66607 100644 --- a/.gitignore +++ b/.gitignore @@ -36,3 +36,4 @@ /gcc-4.7.1-20120629.tar.bz2 /gcc-4.7.1-20120716.tar.bz2 /gcc-4.7.1-20120718.tar.bz2 +/gcc-4.7.1-20120720.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 61de315..4d428b7 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120718 -%global SVNREV 189600 +%global DATE 20120720 +%global SVNREV 189721 %global gcc_version 4.7.1 # 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 4 +%global gcc_release 5 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -2654,6 +2654,12 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Fri Jul 20 2012 Jakub Jelinek 4.7.1-5 +- update from the 4.7 branch + - PRs c++/54026, middle-end/54017, rtl-optimization/52250, target/53877, + target/54029 + - fix endless hang of C++ compiler (#841814, PR c++/54038) + * Wed Jul 18 2012 Jakub Jelinek 4.7.1-4 - update from the 4.7 branch - PRs c++/53549, c++/53989, c++/53995, libstdc++/53978 diff --git a/sources b/sources index 542db45..4ebc91c 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -0de28e680208fc056f38b62decbed062 gcc-4.7.1-20120718.tar.bz2 +9a31abaadb9d7519476250f1fd0deb39 gcc-4.7.1-20120720.tar.bz2 From e02177a0fa7a1026d14af1f33e18a5fdb0e08a8b Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Fri, 10 Aug 2012 15:26:14 +0200 Subject: [PATCH 07/13] 4.7.1-6 --- .gitignore | 1 + gcc.spec | 17 ++++++++++++++--- sources | 2 +- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index 6a66607..cef6f9d 100644 --- a/.gitignore +++ b/.gitignore @@ -37,3 +37,4 @@ /gcc-4.7.1-20120716.tar.bz2 /gcc-4.7.1-20120718.tar.bz2 /gcc-4.7.1-20120720.tar.bz2 +/gcc-4.7.1-20120810.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 4d428b7..93972f7 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120720 -%global SVNREV 189721 +%global DATE 20120810 +%global SVNREV 190292 %global gcc_version 4.7.1 # 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 5 +%global gcc_release 6 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -27,7 +27,11 @@ %else %global build_libitm 0 %endif +%if 0%{?rhel} >= 7 +%global build_cloog 0 +%else %global build_cloog 1 +%endif %global build_libstdcxx_docs 1 # If you don't have already a usable gcc-java and libgcj for your arch, # do on some arch which has it rpmbuild -bc --with java_tar gcc.spec @@ -915,6 +919,8 @@ CC="$CC" CFLAGS="$OPT_FLAGS" CXXFLAGS="`echo $OPT_FLAGS | sed 's/ -Wall / /g'`" %endif %if %{build_cloog} --with-ppl --with-cloog \ +%else + --without-ppl --without-cloog \ %endif %ifarch %{arm} --disable-sjlj-exceptions \ @@ -2654,6 +2660,11 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Fri Aug 10 2012 Jakub Jelinek 4.7.1-6 +- update from the 4.7 branch + - PRs libstdc++/54036, libstdc++/54075, rtl-optimization/54157, + target/33135, target/52530 + * Fri Jul 20 2012 Jakub Jelinek 4.7.1-5 - update from the 4.7 branch - PRs c++/54026, middle-end/54017, rtl-optimization/52250, target/53877, diff --git a/sources b/sources index 4ebc91c..1fbd19a 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -9a31abaadb9d7519476250f1fd0deb39 gcc-4.7.1-20120720.tar.bz2 +fd6472d7727ee181ddaee41417dff76d gcc-4.7.1-20120810.tar.bz2 From b9d0acf9403e1618318161a44825e34a2a522643 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 13 Aug 2012 19:53:49 +0200 Subject: [PATCH 08/13] 4.7.1-7 --- .gitignore | 1 + gcc.spec | 11 ++++++++--- sources | 2 +- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/.gitignore b/.gitignore index cef6f9d..ea2c4e7 100644 --- a/.gitignore +++ b/.gitignore @@ -38,3 +38,4 @@ /gcc-4.7.1-20120718.tar.bz2 /gcc-4.7.1-20120720.tar.bz2 /gcc-4.7.1-20120810.tar.bz2 +/gcc-4.7.1-20120813.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 93972f7..05d2669 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120810 -%global SVNREV 190292 +%global DATE 20120813 +%global SVNREV 190350 %global gcc_version 4.7.1 # 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 6 +%global gcc_release 7 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -2660,6 +2660,11 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Mon Aug 13 2012 Jakub Jelinek 4.7.1-7 +- update from the 4.7 branch + - PR rtl-optimization/53942 +- backport -mrdseed, -mprfchw and -madx support + * Fri Aug 10 2012 Jakub Jelinek 4.7.1-6 - update from the 4.7 branch - PRs libstdc++/54036, libstdc++/54075, rtl-optimization/54157, diff --git a/sources b/sources index 1fbd19a..451fd26 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -fd6472d7727ee181ddaee41417dff76d gcc-4.7.1-20120810.tar.bz2 +35fc72166b9171d72c01f7b6f197d38c gcc-4.7.1-20120813.tar.bz2 From 1d285b5a5f9065eb8ac246d9a7da8d9e30df09f4 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Mon, 13 Aug 2012 20:30:09 +0200 Subject: [PATCH 09/13] 4.7.1-7 --- gcc.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gcc.spec b/gcc.spec index 05d2669..207f782 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1921,6 +1921,9 @@ fi %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/lzcntintrin.h %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/rtmintrin.h %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/xtestintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/adxintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/prfchwintrin.h +%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_version}/include/rdseedintrin.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 From 8181de5ce000e377d89bc986bced7ebc0d457821 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 13 Sep 2012 22:35:11 +0200 Subject: [PATCH 10/13] 4.7.1-8 --- .gitignore | 1 + gcc.spec | 24 ++++++- gcc47-pr54564.patch | 166 ++++++++++++++++++++++++++++++++++++++++++++ sources | 3 +- 4 files changed, 189 insertions(+), 5 deletions(-) create mode 100644 gcc47-pr54564.patch diff --git a/.gitignore b/.gitignore index ea2c4e7..e61dcb9 100644 --- a/.gitignore +++ b/.gitignore @@ -39,3 +39,4 @@ /gcc-4.7.1-20120720.tar.bz2 /gcc-4.7.1-20120810.tar.bz2 /gcc-4.7.1-20120813.tar.bz2 +/gcc-4.7.1-20120913.tar.bz2 diff --git a/gcc.spec b/gcc.spec index 207f782..c6ec6a3 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120813 -%global SVNREV 190350 +%global DATE 20120913 +%global SVNREV 191278 %global gcc_version 4.7.1 # 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 7 +%global gcc_release 8 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -185,6 +185,7 @@ Patch14: gcc47-ppl-0.10.patch Patch15: gcc47-libitm-fno-exceptions.patch Patch16: gcc47-rh837630.patch Patch17: gcc47-arm-hfp-ldso.patch +Patch18: gcc47-pr54564.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -690,6 +691,7 @@ package or when debugging this package. %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 %patch17 -p0 -b .arm-hfp-ldso~ %endif +%patch18 -p0 -b .pr54564~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -2663,6 +2665,22 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Thu Sep 13 2012 Jakub Jelinek 4.7.1-8 +- update from the 4.7 branch + - PRs c++/53836, c++/53839, c++/54086, c++/54197, c++/54253, c++/54341, + c++/54506, c++/54511, c/54363, c/54428, c/54559, debug/54534, + driver/54335, fortran/53306, fortran/54208, fortran/54225, + fortran/54435, fortran/54443, fortran/54556, gcov-profile/54487, + libstdc++/54172, libstdc++/54185, libstdc++/54297, libstdc++/54351, + libstdc++/54376, libstdc++/54388, lto/53572, middle-end/53667, + middle-end/53992, middle-end/54146, middle-end/54486, + middle-end/54515, rtl-optimization/54088, rtl-optimization/54369, + rtl-optimization/54455, target/45070, target/46254, target/54212, + target/54220, target/54252, target/54436, target/54461, + target/54476, target/54536, tree-opt/54494, + tree-optimization/53922, tree-optimization/54498 +- fix up _mm_f{,n}m{add,sub}_s{s,d} fma intrinsics (PR target/54564) + * Mon Aug 13 2012 Jakub Jelinek 4.7.1-7 - update from the 4.7 branch - PR rtl-optimization/53942 diff --git a/gcc47-pr54564.patch b/gcc47-pr54564.patch new file mode 100644 index 0000000..422c32c --- /dev/null +++ b/gcc47-pr54564.patch @@ -0,0 +1,166 @@ +2012-09-13 Jakub Jelinek + + PR target/54564 + * config/i386/sse.md (fmai_vmfmadd_): Use (match_dup 1) + instead of (match_dup 0) as second argument to vec_merge. + (*fmai_fmadd_, *fmai_fmsub_): Likewise. + Remove third alternative. + (*fmai_fnmadd_, *fmai_fnmsub_): Likewise. Negate + operand 2 instead of operand 1, but put it as first argument + of fma. + + * config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss, + _mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead + of the first. + +--- gcc/config/i386/sse.md.jj 2012-09-05 18:27:03.000000000 +0200 ++++ gcc/config/i386/sse.md 2012-09-13 13:49:49.504968716 +0200 +@@ -2072,79 +2072,75 @@ (define_expand "fmai_vmfmadd_" + (match_operand:VF_128 1 "nonimmediate_operand") + (match_operand:VF_128 2 "nonimmediate_operand") + (match_operand:VF_128 3 "nonimmediate_operand")) +- (match_dup 0) ++ (match_dup 1) + (const_int 1)))] + "TARGET_FMA") + + (define_insn "*fmai_fmadd_" +- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") ++ [(set (match_operand:VF_128 0 "register_operand" "=x,x") + (vec_merge:VF_128 + (fma:VF_128 +- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x") +- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") +- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0")) +- (match_dup 0) ++ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") ++ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x") ++ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm")) ++ (match_dup 1) + (const_int 1)))] + "TARGET_FMA" + "@ + vfmadd132\t{%2, %3, %0|%0, %3, %2} +- vfmadd213\t{%3, %2, %0|%0, %2, %3} +- vfmadd231\t{%2, %1, %0|%0, %1, %2}" ++ vfmadd213\t{%3, %2, %0|%0, %2, %3}" + [(set_attr "type" "ssemuladd") + (set_attr "mode" "")]) + + (define_insn "*fmai_fmsub_" +- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") ++ [(set (match_operand:VF_128 0 "register_operand" "=x,x") + (vec_merge:VF_128 + (fma:VF_128 +- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x") +- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") ++ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") ++ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x") + (neg:VF_128 +- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0"))) +- (match_dup 0) ++ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm"))) ++ (match_dup 1) + (const_int 1)))] + "TARGET_FMA" + "@ + vfmsub132\t{%2, %3, %0|%0, %3, %2} +- vfmsub213\t{%3, %2, %0|%0, %2, %3} +- vfmsub231\t{%2, %1, %0|%0, %1, %2}" ++ vfmsub213\t{%3, %2, %0|%0, %2, %3}" + [(set_attr "type" "ssemuladd") + (set_attr "mode" "")]) + + (define_insn "*fmai_fnmadd_" +- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") ++ [(set (match_operand:VF_128 0 "register_operand" "=x,x") + (vec_merge:VF_128 + (fma:VF_128 + (neg:VF_128 +- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x")) +- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") +- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0")) +- (match_dup 0) ++ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x")) ++ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") ++ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm")) ++ (match_dup 1) + (const_int 1)))] + "TARGET_FMA" + "@ + vfnmadd132\t{%2, %3, %0|%0, %3, %2} +- vfnmadd213\t{%3, %2, %0|%0, %2, %3} +- vfnmadd231\t{%2, %1, %0|%0, %1, %2}" ++ vfnmadd213\t{%3, %2, %0|%0, %2, %3}" + [(set_attr "type" "ssemuladd") + (set_attr "mode" "")]) + + (define_insn "*fmai_fnmsub_" +- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") ++ [(set (match_operand:VF_128 0 "register_operand" "=x,x") + (vec_merge:VF_128 + (fma:VF_128 + (neg:VF_128 +- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x")) +- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") ++ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x")) ++ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") + (neg:VF_128 +- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0"))) +- (match_dup 0) ++ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm"))) ++ (match_dup 1) + (const_int 1)))] + "TARGET_FMA" + "@ + vfnmsub132\t{%2, %3, %0|%0, %3, %2} +- vfnmsub213\t{%3, %2, %0|%0, %2, %3} +- vfnmsub231\t{%2, %1, %0|%0, %1, %2}" ++ vfnmsub213\t{%3, %2, %0|%0, %2, %3}" + [(set_attr "type" "ssemuladd") + (set_attr "mode" "")]) + +--- gcc/config/i386/fmaintrin.h.jj 2011-09-02 16:29:38.000000000 +0200 ++++ gcc/config/i386/fmaintrin.h 2012-09-13 13:32:20.162333244 +0200 +@@ -1,4 +1,4 @@ +-/* Copyright (C) 2011 Free Software Foundation, Inc. ++/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. + + This file is part of GCC. + +@@ -164,7 +164,7 @@ extern __inline __m128d + __attribute__((__gnu_inline__, __always_inline__, __artificial__)) + _mm_fnmadd_sd (__m128d __A, __m128d __B, __m128d __C) + { +- return (__m128d)__builtin_ia32_vfmaddsd3 (-(__v2df)__A, (__v2df)__B, ++ return (__m128d)__builtin_ia32_vfmaddsd3 ((__v2df)__A, -(__v2df)__B, + (__v2df)__C); + } + +@@ -172,7 +172,7 @@ extern __inline __m128 + __attribute__((__gnu_inline__, __always_inline__, __artificial__)) + _mm_fnmadd_ss (__m128 __A, __m128 __B, __m128 __C) + { +- return (__m128)__builtin_ia32_vfmaddss3 (-(__v4sf)__A, (__v4sf)__B, ++ return (__m128)__builtin_ia32_vfmaddss3 ((__v4sf)__A, -(__v4sf)__B, + (__v4sf)__C); + } + +@@ -212,7 +212,7 @@ extern __inline __m128d + __attribute__((__gnu_inline__, __always_inline__, __artificial__)) + _mm_fnmsub_sd (__m128d __A, __m128d __B, __m128d __C) + { +- return (__m128d)__builtin_ia32_vfmaddsd3 (-(__v2df)__A, (__v2df)__B, ++ return (__m128d)__builtin_ia32_vfmaddsd3 ((__v2df)__A, -(__v2df)__B, + -(__v2df)__C); + } + +@@ -220,7 +220,7 @@ extern __inline __m128 + __attribute__((__gnu_inline__, __always_inline__, __artificial__)) + _mm_fnmsub_ss (__m128 __A, __m128 __B, __m128 __C) + { +- return (__m128)__builtin_ia32_vfmaddss3 (-(__v4sf)__A, (__v4sf)__B, ++ return (__m128)__builtin_ia32_vfmaddss3 ((__v4sf)__A, -(__v4sf)__B, + -(__v4sf)__C); + } + diff --git a/sources b/sources index 451fd26..74490d5 100644 --- a/sources +++ b/sources @@ -1,2 +1 @@ -2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -35fc72166b9171d72c01f7b6f197d38c gcc-4.7.1-20120813.tar.bz2 +10dae15ffd394a99eef1c3f164ab05d8 gcc-4.7.1-20120913.tar.bz2 From ed30c6bf51fff37d60229d0ed4f058cd70c85177 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 13 Sep 2012 22:56:13 +0200 Subject: [PATCH 11/13] 4.7.1-8 From b5e6324f1728c454be240fff43e2f17a59253e89 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 13 Sep 2012 22:58:21 +0200 Subject: [PATCH 12/13] 4.7.1-8 --- sources | 1 + 1 file changed, 1 insertion(+) diff --git a/sources b/sources index 74490d5..e7c3681 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ +2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz 10dae15ffd394a99eef1c3f164ab05d8 gcc-4.7.1-20120913.tar.bz2 From 5d9509e3f64655e542d9c0c64ee0ae14a220f641 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Thu, 20 Sep 2012 18:55:09 +0200 Subject: [PATCH 13/13] 4.7.2-1 --- .gitignore | 1 + gcc.spec | 17 +++-- gcc47-pr54564.patch | 166 -------------------------------------------- sources | 2 +- 4 files changed, 12 insertions(+), 174 deletions(-) delete mode 100644 gcc47-pr54564.patch diff --git a/.gitignore b/.gitignore index e61dcb9..d9d821a 100644 --- a/.gitignore +++ b/.gitignore @@ -40,3 +40,4 @@ /gcc-4.7.1-20120810.tar.bz2 /gcc-4.7.1-20120813.tar.bz2 /gcc-4.7.1-20120913.tar.bz2 +/gcc-4.7.2-20120920.tar.bz2 diff --git a/gcc.spec b/gcc.spec index c6ec6a3..25681b7 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,9 +1,9 @@ -%global DATE 20120913 -%global SVNREV 191278 -%global gcc_version 4.7.1 +%global DATE 20120920 +%global SVNREV 191572 +%global gcc_version 4.7.2 # 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 8 +%global gcc_release 1 %global _unpackaged_files_terminate_build 0 %global multilib_64_archs sparc64 ppc64 s390x x86_64 %ifarch %{ix86} x86_64 ia64 ppc ppc64 alpha @@ -185,7 +185,6 @@ Patch14: gcc47-ppl-0.10.patch Patch15: gcc47-libitm-fno-exceptions.patch Patch16: gcc47-rh837630.patch Patch17: gcc47-arm-hfp-ldso.patch -Patch18: gcc47-pr54564.patch Patch1000: fastjar-0.97-segfault.patch Patch1001: fastjar-0.97-len1.patch @@ -691,7 +690,6 @@ package or when debugging this package. %if 0%{?fedora} >= 18 || 0%{?rhel} >= 7 %patch17 -p0 -b .arm-hfp-ldso~ %endif -%patch18 -p0 -b .pr54564~ %if 0%{?_enable_debug_packages} cat > split-debuginfo.sh <<\EOF @@ -755,7 +753,7 @@ tar xzf %{SOURCE4} tar xjf %{SOURCE10} %endif -sed -i -e 's/4\.7\.2/4.7.1/' gcc/BASE-VER +sed -i -e 's/4\.7\.3/4.7.2/' gcc/BASE-VER echo 'Red Hat %{version}-%{gcc_release}' > gcc/DEV-PHASE %if 0%{?fedora} >= 16 || 0%{?rhel} >= 7 @@ -2665,6 +2663,11 @@ fi %{_prefix}/libexec/gcc/%{gcc_target_platform}/%{gcc_version}/plugin %changelog +* Thu Sep 20 2012 Jakub Jelinek 4.7.2-1 +- update from the 4.7 branch + - GCC 4.7.2 release + - PRs c++/53661, lto/54312, tree-optimization/54563 + * Thu Sep 13 2012 Jakub Jelinek 4.7.1-8 - update from the 4.7 branch - PRs c++/53836, c++/53839, c++/54086, c++/54197, c++/54253, c++/54341, diff --git a/gcc47-pr54564.patch b/gcc47-pr54564.patch deleted file mode 100644 index 422c32c..0000000 --- a/gcc47-pr54564.patch +++ /dev/null @@ -1,166 +0,0 @@ -2012-09-13 Jakub Jelinek - - PR target/54564 - * config/i386/sse.md (fmai_vmfmadd_): Use (match_dup 1) - instead of (match_dup 0) as second argument to vec_merge. - (*fmai_fmadd_, *fmai_fmsub_): Likewise. - Remove third alternative. - (*fmai_fnmadd_, *fmai_fnmsub_): Likewise. Negate - operand 2 instead of operand 1, but put it as first argument - of fma. - - * config/i386/fmaintrin.h (_mm_fnmadd_sd, _mm_fnmadd_ss, - _mm_fnmsub_sd, _mm_fnmsub_ss): Negate the second argument instead - of the first. - ---- gcc/config/i386/sse.md.jj 2012-09-05 18:27:03.000000000 +0200 -+++ gcc/config/i386/sse.md 2012-09-13 13:49:49.504968716 +0200 -@@ -2072,79 +2072,75 @@ (define_expand "fmai_vmfmadd_" - (match_operand:VF_128 1 "nonimmediate_operand") - (match_operand:VF_128 2 "nonimmediate_operand") - (match_operand:VF_128 3 "nonimmediate_operand")) -- (match_dup 0) -+ (match_dup 1) - (const_int 1)))] - "TARGET_FMA") - - (define_insn "*fmai_fmadd_" -- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") -+ [(set (match_operand:VF_128 0 "register_operand" "=x,x") - (vec_merge:VF_128 - (fma:VF_128 -- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x") -- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") -- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0")) -- (match_dup 0) -+ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") -+ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x") -+ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm")) -+ (match_dup 1) - (const_int 1)))] - "TARGET_FMA" - "@ - vfmadd132\t{%2, %3, %0|%0, %3, %2} -- vfmadd213\t{%3, %2, %0|%0, %2, %3} -- vfmadd231\t{%2, %1, %0|%0, %1, %2}" -+ vfmadd213\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssemuladd") - (set_attr "mode" "")]) - - (define_insn "*fmai_fmsub_" -- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") -+ [(set (match_operand:VF_128 0 "register_operand" "=x,x") - (vec_merge:VF_128 - (fma:VF_128 -- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x") -- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") -+ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") -+ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x") - (neg:VF_128 -- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0"))) -- (match_dup 0) -+ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm"))) -+ (match_dup 1) - (const_int 1)))] - "TARGET_FMA" - "@ - vfmsub132\t{%2, %3, %0|%0, %3, %2} -- vfmsub213\t{%3, %2, %0|%0, %2, %3} -- vfmsub231\t{%2, %1, %0|%0, %1, %2}" -+ vfmsub213\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssemuladd") - (set_attr "mode" "")]) - - (define_insn "*fmai_fnmadd_" -- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") -+ [(set (match_operand:VF_128 0 "register_operand" "=x,x") - (vec_merge:VF_128 - (fma:VF_128 - (neg:VF_128 -- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x")) -- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") -- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0")) -- (match_dup 0) -+ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x")) -+ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") -+ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm")) -+ (match_dup 1) - (const_int 1)))] - "TARGET_FMA" - "@ - vfnmadd132\t{%2, %3, %0|%0, %3, %2} -- vfnmadd213\t{%3, %2, %0|%0, %2, %3} -- vfnmadd231\t{%2, %1, %0|%0, %1, %2}" -+ vfnmadd213\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssemuladd") - (set_attr "mode" "")]) - - (define_insn "*fmai_fnmsub_" -- [(set (match_operand:VF_128 0 "register_operand" "=x,x,x") -+ [(set (match_operand:VF_128 0 "register_operand" "=x,x") - (vec_merge:VF_128 - (fma:VF_128 - (neg:VF_128 -- (match_operand:VF_128 1 "nonimmediate_operand" "%0, 0,x")) -- (match_operand:VF_128 2 "nonimmediate_operand" "xm, x,xm") -+ (match_operand:VF_128 2 "nonimmediate_operand" "xm, x")) -+ (match_operand:VF_128 1 "nonimmediate_operand" " 0, 0") - (neg:VF_128 -- (match_operand:VF_128 3 "nonimmediate_operand" " x,xm,0"))) -- (match_dup 0) -+ (match_operand:VF_128 3 "nonimmediate_operand" " x,xm"))) -+ (match_dup 1) - (const_int 1)))] - "TARGET_FMA" - "@ - vfnmsub132\t{%2, %3, %0|%0, %3, %2} -- vfnmsub213\t{%3, %2, %0|%0, %2, %3} -- vfnmsub231\t{%2, %1, %0|%0, %1, %2}" -+ vfnmsub213\t{%3, %2, %0|%0, %2, %3}" - [(set_attr "type" "ssemuladd") - (set_attr "mode" "")]) - ---- gcc/config/i386/fmaintrin.h.jj 2011-09-02 16:29:38.000000000 +0200 -+++ gcc/config/i386/fmaintrin.h 2012-09-13 13:32:20.162333244 +0200 -@@ -1,4 +1,4 @@ --/* Copyright (C) 2011 Free Software Foundation, Inc. -+/* Copyright (C) 2011, 2012 Free Software Foundation, Inc. - - This file is part of GCC. - -@@ -164,7 +164,7 @@ extern __inline __m128d - __attribute__((__gnu_inline__, __always_inline__, __artificial__)) - _mm_fnmadd_sd (__m128d __A, __m128d __B, __m128d __C) - { -- return (__m128d)__builtin_ia32_vfmaddsd3 (-(__v2df)__A, (__v2df)__B, -+ return (__m128d)__builtin_ia32_vfmaddsd3 ((__v2df)__A, -(__v2df)__B, - (__v2df)__C); - } - -@@ -172,7 +172,7 @@ extern __inline __m128 - __attribute__((__gnu_inline__, __always_inline__, __artificial__)) - _mm_fnmadd_ss (__m128 __A, __m128 __B, __m128 __C) - { -- return (__m128)__builtin_ia32_vfmaddss3 (-(__v4sf)__A, (__v4sf)__B, -+ return (__m128)__builtin_ia32_vfmaddss3 ((__v4sf)__A, -(__v4sf)__B, - (__v4sf)__C); - } - -@@ -212,7 +212,7 @@ extern __inline __m128d - __attribute__((__gnu_inline__, __always_inline__, __artificial__)) - _mm_fnmsub_sd (__m128d __A, __m128d __B, __m128d __C) - { -- return (__m128d)__builtin_ia32_vfmaddsd3 (-(__v2df)__A, (__v2df)__B, -+ return (__m128d)__builtin_ia32_vfmaddsd3 ((__v2df)__A, -(__v2df)__B, - -(__v2df)__C); - } - -@@ -220,7 +220,7 @@ extern __inline __m128 - __attribute__((__gnu_inline__, __always_inline__, __artificial__)) - _mm_fnmsub_ss (__m128 __A, __m128 __B, __m128 __C) - { -- return (__m128)__builtin_ia32_vfmaddss3 (-(__v4sf)__A, (__v4sf)__B, -+ return (__m128)__builtin_ia32_vfmaddss3 ((__v4sf)__A, -(__v4sf)__B, - -(__v4sf)__C); - } - diff --git a/sources b/sources index e7c3681..af8b2fd 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ 2659f09c2e43ef8b7d4406321753f1b2 fastjar-0.97.tar.gz -10dae15ffd394a99eef1c3f164ab05d8 gcc-4.7.1-20120913.tar.bz2 +24e41bf33cf28647ad8f1cdf3df6301c gcc-4.7.2-20120920.tar.bz2