[packages/gcc] - up to 6.1.0; tested build without multilib
arekm
arekm at pld-linux.org
Wed Apr 27 18:23:18 CEST 2016
commit 42ec3c2b5f72d6a796ec6121bd7b8ab11ffed729
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Wed Apr 27 18:23:08 2016 +0200
- up to 6.1.0; tested build without multilib
gcc-nodebug.patch | 14 +-
gcc-pr61164.patch | 1085 -----------------------------------------------------
gcc.spec | 271 +++++++++++--
3 files changed, 246 insertions(+), 1124 deletions(-)
---
diff --git a/gcc.spec b/gcc.spec
index 7b08860..5fa7c0d 100644
--- a/gcc.spec
+++ b/gcc.spec
@@ -112,12 +112,12 @@
%define with_vtv 1
%endif
-%define major_ver 5
-%define minor_ver 3.0
+%define major_ver 6
+%define minor_ver 1.0
%define major_ecj_ver 4.9
# class data version seen with file(1) that this jvm is able to load
%define _classdataversion 50.0
-%define gcj_soname_ver 16
+%define gcj_soname_ver 17
Summary: GNU Compiler Collection: the C compiler and shared files
Summary(es.UTF-8): Colección de compiladores GNU: el compilador C y ficheros compartidos
@@ -125,18 +125,18 @@ Summary(pl.UTF-8): Kolekcja kompilatorów GNU: kompilator C i pliki współdziel
Summary(pt_BR.UTF-8): Coleção dos compiladores GNU: o compilador C e arquivos compartilhados
Name: gcc
Version: %{major_ver}.%{minor_ver}
-Release: 2
+Release: 0.1
Epoch: 6
License: GPL v3+
Group: Development/Languages
Source0: https://ftp.gnu.org/pub/gnu/gcc/gcc-%{version}/%{name}-%{version}.tar.bz2
-# Source0-md5: c9616fd448f980259c31de613e575719
+# Source0-md5: 8fb6cb98b8459f5863328380fbf06bd1
Source1: %{name}-optimize-la.pl
Source2: ftp://sourceware.org/pub/java/ecj-%{major_ecj_ver}.jar
# Source2-md5: 7339f199ba11c941890031fd9981d7be
# check libffi version with libffi/configure.ac
Source3: libffi.pc.in
-# svn diff -x --ignore-eol-style --force svn://gcc.gnu.org/svn/gcc/tags/gcc_5_3_0_release svn://gcc.gnu.org/svn/gcc/branches/gcc-5-branch > gcc-branch.diff
+# svn diff -x --ignore-eol-style --force svn://gcc.gnu.org/svn/gcc/tags/gcc_6_1_0_release svn://gcc.gnu.org/svn/gcc/branches/gcc-6-branch > gcc-branch.diff
Patch100: %{name}-branch.diff
# Patch100-md5: 62c886f1e86f7fb3950094ed32caaeaf
Patch0: %{name}-info.patch
@@ -144,7 +144,6 @@ Patch2: %{name}-nodebug.patch
Patch3: %{name}-ada-link.patch
Patch4: %{name}-ada-x32.patch
-Patch6: %{name}-pr61164.patch
Patch7: %{name}-libjava-multilib.patch
Patch8: %{name}-enable-java-awt-qt.patch
Patch10: %{name}-moresparcs.patch
@@ -288,7 +287,7 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# receiving non constant format strings
%define Werror_cflags %{nil}
-%define skip_post_check_so '.*(libcc1plugin|libgo|libxmlj|lib-gnu-awt-xlib)\.so.*'
+%define skip_post_check_so '.*(libcc1plugin|libgo|libxmlj|lib-gnu-awt-xlib|libmpxwrappers)\.so.*'
%description
A compiler aimed at integrating all the optimizations and features
@@ -691,6 +690,146 @@ library in %{m2_desc} version.
Ten pakiet zawiera bibliotekę statyczną rozszerzeń Cilk Plus dla
języków C/C++. W tym pakiecie znajduje się wersja %{m2_desc}.
+%package -n libmpx
+Summary: GCC Memory Protection Extensions language extensions runtime library
+Summary(pl.UTF-8): Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC
+License: BSD
+Group: Libraries
+Requires: libstdc++ = %{epoch}:%{version}-%{release}
+
+%description -n libmpx
+This package contains the Memory Protection Extensions C language extensions runtime
+library.
+
+%description -n libmpx -l pl.UTF-8
+Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory Protection Extensions dla
+języka C.
+
+%package -n libmpx-devel
+Summary: GCC development files for Memory Protection Extensions language extensions
+Summary(pl.UTF-8): Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions
+License: BSD
+Group: Development/Libraries
+Requires: libmpx = %{epoch}:%{version}-%{release}
+
+%description -n libmpx-devel
+This package contains development files for Memory Protection Extensions C language
+extensions.
+
+%description -n libmpx-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection Extensions dla
+języka C.
+
+%package -n libmpx-static
+Summary: GCC Memory Protection Extensions language extensions static library
+Summary(pl.UTF-8): Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-devel = %{epoch}:%{version}-%{release}
+
+%description -n libmpx-static
+This package contains Memory Protection Extensions C language extensions static
+library.
+
+%description -n libmpx-static -l pl.UTF-8
+Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection Extensions dla
+języka C.
+
+%package -n libmpx-multilib-32
+Summary: GCC Memory Protection Extensions language extensions runtime library - 32-bit version
+Summary(pl.UTF-8): Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC - wersja 32-bitowa
+License: BSD
+Group: Libraries
+Requires: libstdc++-multilib-32 = %{epoch}:%{version}-%{release}
+Obsoletes: libmpx-multilib
+
+%description -n libmpx-multilib-32
+This package contains the Memory Protection Extensions C language extensions runtime
+library in 32-bit version.
+
+%description -n libmpx-multilib-32 -l pl.UTF-8
+Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory Protection Extensions dla
+języka C. W tym pakiecie znajduje się wersja 32-bitowa.
+
+%package -n libmpx-multilib-32-devel
+Summary: GCC development files for Memory Protection Extensions language extensions - 32-bit version
+Summary(pl.UTF-8): Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions - wersja 32-bitowa
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-devel = %{epoch}:%{version}-%{release}
+Requires: libmpx-multilib-32 = %{epoch}:%{version}-%{release}
+Obsoletes: libmpx-multilib-devel
+
+%description -n libmpx-multilib-32-devel
+This package contains development files for Memory Protection Extensions C language
+extensions in 32-bit version.
+
+%description -n libmpx-multilib-32-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection Extensions dla
+języka C. W tym pakiecie znajduje się wersja 32-bitowa.
+
+%package -n libmpx-multilib-32-static
+Summary: GCC Memory Protection Extensions language extensions static library - 32-bit version
+Summary(pl.UTF-8): Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC - wersja 32-bitowa
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-multilib-32-devel = %{epoch}:%{version}-%{release}
+Obsoletes: libmpx-multilib-static
+
+%description -n libmpx-multilib-32-static
+This package contains the Memory Protection Extensions C language extensions static
+library in 32-bit version.
+
+%description -n libmpx-multilib-32-static -l pl.UTF-8
+Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection Extensions dla
+języka C. W tym pakiecie znajduje się wersja 32-bitowa.
+
+%package -n libmpx-multilib-%{multilib2}
+Summary: GCC Memory Protection Extensions language extensions runtime library
+Summary(pl.UTF-8): Biblioteka uruchomieniowa rozszerzeń Memory Protection Extensions dla GCC
+License: BSD
+Group: Libraries
+Requires: libstdc++-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description -n libmpx-multilib-%{multilib2}
+This package contains the Memory Protection Extensions C language extensions runtime
+library.
+
+%description -n libmpx-multilib-%{multilib2} -l pl.UTF-8
+Ten pakiet zawiera bibliotekę uruchomieniową rozszerzeń Memory Protection Extensions dla
+języka C.
+
+%package -n libmpx-multilib-%{multilib2}-devel
+Summary: GCC development files for Memory Protection Extensions language extensions
+Summary(pl.UTF-8): Pliki programistyczne GCC dla rozszerzeń Memory Protection Extensions
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-devel = %{epoch}:%{version}-%{release}
+Requires: libmpx-multilib-%{multilib2} = %{epoch}:%{version}-%{release}
+
+%description -n libmpx-multilib-%{multilib2}-devel
+This package contains development files for Memory Protection Extensions C language
+extensions.
+
+%description -n libmpx-multilib-%{multilib2}-devel -l pl.UTF-8
+Ten pakiet zawiera pliki programistyczne rozszerzeń Memory Protection Extensions dla
+języka C.
+
+%package -n libmpx-multilib-%{multilib2}-static
+Summary: GCC Memory Protection Extensions language extensions static library
+Summary(pl.UTF-8): Biblioteka statyczna rozszerzeń Memory Protection Extensions dla GCC
+License: BSD
+Group: Development/Libraries
+Requires: libmpx-multilib-%{multilib2}-devel = %{epoch}:%{version}-%{release}
+
+%description -n libmpx-multilib-%{multilib2}-static
+This package contains the Memory Protection Extensions C language extensions static
+library.
+
+%description -n libmpx-multilib-%{multilib2}-static -l pl.UTF-8
+Ten pakiet zawiera bibliotekę statyczną rozszerzeń Memory Protection Extensions dla
+języka C.
+
%package ada
Summary: Ada language support for GCC
Summary(es.UTF-8): Soporte de Ada para GCC
@@ -2800,13 +2939,12 @@ not stable, so plugins must be rebuilt any time GCC is updated.
%prep
%setup -q
-%patch100 -p0
+#%patch100 -p0
%patch0 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
-%patch6 -p1
%patch7 -p0
%if %{with qt}
%patch8 -p1
@@ -3023,9 +3161,9 @@ libgomp=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libgomp.so.*.*.*)
mv $RPM_BUILD_ROOT%{_libdir}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdir}
ln -sf %{_slibdir}/$libgomp $RPM_BUILD_ROOT%{_libdir}/libgomp.so
-libgompplugin=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libgomp-plugin-host_nonshm.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir}/libgomp-plugin-host_nonshm.so.* $RPM_BUILD_ROOT%{_slibdir}
-ln -sf %{_slibdir}/$libgompplugin $RPM_BUILD_ROOT%{_libdir}/libgomp-plugin-host_nonshm.so
+#libgompplugin=$(cd $RPM_BUILD_ROOT%{_libdir}; echo libgomp-plugin-host_nonshm.so.*.*.*)
+#mv $RPM_BUILD_ROOT%{_libdir}/libgomp-plugin-host_nonshm.so.* $RPM_BUILD_ROOT%{_slibdir}
+#ln -sf %{_slibdir}/$libgompplugin $RPM_BUILD_ROOT%{_libdir}/libgomp-plugin-host_nonshm.so
%if %{with multilib}
libssp=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libssp.so.*.*.*)
@@ -3040,9 +3178,9 @@ libgomp=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libgomp.so.*.*.*)
mv $RPM_BUILD_ROOT%{_libdir32}/libgomp.so.* $RPM_BUILD_ROOT%{_slibdir32}
ln -sf %{_slibdir32}/$libgomp $RPM_BUILD_ROOT%{_libdir32}/libgomp.so
-libgompplugin=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libgomp-plugin-host_nonshm.so.*.*.*)
-mv $RPM_BUILD_ROOT%{_libdir32}/libgomp-plugin-host_nonshm.so.* $RPM_BUILD_ROOT%{_slibdir32}
-ln -sf %{_slibdir32}/$libgompplugin $RPM_BUILD_ROOT%{_libdir32}/libgomp-plugin-host_nonshm.so
+#libgompplugin=$(cd $RPM_BUILD_ROOT%{_libdir32}; echo libgomp-plugin-host_nonshm.so.*.*.*)
+#mv $RPM_BUILD_ROOT%{_libdir32}/libgomp-plugin-host_nonshm.so.* $RPM_BUILD_ROOT%{_slibdir32}
+#ln -sf %{_slibdir32}/$libgompplugin $RPM_BUILD_ROOT%{_libdir32}/libgomp-plugin-host_nonshm.so
%if %{with multilib2}
libssp=$(cd $RPM_BUILD_ROOT%{_libdirm2}; echo libssp.so.*.*.*)
@@ -3357,6 +3495,12 @@ rm -rf $RPM_BUILD_ROOT
%postun -p /sbin/ldconfig -n libffi-multilib-32
%post -p /sbin/ldconfig -n libffi-multilib-%{multilib2}
%postun -p /sbin/ldconfig -n libffi-multilib-%{multilib2}
+%post -p /sbin/ldconfig -n libmpx
+%postun -p /sbin/ldconfig -n libmpx
+%post -p /sbin/ldconfig -n libmpx-multilib-32
+%postun -p /sbin/ldconfig -n libmpx-multilib-32
+%post -p /sbin/ldconfig -n libmpx-multilib-%{multilib2}
+%postun -p /sbin/ldconfig -n libmpx-multilib-%{multilib2}
%post -p /sbin/ldconfig -n libobjc
%postun -p /sbin/ldconfig -n libobjc
%post -p /sbin/ldconfig -n libobjc-multilib-32
@@ -3503,6 +3647,7 @@ rm -rf $RPM_BUILD_ROOT
%{gcclibdir}/include/bmmintrin.h
%{gcclibdir}/include/clflushoptintrin.h
%{gcclibdir}/include/clwbintrin.h
+%{gcclibdir}/include/clzerointrin.h
%{gcclibdir}/include/cpuid.h
%{gcclibdir}/include/cross-stdarg.h
%{gcclibdir}/include/emmintrin.h
@@ -3520,6 +3665,7 @@ rm -rf $RPM_BUILD_ROOT
%{gcclibdir}/include/nmmintrin.h
%{gcclibdir}/include/mwaitxintrin.h
%{gcclibdir}/include/pcommitintrin.h
+%{gcclibdir}/include/pkuintrin.h
%{gcclibdir}/include/pmmintrin.h
%{gcclibdir}/include/popcntintrin.h
%{gcclibdir}/include/prfchwintrin.h
@@ -3639,15 +3785,15 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%attr(755,root,root) %{_slibdir}/libgomp.so.*.*.*
%attr(755,root,root) %ghost %{_slibdir}/libgomp.so.1
-%attr(755,root,root) %{_slibdir}/libgomp-plugin-host_nonshm.so.*.*.*
-%attr(755,root,root) %ghost %{_slibdir}/libgomp-plugin-host_nonshm.so.1
+#%attr(755,root,root) %{_slibdir}/libgomp-plugin-host_nonshm.so.*.*.*
+#%attr(755,root,root) %ghost %{_slibdir}/libgomp-plugin-host_nonshm.so.1
%files -n libgomp-devel
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir}/libgomp.so
-%attr(755,root,root) %{_libdir}/libgomp-plugin-host_nonshm.so
+#%attr(755,root,root) %{_libdir}/libgomp-plugin-host_nonshm.so
%{_libdir}/libgomp.la
-%{_libdir}/libgomp-plugin-host_nonshm.la
+#%{_libdir}/libgomp-plugin-host_nonshm.la
%{_libdir}/libgomp.spec
%{gcclibdir}/finclude
%{gcclibdir}/include/omp.h
@@ -3756,6 +3902,66 @@ rm -rf $RPM_BUILD_ROOT
%endif
%endif
+%files -n libmpx
+%defattr(644,root,root,755)
+%doc libmpx/ChangeLog
+%attr(755,root,root) %{_libdir}/libmpx.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libmpx.so.2
+%attr(755,root,root) %{_libdir}/libmpxwrappers.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir}/libmpxwrappers.so.2
+
+%files -n libmpx-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir}/libmpx.so
+%attr(755,root,root) %{_libdir}/libmpxwrappers.so
+%{_libdir}/libmpx.la
+%{_libdir}/libmpxwrappers.la
+%{_libdir}/libmpx.spec
+
+%files -n libmpx-static
+%defattr(644,root,root,755)
+%{_libdir}/libmpx.a
+%{_libdir}/libmpxwrappers.a
+
+%if %{with multilib}
+%files -n libmpx-multilib-32
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libmpx.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libmpx.so.2
+%attr(755,root,root) %{_libdir32}/libmpxwrappers.so.*.*.*
+%attr(755,root,root) %ghost %{_libdir32}/libmpxwrappers.so.2
+
+%files -n libmpx-multilib-32-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdir32}/libmpx.so
+%attr(755,root,root) %{_libdir32}/libmpxwrappers.so
+%{_libdir32}/libmpx.la
+%{_libdir32}/libmpxwrappers.la
+%{_libdir32}/libmpx.spec
+
+%files -n libmpx-multilib-32-static
+%defattr(644,root,root,755)
+%{_libdir32}/libmpx.a
+%{_libdir32}/libmpxwrappers.a
+%endif
+
+%if %{with multilib2}
+%files -n libmpx-multilib-%{multilib2}
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libmpx.so.*.*.*
+%attr(755,root,root) %ghost %{_libdirm2}/libmpx.so.2
+
+%files -n libmpx-multilib-%{multilib2}-devel
+%defattr(644,root,root,755)
+%attr(755,root,root) %{_libdirm2}/libmpx.so
+%{_libdirm2}/libmpx.la
+%{_libdirm2}/libmpx.spec
+
+%files -n libmpx-multilib-%{multilib2}-static
+%defattr(644,root,root,755)
+%{_libdirm2}/libmpx.a
+%endif
+
%if %{with ada}
%files ada
%defattr(644,root,root,755)
@@ -3891,6 +4097,7 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libstdc++fs.la
%dir %{_includedir}/c++
%{_includedir}/c++/%{version}
+%{_includedir}/expc++.h
%{_includedir}/extc++.h
%{_includedir}/stdc++.h
%{_includedir}/stdtr1c++.h
@@ -3979,8 +4186,8 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir}/libgfortran.la
%{gcclibdir}/libcaf_single.a
%{gcclibdir}/libcaf_single.la
-%{gcclibdir}/libgfortranbegin.la
-%{gcclibdir}/libgfortranbegin.a
+#%{gcclibdir}/libgfortranbegin.la
+#%{gcclibdir}/libgfortranbegin.a
%{_infodir}/gfortran.info*
%{_mandir}/man1/g95.1*
%{_mandir}/man1/gfortran.1*
@@ -3993,8 +4200,8 @@ rm -rf $RPM_BUILD_ROOT
%{_libdir32}/libgfortran.la
%{gcclibdir}/32/libcaf_single.a
%{gcclibdir}/32/libcaf_single.la
-%{gcclibdir}/32/libgfortranbegin.la
-%{gcclibdir}/32/libgfortranbegin.a
+#%{gcclibdir}/32/libgfortranbegin.la
+#%{gcclibdir}/32/libgfortranbegin.a
%endif
%if %{with multilib2}
@@ -4005,8 +4212,8 @@ rm -rf $RPM_BUILD_ROOT
%{_libdirm2}/libgfortran.la
%{gcclibdir}/%{multilib2}/libcaf_single.a
%{gcclibdir}/%{multilib2}/libcaf_single.la
-%{gcclibdir}/%{multilib2}/libgfortranbegin.la
-%{gcclibdir}/%{multilib2}/libgfortranbegin.a
+#%{gcclibdir}/%{multilib2}/libgfortranbegin.la
+#%{gcclibdir}/%{multilib2}/libgfortranbegin.a
%endif
%files -n libgfortran
@@ -4381,7 +4588,7 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%doc libgo/{LICENSE,PATENTS,README}
%attr(755,root,root) %{_libdir}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libgo.so.7
+%attr(755,root,root) %ghost %{_libdir}/libgo.so.9
%files -n libgo-devel
%defattr(644,root,root,755)
@@ -4399,7 +4606,7 @@ rm -rf $RPM_BUILD_ROOT
%files -n libgo-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libgo.so.7
+%attr(755,root,root) %ghost %{_libdir32}/libgo.so.9
%files -n libgo-multilib-32-devel
%defattr(644,root,root,755)
@@ -4418,7 +4625,7 @@ rm -rf $RPM_BUILD_ROOT
%files -n libgo-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libgo.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.7
+%attr(755,root,root) %ghost %{_libdirm2}/libgo.so.9
%files -n libgo-multilib-%{multilib2}-devel
%defattr(644,root,root,755)
@@ -4439,7 +4646,7 @@ rm -rf $RPM_BUILD_ROOT
%defattr(644,root,root,755)
%doc libsanitizer/ChangeLog* libsanitizer/LICENSE.TXT
%attr(755,root,root) %{_libdir}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir}/libasan.so.2
+%attr(755,root,root) %ghost %{_libdir}/libasan.so.3
%files -n libasan-devel
%defattr(644,root,root,755)
@@ -4456,7 +4663,7 @@ rm -rf $RPM_BUILD_ROOT
%files -n libasan-multilib-32
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdir32}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdir32}/libasan.so.2
+%attr(755,root,root) %ghost %{_libdir32}/libasan.so.3
%files -n libasan-multilib-32-devel
%defattr(644,root,root,755)
@@ -4473,7 +4680,7 @@ rm -rf $RPM_BUILD_ROOT
%files -n libasan-multilib-%{multilib2}
%defattr(644,root,root,755)
%attr(755,root,root) %{_libdirm2}/libasan.so.*.*.*
-%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.2
+%attr(755,root,root) %ghost %{_libdirm2}/libasan.so.3
%files -n libasan-multilib-%{multilib2}-devel
%defattr(644,root,root,755)
diff --git a/gcc-nodebug.patch b/gcc-nodebug.patch
index e3ea8a4..4707f5b 100644
--- a/gcc-nodebug.patch
+++ b/gcc-nodebug.patch
@@ -9,7 +9,7 @@
BOOT_CFLAGS = -O $(CFLAGS)
# These exists to be overridden by the t-* files, respectively.
T_CFLAGS =
-@@ -105,12 +105,12 @@
+@@ -105,12 +105,12 @@ TEXI2PDF = texi2pdf
GNATBIND_FLAGS = -static -x
ADA_CFLAGS =
ADAFLAGS = -W -Wall -gnatpg -gnata
@@ -21,9 +21,9 @@
GNATLIBFLAGS = -W -Wall -gnatpg -nostdinc
-GNATLIBCFLAGS = -g -O2
+GNATLIBCFLAGS = -O2
- PICFLAG_FOR_TARGET = @PICFLAG_FOR_TARGET@
-
# Pretend that _Unwind_GetIPInfo is available for the target by default. This
+ # should be autodetected during the configuration of libada and passed down to
+ # here, but we need something for --disable-libada and hope for the best.
--- gcc-4.7.1/libada/Makefile.in.orig 2012-06-12 17:12:37.000000000 +0200
+++ gcc-4.7.1/libada/Makefile.in 2012-07-12 18:27:53.482408144 +0200
@@ -59,7 +59,7 @@ LDFLAGS=
@@ -48,15 +48,15 @@
# MSVC, it can link against the debug CRT.
--- gcc-4.7.1/libffi/Makefile.in.orig 2012-06-14 10:48:08.000000000 +0200
+++ gcc-4.7.1/libffi/Makefile.in 2012-07-12 18:28:35.029073067 +0200
-@@ -475,7 +475,7 @@
+@@ -486,7 +486,7 @@ libffi_convenience_la_LIBADD = $(libffi_
libffi_convenience_la_DEPENDENCIES = $(libffi_la_DEPENDENCIES)
nodist_libffi_convenience_la_SOURCES = $(nodist_libffi_la_SOURCES)
LTLDFLAGS = $(shell $(SHELL) $(top_srcdir)/../libtool-ldflags $(LDFLAGS))
-AM_CFLAGS = -Wall -g -fexceptions $(am__append_2)
+AM_CFLAGS = -Wall -fexceptions $(am__append_2)
- libffi_la_LDFLAGS = -no-undefined -version-info `grep -v '^\#' $(srcdir)/libtool-version` $(LTLDFLAGS) $(AM_LTLDFLAGS)
- AM_CPPFLAGS = -I. -I$(top_srcdir)/include -Iinclude -I$(top_srcdir)/src
- AM_CCASFLAGS = $(AM_CPPFLAGS)
+ @LIBAT_BUILD_VERSIONED_SHLIB_FALSE at libffi_version_script =
+ @LIBAT_BUILD_VERSIONED_SHLIB_GNU_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE at libffi_version_script = -Wl,--version-script,libffi.map
+ @LIBAT_BUILD_VERSIONED_SHLIB_SUN_TRUE@@LIBAT_BUILD_VERSIONED_SHLIB_TRUE at libffi_version_script = -Wl,-M,libffi.map-sun
--- gcc-4.7.1/libgcc/Makefile.in.orig 2012-05-24 16:59:38.000000000 +0200
+++ gcc-4.7.1/libgcc/Makefile.in 2012-07-12 18:28:59.042405393 +0200
@@ -221,7 +221,7 @@
diff --git a/gcc-pr61164.patch b/gcc-pr61164.patch
deleted file mode 100644
index 511820e..0000000
--- a/gcc-pr61164.patch
+++ /dev/null
@@ -1,1085 +0,0 @@
-2014-09-27 Gleb Fotengauer-Malinovskiy <glebfm at altlinux.org>
-
-libitm/
-
- PR libitm/61164
- * local_atomic (__always_inline): Rename to...
- (__libitm_always_inline): ... this.
----
-
-On Mon, Sep 29, 2014 at 03:38:25PM +0200, Jakub Jelinek wrote:
-> Why do you want to add inline keyword to that? Some inline keywords
-> are implicit (methods defined inline), so there is no point adding it there.
-
-I just didn't get that redefinition of __always_inline was the source of the problem.
-
- local_atomic | 299 +++++++++++++++++++++++++++++------------------------------
- 1 file changed, 149 insertions(+), 150 deletions(-)
-
-diff --git a/libitm/local_atomic b/libitm/local_atomic
-index c3e079f..552b919 100644
---- a/libitm/local_atomic
-+++ b/libitm/local_atomic
-@@ -41,8 +41,7 @@
- #ifndef _GLIBCXX_ATOMIC
- #define _GLIBCXX_ATOMIC 1
-
--#undef __always_inline
--#define __always_inline __attribute__((always_inline))
-+#define __libitm_always_inline __attribute__((always_inline))
-
- // #pragma GCC system_header
-
-@@ -74,7 +74,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- memory_order_seq_cst
- } memory_order;
-
-- inline __always_inline memory_order
-+ inline __libitm_always_inline memory_order
- __calculate_memory_order(memory_order __m) noexcept
- {
- const bool __cond1 = __m == memory_order_release;
-@@ -84,13 +84,13 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __mo2;
- }
-
-- inline __always_inline void
-+ inline __libitm_always_inline void
- atomic_thread_fence(memory_order __m) noexcept
- {
- __atomic_thread_fence (__m);
- }
-
-- inline __always_inline void
-+ inline __libitm_always_inline void
- atomic_signal_fence(memory_order __m) noexcept
- {
- __atomic_thread_fence (__m);
-@@ -280,19 +280,19 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- // Conversion to ATOMIC_FLAG_INIT.
- atomic_flag(bool __i) noexcept : __atomic_flag_base({ __i }) { }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- test_and_set(memory_order __m = memory_order_seq_cst) noexcept
- {
- return __atomic_test_and_set (&_M_i, __m);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- test_and_set(memory_order __m = memory_order_seq_cst) volatile noexcept
- {
- return __atomic_test_and_set (&_M_i, __m);
- }
-
-- __always_inline void
-+ __libitm_always_inline void
- clear(memory_order __m = memory_order_seq_cst) noexcept
- {
- // __glibcxx_assert(__m != memory_order_consume);
-@@ -302,7 +302,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __atomic_clear (&_M_i, __m);
- }
-
-- __always_inline void
-+ __libitm_always_inline void
- clear(memory_order __m = memory_order_seq_cst) volatile noexcept
- {
- // __glibcxx_assert(__m != memory_order_consume);
-@@ -455,7 +455,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- is_lock_free() const volatile noexcept
- { return __atomic_is_lock_free (sizeof (_M_i), &_M_i); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(__int_type __i, memory_order __m = memory_order_seq_cst) noexcept
- {
- // __glibcxx_assert(__m != memory_order_acquire);
-@@ -465,7 +465,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __atomic_store_n(&_M_i, __i, __m);
- }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
-@@ -476,7 +476,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __atomic_store_n(&_M_i, __i, __m);
- }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- load(memory_order __m = memory_order_seq_cst) const noexcept
- {
- // __glibcxx_assert(__m != memory_order_release);
-@@ -485,7 +485,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_load_n(&_M_i, __m);
- }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- load(memory_order __m = memory_order_seq_cst) const volatile noexcept
- {
- // __glibcxx_assert(__m != memory_order_release);
-@@ -494,21 +494,21 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_load_n(&_M_i, __m);
- }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- exchange(__int_type __i,
- memory_order __m = memory_order_seq_cst) noexcept
- {
- return __atomic_exchange_n(&_M_i, __i, __m);
- }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- exchange(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
- return __atomic_exchange_n(&_M_i, __i, __m);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__int_type& __i1, __int_type __i2,
- memory_order __m1, memory_order __m2) noexcept
- {
-@@ -519,7 +519,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 1, __m1, __m2);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__int_type& __i1, __int_type __i2,
- memory_order __m1,
- memory_order __m2) volatile noexcept
-@@ -531,7 +531,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 1, __m1, __m2);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__int_type& __i1, __int_type __i2,
- memory_order __m = memory_order_seq_cst) noexcept
- {
-@@ -539,7 +539,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__int_type& __i1, __int_type __i2,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
-@@ -547,7 +547,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__int_type& __i1, __int_type __i2,
- memory_order __m1, memory_order __m2) noexcept
- {
-@@ -558,7 +558,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 0, __m1, __m2);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__int_type& __i1, __int_type __i2,
- memory_order __m1,
- memory_order __m2) volatile noexcept
-@@ -570,7 +570,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_compare_exchange_n(&_M_i, &__i1, __i2, 0, __m1, __m2);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__int_type& __i1, __int_type __i2,
- memory_order __m = memory_order_seq_cst) noexcept
- {
-@@ -578,7 +578,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__int_type& __i1, __int_type __i2,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
-@@ -586,52 +586,52 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_add(__int_type __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_add(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_add(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_add(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_sub(__int_type __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_sub(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_sub(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_sub(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_and(__int_type __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_and(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_and(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_and(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_or(__int_type __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_or(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_or(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_or(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_xor(__int_type __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_xor(&_M_i, __i, __m); }
-
-- __always_inline __int_type
-+ __libitm_always_inline __int_type
- fetch_xor(__int_type __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_xor(&_M_i, __i, __m); }
-@@ -733,7 +733,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- is_lock_free() const volatile noexcept
- { return __atomic_is_lock_free (sizeof (_M_p), &_M_p); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) noexcept
- {
-@@ -744,7 +744,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __atomic_store_n(&_M_p, __p, __m);
- }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
-@@ -755,7 +755,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __atomic_store_n(&_M_p, __p, __m);
- }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- load(memory_order __m = memory_order_seq_cst) const noexcept
- {
- // __glibcxx_assert(__m != memory_order_release);
-@@ -764,7 +764,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_load_n(&_M_p, __m);
- }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- load(memory_order __m = memory_order_seq_cst) const volatile noexcept
- {
- // __glibcxx_assert(__m != memory_order_release);
-@@ -773,21 +773,21 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_load_n(&_M_p, __m);
- }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- exchange(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) noexcept
- {
- return __atomic_exchange_n(&_M_p, __p, __m);
- }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- exchange(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
- return __atomic_exchange_n(&_M_p, __p, __m);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m1,
- memory_order __m2) noexcept
-@@ -799,7 +799,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_compare_exchange_n(&_M_p, &__p1, __p2, 0, __m1, __m2);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m1,
- memory_order __m2) volatile noexcept
-@@ -811,22 +811,22 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return __atomic_compare_exchange_n(&_M_p, &__p1, __p2, 0, __m1, __m2);
- }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_add(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_add(&_M_p, __d, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_add(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_add(&_M_p, __d, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_sub(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) noexcept
- { return __atomic_fetch_sub(&_M_p, __d, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_sub(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return __atomic_fetch_sub(&_M_p, __d, __m); }
-@@ -870,67 +870,67 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- bool
- is_lock_free() const volatile noexcept { return _M_base.is_lock_free(); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(bool __i, memory_order __m = memory_order_seq_cst) noexcept
- { _M_base.store(__i, __m); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(bool __i, memory_order __m = memory_order_seq_cst) volatile noexcept
- { _M_base.store(__i, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- load(memory_order __m = memory_order_seq_cst) const noexcept
- { return _M_base.load(__m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- load(memory_order __m = memory_order_seq_cst) const volatile noexcept
- { return _M_base.load(__m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- exchange(bool __i, memory_order __m = memory_order_seq_cst) noexcept
- { return _M_base.exchange(__i, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- exchange(bool __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_base.exchange(__i, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(bool& __i1, bool __i2, memory_order __m1,
- memory_order __m2) noexcept
- { return _M_base.compare_exchange_weak(__i1, __i2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(bool& __i1, bool __i2, memory_order __m1,
- memory_order __m2) volatile noexcept
- { return _M_base.compare_exchange_weak(__i1, __i2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(bool& __i1, bool __i2,
- memory_order __m = memory_order_seq_cst) noexcept
- { return _M_base.compare_exchange_weak(__i1, __i2, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(bool& __i1, bool __i2,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_base.compare_exchange_weak(__i1, __i2, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(bool& __i1, bool __i2, memory_order __m1,
- memory_order __m2) noexcept
- { return _M_base.compare_exchange_strong(__i1, __i2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(bool& __i1, bool __i2, memory_order __m1,
- memory_order __m2) volatile noexcept
- { return _M_base.compare_exchange_strong(__i1, __i2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(bool& __i1, bool __i2,
- memory_order __m = memory_order_seq_cst) noexcept
- { return _M_base.compare_exchange_strong(__i1, __i2, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(bool& __i1, bool __i2,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_base.compare_exchange_strong(__i1, __i2, __m); }
-@@ -980,11 +980,11 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- store(_Tp __i, memory_order _m = memory_order_seq_cst) noexcept
- { __atomic_store(&_M_i, &__i, _m); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(_Tp __i, memory_order _m = memory_order_seq_cst) volatile noexcept
- { __atomic_store(&_M_i, &__i, _m); }
-
-- __always_inline _Tp
-+ __libitm_always_inline _Tp
- load(memory_order _m = memory_order_seq_cst) const noexcept
- {
- _Tp tmp;
-@@ -992,7 +992,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return tmp;
- }
-
-- __always_inline _Tp
-+ __libitm_always_inline _Tp
- load(memory_order _m = memory_order_seq_cst) const volatile noexcept
- {
- _Tp tmp;
-@@ -1000,7 +1000,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return tmp;
- }
-
-- __always_inline _Tp
-+ __libitm_always_inline _Tp
- exchange(_Tp __i, memory_order _m = memory_order_seq_cst) noexcept
- {
- _Tp tmp;
-@@ -1008,7 +1008,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return tmp;
- }
-
-- __always_inline _Tp
-+ __libitm_always_inline _Tp
- exchange(_Tp __i,
- memory_order _m = memory_order_seq_cst) volatile noexcept
- {
-@@ -1017,50 +1017,50 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- return tmp;
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(_Tp& __e, _Tp __i, memory_order __s,
- memory_order __f) noexcept
- {
- return __atomic_compare_exchange(&_M_i, &__e, &__i, true, __s, __f);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(_Tp& __e, _Tp __i, memory_order __s,
- memory_order __f) volatile noexcept
- {
- return __atomic_compare_exchange(&_M_i, &__e, &__i, true, __s, __f);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(_Tp& __e, _Tp __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return compare_exchange_weak(__e, __i, __m, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(_Tp& __e, _Tp __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return compare_exchange_weak(__e, __i, __m, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(_Tp& __e, _Tp __i, memory_order __s,
- memory_order __f) noexcept
- {
- return __atomic_compare_exchange(&_M_i, &__e, &__i, false, __s, __f);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(_Tp& __e, _Tp __i, memory_order __s,
- memory_order __f) volatile noexcept
- {
- return __atomic_compare_exchange(&_M_i, &__e, &__i, false, __s, __f);
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(_Tp& __e, _Tp __i,
- memory_order __m = memory_order_seq_cst) noexcept
- { return compare_exchange_strong(__e, __i, __m, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(_Tp& __e, _Tp __i,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return compare_exchange_strong(__e, __i, __m, __m); }
-@@ -1153,46 +1153,46 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- is_lock_free() const volatile noexcept
- { return _M_b.is_lock_free(); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) noexcept
- { return _M_b.store(__p, __m); }
-
-- __always_inline void
-+ __libitm_always_inline void
- store(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_b.store(__p, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- load(memory_order __m = memory_order_seq_cst) const noexcept
- { return _M_b.load(__m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- load(memory_order __m = memory_order_seq_cst) const volatile noexcept
- { return _M_b.load(__m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- exchange(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) noexcept
- { return _M_b.exchange(__p, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- exchange(__pointer_type __p,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_b.exchange(__p, __m); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m1, memory_order __m2) noexcept
- { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m1,
- memory_order __m2) volatile noexcept
- { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m = memory_order_seq_cst) noexcept
- {
-@@ -1200,7 +1200,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_weak(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
-@@ -1208,18 +1208,18 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m1, memory_order __m2) noexcept
- { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m1,
- memory_order __m2) volatile noexcept
- { return _M_b.compare_exchange_strong(__p1, __p2, __m1, __m2); }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m = memory_order_seq_cst) noexcept
- {
-@@ -1227,7 +1227,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline bool
-+ __libitm_always_inline bool
- compare_exchange_strong(__pointer_type& __p1, __pointer_type __p2,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- {
-@@ -1235,22 +1235,22 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- __calculate_memory_order(__m));
- }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_add(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) noexcept
- { return _M_b.fetch_add(__d, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_add(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_b.fetch_add(__d, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_sub(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) noexcept
- { return _M_b.fetch_sub(__d, __m); }
-
-- __always_inline __pointer_type
-+ __libitm_always_inline __pointer_type
- fetch_sub(ptrdiff_t __d,
- memory_order __m = memory_order_seq_cst) volatile noexcept
- { return _M_b.fetch_sub(__d, __m); }
-@@ -1544,98 +1544,98 @@ namespace std // _GLIBCXX_VISIBILITY(default)
-
-
- // Function definitions, atomic_flag operations.
-- inline __always_inline bool
-+ inline __libitm_always_inline bool
- atomic_flag_test_and_set_explicit(atomic_flag* __a,
- memory_order __m) noexcept
- { return __a->test_and_set(__m); }
-
-- inline __always_inline bool
-+ inline __libitm_always_inline bool
- atomic_flag_test_and_set_explicit(volatile atomic_flag* __a,
- memory_order __m) noexcept
- { return __a->test_and_set(__m); }
-
-- inline __always_inline void
-+ inline __libitm_always_inline void
- atomic_flag_clear_explicit(atomic_flag* __a, memory_order __m) noexcept
- { __a->clear(__m); }
-
-- inline __always_inline void
-+ inline __libitm_always_inline void
- atomic_flag_clear_explicit(volatile atomic_flag* __a,
- memory_order __m) noexcept
- { __a->clear(__m); }
-
-- inline __always_inline bool
-+ inline __libitm_always_inline bool
- atomic_flag_test_and_set(atomic_flag* __a) noexcept
- { return atomic_flag_test_and_set_explicit(__a, memory_order_seq_cst); }
-
-- inline __always_inline bool
-+ inline __libitm_always_inline bool
- atomic_flag_test_and_set(volatile atomic_flag* __a) noexcept
- { return atomic_flag_test_and_set_explicit(__a, memory_order_seq_cst); }
-
-- inline __always_inline void
-+ inline __libitm_always_inline void
- atomic_flag_clear(atomic_flag* __a) noexcept
- { atomic_flag_clear_explicit(__a, memory_order_seq_cst); }
-
-- inline __always_inline void
-+ inline __libitm_always_inline void
- atomic_flag_clear(volatile atomic_flag* __a) noexcept
- { atomic_flag_clear_explicit(__a, memory_order_seq_cst); }
-
-
- // Function templates generally applicable to atomic types.
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_is_lock_free(const atomic<_ITp>* __a) noexcept
- { return __a->is_lock_free(); }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_is_lock_free(const volatile atomic<_ITp>* __a) noexcept
- { return __a->is_lock_free(); }
-
- template<typename _ITp>
-- __always_inline void
-+ __libitm_always_inline void
- atomic_init(atomic<_ITp>* __a, _ITp __i) noexcept;
-
- template<typename _ITp>
-- __always_inline void
-+ __libitm_always_inline void
- atomic_init(volatile atomic<_ITp>* __a, _ITp __i) noexcept;
-
- template<typename _ITp>
-- __always_inline void
-+ __libitm_always_inline void
- atomic_store_explicit(atomic<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { __a->store(__i, __m); }
-
- template<typename _ITp>
-- __always_inline void
-+ __libitm_always_inline void
- atomic_store_explicit(volatile atomic<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { __a->store(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_load_explicit(const atomic<_ITp>* __a, memory_order __m) noexcept
- { return __a->load(__m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_load_explicit(const volatile atomic<_ITp>* __a,
- memory_order __m) noexcept
- { return __a->load(__m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_exchange_explicit(atomic<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->exchange(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_exchange_explicit(volatile atomic<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->exchange(__i, __m); }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_weak_explicit(atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2,
- memory_order __m1,
-@@ -1643,7 +1643,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- { return __a->compare_exchange_weak(*__i1, __i2, __m1, __m2); }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_weak_explicit(volatile atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2,
- memory_order __m1,
-@@ -1651,7 +1651,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- { return __a->compare_exchange_weak(*__i1, __i2, __m1, __m2); }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_strong_explicit(atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2,
- memory_order __m1,
-@@ -1659,7 +1659,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- { return __a->compare_exchange_strong(*__i1, __i2, __m1, __m2); }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_strong_explicit(volatile atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2,
- memory_order __m1,
-@@ -1668,37 +1668,37 @@ namespace std // _GLIBCXX_VISIBILITY(default)
-
-
- template<typename _ITp>
-- __always_inline void
-+ __libitm_always_inline void
- atomic_store(atomic<_ITp>* __a, _ITp __i) noexcept
- { atomic_store_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline void
-+ __libitm_always_inline void
- atomic_store(volatile atomic<_ITp>* __a, _ITp __i) noexcept
- { atomic_store_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_load(const atomic<_ITp>* __a) noexcept
- { return atomic_load_explicit(__a, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_load(const volatile atomic<_ITp>* __a) noexcept
- { return atomic_load_explicit(__a, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_exchange(atomic<_ITp>* __a, _ITp __i) noexcept
- { return atomic_exchange_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_exchange(volatile atomic<_ITp>* __a, _ITp __i) noexcept
- { return atomic_exchange_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_weak(atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2) noexcept
- {
-@@ -1708,7 +1708,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_weak(volatile atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2) noexcept
- {
-@@ -1718,7 +1718,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_strong(atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2) noexcept
- {
-@@ -1728,7 +1728,7 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- }
-
- template<typename _ITp>
-- __always_inline bool
-+ __libitm_always_inline bool
- atomic_compare_exchange_strong(volatile atomic<_ITp>* __a,
- _ITp* __i1, _ITp __i2) noexcept
- {
-@@ -1742,158 +1742,158 @@ namespace std // _GLIBCXX_VISIBILITY(default)
- // intergral types as specified in the standard, excluding address
- // types.
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_add_explicit(__atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_add(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_add_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_add(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_sub_explicit(__atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_sub(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_sub_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_sub(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_and_explicit(__atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_and(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_and_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_and(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_or_explicit(__atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_or(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_or_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_or(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_xor_explicit(__atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_xor(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_xor_explicit(volatile __atomic_base<_ITp>* __a, _ITp __i,
- memory_order __m) noexcept
- { return __a->fetch_xor(__i, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_add(__atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_add_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_add(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_add_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_sub(__atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_sub_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_sub(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_sub_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_and(__atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_and_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_and(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_and_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_or(__atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_or_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_or(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_or_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_xor(__atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_xor_explicit(__a, __i, memory_order_seq_cst); }
-
- template<typename _ITp>
-- __always_inline _ITp
-+ __libitm_always_inline _ITp
- atomic_fetch_xor(volatile __atomic_base<_ITp>* __a, _ITp __i) noexcept
- { return atomic_fetch_xor_explicit(__a, __i, memory_order_seq_cst); }
-
-
- // Partial specializations for pointers.
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_add_explicit(atomic<_ITp*>* __a, ptrdiff_t __d,
- memory_order __m) noexcept
- { return __a->fetch_add(__d, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_add_explicit(volatile atomic<_ITp*>* __a, ptrdiff_t __d,
- memory_order __m) noexcept
- { return __a->fetch_add(__d, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_add(volatile atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
- { return __a->fetch_add(__d); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_add(atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
- { return __a->fetch_add(__d); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_sub_explicit(volatile atomic<_ITp*>* __a,
- ptrdiff_t __d, memory_order __m) noexcept
- { return __a->fetch_sub(__d, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_sub_explicit(atomic<_ITp*>* __a, ptrdiff_t __d,
- memory_order __m) noexcept
- { return __a->fetch_sub(__d, __m); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_sub(volatile atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
- { return __a->fetch_sub(__d); }
-
- template<typename _ITp>
-- __always_inline _ITp*
-+ __libitm_always_inline _ITp*
- atomic_fetch_sub(atomic<_ITp*>* __a, ptrdiff_t __d) noexcept
- { return __a->fetch_sub(__d); }
- // @} group atomics
-
---
-glebfm
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/gcc.git/commitdiff/42ec3c2b5f72d6a796ec6121bd7b8ab11ffed729
More information about the pld-cvs-commit
mailing list