diff --git a/.gitignore b/.gitignore index 876d7d6..84695d8 100644 --- a/.gitignore +++ b/.gitignore @@ -60,3 +60,5 @@ /gcc-9.0.0-20190119.tar.xz /gcc-9.0.0-20190121.tar.xz /gcc-9.0.1-20190123.tar.xz +/gcc-9.0.1-20190129.tar.xz +/gcc-9.0.1-20190203.tar.xz diff --git a/gcc.spec b/gcc.spec index a2e931e..799c4e4 100644 --- a/gcc.spec +++ b/gcc.spec @@ -1,10 +1,10 @@ -%global DATE 20190123 -%global SVNREV 268193 +%global DATE 20190203 +%global SVNREV 268371 %global gcc_version 9.0.1 %global gcc_major 9 # Note, gcc_release must be integer, if you want to add suffixes to # %%{release}, append them after %%{gcc_release} on Release: line. -%global gcc_release 0.1 +%global gcc_release 0.3 %global nvptx_tools_gitrev c28050f60193b3b95a18866a96f03334e874e78f %global nvptx_newlib_gitrev aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24 %global _unpackaged_files_terminate_build 0 @@ -105,7 +105,6 @@ Release: %{gcc_release}.1.riscv64%{?dist} # libgcc, libgfortran, libgomp, libstdc++ and crtstuff have # GCC Runtime Exception. License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD -Group: Development/Languages # The source for this package was pulled from upstream's vcs. Use the # following commands to generate the tarball: # svn export svn://gcc.gnu.org/svn/gcc/branches/redhat/gcc-9-branch@%%{SVNREV} gcc-%%{version}-%%{DATE} @@ -239,8 +238,6 @@ Obsoletes: libcilkrts-static Obsoletes: libmpx Obsoletes: libmpx-static %endif -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info AutoReq: true Provides: bundled(libiberty) Provides: gcc(major) = %{gcc_major} @@ -259,6 +256,7 @@ Patch10: gcc9-rh1574936.patch Patch11: gcc9-d-shared-libphobos.patch Patch12: gcc9-pr88714.patch Patch13: gcc9-pr89014.patch +Patch14: gcc9-pr89093.patch Patch30: libphobos-enable-riscv.patch @@ -311,7 +309,6 @@ You'll need this package in order to compile C code. %package -n libgcc Summary: GCC version 9 shared support library -Group: System Environment/Libraries Autoreq: false %if !%{build_ada} Obsoletes: libgnat < %{version}-%{release} @@ -329,7 +326,6 @@ e.g. for exception handling support. %package c++ Summary: C++ support for GCC -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libstdc++ = %{version}-%{release} Requires: libstdc++-devel = %{version}-%{release} @@ -342,7 +338,6 @@ including templates and exception handling. %package -n libstdc++ Summary: GNU Standard C++ Library -Group: System Environment/Libraries Autoreq: true Requires: glibc >= 2.10.90-7 @@ -352,7 +347,6 @@ C++ Library. %package -n libstdc++-devel Summary: Header files and libraries for C++ development -Group: Development/Libraries Requires: libstdc++%{?_isa} = %{version}-%{release} Autoreq: true @@ -363,7 +357,6 @@ development. This includes rewritten implementation of STL. %package -n libstdc++-static Summary: Static libraries for the GNU standard C++ library -Group: Development/Libraries Requires: libstdc++-devel = %{version}-%{release} Autoreq: true @@ -372,7 +365,6 @@ Static libraries for the GNU standard C++ library. %package -n libstdc++-docs Summary: Documentation for the GNU standard C++ library -Group: Development/Libraries Autoreq: true %description -n libstdc++-docs @@ -381,7 +373,6 @@ for the GNU standard C++ library. %package objc Summary: Objective-C support for GCC -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libobjc = %{version}-%{release} Autoreq: true @@ -393,7 +384,6 @@ object-oriented derivative of the C language. %package objc++ Summary: Objective-C++ support for GCC -Group: Development/Languages Requires: gcc-c++ = %{version}-%{release}, gcc-objc = %{version}-%{release} Autoreq: true @@ -402,7 +392,6 @@ gcc-objc++ package provides Objective-C++ support for the GCC. %package -n libobjc Summary: Objective-C runtime -Group: System Environment/Libraries Autoreq: true %description -n libobjc @@ -411,15 +400,12 @@ Objective-C dynamically linked programs. %package gfortran Summary: Fortran support -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libgfortran = %{version}-%{release} %if %{build_libquadmath} Requires: libquadmath = %{version}-%{release} Requires: libquadmath-devel = %{version}-%{release} %endif -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info Autoreq: true %description gfortran @@ -428,7 +414,6 @@ programs with the GNU Compiler Collection. %package -n libgfortran Summary: Fortran runtime -Group: System Environment/Libraries Autoreq: true %if %{build_libquadmath} Requires: libquadmath = %{version}-%{release} @@ -440,7 +425,6 @@ Fortran dynamically linked programs. %package -n libgfortran-static Summary: Static Fortran libraries -Group: Development/Libraries Requires: libgfortran = %{version}-%{release} Requires: gcc = %{version}-%{release} %if %{build_libquadmath} @@ -452,11 +436,8 @@ This package contains static Fortran libraries. %package gdc Summary: D support -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libgphobos = %{version}-%{release} -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info Autoreq: true %description gdc @@ -465,7 +446,6 @@ programs with the GNU Compiler Collection. %package -n libgphobos Summary: D runtime -Group: System Environment/Libraries Autoreq: true %description -n libgphobos @@ -474,7 +454,6 @@ D dynamically linked programs. %package -n libgphobos-static Summary: Static D libraries -Group: Development/Libraries Requires: libgphobos = %{version}-%{release} Requires: gcc-gdc = %{version}-%{release} @@ -483,9 +462,6 @@ This package contains static D libraries. %package -n libgomp Summary: GCC OpenMP v4.5 shared support library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libgomp This package contains GCC shared support library which is needed @@ -493,7 +469,6 @@ for OpenMP v4.5 support. %package -n libgomp-offload-nvptx Summary: GCC OpenMP v4.5 plugin for offloading to NVPTX -Group: System Environment/Libraries Requires: libgomp = %{version}-%{release} %description -n libgomp-offload-nvptx @@ -503,7 +478,6 @@ installed separately. %package gdb-plugin Summary: GCC plugin for GDB -Group: Development/Debuggers Requires: gcc = %{version}-%{release} %description gdb-plugin @@ -511,7 +485,6 @@ This package contains GCC plugin for GDB C expression evaluation. %package -n libgccjit Summary: Library for embedding GCC inside programs and libraries -Group: System Environment/Libraries Requires: gcc = %{version}-%{release} %description -n libgccjit @@ -519,24 +492,18 @@ This package contains shared library with GCC JIT front-end. %package -n libgccjit-devel Summary: Support for embedding GCC inside programs and libraries -Group: Development/Libraries %if 0%{?fedora} > 27 || 0%{?rhel} > 7 BuildRequires: python3-sphinx %else BuildRequires: python-sphinx %endif Requires: libgccjit = %{version}-%{release} -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libgccjit-devel This package contains header files and documentation for GCC JIT front-end. %package -n libquadmath Summary: GCC __float128 shared support library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libquadmath This package contains GCC shared support library which is needed @@ -544,7 +511,6 @@ for __float128 math support and for Fortran REAL*16 support. %package -n libquadmath-devel Summary: GCC __float128 support -Group: Development/Libraries Requires: libquadmath = %{version}-%{release} Requires: gcc = %{version}-%{release} @@ -554,7 +520,6 @@ REAL*16 and programs using __float128 math. %package -n libquadmath-static Summary: Static libraries for __float128 support -Group: Development/Libraries Requires: libquadmath-devel = %{version}-%{release} %description -n libquadmath-static @@ -563,9 +528,6 @@ using REAL*16 and programs using __float128 math. %package -n libitm Summary: The GNU Transactional Memory library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libitm This package contains the GNU Transactional Memory library @@ -573,7 +535,6 @@ which is a GCC transactional memory support runtime library. %package -n libitm-devel Summary: The GNU Transactional Memory support -Group: Development/Libraries Requires: libitm = %{version}-%{release} Requires: gcc = %{version}-%{release} @@ -583,7 +544,6 @@ GNU Transactional Memory library. %package -n libitm-static Summary: The GNU Transactional Memory static library -Group: Development/Libraries Requires: libitm-devel = %{version}-%{release} %description -n libitm-static @@ -591,9 +551,6 @@ This package contains GNU Transactional Memory static libraries. %package -n libatomic Summary: The GNU Atomic library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libatomic This package contains the GNU Atomic library @@ -602,7 +559,6 @@ by hardware. %package -n libatomic-static Summary: The GNU Atomic static library -Group: Development/Libraries Requires: libatomic = %{version}-%{release} %description -n libatomic-static @@ -610,9 +566,6 @@ This package contains GNU Atomic static libraries. %package -n libasan Summary: The Address Sanitizer runtime library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libasan This package contains the Address Sanitizer library @@ -620,7 +573,6 @@ which is used for -fsanitize=address instrumented programs. %package -n libasan-static Summary: The Address Sanitizer static library -Group: Development/Libraries Requires: libasan = %{version}-%{release} %description -n libasan-static @@ -628,9 +580,6 @@ This package contains Address Sanitizer static runtime library. %package -n libtsan Summary: The Thread Sanitizer runtime library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libtsan This package contains the Thread Sanitizer library @@ -638,7 +587,6 @@ which is used for -fsanitize=thread instrumented programs. %package -n libtsan-static Summary: The Thread Sanitizer static library -Group: Development/Libraries Requires: libtsan = %{version}-%{release} %description -n libtsan-static @@ -646,9 +594,6 @@ This package contains Thread Sanitizer static runtime library. %package -n libubsan Summary: The Undefined Behavior Sanitizer runtime library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n libubsan This package contains the Undefined Behavior Sanitizer library @@ -656,7 +601,6 @@ which is used for -fsanitize=undefined instrumented programs. %package -n libubsan-static Summary: The Undefined Behavior Sanitizer static library -Group: Development/Libraries Requires: libubsan = %{version}-%{release} %description -n libubsan-static @@ -664,9 +608,6 @@ This package contains Undefined Behavior Sanitizer static runtime library. %package -n liblsan Summary: The Leak Sanitizer runtime library -Group: System Environment/Libraries -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info %description -n liblsan This package contains the Leak Sanitizer library @@ -674,7 +615,6 @@ which is used for -fsanitize=leak instrumented programs. %package -n liblsan-static Summary: The Leak Sanitizer static library -Group: Development/Libraries Requires: liblsan = %{version}-%{release} %description -n liblsan-static @@ -682,11 +622,8 @@ This package contains Leak Sanitizer static runtime library. %package -n cpp Summary: The C Preprocessor -Group: Development/Languages Requires: filesystem >= 3 Provides: /lib/cpp -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info Autoreq: true %description -n cpp @@ -713,11 +650,8 @@ macros. %package gnat Summary: Ada 83, 95, 2005 and 2012 support for GCC -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libgnat = %{version}-%{release}, libgnat-devel = %{version}-%{release} -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info Autoreq: true %description gnat @@ -726,7 +660,6 @@ development tools, the documents and Ada compiler. %package -n libgnat Summary: GNU Ada 83, 95, 2005 and 2012 runtime shared libraries -Group: System Environment/Libraries Autoreq: true %description -n libgnat @@ -735,7 +668,6 @@ shared libraries, which are required to run programs compiled with the GNAT. %package -n libgnat-devel Summary: GNU Ada 83, 95, 2005 and 2012 libraries -Group: Development/Languages Autoreq: true %description -n libgnat-devel @@ -744,7 +676,6 @@ libraries, which are required to compile with the GNAT. %package -n libgnat-static Summary: GNU Ada 83, 95, 2005 and 2012 static libraries -Group: Development/Languages Requires: libgnat-devel = %{version}-%{release} Autoreq: true @@ -754,12 +685,9 @@ static libraries. %package go Summary: Go support -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libgo = %{version}-%{release} Requires: libgo-devel = %{version}-%{release} -Requires(post): /sbin/install-info -Requires(preun): /sbin/install-info Requires(post): %{_sbindir}/update-alternatives Requires(postun): %{_sbindir}/update-alternatives Autoreq: true @@ -770,7 +698,6 @@ with the GNU Compiler Collection. %package -n libgo Summary: Go runtime -Group: System Environment/Libraries Autoreq: true %description -n libgo @@ -779,7 +706,6 @@ Go dynamically linked programs. %package -n libgo-devel Summary: Go development libraries -Group: Development/Languages Requires: libgo = %{version}-%{release} Autoreq: true @@ -789,7 +715,6 @@ Go programs. %package -n libgo-static Summary: Static Go libraries -Group: Development/Libraries Requires: libgo = %{version}-%{release} Requires: gcc = %{version}-%{release} @@ -798,7 +723,6 @@ This package contains static Go libraries. %package plugin-devel Summary: Support for compiling GCC plugins -Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: gmp-devel >= 4.1.2-8, mpfr-devel >= 2.2.1, libmpc-devel >= 0.8.1 @@ -809,7 +733,6 @@ not stable, so plugins must be rebuilt any time GCC is updated. %package offload-nvptx Summary: Offloading compiler to NVPTX -Group: Group: Development/Languages Requires: gcc = %{version}-%{release} Requires: libgomp-offload-nvptx = %{version}-%{release} @@ -841,6 +764,7 @@ to NVidia PTX capable devices if available. %patch11 -p0 -b .d-shared-libphobos~ %patch12 -p0 -b .pr88714~ %patch13 -p0 -b .pr89014~ +%patch14 -p0 -b .pr89093~ %patch30 -p1 -b .libphobos-riscv~ @@ -1990,74 +1914,6 @@ tar cf - testlogs-%{_target_platform}-%{version}-%{release} | xz -9e \ | uuencode testlogs-%{_target_platform}.tar.xz || : rm -rf testlogs-%{_target_platform}-%{version}-%{release} -%post -if [ -f %{_infodir}/gcc.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || : -fi - -%preun -if [ $1 = 0 -a -f %{_infodir}/gcc.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/gcc.info.gz || : -fi - -%post -n cpp -if [ -f %{_infodir}/cpp.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || : -fi - -%preun -n cpp -if [ $1 = 0 -a -f %{_infodir}/cpp.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/cpp.info.gz || : -fi - -%post gfortran -if [ -f %{_infodir}/gfortran.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || : -fi - -%preun gfortran -if [ $1 = 0 -a -f %{_infodir}/gfortran.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/gfortran.info.gz || : -fi - -%post gdc -if [ -f %{_infodir}/gdc.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/gdc.info.gz || : -fi - -%preun gdc -if [ $1 = 0 -a -f %{_infodir}/gdc.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/gdc.info.gz || : -fi - -%post gnat -if [ -f %{_infodir}/gnat_rm.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || : - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || : - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || : -fi - -%preun gnat -if [ $1 = 0 -a -f %{_infodir}/gnat_rm.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/gnat_rm.info.gz || : - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/gnat_ugn.info.gz || : - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/gnat-style.info.gz || : -fi - %post go %{_sbindir}/update-alternatives --install \ %{_prefix}/bin/go go %{_prefix}/bin/go.gcc 92 \ @@ -2101,66 +1957,15 @@ end %ldconfig_scriptlets -n libgnat -%post -n libgomp -/sbin/ldconfig -if [ -f %{_infodir}/libgomp.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || : -fi - -%preun -n libgomp -if [ $1 = 0 -a -f %{_infodir}/libgomp.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/libgomp.info.gz || : -fi - -%postun -n libgomp -p /sbin/ldconfig +%ldconfig_scriptlets -n libgomp %ldconfig_scriptlets gdb-plugin %ldconfig_scriptlets -n libgccjit -%post -n libgccjit-devel -if [ -f %{_infodir}/libgccjit.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/libgccjit.info.gz || : -fi +%ldconfig_scriptlets -n libgquadmath -%preun -n libgccjit-devel -if [ $1 = 0 -a -f %{_infodir}/libgccjit.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/libgccjit.info.gz || : -fi - -%post -n libquadmath -/sbin/ldconfig -if [ -f %{_infodir}/libquadmath.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/libquadmath.info.gz || : -fi - -%preun -n libquadmath -if [ $1 = 0 -a -f %{_infodir}/libquadmath.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/libquadmath.info.gz || : -fi - -%postun -n libquadmath -p /sbin/ldconfig - -%post -n libitm -/sbin/ldconfig -if [ -f %{_infodir}/libitm.info.gz ]; then - /sbin/install-info \ - --info-dir=%{_infodir} %{_infodir}/libitm.info.gz || : -fi - -%preun -n libitm -if [ $1 = 0 -a -f %{_infodir}/libitm.info.gz ]; then - /sbin/install-info --delete \ - --info-dir=%{_infodir} %{_infodir}/libitm.info.gz || : -fi - -%postun -n libitm -p /sbin/ldconfig +%ldconfig_scriptlets -n libitm %ldconfig_scriptlets -n libatomic @@ -3170,6 +2975,37 @@ fi %endif %changelog +* Sun Feb 3 2019 Jakub Jelinek 9.0.1-0.3 +- update from trunk + - PRs c++/80864, c++/86943, c++/87175, c++/88325, c++/88752, c++/88761, + c++/88983, c++/88988, c++/89083, c++/89105, c++/89119, c/88956, + c/89061, c/89122, fortran/52564, fortran/52884, fortran/57048, + fortran/81344, fortran/83246, fortran/88298, fortran/88393, + fortran/88669, fortran/88685, fortran/88980, fortran/89084, hsa/87863, + libbacktrace/89136, libfortran/78314, libfortran/88678, + libstdc++/88170, libstdc++/89117, middle-end/87887, middle-end/88597, + middle-end/89137, other/89106, rtl-optimization/87246, + rtl-optimization/88593, rtl-optimization/89115, sanitizer/89124, + target/89071, testsuite/87451, testsuite/88920, testsuite/89110, + tree-optimization/85497, tree-optimization/88107, + tree-optimization/88932, tree-optimization/89111, + tree-optimization/89135, tree-optimization/89143 + +* Tue Jan 29 2019 Jakub Jelinek 9.0.1-0.2 +- update from trunk + - PRs c++/66676, c++/88358, c++/88815, c++/88865, c++/88969, c++/88976, + c++/89001, c++/89024, c++/89089, c/86125, c/88886, c/89045, d/89042, + debug/87295, debug/89006, debug/89076, fortran/57553, fortran/70696, + fortran/85780, fortran/88929, gcc/87763, gcov-profile/88994, + ipa/88933, ipa/89104, libfortran/89020, libgcc/88931, libstdc++/68737, + libstdc++/88840, lto/87187, middle-end/86308, middle-end/89002, + middle-end/89015, middle-end/89037, preprocessor/88974, + rtl-optimization/88846, rtl-optimization/88948, target/85711, + target/87214, target/88998, target/89073, testsuite/89064, + tree-optimization/86865, tree-optimization/88739, + tree-optimization/89027, tree-optimization/89049 +- make sure ARM unwinder doesn't use VFP registers (#1670069, PR target/89093) + * Wed Jan 23 2019 Jakub Jelinek 9.0.1-0.1 - update from trunk - PRs c++/87893, c++/88293, c++/88757, c++/88984, c/44715, driver/89014, diff --git a/gcc9-pr89093.patch b/gcc9-pr89093.patch new file mode 100644 index 0000000..78957e3 --- /dev/null +++ b/gcc9-pr89093.patch @@ -0,0 +1,114 @@ +2019-01-29 Ramana Radhakrishnan + + PR target/89093 + * config/arm/arm-cpus.in: Add -mfpu=none support. + * config/arm/arm-tables.opt: Likewise. + * config/arm/arm.c (arm_options_perform_arch_sanity_checks): Remove + error for no FPU. + + * config/arm/pr-support.c: Add #pragma GCC target ("fpu=none"). + * config/arm/unwind-arm.c: Likewise. + * unwind-c.c: Likewise, #ifdef __arm__ only. + + * libsupc++/eh_personality.cc: Add #pragma GCC target ("fpu=none") + for __arm__. + +--- gcc/config/arm/arm-cpus.in ++++ gcc/config/arm/arm-cpus.in +@@ -128,6 +128,7 @@ define feature cmse + + # Floating point and Neon extensions. + # VFPv1 is not supported in GCC. ++define feature nofp + + # Vector floating point v2. + define feature vfpv2 +@@ -258,6 +259,7 @@ define fgroup ARMv8m_main ARMv7m armv8 cmse + define fgroup ARMv8r ARMv8a + + # Useful combinations. ++define fgroup NONE nofp + define fgroup VFPv2 vfpv2 + define fgroup VFPv3 VFPv2 vfpv3 + define fgroup VFPv4 VFPv3 vfpv4 fp16conv +@@ -1394,6 +1396,9 @@ end cpu cortex-r52 + # begin fpu + # isa + # end fpu ++begin fpu none ++isa NONE FP_DBL ++end fpu none + + begin fpu vfp + isa VFPv2 FP_DBL +--- gcc/config/arm/arm-tables.opt ++++ gcc/config/arm/arm-tables.opt +@@ -353,6 +353,9 @@ Enum + Name(arm_fpu) Type(enum fpu_type) + Known ARM FPUs (for use with the -mfpu= option): + ++EnumValue ++Enum(arm_fpu) String(none) Value(TARGET_FPU_none) ++ + EnumValue + Enum(arm_fpu) String(vfp) Value(TARGET_FPU_vfp) + +--- gcc/config/arm/arm.c ++++ gcc/config/arm/arm.c +@@ -3759,8 +3759,6 @@ arm_options_perform_arch_sanity_checks (void) + else if (TARGET_HARD_FLOAT_ABI) + { + arm_pcs_default = ARM_PCS_AAPCS_VFP; +- if (!bitmap_bit_p (arm_active_target.isa, isa_bit_vfpv2)) +- error ("-mfloat-abi=hard: selected processor lacks an FPU"); + } + else + arm_pcs_default = ARM_PCS_AAPCS; +--- libgcc/config/arm/pr-support.c ++++ libgcc/config/arm/pr-support.c +@@ -21,6 +21,8 @@ + see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + . */ + ++#pragma GCC target ("fpu=none") ++ + #include "unwind.h" + + /* We add a prototype for abort here to avoid creating a dependency on +--- libgcc/config/arm/unwind-arm.c ++++ libgcc/config/arm/unwind-arm.c +@@ -21,6 +21,8 @@ + see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + . */ + ++#pragma GCC target ("fpu=none") ++ + #include "unwind.h" + + /* Misc constants. */ +--- libgcc/unwind-c.c ++++ libgcc/unwind-c.c +@@ -24,6 +24,10 @@ a copy of the GCC Runtime Library Except + see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + . */ + ++#ifdef __arm__ ++#pragma GCC target ("fpu=none") ++#endif ++ + #include "tconfig.h" + #include "tsystem.h" + #include "auto-target.h" +--- libstdc++-v3/libsupc++/eh_personality.cc ++++ libstdc++-v3/libsupc++/eh_personality.cc +@@ -22,6 +22,10 @@ + // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see + // . + ++#ifdef __arm__ ++#pragma GCC target ("fpu=none") ++#endif ++ + #include + #include + #include diff --git a/sources b/sources index 8ebcfa2..c984ae5 100644 --- a/sources +++ b/sources @@ -1,3 +1,3 @@ -SHA512 (gcc-9.0.1-20190123.tar.xz) = 640e27164ec6624366af3fdcb9f1bd399c47bd1a8adc57a0f5f0214493354a218d1cdc7c8e60bb9323baf01c3e2ef09233d57896b3e3047149064b1c353b6b8c +SHA512 (gcc-9.0.1-20190203.tar.xz) = e82e8f94fde788c57a688db80b7d763cf636621f588bea3ba807118c6fde0177262f72b150f918dcd892fec614400da5fecb15f432ae67cd0333aaca5d6640c9 SHA512 (nvptx-newlib-aadc8eb0ec43b7cd0dd2dfb484bae63c8b05ef24.tar.xz) = 94f7089365296f7dfa485107b4143bebc850a81586f3460fd896bbbb6ba099a00217d4042133424fd2183b352132f4fd367e6a60599bdae2a26dfd48a77d0e04 SHA512 (nvptx-tools-c28050f60193b3b95a18866a96f03334e874e78f.tar.xz) = a688cb12cf805950a5abbb13b52f45c81dbee98e310b7ed57ae20e76dbfa5964a16270148374a6426d177db71909d28360490f091c86a5d19d4faa5127beeee1