13.3.1-1
Resolves: RHEL-35627
This commit is contained in:
parent
be1d15bb6e
commit
2ec74d3b28
1
.gitignore
vendored
1
.gitignore
vendored
@ -1,2 +1,3 @@
|
|||||||
/gcc-13.1.1-20230614.tar.xz
|
/gcc-13.1.1-20230614.tar.xz
|
||||||
/gcc-13.2.1-20231205.tar.xz
|
/gcc-13.2.1-20231205.tar.xz
|
||||||
|
/gcc-13.3.1-20240522.tar.xz
|
||||||
|
84
gcc.spec
84
gcc.spec
@ -5,13 +5,13 @@ BuildRequires: scl-utils-build
|
|||||||
%{?scl:%global __strip %%{_scl_root}/usr/bin/strip}
|
%{?scl:%global __strip %%{_scl_root}/usr/bin/strip}
|
||||||
%{?scl:%global __objdump %%{_scl_root}/usr/bin/objdump}
|
%{?scl:%global __objdump %%{_scl_root}/usr/bin/objdump}
|
||||||
%{?scl:%scl_package gcc}
|
%{?scl:%scl_package gcc}
|
||||||
%global DATE 20231205
|
%global DATE 20240522
|
||||||
%global gitrev f783814ad6a04ae5ef44595216596a2b75eda15b
|
%global gitrev 5632a1dc05eae4936ac0d8d7e8a5cb717bce5960
|
||||||
%global gcc_version 13.2.1
|
%global gcc_version 13.3.1
|
||||||
%global gcc_major 13
|
%global gcc_major 13
|
||||||
# Note, gcc_release must be integer, if you want to add suffixes to
|
# Note, gcc_release must be integer, if you want to add suffixes to
|
||||||
# %%{release}, append them after %%{gcc_release} on Release: line.
|
# %%{release}, append them after %%{gcc_release} on Release: line.
|
||||||
%global gcc_release 6
|
%global gcc_release 1
|
||||||
%global nvptx_tools_gitrev aa3404ad5a496cda5d79a50bedb1344fd63e8763
|
%global nvptx_tools_gitrev aa3404ad5a496cda5d79a50bedb1344fd63e8763
|
||||||
%global newlib_cygwin_gitrev 9e09d6ed83cce4777a5950412647ccc603040409
|
%global newlib_cygwin_gitrev 9e09d6ed83cce4777a5950412647ccc603040409
|
||||||
%global mpc_version 1.0.3
|
%global mpc_version 1.0.3
|
||||||
@ -149,7 +149,7 @@ BuildRequires: scl-utils-build
|
|||||||
Summary: GCC version %{gcc_major}
|
Summary: GCC version %{gcc_major}
|
||||||
Name: %{?scl_prefix}gcc
|
Name: %{?scl_prefix}gcc
|
||||||
Version: %{gcc_version}
|
Version: %{gcc_version}
|
||||||
Release: %{gcc_release}.3%{?dist}
|
Release: %{gcc_release}%{?dist}
|
||||||
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
|
# libgcc, libgfortran, libgomp, libstdc++ and crtstuff have
|
||||||
# GCC Runtime Exception.
|
# GCC Runtime Exception.
|
||||||
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
|
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ with exceptions and LGPLv2+ and BSD
|
||||||
@ -329,7 +329,7 @@ Patch8: gcc13-no-add-needed.patch
|
|||||||
Patch9: gcc13-Wno-format-security.patch
|
Patch9: gcc13-Wno-format-security.patch
|
||||||
Patch10: gcc13-rh1574936.patch
|
Patch10: gcc13-rh1574936.patch
|
||||||
Patch11: gcc13-d-shared-libphobos.patch
|
Patch11: gcc13-d-shared-libphobos.patch
|
||||||
Patch12: gcc13-pr110792.patch
|
Patch12: gcc13-znver5.patch
|
||||||
|
|
||||||
Patch50: isl-rh2155127.patch
|
Patch50: isl-rh2155127.patch
|
||||||
|
|
||||||
@ -361,7 +361,6 @@ Patch3018: 0021-libstdc++-disable-tests.patch
|
|||||||
Patch3019: 0022-libstdc++-revert-behavior.patch
|
Patch3019: 0022-libstdc++-revert-behavior.patch
|
||||||
Patch3021: gcc13-testsuite-p10.patch
|
Patch3021: gcc13-testsuite-p10.patch
|
||||||
Patch3023: gcc13-testsuite-dwarf.patch
|
Patch3023: gcc13-testsuite-dwarf.patch
|
||||||
Patch3024: gcc13-testsuite-aarch64-add-fno-stack-protector.patch
|
|
||||||
|
|
||||||
%if 0%{?rhel} == 9
|
%if 0%{?rhel} == 9
|
||||||
%global nonsharedver 110
|
%global nonsharedver 110
|
||||||
@ -696,7 +695,7 @@ so that there cannot be any synchronization problems.
|
|||||||
%patch -P10 -p0 -b .rh1574936~
|
%patch -P10 -p0 -b .rh1574936~
|
||||||
%endif
|
%endif
|
||||||
%patch -P11 -p0 -b .d-shared-libphobos~
|
%patch -P11 -p0 -b .d-shared-libphobos~
|
||||||
%patch -P12 -p0 -b .pr110792~
|
%patch -P12 -p1 -b .znver5~
|
||||||
|
|
||||||
%if 0%{?rhel} >= 6
|
%if 0%{?rhel} >= 6
|
||||||
%patch -P100 -p1 -b .fortran-fdec-duplicates~
|
%patch -P100 -p1 -b .fortran-fdec-duplicates~
|
||||||
@ -744,7 +743,6 @@ rm -f libphobos/testsuite/libphobos.gc/forkgc2.d
|
|||||||
%endif
|
%endif
|
||||||
%patch -P3021 -p1 -b .dts-test-21~
|
%patch -P3021 -p1 -b .dts-test-21~
|
||||||
%patch -P3023 -p1 -b .dts-test-23~
|
%patch -P3023 -p1 -b .dts-test-23~
|
||||||
%patch -P3024 -p1 -b .dts-test-24~
|
|
||||||
|
|
||||||
find gcc/testsuite -name \*.pr96939~ | xargs rm -f
|
find gcc/testsuite -name \*.pr96939~ | xargs rm -f
|
||||||
|
|
||||||
@ -1182,7 +1180,8 @@ CC="`$ANNOBIN_FLAGS --build-cc`" CXX="`$ANNOBIN_FLAGS --build-cxx`" \
|
|||||||
CFLAGS="$ANNOBIN_CFLAGS1 $ANNOBIN_CFLAGS2 $ANNOBIN_LDFLAGS" \
|
CFLAGS="$ANNOBIN_CFLAGS1 $ANNOBIN_CFLAGS2 $ANNOBIN_LDFLAGS" \
|
||||||
CXXFLAGS="$ANNOBIN_CFLAGS1 `$ANNOBIN_FLAGS --build-includes` $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 \
|
./configure --with-gcc-plugin-dir=%{_prefix}/lib/gcc/%{gcc_target_platform}/%{gcc_major}/plugin \
|
||||||
--without-annocheck --without-tests --without-docs --disable-rpath --without-debuginfod
|
--without-annocheck --without-tests --without-docs --disable-rpath --without-debuginfod \
|
||||||
|
--without-clang-plugin --without-llvm-plugin
|
||||||
make
|
make
|
||||||
cd ../..
|
cd ../..
|
||||||
%endif
|
%endif
|
||||||
@ -2908,6 +2907,71 @@ fi
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu May 30 2024 Marek Polacek <polacek@redhat.com> 13.3.1-1
|
||||||
|
- update from releases/gcc-13 branch
|
||||||
|
- GCC 13.3 release
|
||||||
|
- PRs analyzer/104042, analyzer/108171, analyzer/109251, analyzer/109577,
|
||||||
|
analyzer/110014, analyzer/110112, analyzer/110700, analyzer/110882,
|
||||||
|
analyzer/111289, analyzer/112790, analyzer/112889, analyzer/112969,
|
||||||
|
analyzer/113253, analyzer/113333, analyzer/114408, analyzer/114473,
|
||||||
|
bootstrap/106472, bootstrap/114369, c/112571, c/114780, c++/89224,
|
||||||
|
c++/97990, c++/100667, c++/103825, c++/110006, c++/111284, c++/112769,
|
||||||
|
c++/113141, c++/113966, c++/114303, c++/114377, c++/114537,
|
||||||
|
c++/114561, c++/114562, c++/114572, c++/114580, c++/114634,
|
||||||
|
c++/114691, c++/114709, debug/112718, driver/111700, fortran/36337,
|
||||||
|
fortran/50410, fortran/55978, fortran/89462, fortran/93678,
|
||||||
|
fortran/95374, fortran/101135, fortran/102003, fortran/103707,
|
||||||
|
fortran/103715, fortran/103716, fortran/104352, fortran/106987,
|
||||||
|
fortran/106999, fortran/107426, fortran/110987, fortran/112407,
|
||||||
|
fortran/113799, fortran/113866, fortran/113885, fortran/113956,
|
||||||
|
fortran/114001, fortran/114474, fortran/114535, fortran/114739,
|
||||||
|
fortran/114825, fortran/115039, gcov-profile/114115,
|
||||||
|
gcov-profile/114715, ipa/92606, ipa/108007, ipa/111571, ipa/112616,
|
||||||
|
ipa/113359, ipa/113907, ipa/113964, jit/110466, libgcc/111731,
|
||||||
|
libquadmath/114533, libstdc++/66146, libstdc++/93672,
|
||||||
|
libstdc++/104606, libstdc++/107800, libstdc++/108976,
|
||||||
|
libstdc++/110050, libstdc++/110054, libstdc++/113841,
|
||||||
|
libstdc++/114147, libstdc++/114316, libstdc++/114359,
|
||||||
|
libstdc++/114367, libstdc++/114401, libstdc++/114750,
|
||||||
|
libstdc++/114803, libstdc++/114863, libstdc++/115063, lto/114655,
|
||||||
|
middle-end/110027, middle-end/111151, middle-end/111632,
|
||||||
|
middle-end/111683, middle-end/112684, middle-end/112732,
|
||||||
|
middle-end/113396, middle-end/113622, middle-end/114070,
|
||||||
|
middle-end/114348, middle-end/114552, middle-end/114599,
|
||||||
|
middle-end/114734, middle-end/114753, middle-end/114907,
|
||||||
|
rtl-optimization/54052, rtl-optimization/114415,
|
||||||
|
rtl-optimization/114768, rtl-optimization/114924, sanitizer/97696,
|
||||||
|
sanitizer/114687, sanitizer/114743, sanitizer/114956,
|
||||||
|
sanitizer/115172, target/88309, target/101865, target/105522,
|
||||||
|
target/110621, target/111234, target/111600, target/111610,
|
||||||
|
target/111822, target/112397, target/113095, target/113233,
|
||||||
|
target/113950, target/114049, target/114130, target/114160,
|
||||||
|
target/114172, target/114175, target/114272, target/114747,
|
||||||
|
target/114752, target/114794, target/114837, target/114848,
|
||||||
|
target/114981, testsuite/111066, testsuite/112297, testsuite/114034,
|
||||||
|
testsuite/114036, testsuite/114662, tree-optimization/91838,
|
||||||
|
tree-optimization/109925, tree-optimization/110838,
|
||||||
|
tree-optimization/111009, tree-optimization/111268,
|
||||||
|
tree-optimization/111407, tree-optimization/111736,
|
||||||
|
tree-optimization/111882, tree-optimization/112281,
|
||||||
|
tree-optimization/112303, tree-optimization/112793,
|
||||||
|
tree-optimization/112961, tree-optimization/112991,
|
||||||
|
tree-optimization/113552, tree-optimization/113630,
|
||||||
|
tree-optimization/113670, tree-optimization/113831,
|
||||||
|
tree-optimization/113910, tree-optimization/114027,
|
||||||
|
tree-optimization/114115, tree-optimization/114121,
|
||||||
|
tree-optimization/114203, tree-optimization/114231,
|
||||||
|
tree-optimization/114246, tree-optimization/114375,
|
||||||
|
tree-optimization/114396, tree-optimization/114485,
|
||||||
|
tree-optimization/114566, tree-optimization/114672,
|
||||||
|
tree-optimization/114733, tree-optimization/114736,
|
||||||
|
tree-optimization/114749, tree-optimization/114787,
|
||||||
|
tree-optimization/114799, tree-optimization/114876,
|
||||||
|
tree-optimization/114965, tree-optimization/115143,
|
||||||
|
tree-optimization/115152, tree-optimization/115154
|
||||||
|
- add --without-clang-plugin --without-llvm-plugin to annobin configure
|
||||||
|
options
|
||||||
|
|
||||||
* Tue Jan 9 2024 Marek Polacek <polacek@redhat.com> 13.2.1-6.3
|
* Tue Jan 9 2024 Marek Polacek <polacek@redhat.com> 13.2.1-6.3
|
||||||
- use the system dir in --with-libstdcxx-zoneinfo (RHEL-21093)
|
- use the system dir in --with-libstdcxx-zoneinfo (RHEL-21093)
|
||||||
|
|
||||||
|
@ -12759,8 +12759,8 @@
|
|||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<_LT_EOF
|
cat > conftest.$ac_ext <<_LT_EOF
|
||||||
-#line 12190 "configure"
|
-#line 12192 "configure"
|
||||||
+#line 12192 "configure"
|
+#line 12194 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
@ -12768,8 +12768,8 @@
|
|||||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||||
lt_status=$lt_dlunknown
|
lt_status=$lt_dlunknown
|
||||||
cat > conftest.$ac_ext <<_LT_EOF
|
cat > conftest.$ac_ext <<_LT_EOF
|
||||||
-#line 12296 "configure"
|
-#line 12298 "configure"
|
||||||
+#line 12298 "configure"
|
+#line 12300 "configure"
|
||||||
#include "confdefs.h"
|
#include "confdefs.h"
|
||||||
|
|
||||||
#if HAVE_DLFCN_H
|
#if HAVE_DLFCN_H
|
||||||
@ -12777,8 +12777,8 @@
|
|||||||
# Fake what AC_TRY_COMPILE does.
|
# Fake what AC_TRY_COMPILE does.
|
||||||
|
|
||||||
cat > conftest.$ac_ext << EOF
|
cat > conftest.$ac_ext << EOF
|
||||||
-#line 16020 "configure"
|
-#line 16036 "configure"
|
||||||
+#line 16022 "configure"
|
+#line 16038 "configure"
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
typedef bool atomic_type;
|
typedef bool atomic_type;
|
||||||
@ -12786,8 +12786,8 @@
|
|||||||
rm -f conftest*
|
rm -f conftest*
|
||||||
|
|
||||||
cat > conftest.$ac_ext << EOF
|
cat > conftest.$ac_ext << EOF
|
||||||
-#line 16055 "configure"
|
-#line 16071 "configure"
|
||||||
+#line 16057 "configure"
|
+#line 16073 "configure"
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
typedef short atomic_type;
|
typedef short atomic_type;
|
||||||
@ -12795,8 +12795,8 @@
|
|||||||
rm -f conftest*
|
rm -f conftest*
|
||||||
|
|
||||||
cat > conftest.$ac_ext << EOF
|
cat > conftest.$ac_ext << EOF
|
||||||
-#line 16090 "configure"
|
-#line 16106 "configure"
|
||||||
+#line 16092 "configure"
|
+#line 16108 "configure"
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
// NB: _Atomic_word not necessarily int.
|
// NB: _Atomic_word not necessarily int.
|
||||||
@ -12804,8 +12804,8 @@
|
|||||||
rm -f conftest*
|
rm -f conftest*
|
||||||
|
|
||||||
cat > conftest.$ac_ext << EOF
|
cat > conftest.$ac_ext << EOF
|
||||||
-#line 16126 "configure"
|
-#line 16142 "configure"
|
||||||
+#line 16128 "configure"
|
+#line 16144 "configure"
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
typedef long long atomic_type;
|
typedef long long atomic_type;
|
||||||
@ -12813,8 +12813,8 @@
|
|||||||
# unnecessary for this test.
|
# unnecessary for this test.
|
||||||
|
|
||||||
cat > conftest.$ac_ext << EOF
|
cat > conftest.$ac_ext << EOF
|
||||||
-#line 16282 "configure"
|
-#line 16298 "configure"
|
||||||
+#line 16284 "configure"
|
+#line 16300 "configure"
|
||||||
int main()
|
int main()
|
||||||
{
|
{
|
||||||
_Decimal32 d1;
|
_Decimal32 d1;
|
||||||
@ -12822,8 +12822,8 @@
|
|||||||
# unnecessary for this test.
|
# unnecessary for this test.
|
||||||
|
|
||||||
cat > conftest.$ac_ext << EOF
|
cat > conftest.$ac_ext << EOF
|
||||||
-#line 16324 "configure"
|
-#line 16340 "configure"
|
||||||
+#line 16326 "configure"
|
+#line 16342 "configure"
|
||||||
template<typename T1, typename T2>
|
template<typename T1, typename T2>
|
||||||
struct same
|
struct same
|
||||||
{ typedef T2 type; };
|
{ typedef T2 type; };
|
||||||
|
@ -4,7 +4,7 @@
|
|||||||
<a class="link" href="https://www.fsf.org" target="_top">FSF
|
<a class="link" href="https://www.fsf.org" target="_top">FSF
|
||||||
</a>
|
</a>
|
||||||
</p><p>
|
</p><p>
|
||||||
+ Release 13.2.1
|
+ Release 13.3.1
|
||||||
+ </p><p>
|
+ </p><p>
|
||||||
Permission is granted to copy, distribute and/or modify this
|
Permission is granted to copy, distribute and/or modify this
|
||||||
document under the terms of the GNU Free Documentation
|
document under the terms of the GNU Free Documentation
|
||||||
@ -17,7 +17,7 @@
|
|||||||
</p><p>
|
</p><p>
|
||||||
- The API documentation, rendered into HTML, can be viewed online
|
- The API documentation, rendered into HTML, can be viewed online
|
||||||
+ The API documentation, rendered into HTML, can be viewed locally
|
+ The API documentation, rendered into HTML, can be viewed locally
|
||||||
+ <a class="link" href="api/index.html" target="_top">for the 13.2.1 release</a>,
|
+ <a class="link" href="api/index.html" target="_top">for the 13.3.1 release</a>,
|
||||||
+ online
|
+ online
|
||||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/" target="_top">for each GCC release</a>
|
<a class="link" href="http://gcc.gnu.org/onlinedocs/" target="_top">for each GCC release</a>
|
||||||
and
|
and
|
||||||
|
@ -1,163 +0,0 @@
|
|||||||
PR target/110792: Early clobber issues with rot32di2_doubleword on i386.
|
|
||||||
|
|
||||||
This patch is a conservative fix for PR target/110792, a wrong-code
|
|
||||||
regression affecting doubleword rotations by BITS_PER_WORD, which
|
|
||||||
effectively swaps the highpart and lowpart words, when the source to be
|
|
||||||
rotated resides in memory. The issue is that if the register used to
|
|
||||||
hold the lowpart of the destination is mentioned in the address of
|
|
||||||
the memory operand, the current define_insn_and_split unintentionally
|
|
||||||
clobbers it before reading the highpart.
|
|
||||||
|
|
||||||
Hence, for the testcase, the incorrectly generated code looks like:
|
|
||||||
|
|
||||||
salq $4, %rdi // calculate address
|
|
||||||
movq WHIRL_S+8(%rdi), %rdi // accidentally clobber addr
|
|
||||||
movq WHIRL_S(%rdi), %rbp // load (wrong) lowpart
|
|
||||||
|
|
||||||
Traditionally, the textbook way to fix this would be to add an
|
|
||||||
explicit early clobber to the instruction's constraints.
|
|
||||||
|
|
||||||
(define_insn_and_split "<insn>32di2_doubleword"
|
|
||||||
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
|
|
||||||
+ [(set (match_operand:DI 0 "register_operand" "=r,r,&r")
|
|
||||||
(any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
|
|
||||||
(const_int 32)))]
|
|
||||||
|
|
||||||
but unfortunately this currently generates significantly worse code,
|
|
||||||
due to a strange choice of reloads (effectively memcpy), which ends up
|
|
||||||
looking like:
|
|
||||||
|
|
||||||
salq $4, %rdi // calculate address
|
|
||||||
movdqa WHIRL_S(%rdi), %xmm0 // load the double word in SSE reg.
|
|
||||||
movaps %xmm0, -16(%rsp) // store the SSE reg back to the stack
|
|
||||||
movq -8(%rsp), %rdi // load highpart
|
|
||||||
movq -16(%rsp), %rbp // load lowpart
|
|
||||||
|
|
||||||
Note that reload's "&" doesn't distinguish between the memory being
|
|
||||||
early clobbered, vs the registers used in an addressing mode being
|
|
||||||
early clobbered.
|
|
||||||
|
|
||||||
The fix proposed in this patch is to remove the third alternative, that
|
|
||||||
allowed offsetable memory as an operand, forcing reload to place the
|
|
||||||
operand into a register before the rotation. This results in:
|
|
||||||
|
|
||||||
salq $4, %rdi
|
|
||||||
movq WHIRL_S(%rdi), %rax
|
|
||||||
movq WHIRL_S+8(%rdi), %rdi
|
|
||||||
movq %rax, %rbp
|
|
||||||
|
|
||||||
I believe there's a more advanced solution, by swapping the order of
|
|
||||||
the loads (if first destination register is mentioned in the address),
|
|
||||||
or inserting a lea insn (if both destination registers are mentioned
|
|
||||||
in the address), but this fix is a minimal "safe" solution, that
|
|
||||||
should hopefully be suitable for backporting.
|
|
||||||
|
|
||||||
2023-08-06 Roger Sayle <roger@nextmovesoftware.com>
|
|
||||||
|
|
||||||
gcc/testsuite/ChangeLog
|
|
||||||
PR target/110792
|
|
||||||
* gcc.target/i386/pr110792.c: Remove dg-final scan-assembler-not.
|
|
||||||
|
|
||||||
2023-08-03 Roger Sayle <roger@nextmovesoftware.com>
|
|
||||||
|
|
||||||
gcc/ChangeLog
|
|
||||||
PR target/110792
|
|
||||||
* config/i386/i386.md (<any_rotate>ti3): For rotations by 64 bits
|
|
||||||
place operand in a register before gen_<insn>64ti2_doubleword.
|
|
||||||
(<any_rotate>di3): Likewise, for rotations by 32 bits, place
|
|
||||||
operand in a register before gen_<insn>32di2_doubleword.
|
|
||||||
(<any_rotate>32di2_doubleword): Constrain operand to be in register.
|
|
||||||
(<any_rotate>64ti2_doubleword): Likewise.
|
|
||||||
|
|
||||||
gcc/testsuite/ChangeLog
|
|
||||||
PR target/110792
|
|
||||||
* g++.target/i386/pr110792.C: New 32-bit C++ test case.
|
|
||||||
* gcc.target/i386/pr110792.c: New 64-bit C test case.
|
|
||||||
|
|
||||||
--- gcc/config/i386/i386.md
|
|
||||||
+++ gcc/config/i386/i386.md
|
|
||||||
@@ -15341,7 +15341,10 @@ (define_expand "<insn>ti3"
|
|
||||||
emit_insn (gen_ix86_<insn>ti3_doubleword
|
|
||||||
(operands[0], operands[1], operands[2]));
|
|
||||||
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 64)
|
|
||||||
- emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
|
|
||||||
+ {
|
|
||||||
+ operands[1] = force_reg (TImode, operands[1]);
|
|
||||||
+ emit_insn (gen_<insn>64ti2_doubleword (operands[0], operands[1]));
|
|
||||||
+ }
|
|
||||||
else
|
|
||||||
{
|
|
||||||
rtx amount = force_reg (QImode, operands[2]);
|
|
||||||
@@ -15376,7 +15379,10 @@ (define_expand "<insn>di3"
|
|
||||||
emit_insn (gen_ix86_<insn>di3_doubleword
|
|
||||||
(operands[0], operands[1], operands[2]));
|
|
||||||
else if (CONST_INT_P (operands[2]) && INTVAL (operands[2]) == 32)
|
|
||||||
- emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
|
|
||||||
+ {
|
|
||||||
+ operands[1] = force_reg (DImode, operands[1]);
|
|
||||||
+ emit_insn (gen_<insn>32di2_doubleword (operands[0], operands[1]));
|
|
||||||
+ }
|
|
||||||
else
|
|
||||||
FAIL;
|
|
||||||
|
|
||||||
@@ -15544,8 +15550,8 @@ (define_insn_and_split "ix86_rotr<dwi>3_doubleword"
|
|
||||||
})
|
|
||||||
|
|
||||||
(define_insn_and_split "<insn>32di2_doubleword"
|
|
||||||
- [(set (match_operand:DI 0 "register_operand" "=r,r,r")
|
|
||||||
- (any_rotate:DI (match_operand:DI 1 "nonimmediate_operand" "0,r,o")
|
|
||||||
+ [(set (match_operand:DI 0 "register_operand" "=r,r")
|
|
||||||
+ (any_rotate:DI (match_operand:DI 1 "register_operand" "0,r")
|
|
||||||
(const_int 32)))]
|
|
||||||
"!TARGET_64BIT"
|
|
||||||
"#"
|
|
||||||
@@ -15562,8 +15568,8 @@ (define_insn_and_split "<insn>32di2_doubleword"
|
|
||||||
})
|
|
||||||
|
|
||||||
(define_insn_and_split "<insn>64ti2_doubleword"
|
|
||||||
- [(set (match_operand:TI 0 "register_operand" "=r,r,r")
|
|
||||||
- (any_rotate:TI (match_operand:TI 1 "nonimmediate_operand" "0,r,o")
|
|
||||||
+ [(set (match_operand:TI 0 "register_operand" "=r,r")
|
|
||||||
+ (any_rotate:TI (match_operand:TI 1 "register_operand" "0,r")
|
|
||||||
(const_int 64)))]
|
|
||||||
"TARGET_64BIT"
|
|
||||||
"#"
|
|
||||||
--- gcc/testsuite/g++.target/i386/pr110792.C
|
|
||||||
+++ gcc/testsuite/g++.target/i386/pr110792.C
|
|
||||||
@@ -0,0 +1,16 @@
|
|
||||||
+/* { dg-do compile { target ia32 } } */
|
|
||||||
+/* { dg-options "-O2" } */
|
|
||||||
+
|
|
||||||
+template <int ROT, typename T>
|
|
||||||
+inline T rotr(T input)
|
|
||||||
+{
|
|
||||||
+ return static_cast<T>((input >> ROT) | (input << (8 * sizeof(T) - ROT)));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+unsigned long long WHIRL_S[256] = {0x18186018C07830D8};
|
|
||||||
+unsigned long long whirl(unsigned char x0)
|
|
||||||
+{
|
|
||||||
+ const unsigned long long s4 = WHIRL_S[x0&0xFF];
|
|
||||||
+ return rotr<32>(s4);
|
|
||||||
+}
|
|
||||||
+/* { dg-final { scan-assembler-not "movl\tWHIRL_S\\+4\\(,%eax,8\\), %eax" } } */
|
|
||||||
--- gcc/testsuite/gcc.target/i386/pr110792.c
|
|
||||||
+++ gcc/testsuite/gcc.target/i386/pr110792.c
|
|
||||||
@@ -0,0 +1,17 @@
|
|
||||||
+/* { dg-do compile { target int128 } } */
|
|
||||||
+/* { dg-options "-O2" } */
|
|
||||||
+
|
|
||||||
+static inline unsigned __int128 rotr(unsigned __int128 input)
|
|
||||||
+{
|
|
||||||
+ return ((input >> 64) | (input << (64)));
|
|
||||||
+}
|
|
||||||
+
|
|
||||||
+unsigned __int128 WHIRL_S[256] = {((__int128)0x18186018C07830D8) << 64 |0x18186018C07830D8};
|
|
||||||
+unsigned __int128 whirl(unsigned char x0)
|
|
||||||
+{
|
|
||||||
+ register int t __asm("rdi") = x0&0xFF;
|
|
||||||
+ const unsigned __int128 s4 = WHIRL_S[t];
|
|
||||||
+ register unsigned __int128 tt __asm("rdi") = rotr(s4);
|
|
||||||
+ asm("":::"memory");
|
|
||||||
+ return tt;
|
|
||||||
+}
|
|
@ -1,500 +0,0 @@
|
|||||||
From 3439b79cb7f97464d65316a94d40d49505fb2150 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Marek Polacek <polacek@redhat.com>
|
|
||||||
Date: Wed, 6 Dec 2023 15:34:24 -0500
|
|
||||||
Subject: [PATCH] aarch64: add -fno-stack-protector to tests
|
|
||||||
|
|
||||||
These tests fail when the testsuite is executed with -fstack-protector-strong.
|
|
||||||
To avoid this, this patch adds -fno-stack-protector to dg-options.
|
|
||||||
|
|
||||||
The list of FAILs is appended. As you can see, it's mostly about
|
|
||||||
scan-assembler-* which are sort of expected to fail with the stack
|
|
||||||
protector on.
|
|
||||||
|
|
||||||
FAIL: gcc.target/aarch64/ldp_stp_unaligned_2.c scan-assembler-not mov\\tx[0-9]+, sp
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_5.c scan-assembler-times stp\\\\tx29, x30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_5.c scan-assembler ldr\\\\tx29, \\\\[sp\\\\]
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_6.c scan-assembler-times str\\\\tx30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_7.c scan-assembler-times stp\\\\tx19, x30, \\\\[sp, -[0-9]+\\\\]! 1
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_7.c scan-assembler ldr\\\\tx19, \\\\[sp\\\\], [0-9]+
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_8.c scan-assembler-times stp\\\\tx19, x20, \\\\[sp, -[0-9]+\\\\]! 1
|
|
||||||
FAIL: gcc.target/aarch64/shadow_call_stack_8.c scan-assembler ldp\\\\tx19, x20, \\\\[sp\\\\], [0-9]+
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-12.c scan-assembler-times str\\\\txzr, 2
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-11.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-12.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-13.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-13.c scan-assembler-times str\\\\s+x30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-14.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-14.c scan-assembler-times str\\\\s+x30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-15.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-15.c scan-assembler-times str\\\\s+x30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-17.c check-function-bodies test1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-17.c check-function-bodies test2
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-18.c check-function-bodies test1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-18.c check-function-bodies test2
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-18.c check-function-bodies test3
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-19.c check-function-bodies test1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-19.c check-function-bodies test2
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-19.c check-function-bodies test3
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-2.c scan-assembler-times str\\\\s+xzr, 0
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-5.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-6.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-8.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 2
|
|
||||||
FAIL: gcc.target/aarch64/stack-check-prologue-9.c scan-assembler-times str\\\\s+xzr, \\\\[sp, 1024\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_1.c scan-assembler-times str\\tx30, \\\\[sp, -[0-9]+\\\\]! 2
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_10.c scan-assembler-times stp\\tx19, x30, \\\\[sp, [0-9]+\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_10.c scan-assembler ldp\\tx19, x30, \\\\[sp, [0-9]+\\\\]
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_11.c scan-assembler-times stp\\tx29, x30, \\\\[sp, -[0-9]+\\\\]! 2
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_13.c scan-assembler-times stp\\tx29, x30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_15.c scan-assembler-times stp\\tx29, x30, \\\\[sp, [0-9]+\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_2.c scan-assembler-times stp\\tx19, x30, \\\\[sp, -[0-9]+\\\\]! 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_2.c scan-assembler ldp\\tx19, x30, \\\\[sp\\\\], [0-9]+
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_4.c scan-assembler-times stp\\tx19, x30, \\\\[sp, -[0-9]+\\\\]! 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_4.c scan-assembler ldp\\tx19, x30, \\\\[sp\\\\], [0-9]+
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_6.c scan-assembler-times str\\tx30, \\\\[sp\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_7.c scan-assembler-times stp\\tx19, x30, \\\\[sp] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_8.c scan-assembler-times str\\tx30, \\\\[sp, [0-9]+\\\\] 1
|
|
||||||
FAIL: gcc.target/aarch64/test_frame_8.c scan-assembler ldr\\tx30, \\\\[sp, [0-9]+\\\\]
|
|
||||||
FAIL: gcc.target/aarch64/sve/struct_vect_24.c scan-assembler-times cmp\\\\s+x[0-9]+, 61440 4
|
|
||||||
FAIL: gcc.target/aarch64/sve/struct_vect_24.c scan-assembler-times sub\\\\s+x[0-9]+, x[0-9]+, 61440 4
|
|
||||||
FAIL: gcc.target/aarch64/sve/struct_vect_24.c scan-assembler-times cmp\\s+x[0-9]+, 61440 4
|
|
||||||
FAIL: gcc.target/aarch64/sve/struct_vect_24.c scan-assembler-times sub\\s+x[0-9]+, x[0-9]+, 61440 4
|
|
||||||
|
|
||||||
gcc/testsuite/ChangeLog:
|
|
||||||
|
|
||||||
* gcc.target/aarch64/ldp_stp_unaligned_2.c: Use -fno-stack-protector.
|
|
||||||
* gcc.target/aarch64/shadow_call_stack_5.c: Likewise.
|
|
||||||
* gcc.target/aarch64/shadow_call_stack_6.c: Likewise.
|
|
||||||
* gcc.target/aarch64/shadow_call_stack_7.c: Likewise.
|
|
||||||
* gcc.target/aarch64/shadow_call_stack_8.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-12.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-11.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-12.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-13.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-14.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-15.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-17.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-18.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-19.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-2.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-5.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-6.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-8.c: Likewise.
|
|
||||||
* gcc.target/aarch64/stack-check-prologue-9.c: Likewise.
|
|
||||||
* gcc.target/aarch64/sve/struct_vect_24.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_1.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_10.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_11.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_13.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_15.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_2.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_4.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_6.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_7.c: Likewise.
|
|
||||||
* gcc.target/aarch64/test_frame_8.c: Likewise.
|
|
||||||
---
|
|
||||||
gcc/testsuite/gcc.target/aarch64/ldp_stp_unaligned_2.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/shadow_call_stack_5.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/shadow_call_stack_6.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/shadow_call_stack_7.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/shadow_call_stack_8.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-12.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-11.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-12.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-13.c | 4 ++--
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-14.c | 4 ++--
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-15.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-2.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-5.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-6.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-8.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/stack-check-prologue-9.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/sve/struct_vect_24.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_1.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_10.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_11.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_13.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_15.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_2.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_4.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_6.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_7.c | 2 +-
|
|
||||||
gcc/testsuite/gcc.target/aarch64/test_frame_8.c | 2 +-
|
|
||||||
30 files changed, 32 insertions(+), 32 deletions(-)
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/ldp_stp_unaligned_2.c b/gcc/testsuite/gcc.target/aarch64/ldp_stp_unaligned_2.c
|
|
||||||
index 1e46755a39a..50d7d7a2d5d 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/ldp_stp_unaligned_2.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/ldp_stp_unaligned_2.c
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer -fno-stack-protector" } */
|
|
||||||
|
|
||||||
/* Check that we split unaligned LDP/STP into base and aligned offset. */
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_5.c b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_5.c
|
|
||||||
index d88357ca04d..d7f82984ff5 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_5.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_5.c
|
|
||||||
@@ -7,7 +7,7 @@
|
|
||||||
* optimized code should use "ldr x29, [sp]" to restore x29 only. */
|
|
||||||
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fno-omit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fno-omit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_6.c b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_6.c
|
|
||||||
index 83b74834c6a..8d088aecc20 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_6.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_6.c
|
|
||||||
@@ -7,7 +7,7 @@
|
|
||||||
* optimized code should not restore x30 in epilogue. */
|
|
||||||
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_7.c b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_7.c
|
|
||||||
index 5537fb3293a..a2f376e0091 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_7.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_7.c
|
|
||||||
@@ -7,7 +7,7 @@
|
|
||||||
* optimized code should use "ldr x19, [sp], x" to restore x19 only. */
|
|
||||||
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_8.c b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_8.c
|
|
||||||
index b03f26f7bcf..5162cbb3917 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_8.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/shadow_call_stack_8.c
|
|
||||||
@@ -9,7 +9,7 @@
|
|
||||||
* optimized code should not restore x30 in epilogue. */
|
|
||||||
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O0 -fomit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps" } */
|
|
||||||
+/* { dg-options "-O0 -fomit-frame-pointer -fsanitize=shadow-call-stack -fno-exceptions -ffixed-x18 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
int func1 (void)
|
|
||||||
{
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-12.c b/gcc/testsuite/gcc.target/aarch64/stack-check-12.c
|
|
||||||
index be5a57a9ec6..e1a4c67b041 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-12.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-12.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-asynchronous-unwind-tables -fno-unwind-tables" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-asynchronous-unwind-tables -fno-unwind-tables -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
typedef unsigned __attribute__((mode(DI))) uint64_t;
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-11.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-11.c
|
|
||||||
index 741f2f5fadc..d57aece05bb 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-11.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-11.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
#define SIZE (6 * 64 * 1024) + (1 * 32 * 1024)
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-12.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-12.c
|
|
||||||
index ece68003ade..895d130e4fa 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-12.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-12.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
void
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-13.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-13.c
|
|
||||||
index 0fc900c6943..1f1a6c497be 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-13.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-13.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
void h (void) __attribute__ ((noreturn));
|
|
||||||
@@ -17,4 +17,4 @@ f (void)
|
|
||||||
|
|
||||||
/* SIZE is more than 1 guard-size, but only one 64KB page is used, expect only 1
|
|
||||||
probe. Leaf function and omitting leaf pointers, tail call to noreturn which
|
|
||||||
- may only omit an epilogue and not a prologue. Checking for LR saving. */
|
|
||||||
\ No newline at end of file
|
|
||||||
+ may only omit an epilogue and not a prologue. Checking for LR saving. */
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-14.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-14.c
|
|
||||||
index ea733f861e7..facb3cb72a7 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-14.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-14.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
void h (void) __attribute__ ((noreturn));
|
|
||||||
@@ -21,4 +21,4 @@ f (void)
|
|
||||||
probe at 1024 and one implicit probe due to LR being saved. Leaf function
|
|
||||||
and omitting leaf pointers, tail call to noreturn which may only omit an
|
|
||||||
epilogue and not a prologue and control flow in between. Checking for
|
|
||||||
- LR saving. */
|
|
||||||
\ No newline at end of file
|
|
||||||
+ LR saving. */
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-15.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-15.c
|
|
||||||
index 63df4a5609a..f2ac60a6214 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-15.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-15.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fomit-frame-pointer -momit-leaf-frame-pointer -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
void g (volatile int *x) ;
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
|
|
||||||
index f0ec1389771..1cf6fbbb085 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-17.c
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12 -fno-stack-protector" } */
|
|
||||||
/* { dg-final { check-function-bodies "**" "" } } */
|
|
||||||
|
|
||||||
void f(int, ...);
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
|
|
||||||
index 6383bec5ebc..2e06346c158 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-18.c
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12 -fno-stack-protector" } */
|
|
||||||
/* { dg-final { check-function-bodies "**" "" } } */
|
|
||||||
|
|
||||||
void f(int, ...);
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
|
|
||||||
index 562039b5e9b..38eab4d36ab 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-19.c
|
|
||||||
@@ -1,4 +1,4 @@
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12 -fsanitize=shadow-call-stack -ffixed-x18" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection -fomit-frame-pointer --param stack-clash-protection-guard-size=12 -fsanitize=shadow-call-stack -ffixed-x18 -fno-stack-protector" } */
|
|
||||||
/* { dg-final { check-function-bodies "**" "" } } */
|
|
||||||
|
|
||||||
void f(int, ...);
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-2.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-2.c
|
|
||||||
index 61c52a251a7..b37f62cad27 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-2.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-2.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
#define SIZE 2 * 1024
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-5.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-5.c
|
|
||||||
index 2ee16350127..34a438671d0 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-5.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-5.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
#define SIZE 64 * 1024
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-6.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-6.c
|
|
||||||
index 3c9b606cbe0..a4e34e2fe6a 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-6.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-6.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
#define SIZE 65 * 1024
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-8.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-8.c
|
|
||||||
index 333f5fcc360..277dce4c71e 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-8.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-8.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
#define SIZE 128 * 1024
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-9.c b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-9.c
|
|
||||||
index a3ff89b5581..a21305541c1 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-9.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/stack-check-prologue-9.c
|
|
||||||
@@ -1,5 +1,5 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
-/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O2 -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
|
|
||||||
#define SIZE 6 * 64 * 1024
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_24.c b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_24.c
|
|
||||||
index 68a9d5e3d2e..19be6de0c2e 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_24.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/sve/struct_vect_24.c
|
|
||||||
@@ -1,6 +1,6 @@
|
|
||||||
/* { dg-do compile } */
|
|
||||||
/* { dg-require-effective-target supports_stack_clash_protection } */
|
|
||||||
-/* { dg-options "-O3 -fopenmp-simd -fstack-clash-protection --param stack-clash-protection-guard-size=16" } */
|
|
||||||
+/* { dg-options "-O3 -fopenmp-simd -fstack-clash-protection --param stack-clash-protection-guard-size=16 -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include <stdint.h>
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_1.c b/gcc/testsuite/gcc.target/aarch64/test_frame_1.c
|
|
||||||
index f906b073545..c9b8822b4b1 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_1.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_1.c
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
* optimized code should use "str !" for stack adjustment. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_10.c b/gcc/testsuite/gcc.target/aarch64/test_frame_10.c
|
|
||||||
index c54ab2d0ccb..fe5cbd9ed05 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_10.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_10.c
|
|
||||||
@@ -7,7 +7,7 @@
|
|
||||||
* Use a single stack adjustment, no writeback. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_11.c b/gcc/testsuite/gcc.target/aarch64/test_frame_11.c
|
|
||||||
index f162cc091e0..11cf471168d 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_11.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_11.c
|
|
||||||
@@ -5,7 +5,7 @@
|
|
||||||
* optimized code should use "stp !" for stack adjustment. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_13.c b/gcc/testsuite/gcc.target/aarch64/test_frame_13.c
|
|
||||||
index 74b3370fa46..ec56963c038 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_13.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_13.c
|
|
||||||
@@ -5,7 +5,7 @@
|
|
||||||
* Use a single stack adjustment, no writeback. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_15.c b/gcc/testsuite/gcc.target/aarch64/test_frame_15.c
|
|
||||||
index bed6714b4fe..4247008de8e 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_15.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_15.c
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
* Use a single stack adjustment, no writeback. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_2.c b/gcc/testsuite/gcc.target/aarch64/test_frame_2.c
|
|
||||||
index 0d715314cb8..9c4243b6480 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_2.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_2.c
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
* optimized code should use "stp !" for stack adjustment. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_4.c b/gcc/testsuite/gcc.target/aarch64/test_frame_4.c
|
|
||||||
index b41229c42f4..8d0bed93e44 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_4.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_4.c
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
* we can use "stp !" to optimize stack adjustment. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_6.c b/gcc/testsuite/gcc.target/aarch64/test_frame_6.c
|
|
||||||
index 56259c945d2..2944a8bbe16 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_6.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_6.c
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
* use a single stack adjustment, no writeback. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_7.c b/gcc/testsuite/gcc.target/aarch64/test_frame_7.c
|
|
||||||
index 5702656a5da..ca371632d81 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_7.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_7.c
|
|
||||||
@@ -6,7 +6,7 @@
|
|
||||||
* use a single stack adjustment, no writeback. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
diff --git a/gcc/testsuite/gcc.target/aarch64/test_frame_8.c b/gcc/testsuite/gcc.target/aarch64/test_frame_8.c
|
|
||||||
index 75a68b41e08..084e8fac373 100644
|
|
||||||
--- a/gcc/testsuite/gcc.target/aarch64/test_frame_8.c
|
|
||||||
+++ b/gcc/testsuite/gcc.target/aarch64/test_frame_8.c
|
|
||||||
@@ -5,7 +5,7 @@
|
|
||||||
* number of callee-saved reg == 1. */
|
|
||||||
|
|
||||||
/* { dg-do run } */
|
|
||||||
-/* { dg-options "-O2 -fomit-frame-pointer --save-temps" } */
|
|
||||||
+/* { dg-options "-O2 -fomit-frame-pointer --save-temps -fno-stack-protector" } */
|
|
||||||
|
|
||||||
#include "test_frame_common.h"
|
|
||||||
|
|
||||||
|
|
||||||
base-commit: 1bd15d87031e8bf8fe9585fbc166b315303f676c
|
|
||||||
--
|
|
||||||
2.43.0
|
|
||||||
|
|
2246
gcc13-znver5.patch
Normal file
2246
gcc13-znver5.patch
Normal file
File diff suppressed because it is too large
Load Diff
2
sources
2
sources
@ -1,4 +1,4 @@
|
|||||||
SHA512 (gcc-13.2.1-20231205.tar.xz) = f132a2d35d6ea0b0d82043870f1c9f60dda119e63df6833b16d20e2c93e2978f62698d4cc72a6e2eefbaeded0683107de9ebeb93923b96c57dcd612504aa6a1b
|
SHA512 (gcc-13.3.1-20240522.tar.xz) = a0d7a71101af71309a5b3677cff7e0b193d06d1eac0ca642573dda24614dc8f101342d576727a1a3ea3bf0adf6b53a1a472516b1a4164391a32af735bcce9923
|
||||||
SHA512 (isl-0.24.tar.bz2) = aab3bddbda96b801d0f56d2869f943157aad52a6f6e6a61745edd740234c635c38231af20bc3f1a08d416a5e973a90e18249078ed8e4ae2f1d5de57658738e95
|
SHA512 (isl-0.24.tar.bz2) = aab3bddbda96b801d0f56d2869f943157aad52a6f6e6a61745edd740234c635c38231af20bc3f1a08d416a5e973a90e18249078ed8e4ae2f1d5de57658738e95
|
||||||
SHA512 (newlib-cygwin-9e09d6ed83cce4777a5950412647ccc603040409.tar.xz) = bef3fa04f7b1a915fc1356ebed114698b5cc835e9fa04b0becff05a9efc76c59fb376482990873d222d7acdcfee3c4f30f5a4cb7f3be1f291f1fa5f1c7a9d983
|
SHA512 (newlib-cygwin-9e09d6ed83cce4777a5950412647ccc603040409.tar.xz) = bef3fa04f7b1a915fc1356ebed114698b5cc835e9fa04b0becff05a9efc76c59fb376482990873d222d7acdcfee3c4f30f5a4cb7f3be1f291f1fa5f1c7a9d983
|
||||||
SHA512 (nvptx-tools-aa3404ad5a496cda5d79a50bedb1344fd63e8763.tar.xz) = 33a024326426375533cb5dd9b68b2508f37540be418d2506bfa19a5f5866485e9af150469064e9059b68136ad8cb080b3b12e7eb5c6b7d1288cf6bfb3f6bb5d0
|
SHA512 (nvptx-tools-aa3404ad5a496cda5d79a50bedb1344fd63e8763.tar.xz) = 33a024326426375533cb5dd9b68b2508f37540be418d2506bfa19a5f5866485e9af150469064e9059b68136ad8cb080b3b12e7eb5c6b7d1288cf6bfb3f6bb5d0
|
||||||
|
Loading…
Reference in New Issue
Block a user