gcc-12.0.1-0.15
This commit is contained in:
parent
fbdc8be2d5
commit
665f9ff9cb
1
.gitignore
vendored
1
.gitignore
vendored
@ -68,3 +68,4 @@
|
||||
/gcc-12.0.1-20220306.tar.xz
|
||||
/gcc-12.0.1-20220308.tar.xz
|
||||
/gcc-12.0.1-20220401.tar.xz
|
||||
/gcc-12.0.1-20220411.tar.xz
|
||||
|
98
gcc.spec
98
gcc.spec
@ -1,5 +1,5 @@
|
||||
%global DATE 20220401
|
||||
%global gitrev 3b1a8bc028a968b01bbdb5f9cc5cd30402efae92
|
||||
%global DATE 20220411
|
||||
%global gitrev c520f3606c4d0f971a172e17c55b06aec363a417
|
||||
%global gcc_version 12.0.1
|
||||
%global gcc_major 12
|
||||
# Note, gcc_release must be integer, if you want to add suffixes to
|
||||
@ -117,10 +117,15 @@
|
||||
%ifarch x86_64
|
||||
%global multilib_32_arch i686
|
||||
%endif
|
||||
%if 0%{?fedora} >= 36
|
||||
%global build_annobin_plugin 1
|
||||
%else
|
||||
%global build_annobin_plugin 0
|
||||
%endif
|
||||
Summary: Various compilers (C, C++, Objective-C, ...)
|
||||
Name: gcc
|
||||
Version: %{gcc_version}
|
||||
Release: %{gcc_release}.14%{?dist}
|
||||
Release: %{gcc_release}.15%{?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
|
||||
@ -270,7 +275,7 @@ Patch8: gcc12-no-add-needed.patch
|
||||
Patch9: gcc12-Wno-format-security.patch
|
||||
Patch10: gcc12-rh1574936.patch
|
||||
Patch11: gcc12-d-shared-libphobos.patch
|
||||
Patch12: gcc12-aarch64-tune.patch
|
||||
Patch12: gcc12-pr105214.patch
|
||||
|
||||
Patch100: gcc12-fortran-fdec-duplicates.patch
|
||||
Patch101: gcc12-fortran-flogical-as-integer.patch
|
||||
@ -773,6 +778,18 @@ NVidia PTX. OpenMP and OpenACC programs linked with -fopenmp will
|
||||
by default add PTX code into the binaries, which can be offloaded
|
||||
to NVidia PTX capable devices if available.
|
||||
|
||||
%package plugin-annobin
|
||||
Summary: The annobin plugin for gcc, built by the installed version of gcc
|
||||
Requires: gcc = %{version}-%{release}
|
||||
%if %{build_annobin_plugin}
|
||||
BuildRequires: annobin >= 10.62, annobin-plugin-gcc, rpm-devel, binutils-devel, xz
|
||||
%endif
|
||||
|
||||
%description plugin-annobin
|
||||
This package adds a version of the annobin plugin for gcc. This version
|
||||
of the plugin is explicitly built by the same version of gcc that is installed
|
||||
so that there cannot be any synchronization problems.
|
||||
|
||||
%prep
|
||||
%setup -q -n gcc-%{version}-%{DATE} -a 1 -a 2 -a 3
|
||||
%patch0 -p0 -b .hack~
|
||||
@ -792,7 +809,7 @@ to NVidia PTX capable devices if available.
|
||||
%patch10 -p0 -b .rh1574936~
|
||||
%endif
|
||||
%patch11 -p0 -b .d-shared-libphobos~
|
||||
%patch12 -p0 -b .aarch64-tune~
|
||||
%patch12 -p0 -b .pr105214~
|
||||
|
||||
%if 0%{?rhel} >= 9
|
||||
%patch100 -p1 -b .fortran-fdec-duplicates~
|
||||
@ -1208,6 +1225,26 @@ done)
|
||||
rm -f rpm.doc/changelogs/gcc/ChangeLog.[1-9]
|
||||
find rpm.doc -name \*ChangeLog\* | xargs bzip2 -9
|
||||
|
||||
%if %{build_annobin_plugin}
|
||||
mkdir annobin-plugin
|
||||
cd annobin-plugin
|
||||
tar xf %{_usrsrc}/annobin/latest-annobin.tar.xz
|
||||
cd annobin*
|
||||
touch aclocal.m4 configure Makefile.in */configure */config.h.in */Makefile.in
|
||||
ANNOBIN_FLAGS=../../obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/scripts/testsuite_flags
|
||||
ANNOBIN_CFLAGS1="%build_cflags -I %{_builddir}/gcc-%{version}-%{DATE}/gcc"
|
||||
ANNOBIN_CFLAGS1="$ANNOBIN_CFLAGS1 -I %{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/gcc"
|
||||
ANNOBIN_CFLAGS2="-I %{_builddir}/gcc-%{version}-%{DATE}/include -I %{_builddir}/gcc-%{version}-%{DATE}/libcpp/include"
|
||||
ANNOBIN_LDFLAGS="%build_ldflags -L%{_builddir}/gcc-%{version}-%{DATE}/obj-%{gcc_target_platform}/%{gcc_target_platform}/libstdc++-v3/src/.libs"
|
||||
CC="`$ANNOBIN_FLAGS --build-cc`" CXX="`$ANNOBIN_FLAGS --build-cxx`" \
|
||||
CFLAGS="$ANNOBIN_CFLAGS1 $ANNOBIN_CFLAGS2 $ANNOBIN_LDFLAGS" \
|
||||
CXXFLAGS="$ANNOBIN_CFLAGS1 `$ANNOBIN_FLAGS --build-includes` $ANNOBIN_CFLAGS2 $ANNOBIN_LDFLAGS" \
|
||||
./configure --with-gcc-plugin-dir=%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin \
|
||||
--without-annocheck --without-tests --without-docs --disable-rpath --without-debuginfod
|
||||
make
|
||||
cd ../..
|
||||
%endif
|
||||
|
||||
%install
|
||||
rm -rf %{buildroot}
|
||||
mkdir -p %{buildroot}
|
||||
@ -2010,6 +2047,15 @@ echo gcc-%{version}-%{release}.%{_arch} > $FULLPATH/rpmver
|
||||
ln -s ../../libexec/gcc/%{gcc_target_platform}/%{gcc_major}/liblto_plugin.so \
|
||||
%{buildroot}%{_libdir}/bfd-plugins/
|
||||
|
||||
%if %{build_annobin_plugin}
|
||||
mkdir -p $FULLPATH/plugin
|
||||
rm -f $FULLPATH/plugin/gcc-annobin*
|
||||
cp -a %{_builddir}/gcc-%{version}-%{DATE}/annobin-plugin/annobin*/gcc-plugin/.libs/annobin.so.0.0.0 \
|
||||
$FULLPATH/plugin/gcc-annobin.so.0.0.0
|
||||
ln -sf gcc-annobin.so.0.0.0 $FULLPATH/plugin/gcc-annobin.so.0
|
||||
ln -sf gcc-annobin.so.0.0.0 $FULLPATH/plugin/gcc-annobin.so
|
||||
%endif
|
||||
|
||||
%check
|
||||
cd obj-%{gcc_target_platform}
|
||||
|
||||
@ -2020,6 +2066,7 @@ LC_ALL=C make %{?_smp_mflags} -k check ALT_CC_UNDER_TEST=gcc ALT_CXX_UNDER_TEST=
|
||||
%else
|
||||
RUNTESTFLAGS="--target_board=unix/'{,-fstack-protector}'" || :
|
||||
%endif
|
||||
%if !%{build_annobin_plugin}
|
||||
if [ -f %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so ]; then
|
||||
# Test whether current annobin plugin won't fail miserably with the newly built gcc.
|
||||
echo -e '#include <stdio.h>\nint main () { printf ("Hello, world!\\n"); return 0; }' > annobin-test.c
|
||||
@ -2050,9 +2097,12 @@ if [ -f %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/annobin.so
|
||||
cat ANNOBINOUT ANNOBINRES[12] >> ANNOBINRES
|
||||
rm -f ANNOBINOUT* ANNOBINRES[12] annobin-test{c,C}
|
||||
fi
|
||||
%endif
|
||||
echo ====================TESTING=========================
|
||||
( LC_ALL=C ../contrib/test_summary || : ) 2>&1 | sed -n '/^cat.*EOF/,/^EOF/{/^cat.*EOF/d;/^EOF/d;/^LAST_UPDATED:/d;p;}'
|
||||
%if !%{build_annobin_plugin}
|
||||
[ -f ANNOBINRES ] && cat ANNOBINRES
|
||||
%endif
|
||||
echo ====================TESTING END=====================
|
||||
mkdir testlogs-%{_target_platform}-%{version}-%{release}
|
||||
for i in `find . -name \*.log | grep -F testsuite/ | grep -v 'config.log\|acats.*/tests/'`; do
|
||||
@ -3165,7 +3215,45 @@ end
|
||||
%{_prefix}/%{_lib}/libgomp-plugin-nvptx.so.*
|
||||
%endif
|
||||
|
||||
%if %{build_annobin_plugin}
|
||||
%files plugin-annobin
|
||||
%dir %{_prefix}/lib/gcc
|
||||
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}
|
||||
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}
|
||||
%dir %{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin
|
||||
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gcc-annobin.so
|
||||
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gcc-annobin.so.0
|
||||
%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin/gcc-annobin.so.0.0.0
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Apr 11 2022 Jakub Jelinek <jakub@redhat.com> 12.0.1-0.15
|
||||
- update from trunk
|
||||
- PRs analyzer/102208, analyzer/103892, c++/91618, c++/92385, c++/96604,
|
||||
c++/96645, c++/99479, c++/100370, c++/100608, c++/101051, c++/101677,
|
||||
c++/101717, c++/101894, c++/103328, c++/103852, c++/104668,
|
||||
c++/104702, c++/105110, c++/105143, c++/105186, c++/105187,
|
||||
c++/105191, c/105149, c/105151, d/104740, driver/105096,
|
||||
fortran/104210, fortran/105138, fortran/105184, ipa/103376,
|
||||
ipa/104303, ipa/105166, jit/102824, libstdc++/105031,
|
||||
libstdc++/105128, libstdc++/105146, libstdc++/105153,
|
||||
libstdc++/105154, middle-end/105140, middle-end/105165,
|
||||
rtl-optimization/104985, target/101908, target/102024, target/103147,
|
||||
target/104049, target/104253, target/104409, target/104853,
|
||||
target/104897, target/104987, target/105002, target/105069,
|
||||
target/105123, target/105139, target/105144, target/105147,
|
||||
target/105157, target/105197, testsuite/103196, testsuite/105095,
|
||||
testsuite/105122, testsuite/105196, tree-optimization/102586,
|
||||
tree-optimization/103761, tree-optimization/104639,
|
||||
tree-optimization/104645, tree-optimization/105132,
|
||||
tree-optimization/105142, tree-optimization/105148,
|
||||
tree-optimization/105150, tree-optimization/105163,
|
||||
tree-optimization/105173, tree-optimization/105175,
|
||||
tree-optimization/105185, tree-optimization/105189,
|
||||
tree-optimization/105198, tree-optimization/105218
|
||||
- build annobin gcc plugin as part of gcc build into gcc-plugin-annobin
|
||||
subpackage
|
||||
|
||||
* Sun Apr 3 2022 Jakub Jelinek <jakub@redhat.com> 12.0.1-0.14
|
||||
- update from trunk
|
||||
- revert delayed parse DMI change (PR c++/96645)
|
||||
|
@ -1,13 +0,0 @@
|
||||
2022-04-03 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* config/aarch64/aarch64-tune.md: Regenerate.
|
||||
|
||||
--- gcc/config/aarch64/aarch64-tune.md 2022-04-01 14:57:41.745622238 +0200
|
||||
+++ gcc/config/aarch64/aarch64-tune.md 2022-04-03 12:55:41.667331201 +0200
|
||||
@@ -1,5 +1,5 @@
|
||||
;; -*- buffer-read-only: t -*-
|
||||
;; Generated automatically by gentune.sh from aarch64-cores.def
|
||||
(define_attr "tune"
|
||||
- "cortexa34,cortexa35,cortexa53,cortexa57,cortexa72,cortexa73,thunderx,thunderxt88p1,thunderxt88,octeontx,octeontxt81,octeontxt83,thunderxt81,thunderxt83,ampere1,emag,xgene1,falkor,qdf24xx,exynosm1,phecda,thunderx2t99p1,vulcan,thunderx2t99,cortexa55,cortexa75,cortexa76,cortexa76ae,cortexa77,cortexa78,cortexa78ae,cortexa78c,cortexa65,cortexa65ae,cortexx1,ares,neoversen1,neoversee1,octeontx2,octeontx2t98,octeontx2t96,octeontx2t93,octeontx2f95,octeontx2f95n,octeontx2f95mm,a64fx,tsv110,thunderx3t110,zeus,neoversev1,neoverse512tvb,saphira,neoversen2,cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35,cortexa73cortexa53,cortexa75cortexa55,cortexa76cortexa55,cortexr82,cortexa510,cortexa710,cortexx2,demeter"
|
||||
+ "cortexa34,cortexa35,cortexa53,cortexa57,cortexa72,cortexa73,thunderx,thunderxt88p1,thunderxt88,octeontx,octeontxt81,octeontxt83,thunderxt81,thunderxt83,ampere1,emag,xgene1,falkor,qdf24xx,exynosm1,phecda,thunderx2t99p1,vulcan,thunderx2t99,cortexa55,cortexa75,cortexa76,cortexa76ae,cortexa77,cortexa78,cortexa78ae,cortexa78c,cortexa65,cortexa65ae,cortexx1,ares,neoversen1,neoversee1,octeontx2,octeontx2t98,octeontx2t96,octeontx2t93,octeontx2f95,octeontx2f95n,octeontx2f95mm,a64fx,tsv110,thunderx3t110,zeus,neoversev1,neoverse512tvb,saphira,cortexa57cortexa53,cortexa72cortexa53,cortexa73cortexa35,cortexa73cortexa53,cortexa75cortexa55,cortexa76cortexa55,cortexr82,cortexa510,cortexa710,cortexx2,neoversen2,demeter"
|
||||
(const (symbol_ref "((enum attr_tune) aarch64_tune)")))
|
38
gcc12-pr105214.patch
Normal file
38
gcc12-pr105214.patch
Normal file
@ -0,0 +1,38 @@
|
||||
2022-04-11 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR target/105214
|
||||
* config/i386/i386-expand.cc (ix86_emit_i387_log1p): Call
|
||||
do_pending_stack_adjust.
|
||||
|
||||
* gcc.dg/asan/pr105214.c: New test.
|
||||
|
||||
--- gcc/config/i386/i386-expand.cc.jj 2022-04-03 21:50:36.001635947 +0200
|
||||
+++ gcc/config/i386/i386-expand.cc 2022-04-11 15:17:43.943430658 +0200
|
||||
@@ -17291,6 +17291,8 @@ void ix86_emit_i387_log1p (rtx op0, rtx
|
||||
rtx cst, cstln2, cst1;
|
||||
rtx_insn *insn;
|
||||
|
||||
+ do_pending_stack_adjust ();
|
||||
+
|
||||
cst = const_double_from_real_value
|
||||
(REAL_VALUE_ATOF ("0.29289321881345247561810596348408353", XFmode), XFmode);
|
||||
cstln2 = force_reg (XFmode, standard_80387_constant_rtx (4)); /* fldln2 */
|
||||
--- gcc/testsuite/gcc.dg/asan/pr105214.c.jj 2022-04-11 15:21:05.467608711 +0200
|
||||
+++ gcc/testsuite/gcc.dg/asan/pr105214.c 2022-04-11 15:22:10.559697224 +0200
|
||||
@@ -0,0 +1,16 @@
|
||||
+/* PR target/105214 */
|
||||
+/* { dg-do compile } */
|
||||
+/* { dg-skip-if "" { *-*-* } { "*" } { "-O2" } } */
|
||||
+/* { dg-options "-Ofast -fnon-call-exceptions -fexceptions -fstack-check=generic -fsanitize=address -fno-finite-math-only -fsignaling-nans -fno-associative-math" } */
|
||||
+
|
||||
+float f;
|
||||
+void bar (int *);
|
||||
+
|
||||
+void
|
||||
+foo (void)
|
||||
+{
|
||||
+ int a[1600], b[1];
|
||||
+ f += __builtin_log1pf (f);
|
||||
+ bar (a);
|
||||
+ bar (b);
|
||||
+}
|
2
sources
2
sources
@ -1,4 +1,4 @@
|
||||
SHA512 (gcc-12.0.1-20220401.tar.xz) = c32fe72884442d91dbade694515bc7d54cf2194cd3928e9d7168e7b5db0e244b30d8addde26633f936b2a0e17b30d94cdec594d6b834ae4b003f3210fb641f50
|
||||
SHA512 (gcc-12.0.1-20220411.tar.xz) = c611c45dfa5c9c367203f6273e24c4ba03bb56a8dc8954e7b26b9fc0de60a2aefe2a2d12098daad827d2c0ad71ba1092b0d7f808eb9e8cf929ad22154176fda0
|
||||
SHA512 (isl-0.18.tar.bz2) = 85d0b40f4dbf14cb99d17aa07048cdcab2dc3eb527d2fbb1e84c41b2de5f351025370e57448b63b2b8a8cf8a0843a089c3263f9baee1542d5c2e1cb37ed39d94
|
||||
SHA512 (newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz) = 002a48a7b689a81abbf16161bcaec001a842e67dfbe372e9e109092703bfc666675f16198f60ca429370e8850d564547dc505df81bc3aaca4ce6defbc014ad6c
|
||||
SHA512 (nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz) = f6d10db94fa1570ae0f94df073fa3c73c8e5ee16d59070b53d94f7db0de8a031bc44d7f3f1852533da04b625ce758e022263855ed43cfc6867e0708d001e53c7
|
||||
|
Loading…
Reference in New Issue
Block a user