Compare commits
3 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7a9035cbb4 | ||
|
|
c791a1ad80 | ||
|
|
7afb8ded69 |
104 changed files with 176 additions and 3299 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
|
@ -80,3 +80,4 @@
|
|||
/newlib-cygwin-a8526cb52bedabd4d6ba4b227a5185627f871aa1.tar.xz
|
||||
/nvptx-tools-472b6e78b3ba918d727698f79911360b7c808247.tar.xz
|
||||
/gcc-12.2.1-20221121.tar.xz
|
||||
/gcc-12.3.1-20230508.tar.xz
|
||||
|
|
|
|||
105
gcc.spec
105
gcc.spec
|
|
@ -1,10 +1,10 @@
|
|||
%global DATE 20221121
|
||||
%global gitrev b3f5a0d53b84ed27cf00cfa2b9c3e2c78935c07d
|
||||
%global gcc_version 12.2.1
|
||||
%global DATE 20230508
|
||||
%global gitrev ee1368149014a803a1835e029794a922f6c132f6
|
||||
%global gcc_version 12.3.1
|
||||
%global gcc_major 12
|
||||
# Note, gcc_release must be integer, if you want to add suffixes to
|
||||
# %%{release}, append them after %%{gcc_release} on Release: line.
|
||||
%global gcc_release 4
|
||||
%global gcc_release 1
|
||||
%global nvptx_tools_gitrev 472b6e78b3ba918d727698f79911360b7c808247
|
||||
%global newlib_cygwin_gitrev a8526cb52bedabd4d6ba4b227a5185627f871aa1
|
||||
%global _unpackaged_files_terminate_build 0
|
||||
|
|
@ -275,7 +275,6 @@ Patch8: gcc12-no-add-needed.patch
|
|||
Patch9: gcc12-Wno-format-security.patch
|
||||
Patch10: gcc12-rh1574936.patch
|
||||
Patch11: gcc12-d-shared-libphobos.patch
|
||||
Patch12: gcc12-pr107468.patch
|
||||
|
||||
Patch100: gcc12-fortran-fdec-duplicates.patch
|
||||
Patch101: gcc12-fortran-flogical-as-integer.patch
|
||||
|
|
@ -803,7 +802,6 @@ so that there cannot be any synchronization problems.
|
|||
%patch10 -p0 -b .rh1574936~
|
||||
%endif
|
||||
%patch11 -p0 -b .d-shared-libphobos~
|
||||
%patch12 -p0 -b .pr107468~
|
||||
|
||||
%if 0%{?rhel} >= 9
|
||||
%patch100 -p1 -b .fortran-fdec-duplicates~
|
||||
|
|
@ -3215,6 +3213,101 @@ end
|
|||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon May 8 2023 Jakub Jelinek <jakub@redhat.com> 12.3.1-1
|
||||
- update from releases/gcc-12 branch
|
||||
- GCC 12.3 release
|
||||
- PRs analyzer/105784, analyzer/106325, analyzer/106573, analyzer/107345,
|
||||
eanalyzer/107582, analyzer/107948, analyzer/108704, analyzer/108733,
|
||||
analyzer/108968, analyzer/109094, bootstrap/90543, bootstrap/106482,
|
||||
c++/53932, c++/69410, c++/98056, c++/100295, c++/101118, c++/101869,
|
||||
c++/103081, c++/103871, c++/105406, c++/105481, c++/105593,
|
||||
c++/105809, c++/105996, c++/106188, c++/106259, c++/106675,
|
||||
c++/106713, c++/106890, c++/106969, c++/107065, c++/107079,
|
||||
c++/107154, c++/107163, c++/107179, c++/107280, c++/107310,
|
||||
c++/107417, c++/107461, c++/107542, c++/107558, c++/107574,
|
||||
c++/107579, c++/107593, c++/107755, c++/107768, c++/107853,
|
||||
c++/107864, c++/107938, c++/107939, c++/108099, c++/108104,
|
||||
c++/108116, c++/108180, c++/108206, c++/108218, c++/108219,
|
||||
c++/108242, c++/108282, c++/108286, c++/108365, c++/108468,
|
||||
c++/108474, c++/108550, c++/108566, c++/108597, c++/108607,
|
||||
c++/108795, c++/108829, c++/108934, c++/108975, c++/108998,
|
||||
c++/109039, c++/109096, c++/109164, c++/109319, c++/109357, c/98487,
|
||||
c/105972, c/107127, c/107465, c/108079, c/108880, c/108986, c/109151,
|
||||
d/104749, d/105659, d/107592, d/108050, d/108055, d/108877, d/109108,
|
||||
d/109144, debug/106719, debug/108573, debug/108716, debug/108967,
|
||||
driver/106624, fortran/61615, fortran/85877, fortran/87127,
|
||||
fortran/95107, fortran/96024, fortran/96025, fortran/99036,
|
||||
fortran/99982, fortran/102331, fortran/103259, fortran/103506,
|
||||
fortran/104332, fortran/104554, fortran/106209, fortran/106731,
|
||||
fortran/106856, fortran/106945, fortran/107576, fortran/107872,
|
||||
fortran/108010, fortran/108025, fortran/108131, fortran/108349,
|
||||
fortran/108420, fortran/108421, fortran/108434, fortran/108450,
|
||||
fortran/108451, fortran/108453, fortran/108501, fortran/108502,
|
||||
fortran/108527, fortran/108529, fortran/108558, fortran/108609,
|
||||
fortran/108923, fortran/108937, fortran/109186, fortran/109511,
|
||||
ipa/105676, ipa/105685, ipa/106124, ipa/107769, ipa/107925,
|
||||
ipa/107944, ipa/109318, libfortran/108056, libquadmath/87204,
|
||||
libquadmath/94756, libstdc++/91456, libstdc++/100366,
|
||||
libstdc++/103387, libstdc++/103755, libstdc++/103934,
|
||||
libstdc++/105730, libstdc++/106183, libstdc++/106199,
|
||||
libstdc++/106201, libstdc++/107466, libstdc++/107801,
|
||||
libstdc++/107814, libstdc++/107850, libstdc++/107852,
|
||||
libstdc++/108030, libstdc++/108097, libstdc++/108118,
|
||||
libstdc++/108265, libstdc++/108362, libstdc++/108413,
|
||||
libstdc++/108554, libstdc++/108636, libstdc++/108952,
|
||||
libstdc++/109064, libstdc++/109165, libstdc++/109182,
|
||||
libstdc++/109242, libstdc++/109299, libstdc++/109339,
|
||||
libstdc++/109703, lto/109263, middle-end/102633, middle-end/106057,
|
||||
middle-end/106080, middle-end/106190, middle-end/107317,
|
||||
middle-end/107994, middle-end/108237, middle-end/108264,
|
||||
middle-end/108435, middle-end/108459, middle-end/108500,
|
||||
middle-end/108543, middle-end/108546, middle-end/108625,
|
||||
middle-end/108685, middle-end/108854, other/108560, other/109293,
|
||||
other/109306, rtl-optimization/106421, rtl-optimization/106751,
|
||||
rtl-optimization/107482, rtl-optimization/108086,
|
||||
rtl-optimization/108193, rtl-optimization/108508,
|
||||
rtl-optimization/108596, rtl-optimization/108681,
|
||||
rtl-optimization/109585, sanitizer/108060, sanitizer/108834,
|
||||
sanitizer/109050, target/90458, target/96373, target/98776,
|
||||
target/100758, target/104921, target/105554, target/105980,
|
||||
target/106101, target/106736, target/106875, target/107714,
|
||||
target/107863, target/107987, target/108140, target/108272,
|
||||
target/108348, target/108396, target/108429, target/108589,
|
||||
target/108599, target/108699, target/108807, target/108812,
|
||||
target/108881, target/108910, target/109000, target/109067,
|
||||
target/109072, target/109137, target/109140, target/109178,
|
||||
target/109276, target/109478, target/109566, testsuite/108151,
|
||||
testsuite/108973, testsuite/108985, testsuite/109560,
|
||||
tree-optimization/96373, tree-optimization/105532,
|
||||
tree-optimization/106523, tree-optimization/106868,
|
||||
tree-optimization/106904, tree-optimization/107407,
|
||||
tree-optimization/107451, tree-optimization/107554,
|
||||
tree-optimization/107647, tree-optimization/107686,
|
||||
tree-optimization/107766, tree-optimization/107833,
|
||||
tree-optimization/107839, tree-optimization/107865,
|
||||
tree-optimization/107898, tree-optimization/107956,
|
||||
tree-optimization/107997, tree-optimization/108068,
|
||||
tree-optimization/108076, tree-optimization/108095,
|
||||
tree-optimization/108137, tree-optimization/108164,
|
||||
tree-optimization/108166, tree-optimization/108199,
|
||||
tree-optimization/108306, tree-optimization/108430,
|
||||
tree-optimization/108440, tree-optimization/108498,
|
||||
tree-optimization/108522, tree-optimization/108571,
|
||||
tree-optimization/108582, tree-optimization/108603,
|
||||
tree-optimization/108608, tree-optimization/108684,
|
||||
tree-optimization/108688, tree-optimization/108692,
|
||||
tree-optimization/108724, tree-optimization/108791,
|
||||
tree-optimization/108793, tree-optimization/108816,
|
||||
tree-optimization/108819, tree-optimization/108821,
|
||||
tree-optimization/108950, tree-optimization/108979,
|
||||
tree-optimization/109176, tree-optimization/109219,
|
||||
tree-optimization/109392, tree-optimization/109410,
|
||||
tree-optimization/109427, tree-optimization/109434,
|
||||
tree-optimization/109469, tree-optimization/109473,
|
||||
tree-optimization/109491, tree-optimization/109502,
|
||||
tree-optimization/109573, tree-optimization/109609,
|
||||
tree-optimization/109724
|
||||
|
||||
* Mon Nov 21 2022 Jakub Jelinek <jakub@redhat.com> 12.2.1-4
|
||||
- update from releases/gcc-12 branch
|
||||
- PRs c++/104066, c++/105774, c++/106829, c++/107358, c/41041, c/106981,
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@
|
|||
<a class="link" href="https://www.fsf.org" target="_top">FSF
|
||||
</a>
|
||||
</p><p>
|
||||
+ Release 12.2.1
|
||||
+ Release 12.3.1
|
||||
+ </p><p>
|
||||
Permission is granted to copy, distribute and/or modify this
|
||||
document under the terms of the GNU Free Documentation
|
||||
|
|
@ -17,7 +17,7 @@
|
|||
</p><p>
|
||||
- The API documentation, rendered into HTML, can be viewed online
|
||||
+ The API documentation, rendered into HTML, can be viewed locally
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 12.2.1 release</a>,
|
||||
+ <a class="link" href="api/index.html" target="_top">for the 12.3.1 release</a>,
|
||||
+ online
|
||||
<a class="link" href="http://gcc.gnu.org/onlinedocs/" target="_top">for each GCC release</a>
|
||||
and
|
||||
|
|
|
|||
|
|
@ -1,124 +0,0 @@
|
|||
libstdc++: Update from latest fast_float [PR107468]
|
||||
|
||||
The following patch is a cherry-pick from
|
||||
https://github.com/fastfloat/fast_float/pull/153
|
||||
to restrict fast_float Clinger's fast path to when rounding mode
|
||||
is FE_TONEAREST.
|
||||
Using std::fegetround showed in benchmarks too slow, so instead
|
||||
it uses a check with 2 float additions and comparison to verify
|
||||
if rounding is FE_TONEAREST.
|
||||
|
||||
2022-11-20 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
PR libstdc++/107468
|
||||
* src/c++17/fast_float/fast_float.h (detail::rounds_to_nearest): New
|
||||
function, taken from https://github.com/fastfloat/fast_float/pull/153.
|
||||
(from_chars_advanced): Only use Clinger's fast path if
|
||||
detail::rounds_to_nearest().
|
||||
* testsuite/20_util/from_chars/pr107468.cc: New test.
|
||||
|
||||
--- libstdc++-v3/src/c++17/fast_float/fast_float.h.jj 2022-04-28 15:56:18.315632888 +0200
|
||||
+++ libstdc++-v3/src/c++17/fast_float/fast_float.h 2022-11-20 18:53:49.570830249 +0100
|
||||
@@ -2842,6 +2842,48 @@ from_chars_result parse_infnan(const cha
|
||||
return answer;
|
||||
}
|
||||
|
||||
+/**
|
||||
+ * Returns true if the floating-pointing rounding mode is to 'nearest'.
|
||||
+ * It is the default on most system. This function is meant to be inexpensive.
|
||||
+ * Credit : @mwalcott3
|
||||
+ */
|
||||
+fastfloat_really_inline bool rounds_to_nearest() noexcept {
|
||||
+ // See
|
||||
+ // A fast function to check your floating-point rounding mode
|
||||
+ // https://lemire.me/blog/2022/11/16/a-fast-function-to-check-your-floating-point-rounding-mode/
|
||||
+ //
|
||||
+ // This function is meant to be equivalent to :
|
||||
+ // prior: #include <cfenv>
|
||||
+ // return fegetround() == FE_TONEAREST;
|
||||
+ // However, it is expected to be much faster than the fegetround()
|
||||
+ // function call.
|
||||
+ //
|
||||
+ // The volatile keywoard prevents the compiler from computing the function
|
||||
+ // at compile-time.
|
||||
+ // There might be other ways to prevent compile-time optimizations (e.g., asm).
|
||||
+ // The value does not need to be std::numeric_limits<float>::min(), any small
|
||||
+ // value so that 1 + x should round to 1 would do (after accounting for excess
|
||||
+ // precision, as in 387 instructions).
|
||||
+ static volatile float fmin = std::numeric_limits<float>::min();
|
||||
+ float fmini = fmin; // we copy it so that it gets loaded at most once.
|
||||
+ //
|
||||
+ // Explanation:
|
||||
+ // Only when fegetround() == FE_TONEAREST do we have that
|
||||
+ // fmin + 1.0f == 1.0f - fmin.
|
||||
+ //
|
||||
+ // FE_UPWARD:
|
||||
+ // fmin + 1.0f > 1
|
||||
+ // 1.0f - fmin == 1
|
||||
+ //
|
||||
+ // FE_DOWNWARD or FE_TOWARDZERO:
|
||||
+ // fmin + 1.0f == 1
|
||||
+ // 1.0f - fmin < 1
|
||||
+ //
|
||||
+ // Note: This may fail to be accurate if fast-math has been
|
||||
+ // enabled, as rounding conventions may not apply.
|
||||
+ return (fmini + 1.0f == 1.0f - fmini);
|
||||
+}
|
||||
+
|
||||
} // namespace detail
|
||||
|
||||
template<typename T>
|
||||
@@ -2870,7 +2912,7 @@ from_chars_result from_chars_advanced(co
|
||||
answer.ec = std::errc(); // be optimistic
|
||||
answer.ptr = pns.lastmatch;
|
||||
// Next is Clinger's fast path.
|
||||
- if (binary_format<T>::min_exponent_fast_path() <= pns.exponent && pns.exponent <= binary_format<T>::max_exponent_fast_path() && pns.mantissa <=binary_format<T>::max_mantissa_fast_path() && !pns.too_many_digits) {
|
||||
+ if (binary_format<T>::min_exponent_fast_path() <= pns.exponent && pns.exponent <= binary_format<T>::max_exponent_fast_path() && pns.mantissa <=binary_format<T>::max_mantissa_fast_path() && !pns.too_many_digits && detail::rounds_to_nearest()) {
|
||||
value = T(pns.mantissa);
|
||||
if (pns.exponent < 0) { value = value / binary_format<T>::exact_power_of_ten(-pns.exponent); }
|
||||
else { value = value * binary_format<T>::exact_power_of_ten(pns.exponent); }
|
||||
--- libstdc++-v3/testsuite/20_util/from_chars/pr107468.cc.jj
|
||||
+++ libstdc++-v3/testsuite/20_util/from_chars/pr107468.cc
|
||||
@@ -0,0 +1,42 @@
|
||||
+// Copyright (C) 2022 Free Software Foundation, Inc.
|
||||
+//
|
||||
+// This file is part of the GNU ISO C++ Library. This library is free
|
||||
+// software; you can redistribute it and/or modify it under the
|
||||
+// terms of the GNU General Public License as published by the
|
||||
+// Free Software Foundation; either version 3, or (at your option)
|
||||
+// any later version.
|
||||
+
|
||||
+// This library is distributed in the hope that it will be useful,
|
||||
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
+// GNU General Public License for more details.
|
||||
+
|
||||
+// You should have received a copy of the GNU General Public License along
|
||||
+// with this library; see the file COPYING3. If not see
|
||||
+// <http://www.gnu.org/licenses/>.
|
||||
+
|
||||
+// { dg-do run { target c++17 } }
|
||||
+// { dg-add-options ieee }
|
||||
+
|
||||
+#include <charconv>
|
||||
+#include <string>
|
||||
+#include <cfenv>
|
||||
+#include <testsuite_hooks.h>
|
||||
+
|
||||
+int
|
||||
+main()
|
||||
+{
|
||||
+ // FP from_char not available otherwise.
|
||||
+#if __cpp_lib_to_chars >= 201611L \
|
||||
+ && _GLIBCXX_USE_C99_FENV_TR1 \
|
||||
+ && defined(FE_DOWNWARD) \
|
||||
+ && defined(_GLIBCXX_FLOAT_IS_IEEE_BINARY32)
|
||||
+ // PR libstdc++/107468
|
||||
+ float f;
|
||||
+ char buf[] = "3.355447e+07";
|
||||
+ std::fesetround(FE_DOWNWARD);
|
||||
+ auto [ptr, ec] = std::from_chars(buf, buf + sizeof(buf) - 1, f, std::chars_format::scientific);
|
||||
+ VERIFY( ec == std::errc() && ptr == buf + sizeof(buf) - 1 );
|
||||
+ VERIFY( f == 33554472.0f );
|
||||
+#endif
|
||||
+}
|
||||
|
|
@ -1,6 +1,13 @@
|
|||
summary: CI Gating Plan
|
||||
discover:
|
||||
how: fmf
|
||||
directory: tests
|
||||
url: https://src.fedoraproject.org/tests/gcc.git
|
||||
filter: 'tag: Fedora-CI-gating'
|
||||
execute:
|
||||
how: tmt
|
||||
adjust:
|
||||
- prepare+:
|
||||
- name: Add secondary architecture RPMs
|
||||
how: shell
|
||||
script: ./plans/provide_secondary_arch_rpms.sh
|
||||
when: arch == x86_64
|
||||
|
|
|
|||
64
plans/provide_secondary_arch_rpms.sh
Executable file
64
plans/provide_secondary_arch_rpms.sh
Executable file
|
|
@ -0,0 +1,64 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Fedora CI testing systems don't provide a repository with the i686
|
||||
# RPMs of the build being tested. As a consequence, most
|
||||
# dnf install -y <some-gcc-rpm>.i686
|
||||
# commands (whether being run by a test or by TMT's prepare) will probably
|
||||
# fail on a version mismatch with the present x86_64 gcc RPMs. To prevent
|
||||
# such failures we provide this script which we recommend to include in every
|
||||
# Fedora CI test plan.
|
||||
#
|
||||
# Implementation notes:
|
||||
#
|
||||
# * The gcc build being tested in Fedora CI is given via KOJI_TASK_ID. See
|
||||
# https://github.com/fedora-ci/dist-git-pipeline/pull/50 for details.
|
||||
#
|
||||
# * Currently this script just downloads and installs the i686 RPMs. It
|
||||
# would not be sufficient for tests that uninstall and reinstall those
|
||||
# RPMs. If such a test appears, this script should create a repository.
|
||||
#
|
||||
# * Fedora CI testing systems seem to have extremely small RAM-based /tmp,
|
||||
# unable to host all the downloaded RPMs, and no other "real" filesystem
|
||||
# than "/". That's the reason for using
|
||||
# mktemp -d --tmpdir=/
|
||||
|
||||
set -x
|
||||
|
||||
true "V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V-V"
|
||||
|
||||
echo "KOJI_TASK_ID=$KOJI_TASK_ID"
|
||||
|
||||
. /etc/os-release
|
||||
|
||||
echo "ID=$ID"
|
||||
echo "arch=$(arch)"
|
||||
echo "KOJI_TASK_ID=$KOJI_TASK_ID"
|
||||
|
||||
if [[ "$ID" = fedora ]] && [[ "$(arch)" = x86_64 ]] && [[ -n "$KOJI_TASK_ID" ]]; then
|
||||
|
||||
if tmpd=$(mktemp -d --tmpdir=/) && pushd "$tmpd"; then
|
||||
|
||||
# Download
|
||||
rpm -q koji || dnf -y install koji
|
||||
koji download-task "$KOJI_TASK_ID" --noprogress --arch={x86_64,i686,noarch}
|
||||
|
||||
# Remove conflicting RPMs
|
||||
rm -f ./*debuginfo* ./*debugsource*
|
||||
rm -f gcc-[0-9]*.i686.*
|
||||
rm -f ./*docs*.i686.*
|
||||
|
||||
# Install
|
||||
ls
|
||||
dnf -y install ./*.rpm
|
||||
|
||||
# Clean up
|
||||
# shellcheck disable=SC2164
|
||||
popd
|
||||
rm -rf "$tmpd"
|
||||
fi
|
||||
|
||||
else
|
||||
echo "Not applicable"
|
||||
fi
|
||||
|
||||
true "^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^"
|
||||
2
sources
2
sources
|
|
@ -1,4 +1,4 @@
|
|||
SHA512 (gcc-12.2.1-20221121.tar.xz) = 6fef1438e77d8b7e7aeddea6d2d6a82c37d2e93f65ad9007f04206e1a368dd70597cef01188de4ee9bbfe1811a129303ce10b49cb9758a2b44abe4f0312d073a
|
||||
SHA512 (gcc-12.3.1-20230508.tar.xz) = 6e9458f85a081d5ab5bdb4acd988b7c1d877870069d853310e5d64fd678f1420ff6db8c096aeb1a4349de6881949040bcef70b670daa603fdd0e06a7a8e03829
|
||||
SHA512 (isl-0.24.tar.bz2) = aab3bddbda96b801d0f56d2869f943157aad52a6f6e6a61745edd740234c635c38231af20bc3f1a08d416a5e973a90e18249078ed8e4ae2f1d5de57658738e95
|
||||
SHA512 (newlib-cygwin-a8526cb52bedabd4d6ba4b227a5185627f871aa1.tar.xz) = b099246fe4a5d0a372cdaee5da49083df5b2f4440a4e83961600cdf22d37da50c99ce9ae46b769f188a67034ee038cf863260988fc9d594e8e5fb3905a381dec
|
||||
SHA512 (nvptx-tools-472b6e78b3ba918d727698f79911360b7c808247.tar.xz) = 91690321bf96460c3b3e229199a6f752ed1c27c6933d4345dc7e237dc068f604ad211bb3a0373e14d4f332bee05b6227d6933e14e0b475ffdfea8b511ab735e6
|
||||
|
|
|
|||
|
|
@ -1,12 +0,0 @@
|
|||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
int i = 2;
|
||||
if (-10 * abs (i - 1) == 10 * abs (i - 1))
|
||||
return 1;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
summary: gcc optimization error for neg number * abs() [extract_muldiv]
|
||||
description: |
|
||||
abs() from gcc was broken so it gave wrong results.
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Regression/394271-gcc-optimization-error-for-neg-number-abs
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=394271
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- DTS8-INTEROP-CI
|
||||
- DTS9-INTEROP-CI
|
||||
- Tier1
|
||||
- dts_smoke
|
||||
- dts_stable
|
||||
extra-nitrate: TC#0062143
|
||||
extra-summary: /tools/gcc/Regression/gcc/394271-gcc-optimization-error-for-neg-number-abs
|
||||
extra-task: /tools/gcc/Regression/gcc/394271-gcc-optimization-error-for-neg-number-abs
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2008, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Author: Michal Nowak <mnowak@redhat.com>
|
||||
# Marek Polacek <polacek@redhat.com>
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
GCC="${GCC:-$(type -P gcc)}"
|
||||
PACKAGE=$(rpm --qf '%{name}' -qf $GCC)
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "cp -v abs.c $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
gcc -dumpversion | grep -q '^4\.4' && export OLDGCC="true"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest "Testing the executable"
|
||||
OPTS="-O0 -O1 -O2 -O3 -Os -Ofast -Og"
|
||||
if [ "$OLDGCC" = "true" ]; then
|
||||
OPTS=${OPTS/ -Ofast -Og/}
|
||||
fi
|
||||
for opt in "" $OPTS; do
|
||||
rlRun "$GCC -g $opt -o abs$opt abs.c" 0 "Compiling the test case [ $opt ]"
|
||||
rlRun "./abs$opt" 0 "Checking whether we have an working executable [ $opt ]"
|
||||
done
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
summary: unzip problem with CRC error for src-4.1.0.zip file on s390x
|
||||
description: |
|
||||
A customer has been trying to unzip the file src-4.1.0.zip
|
||||
which is contained libgcj4-src-4.1.0-18.EL4.s390x.rpm. However,
|
||||
unzip command can't run correctly with the CRC errors
|
||||
It seems that the src-4.1.0.zip is broken.
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- libgcj-src
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- Tier1
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=462397
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro != rhel-5 and distro != rhel-6
|
||||
continue: false
|
||||
extra-nitrate: TC#0147365
|
||||
extra-summary: /tools/gcc/Sanity/462397-unzip-problem-with-CRC-error-for-src-4.1.0.zip-file
|
||||
extra-task: /tools/gcc/Sanity/462397-unzip-problem-with-CRC-error-for-src-4.1.0.zip-file
|
||||
|
|
@ -1,53 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2008, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Author: Michal Nowak <mnowak@redhat.com>
|
||||
# Marek Polacek <polacek@redhat.com>
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES=(gcc libgcj-src)
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rlAssertRpm "$p"
|
||||
done; unset p
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
srclist="/usr/share/java/src-*"
|
||||
for src in ${srclist}; do
|
||||
|
||||
rlPhaseStartTest "Try to unzip src file"
|
||||
rm -rf tmp/; mkdir tmp/
|
||||
rlRun "cp -fv ${src} tmp/" 0 "[${src}]: Copy the zip file to tmp/"
|
||||
cd tmp/
|
||||
rlRun "unzip ${src}" 0 "[${src}] Verify that is possible to unzip ${src}"
|
||||
cd ..
|
||||
rlPhaseEnd
|
||||
|
||||
done
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
subroutine a
|
||||
INTEGER*4 a_i
|
||||
common /block/a_i
|
||||
a_i = 1
|
||||
end subroutine a
|
||||
subroutine b
|
||||
INTEGER*4 b_i
|
||||
common /block/b_i
|
||||
a_i = 3
|
||||
b_i = 2
|
||||
end subroutine b
|
||||
subroutine c
|
||||
INTEGER*4 a_i
|
||||
common /block/a_i
|
||||
if (a_i .ne. 2) call abort
|
||||
end subroutine c
|
||||
program abc
|
||||
call a
|
||||
call b
|
||||
call c
|
||||
end program abc
|
||||
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
summary: Fortran DW_TAG_common_block has incorrect placement/scope
|
||||
description: |+
|
||||
Problem: gcc-4.3.2 / gfortran-4.3.2 (in the forthcoming tech-preview for
|
||||
RHEL5.3) appears to also have the "DW_TAG_common_block has incorrect
|
||||
placement/scope" issues listed in the following gcc upstream bug:
|
||||
|
||||
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37738
|
||||
|
||||
What gfortran is doing currently is:
|
||||
|
||||
(1) Merges all common blocks into a single one.
|
||||
(2) Places this single common block into the first subroutine where it was
|
||||
used.
|
||||
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Regression/465974-DW_TAG_common_block-has-incorrect-placement-scope
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- gcc-gfortran
|
||||
duration: 5m
|
||||
tier: '1'
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=465974
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- DTS8-INTEROP-CI
|
||||
- DTS9-INTEROP-CI
|
||||
- Tier1
|
||||
- dts_smoke
|
||||
- dts_stable
|
||||
extra-nitrate: TC#0062268
|
||||
extra-summary: /tools/gcc/g77/465974-DW_TAG_common_block-has-incorrect-placement-scope
|
||||
extra-task: /tools/gcc/g77/465974-DW_TAG_common_block-has-incorrect-placement-scope
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
#!/bin/bash
|
||||
# Copyright (c) 2008, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Author: Michal Nowak <mnowak@redhat.com>
|
||||
# Marek Polacek <polacek@redhat.com>
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES=(gcc gcc-gfortran)
|
||||
|
||||
GFORTRAN=${GFORTRAN:-gfortran}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
if type gcc | grep -q -v toolset; then
|
||||
# assert only of not devtoolset/gcc-toolset
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rlAssertRpm "$p"
|
||||
done; unset p
|
||||
fi
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "cp -v abc.f90 $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest "Testing the executable via readelf -w"
|
||||
# Compile
|
||||
rlRun "$GFORTRAN -g -o abc abc.f90" 0 "Compiling the test case: abc.f90"
|
||||
rlRun "./abc" 0 "Checking whether we have an working executable"
|
||||
rlWatchdog "readelf -w abc 2>&1 | tee gcc-readelf.log" 10
|
||||
rlAssert0 "Checking if 'readelf' ends itself" $?
|
||||
# Test
|
||||
cb=$(grep Abbrev gcc-readelf.log | grep DW_TAG_common_block -c)
|
||||
rlRun "if [ ${cb} -eq 3 ]; then true; else false; fi" 0 "Expected amount of common blocks is 3; got ${cb}"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
#include <stdio.h>
|
||||
|
||||
/* Compile flags:
|
||||
* gcc -fno-builtin-isascii -fno-builtin-isalnum -o builtin builtin.c
|
||||
*
|
||||
* Expected output:
|
||||
* Using custom isascii() function
|
||||
* ret = 0
|
||||
*
|
||||
* Expected return value:
|
||||
* 0
|
||||
*/
|
||||
|
||||
int isascii(int c)
|
||||
{
|
||||
printf("Using custom isascii() function\n");
|
||||
return 0;
|
||||
}
|
||||
|
||||
main()
|
||||
{
|
||||
int c = 65;
|
||||
int ret;
|
||||
|
||||
ret = isascii(c);
|
||||
printf("ret = %d\n", ret);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
@ -1,33 +0,0 @@
|
|||
summary: 'Test for bz515799 ([RHEL5] gcc: if more than one -fno-builtin-*)'
|
||||
description: |
|
||||
Bug summary: [RHEL5] gcc: if more than one -fno-builtin-* options are specified, only the last one is effective
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=515799
|
||||
|
||||
This test compiles builtin.c with the flags '-fno-builtin-isascii
|
||||
-fno-builtin-isalnum'. This program contains a custom isascii() function
|
||||
that always returns 0. If gcc honors the -fno-builtin-isascii flag, it
|
||||
will return 0. If not, it will use the built-in isascii() function which
|
||||
will return 1.
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Regression/515799-RHEL5-gcc-if-more-than-one-fno-builtin
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=515799
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- DTS8-INTEROP-CI
|
||||
- DTS9-INTEROP-CI
|
||||
- Tier1
|
||||
- dts_smoke
|
||||
- dts_stable
|
||||
extra-nitrate: TC#0063259
|
||||
extra-summary: /tools/gcc/Regression/gcc/515799-RHEL5-gcc-if-more-than-one-fno-builtin
|
||||
extra-task: /tools/gcc/Regression/gcc/515799-RHEL5-gcc-if-more-than-one-fno-builtin
|
||||
|
|
@ -1,58 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/rhts-library/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/gcc/515799-RHEL5-gcc-if-more-than-one-fno-builtin
|
||||
# Description: Test for bz515799 ([RHEL5] gcc: if more than one -fno-builtin-*)
|
||||
# Author: Jeffrey Bastian <jbastian@redhat.com>
|
||||
# Marek Polacek <polacek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2009, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES=(gcc)
|
||||
|
||||
GCC=${GCC:-gcc}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rlAssertRpm "$p"
|
||||
done; unset p
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "cp -v builtin.c $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "$GCC -fno-builtin-isascii -fno-builtin-isalnum -o builtin builtin.c"
|
||||
rlAssertExists "builtin"
|
||||
rlRun "./builtin"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
public class foo {
|
||||
public static void main(String[] args) {
|
||||
System.loadLibrary("foolib");
|
||||
}
|
||||
}
|
||||
|
|
@ -1,39 +0,0 @@
|
|||
summary: 'CVE-2009-3736 libtool: libltdl may load and execute code from a library
|
||||
in the current directory'
|
||||
description: |
|
||||
cat > ~/foo.java <\EOF public class foo { public static void main(String[] args) { System.loadLibrary("foolib"); } } EOF
|
||||
cd
|
||||
gcj -C foo.java
|
||||
cd /tmp
|
||||
strace -f -v -s1024 gij -cp ~/ foo 2>&1 | grep foolib
|
||||
|
||||
(resp. s/gcj/gcj4/g;s/gij/gij4/ for gcc4 testing).
|
||||
|
||||
If any relative path is seen, it is wrong. Bad examples are
|
||||
|
||||
{lib,}foolib.la
|
||||
{hwcap,0,nosegneg}/{lib,}foolib.{so,la}
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- gcc-java
|
||||
- libgcj
|
||||
- strace
|
||||
duration: 5m
|
||||
enabled: false
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- Tier1
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=537941
|
||||
adjust:
|
||||
- enabled: true
|
||||
when: distro == rhel-6 or distro == rhel-5
|
||||
extra-nitrate: TC#0062145
|
||||
extra-summary: /tools/gcc/Regression/gcj/537941-libltdl-may-load-library-in-current-directory
|
||||
extra-task: /tools/gcc/Regression/gcj/537941-libltdl-may-load-library-in-current-directory
|
||||
|
|
@ -1,71 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2008, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Author: Michal Nowak <mnowak@redhat.com>
|
||||
# Marek Polacek <polacek@redhat.com>
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES=(gcc libgcj strace gcc-java)
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rlAssertRpm "$p"
|
||||
done; unset p
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "cp -v foo.java $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
# I weeded out the if (isRHEL 3) support.
|
||||
for gj in "" "4"; do
|
||||
gcj_name="/usr/bin/gcj${gj}"
|
||||
gij_name="/usr/bin/gij${gj}"
|
||||
if [ -x ${gcj_name} ] && [ -x ${gij_name} ]; then
|
||||
gcj_basename=$(basename ${gcj_name})
|
||||
gij_basename=$(basename ${gij_name})
|
||||
|
||||
rlPhaseStartTest "[${gij_basename}] Interpreting and compiling via java"
|
||||
rlRun "${gcj_name} -C foo.java" 0 "[${gcj_basename}] Creating bytecode"
|
||||
mv foo.class ~
|
||||
pushd /tmp
|
||||
|
||||
echo "Dry run w/o strace"
|
||||
${gij_basename} -cp ~/ foo
|
||||
|
||||
echo "=== Dry run end ==="
|
||||
strace -f -v -s1024 ${gij_basename} -cp ~/ foo 2>&1 | tee out.${gij_basename}
|
||||
echo
|
||||
grep foolib out.${gij_basename}
|
||||
foolib_cnt="$(grep foolib out.${gij_basename} -c)"
|
||||
echo
|
||||
rlRun "if [ ${foolib_cnt} -ne 0 ]; then egrep '\"libfoolib.la|\"foolib.la' out.${gij_basename}; else echo \"Zero lines w/ foolib\"; true; fi" 1 "[${gij_basename}] Interpreting test case" # use 'true' (sic!)
|
||||
popd
|
||||
rm -f ~/foo.class
|
||||
rlPhaseEnd
|
||||
|
||||
fi
|
||||
done
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,32 +0,0 @@
|
|||
summary: Test for BZ#1611637 (devtoolset-8-gcc includes avx512vbmi2intrin.h but)
|
||||
description: |
|
||||
Bug summary: devtoolset-8-gcc includes avx512vbmi2intrin.h but does not contain it
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1611637
|
||||
|
||||
The list of intrinsic headers keeps changing every release, sometimes
|
||||
even on the release branch, and %files needs to be in sync with what has
|
||||
been changed in gcc/config.gcc. immintrin.h is one of those headers and
|
||||
this test makes sure that we can #include it.
|
||||
contact: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1611637
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: arch != x86_64
|
||||
continue: false
|
||||
- enabled: false
|
||||
when: distro == rhel-5
|
||||
continue: false
|
||||
extra-nitrate: TC#0575308
|
||||
extra-summary: /tools/gcc/Regression/bz1611637-immintrin_h_include_list_does_not_match_release
|
||||
extra-task: /tools/gcc/Regression/bz1611637-immintrin_h_include_list_does_not_match_release
|
||||
|
|
@ -1,54 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1611637-immintrin_h_include_list_does_not_match_release
|
||||
# Description: Test for BZ#1611637 (devtoolset-8-gcc includes avx512vbmi2intrin.h but)
|
||||
# Author: Michael Petlan <mpetlan@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2018 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
GCC=${GCC:-gcc}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
cat > a.c <<EOF
|
||||
#include <immintrin.h>
|
||||
int main(void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
EOF
|
||||
rlAssertExists "a.c"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "$GCC -o a a.c"
|
||||
rlAssertExists "a"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "rm -f a a.c"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
summary: Test for BZ#1815504 (Regression in the line information debug)
|
||||
description: |
|
||||
Bug summary: Regression in the line information debug information generated by gcc
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1815504
|
||||
recommend:
|
||||
- gcc
|
||||
- valgrind
|
||||
duration: 5m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1815504
|
||||
extra-summary: /tools/gcc/Regression/bz1815504-Regression-in-the-line-information-debug
|
||||
extra-task: /tools/gcc/Regression/bz1815504-Regression-in-the-line-information-debug
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1815504-Regression-in-the-line-information-debug
|
||||
# Description: Test for BZ#1815504 (Regression in the line information debug)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "valgrind -q date &> log" 0
|
||||
rlAssertNotGrep "Can't handle inlined call info entry with line number" log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
summary: Test for BZ#1852781 (Compiling with -flto and -g removes CET support)
|
||||
description: |
|
||||
Bug summary: Compiling with -flto and -g removes CET support
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1852781
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- binutils
|
||||
duration: 15m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1852781
|
||||
extra-summary: /tools/gcc/Regression/bz1852781-Compiling-with-flto-and-g-removes-CET-support
|
||||
extra-task: /tools/gcc/Regression/bz1852781-Compiling-with-flto-and-g-removes-CET-support
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1852781-Compiling-with-flto-and-g-removes-CET-support
|
||||
# Description: Test for BZ#1852781 (Compiling with -flto and -g removes CET support)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
TESTPROG="x"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp $TESTPROG.c $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "gcc -flto -c -fcf-protection -g $TESTPROG.c"
|
||||
rlRun "gcc -flto -Wl,-z,cet-report=error -fcf-protection -g $TESTPROG.o &> log"
|
||||
rlAssertNotGrep " missing IBT and SHSTK properties" log
|
||||
rlRun "readelf --wide --notes a.out | grep IBT &> log"
|
||||
rlAsserGrep "IBT, SHSTK" log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main ()
|
||||
{
|
||||
printf ("hello\n");
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
summary: Test for BZ#1853900 (typeinfo for stdcodecvt_utf8<wchar_t, 1114111ul,)
|
||||
description: |
|
||||
Bug summary: typeinfo for std::codecvt_utf8<wchar_t, 1114111ul, (std::codecvt_mode)0> not found
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1853900
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- gcc-c++
|
||||
duration: 10m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1853900
|
||||
extra-summary: /tools/gcc/Regression/bz1853900-typeinfo-for-std-codecvt-utf8-wchar-t-1114111ul
|
||||
extra-task: /tools/gcc/Regression/bz1853900-typeinfo-for-std-codecvt-utf8-wchar-t-1114111ul
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1853900-typeinfo-for-std-codecvt-utf8-wchar-t-1114111ul
|
||||
# Description: Test for BZ#1853900 (typeinfo for stdcodecvt_utf8<wchar_t, 1114111ul,)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
TESTPROG="test.cc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp $TESTPROG $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "g++ -std=c++17 $TESTPROG &> log"
|
||||
rlAssertNotGrep "hidden symbol " log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
#include <filesystem>
|
||||
|
||||
namespace fs = std::filesystem;
|
||||
int main() {
|
||||
fs::create_directory("sandbox");
|
||||
fs::remove_all("sandbox");
|
||||
}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
summary: Test for BZ#1878841 (GOMP_parallel_loop_nonmonotonic_dynamic and)
|
||||
description: |
|
||||
Bug summary: GOMP_parallel_loop_nonmonotonic_dynamic and GOMP_loop_nonmonotonic_dynamic_next missing
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1878841
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
duration: 5m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1878841
|
||||
extra-summary: /tools/gcc/Regression/bz1878841-GOMP-parallel-loop-nonmonotonic-dynamic-and
|
||||
extra-task: /tools/gcc/Regression/bz1878841-GOMP-parallel-loop-nonmonotonic-dynamic-and
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1878841-GOMP-parallel-loop-nonmonotonic-dynamic-and
|
||||
# Description: Test for BZ#1878841 (GOMP_parallel_loop_nonmonotonic_dynamic and)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
TESTPROG="tst"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp $TESTPROG.c $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "gcc -fopenmp $TESTPROG.c &> log"
|
||||
rlAssertNotGrep "undefined reference to `GOMP_parallel_loop_nonmonotonic_dynamic`" log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#include <omp.h>
|
||||
int main ()
|
||||
{
|
||||
#pragma omp parallel for schedule(dynamic)
|
||||
for (int i = 0; i < 10; i++);
|
||||
}
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
info functions foo
|
||||
q
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
summary: Test for BZ#1893340 (Variadic arguments are missing from debugging data)
|
||||
description: |
|
||||
Bug summary: Variadic arguments are missing from debugging data when building with -flto
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1893340
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- gdb
|
||||
duration: 5m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1893340
|
||||
extra-summary: /tools/gcc/Regression/bz1893340-Variadic-arguments-are-missing-from-debugging-data
|
||||
extra-task: /tools/gcc/Regression/bz1893340-Variadic-arguments-are-missing-from-debugging-data
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1893340-Variadic-arguments-are-missing-from-debugging-data
|
||||
# Description: Test for BZ#1893340 (Variadic arguments are missing from debugging data)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp test.c b.gdb $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "gcc -fPIC -shared -o libtest.so -O0 -g test.c"
|
||||
rlRun "gdb -x b.gdb libtest.so > gdb.log"
|
||||
rlAssertGrep "void foo(int, ...);" gdb.log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
#include <stdarg.h>
|
||||
void foo(int args, ...) {
|
||||
va_list ap;
|
||||
va_start(ap, args);
|
||||
va_end(ap);
|
||||
}
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
summary: Test for BZ#1896093 (Compiling with -flto=auto fails if make is not)
|
||||
description: |
|
||||
Bug summary: Compiling with -flto=auto fails if make is not installed
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1896093
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
duration: 5m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1896093
|
||||
extra-summary: /tools/gcc/Regression/bz1896093-Compiling-with-flto-auto-fails-if-make-is-not
|
||||
extra-task: /tools/gcc/Regression/bz1896093-Compiling-with-flto-auto-fails-if-make-is-not
|
||||
|
|
@ -1,56 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1896093-Compiling-with-flto-auto-fails-if-make-is-not
|
||||
# Description: Test for BZ#1896093 (Compiling with -flto=auto fails if make is not)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2020 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
MAKE_WAS_PRESENT=false
|
||||
rpm -q make &>/dev/null && MAKE_WAS_PRESENT=true
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlRun "rpm -e --nodeps make" 0,1
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
echo "void main() { }" | gcc -x c -flto=auto - &> log
|
||||
rlAssertNotGrep "lto-wrapper: fatal error: execvp: No such file or directory" log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
if $MAKE_WAS_PRESENT; then
|
||||
rpm -q make &>/dev/null || rlRun "yum -y install make"
|
||||
fi
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
program test_allocated
|
||||
integer :: i = 4
|
||||
real(4), allocatable :: x(:)
|
||||
if (.not. allocated(x)) allocate(x(i))
|
||||
end program test_allocated
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
summary: Test for BZ#1927579 (libgfortran seems to be missing)
|
||||
description: |
|
||||
Bug summary: libgfortran seems to be missing _gfortran_os_error_at
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1927579
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- gcc-gfortran
|
||||
duration: 5m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1927579
|
||||
extra-summary: /tools/gcc/Regression/bz1927579-libgfortran-seems-to-be-missing
|
||||
extra-task: /tools/gcc/Regression/bz1927579-libgfortran-seems-to-be-missing
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1927579-libgfortran-seems-to-be-missing
|
||||
# Description: Test for BZ#1927579 (libgfortran seems to be missing)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "cp alloc1.f90 $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "gfortran alloc1.f90" &> log
|
||||
rlAssertNotGrep "alloc1.f90:(.text+0x131): undefined reference" log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
summary: Test for BZ#1939638 (gcc-toolset-10-libasan-devel depends on the wrong)
|
||||
description: |
|
||||
Bug summary: gcc-toolset-10-libasan-devel depends on the wrong libasan
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1939638
|
||||
contact: Alexandra Hájková <ahajkova@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- libasan
|
||||
duration: 5m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1939638
|
||||
extra-summary: /tools/gcc/Regression/bz1939638-gcc-toolset-10-libasan-devel-depends-on-the-wrong
|
||||
extra-task: /tools/gcc/Regression/bz1939638-gcc-toolset-10-libasan-devel-depends-on-the-wrong
|
||||
|
|
@ -1,50 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1939638-gcc-toolset-10-libasan-devel-depends-on-the-wrong
|
||||
# Description: Test for BZ#1939638 (gcc-toolset-10-libasan-devel depends on the wrong)
|
||||
# Author: Alexandra Hájková <ahajkova@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "echo 'int main () { return 0; }' | gcc -xc -fsanitize=address -" &> log
|
||||
rlAssertNotGrep "cannot find /usr/lib64/libasan" log
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
summary: Test for BZ#1960701 (Wrong-code regression starting with gcc 8.2)
|
||||
description: |
|
||||
Bug summary: Wrong-code regression starting with gcc 8.2
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1960701
|
||||
contact: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc-c++
|
||||
duration: 15m
|
||||
enabled: true
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1960701
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro < rhel-8 and collection is not defined
|
||||
continue: false
|
||||
- enabled: false
|
||||
when: distro ~< rhel-8.5 and collection is not defined
|
||||
continue: false
|
||||
extra-nitrate: TC#0610780
|
||||
extra-summary: /tools/gcc/Regression/bz1960701-Wrong-code-regression-starting-with-gcc-8-2
|
||||
extra-task: /tools/gcc/Regression/bz1960701-Wrong-code-regression-starting-with-gcc-8-2
|
||||
|
|
@ -1,14 +0,0 @@
|
|||
#include <vector>
|
||||
|
||||
struct T {
|
||||
unsigned a;
|
||||
float b {8.};
|
||||
};
|
||||
|
||||
int main()
|
||||
{
|
||||
T t = {1};
|
||||
std::vector<T> tt = {{1}, {2}};
|
||||
if (t.a != 1 || t.b != 8.0f || tt[0].a != 1 || tt[0].b != 8.0f || tt[1].a != 2 || tt[1].b != 8.0f)
|
||||
__builtin_abort ();
|
||||
}
|
||||
|
|
@ -1,66 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1960701-Wrong-code-regression-starting-with-gcc-8-2
|
||||
# Description: Test for BZ#1960701 (Wrong-code regression starting with gcc 8.2)
|
||||
# Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
# Notes on relevancy
|
||||
#
|
||||
# The test is applicable to GCCs supporting -std=c++17. In practice,
|
||||
# * any supported toolset GCC
|
||||
# * system GCC of RHEL 8+; however the respective fix landed in 8.5
|
||||
# and isn't planned for backporting.
|
||||
#
|
||||
# Suggested TCMS relevancy:
|
||||
# distro < rhel-8 && collection !defined: False
|
||||
# distro < rhel-8.5 && collection !defined: False
|
||||
|
||||
GCC="${GCC:-$(type -P gcc)}"
|
||||
PACKAGE=$(rpm --qf '%{name}\n' -qf $GCC | head -1)
|
||||
PACKAGES="${PACKAGE} ${PACKAGE}-c++"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlLogInfo "PACKAGES=$PACKAGES"
|
||||
rlLogInfo "COLLECTIONS=$COLLECTIONS"
|
||||
rlAssertRpm --all
|
||||
rlRun "TmpDir=\$(mktemp -d)"
|
||||
rlRun "cp reproducer.cc $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun 'g++ -o reproducer -Wall -Wextra -std=c++17 reproducer.cc'
|
||||
rlRun './reproducer'
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun 'popd'
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
summary: Test for BZ#1965951 (Wrong-code regression starting with gcc 8.5)
|
||||
description: |
|
||||
Bug summary: Wrong-code regression starting with gcc 8.5
|
||||
Bugzilla link: https://bugzilla.redhat.com/show_bug.cgi?id=1965951
|
||||
contact: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc-c++
|
||||
duration: 15m
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1965951
|
||||
extra-summary: /tools/gcc/Regression/bz1965951-Wrong-code-regression-starting-with-gcc-8-5
|
||||
extra-task: /tools/gcc/Regression/bz1965951-Wrong-code-regression-starting-with-gcc-8-5
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
#include <iostream>
|
||||
struct S1 { virtual ~S1() = default; };
|
||||
struct S2 { virtual void f1() = 0; };
|
||||
struct S3: S1, S2 {
|
||||
void f1() { f2(); }
|
||||
virtual void f2() = 0;
|
||||
};
|
||||
struct S4: S3 {
|
||||
void f2() { std::cout << "called\n"; }
|
||||
using S2::f1;
|
||||
};
|
||||
int main() { S4().f1(); }
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
#!/usr/bin/env bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz1965951-Wrong-code-regression-starting-with-gcc-8-5
|
||||
# Description: Test for BZ#1965951 (Wrong-code regression starting with gcc 8.5)
|
||||
# Author: Vaclav Kadlcik <vkadlcik@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2021 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
GCC="${GCC:-$(type -P gcc)}"
|
||||
PACKAGE=$(rpm --qf '%{name}\n' -qf $GCC | head -1)
|
||||
PACKAGES="${PACKAGE} ${PACKAGE}-c++"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlLogInfo "PACKAGES=$PACKAGES"
|
||||
rlRun "dnf -y install $PACKAGES" 0-255
|
||||
rlAssertRpm --all
|
||||
rlRun "TmpDir=\$(mktemp -d)"
|
||||
rlRun "cp reproducer.cc $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun 'g++ -o reproducer reproducer.cc'
|
||||
rlRun './reproducer'
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun 'popd'
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
summary: SystemTap fails to retrieve location attribute for local variable
|
||||
description: ''
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
- systemtap
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- systemtap
|
||||
- kernel-devel
|
||||
- kernel-headers
|
||||
duration: 50m
|
||||
enabled: true
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- STAP-EWA
|
||||
- mcu_stap
|
||||
- mcu_stap_6g
|
||||
- mcu_stap_7g
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=576287
|
||||
extra-nitrate: TC#0062256
|
||||
extra-summary: /tools/gcc/Regression/gcc/bz576287-SystemTap-fails-to-retrieve-location-attribute-for-local-variable
|
||||
extra-task: /tools/gcc/Regression/gcc/bz576287-SystemTap-fails-to-retrieve-location-attribute-for-local-variable
|
||||
|
|
@ -1,57 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2010 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGE="gcc"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
kernel_uname="$(uname -a | awk '{ print $3 }')"
|
||||
kernel_arch="$(uname -a | awk '{ print $12 }')"
|
||||
echo kernel_arch: $kernel_arch
|
||||
kernel_version="$(echo ${kernel_uname} | sed 's/-/ /' | awk '{ print $1 }')"
|
||||
echo kernel_version: $kernel_version
|
||||
kernel_release="$(echo ${kernel_uname} | sed 's/-/ /' | awk '{ print $2 }' | sed 's/\./ /g' | awk '{ print $1,".",$2 }' | sed 's/ //g')"
|
||||
echo kernel_release_1: $kernel_release
|
||||
if $(echo ${kernel_release} | grep -iq PAE); then
|
||||
kernel_release="$(echo ${kernel_release} | sed 's/PAE//g' | sed 's/pae//g')"
|
||||
PAE="PAE-"
|
||||
fi
|
||||
echo kernel_release_2: $kernel_release
|
||||
if rlIsRHEL 6; then
|
||||
arch="${kernel_arch}-"
|
||||
fi
|
||||
kernel_debug="http://download.devel.redhat.com/brewroot/packages/kernel/${kernel_version}/${kernel_release}/${kernel_arch}/kernel-${PAE}debuginfo-${kernel_version}-${kernel_release}.${kernel_arch}.rpm"
|
||||
kernel_debug_common="http://download.devel.redhat.com/brewroot/packages/kernel/${kernel_version}/${kernel_release}/${kernel_arch}/kernel-debuginfo-common-${arch}${kernel_version}-${kernel_release}.${kernel_arch}.rpm"
|
||||
echo ">>> $kernel_debug $kernel_debug_common"
|
||||
debuginfo-install -y kernel
|
||||
rpmquery kernel-debuginfo || rpm -ivh ${kernel_debug} ${kernel_debug_common}
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest opt-O$opt
|
||||
rlRun "stap -vvvv -p2 -e 'probe kernel.function(\"sig_ignored\") {println($$parms)}' 2>&1 | grep 'variable location problem'" 1 "gcc produced good enough debuginfo w/o 'variable location problem'"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,15 +0,0 @@
|
|||
template <bool C> int func (void);
|
||||
|
||||
template <class T> struct Foo
|
||||
{
|
||||
static const unsigned int a = sizeof (T);
|
||||
|
||||
//enum { b = a };
|
||||
|
||||
enum
|
||||
{
|
||||
c = sizeof (func < (a == 0) > ())
|
||||
};
|
||||
};
|
||||
|
||||
Foo <int> x;
|
||||
|
|
@ -1,28 +0,0 @@
|
|||
summary: Try to compile a program that has a template parameter with a boolean expression
|
||||
involving a templated static constant
|
||||
description: ''
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Regression/bz703059-g-fails-to-compile-a-program-that-has-a-template
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- gcc-c++
|
||||
- file
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=703059
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- DTS8-INTEROP-CI
|
||||
- DTS9-INTEROP-CI
|
||||
- Tier1
|
||||
- dts_smoke
|
||||
- dts_stable
|
||||
extra-nitrate: TC#0111110
|
||||
extra-summary: /tools/gcc/Regression/bz703059-g-fails-to-compile-a-program-that-has-a-template
|
||||
extra-task: /tools/gcc/Regression/bz703059-g-fails-to-compile-a-program-that-has-a-template
|
||||
|
|
@ -1,54 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Regression/bz703059-g-fails-to-compile-a-program-that-has-a-template
|
||||
# Description: Try to compile a program that has a template parameter with a boolean expression involving a templated static constant
|
||||
# Author: Marek Polacek <mpolacek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2011, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include rhts environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
GXX=${GXX:-g++}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlLog "GXX = $GXX"
|
||||
rlLog "Installed within `rpmquery -f $(which $GXX)`"
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "cp -v f.cc $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "$GXX -c f.cc"
|
||||
rlAssertExists "f.o"
|
||||
rlRun "file f.o | grep ELF" # Basic obj file sanity check
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,31 +0,0 @@
|
|||
summary: Check to see if g++ throws unused parameter warnings with standard libraries
|
||||
with option -Wall
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Regression/unused_parameter_warning
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc-c++
|
||||
- glibc-devel
|
||||
- libstdc++-devel
|
||||
recommend:
|
||||
- gcc44-c++
|
||||
- glibc-devel.ppc64
|
||||
- glibc-devel.ppc
|
||||
- libstdc++43-devel.ppc
|
||||
- libstdc++44-devel.ppc
|
||||
- libstdc++-devel.ppc
|
||||
duration: 10m
|
||||
enabled: true
|
||||
tier: '1'
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=201342
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
- Tier1
|
||||
- dts_stable
|
||||
extra-nitrate: TC#0062265
|
||||
extra-summary: /tools/gcc/c++/unused_parameter_warning
|
||||
extra-task: /tools/gcc/c++/unused_parameter_warning
|
||||
|
|
@ -1,60 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/rhts-library/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2009, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# g++ - check for unused parameter warning
|
||||
# expected exit code is 0
|
||||
#
|
||||
# Author: Sachin Prabhu <sprabhu@redhat.com>
|
||||
# Maintainer: Marek Polacek <polacek@redhat.com>
|
||||
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES=(gcc gcc-c++ grep)
|
||||
|
||||
GXX=${GXX:-g++}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rlAssertRpm "$p"
|
||||
done; unset p
|
||||
rlLog "GXX = $GXX"
|
||||
rlLog "Installed within `rpmquery -f $(which $GXX)`"
|
||||
rlRun "TmpDir=\`mktemp -d\`"
|
||||
rlRun "cp -v test.cpp $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "$GXX -W -Wall -o test.bin test.cpp &> output"
|
||||
cat output
|
||||
rlRun "grep -E 'warning:\W+unused\W+parameter' -q output" 1 "'warning: unused parameter' not present"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,2 +0,0 @@
|
|||
#include <sstream>
|
||||
int main() {}
|
||||
|
|
@ -1,45 +0,0 @@
|
|||
summary: Compile a Red Hat RPM package.
|
||||
description: ''
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Sanity/compile-rpm
|
||||
framework: beakerlib
|
||||
require:
|
||||
- autoconf
|
||||
- bison
|
||||
- dejagnu
|
||||
- elfutils-libelf-devel
|
||||
- expat-devel
|
||||
- flex
|
||||
- gcc
|
||||
- gdb
|
||||
- glibc-devel
|
||||
- grep
|
||||
- libselinux-devel
|
||||
- make
|
||||
- mpfr-devel
|
||||
- ncurses-devel
|
||||
- python-devel
|
||||
- readline-devel
|
||||
- rpm-build
|
||||
- rpm-devel
|
||||
- texinfo
|
||||
- xz-devel
|
||||
- yum-utils
|
||||
- zlib-devel
|
||||
duration: 240m
|
||||
adjust:
|
||||
- require+:
|
||||
- ncurses-devel.i686
|
||||
- ncurses-devel.x86_64
|
||||
when: arch == x86_64
|
||||
- enabled: false
|
||||
# Too "heavy" for Fedora CI (for now)
|
||||
when: distro == fedora and trigger is defined
|
||||
continue: false
|
||||
enabled: true
|
||||
extra-nitrate: TC#0142522
|
||||
extra-summary: /tools/gcc/Sanity/compile-rpm
|
||||
extra-task: /tools/gcc/Sanity/compile-rpm
|
||||
|
|
@ -1,99 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Sanity/compile-rpm
|
||||
# Description: Compile a Red Hat RPM package.
|
||||
# Author: Marek Polacek <polacek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
GCC=${GCC:-gcc}
|
||||
|
||||
# Set the variabile UNDER_DTS on non-empty string, when run under devtoolset.
|
||||
if $( echo `which gcc` | grep -qE '/opt/rh/' ); then
|
||||
UNDER_DTS="true"
|
||||
# Set the actual version of DTS
|
||||
DTS=`which gcc | awk 'BEGIN { FS="/" } { print $4 }'`
|
||||
fi
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
# Work around troubles with buildroot packages being out-of-sync
|
||||
if rlIsRHEL; then
|
||||
rlMountRedhat
|
||||
for i in libipt source-highlight libbabeltrace; do
|
||||
rpm -q $i &>/dev/null || rlRun "yum -y install $i" 0-255
|
||||
rpm -q ${i}-devel &>/dev/null || rlRun "yum -y install ${i}-devel" 0-255
|
||||
d=/mnt/redhat/brewroot/packages/$i
|
||||
if rpm -q $i &>/dev/null && ! rpm -q ${i}-devel &>/dev/null; then
|
||||
if [[ -e /mnt/redhat/brewroot/packages/$i ]]; then
|
||||
d=/mnt/redhat/brewroot/packages/$i
|
||||
else
|
||||
d=/mnt/redhat/brewroot/packages/${i#lib}
|
||||
fi
|
||||
rlRun "yum -y install $d/$(rpm -q --qf='%{VERSION}/%{RELEASE}/%{ARCH}' $i)/${i}-devel-$(rpm -q --qf='%{VERSION}-%{RELEASE}.%{ARCH}' $i).rpm"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
|
||||
rlRun "TmpDir=\$(mktemp -d)"
|
||||
rlRun "pushd $TmpDir"
|
||||
|
||||
if [ -z ${UNDER_DTS} ]; then
|
||||
rlFetchSrcForInstalled gdb || yumdownloader --source gdb
|
||||
else
|
||||
rlFetchSrcForInstalled $DTS-gdb || yumdownloader --source $DTS-gdb
|
||||
fi
|
||||
|
||||
if [ -z ${UNDER_DTS} ]; then
|
||||
srpm=$(rpmquery gdb --queryformat=%{NAME}-%{VERSION}-%{RELEASE})".src.rpm"
|
||||
else
|
||||
srpm=$(rpmquery $DTS-gdb --queryformat=%{NAME}-%{VERSION}-%{RELEASE})".src.rpm"
|
||||
fi
|
||||
rlRun "rpm -Uvh $srpm"
|
||||
spec_dir=$(rpm --eval=%_specdir)
|
||||
build_dir=$(rpm --eval=%_builddir)
|
||||
|
||||
if [ -z ${UNDER_DTS} ]; then
|
||||
pkg_dir=$(rpmquery gdb} --queryformat=%{NAME}-%{VERSION})
|
||||
else
|
||||
pkg_dir=$(rpmquery $DTS-gdb} --queryformat=%{NAME}-%{VERSION})
|
||||
fi
|
||||
|
||||
yum-builddep -y $spec_dir/gdb.spec
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
rlRun "CC=$GCC rpmbuild -bb $spec_dir/gdb.spec &> BUILD_LOG"
|
||||
test $? -eq 0 || tail -n 20 BUILD_LOG
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlBundleLogs "Build-log" BUILD_LOG
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
|
@ -1,34 +0,0 @@
|
|||
summary: Just runs prebuilt binaries
|
||||
description: |
|
||||
Just running prebuilt binaries that require libitm.
|
||||
This test is designed to run in gcc-libraries CI. we
|
||||
cannot build anything on our own, since we don't have
|
||||
devtoolset's gcc and -devel libraries.
|
||||
|
||||
This should run OK on RHEL-6 and RHEL-7, currently all
|
||||
arches.
|
||||
|
||||
The sources of the tests are in Sanity/libitm-sanity.
|
||||
!!! THIS TEST IS INTENTIONALLY NOT IN gcc General PLAN !!!
|
||||
contact: Michael Petlan <mpetlan@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
- gcc-libraries
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- libitm
|
||||
recommend:
|
||||
- gcc-libraries
|
||||
duration: 5m
|
||||
enabled: true
|
||||
tag:
|
||||
- CI-Tier-1
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: distro == rhel-6 and arch == s390x
|
||||
continue: false
|
||||
extra-nitrate: TC#0539542
|
||||
extra-summary: /tools/gcc/Sanity/libitm-smoke
|
||||
extra-task: /tools/gcc/Sanity/libitm-smoke
|
||||
|
|
@ -1,75 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict+=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Sanity/libitm-smoke
|
||||
# Description: Just runs prebuilt binaries
|
||||
# Author: Michael Petlan <mpetlan@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2016 Red Hat, Inc.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License as
|
||||
# published by the Free Software Foundation, either version 2 of
|
||||
# the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see http://www.gnu.org/licenses/.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
# Relevant for any system with libitm binary compatible with the attached
|
||||
# binaries.
|
||||
# Suggested TCMS relevancy:
|
||||
# distro = rhel-6 && arch = s390x: False
|
||||
|
||||
PACKAGE="gcc"
|
||||
REALLY_WANT_TO_RUN="true"
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlAssertRpm $PACKAGE
|
||||
if [ "$BASEOS_CI" = "true" ]; then
|
||||
# in CI, we need to be able to skip this testcase
|
||||
# in case libitm is not a part of gcc-libraries
|
||||
rlCheckRpm "libitm" || REALLY_WANT_TO_RUN="false"
|
||||
else
|
||||
rlCheckRpm "libitm" || rlRun "yum install -y libitm" 0 "Installing missing libitm"
|
||||
rlAssertRpm "libitm"
|
||||
fi
|
||||
TARBALL="bins_`arch`.tar.gz"
|
||||
if [ ! -f $TARBALL ]; then
|
||||
rlDie "We do not have binaries for your arch (`arch`)"
|
||||
fi
|
||||
rlRun "zcat $TARBALL | tar x"
|
||||
rlRun "pushd bins"
|
||||
rlPhaseEnd
|
||||
|
||||
if [ "$REALLY_WANT_TO_RUN" = "true" ]; then
|
||||
rlPhaseStartTest
|
||||
for i in T_*; do
|
||||
rlRun "./$i"
|
||||
done
|
||||
rlPhaseEnd
|
||||
else
|
||||
rlPhaseStartTest
|
||||
rlPass "SKIPPING THIS TEST -- libitm is probably not shipped within current gcc-libraries"
|
||||
rlPhaseEnd
|
||||
fi
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -rf bins" 0 "Removing the stuff we created"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,70 +0,0 @@
|
|||
summary: Rebuild binutils.
|
||||
description: ''
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Sanity/rebuild-binutils
|
||||
framework: beakerlib
|
||||
require:
|
||||
- autoconf
|
||||
- automake
|
||||
- binutils
|
||||
- gcc
|
||||
- glibc
|
||||
- glibc-devel
|
||||
- glibc-static
|
||||
- libstdc++
|
||||
- libstdc++-devel
|
||||
- libstdc++-static
|
||||
- perl
|
||||
- rpm-build
|
||||
- sharutils
|
||||
- texinfo
|
||||
- yum-utils
|
||||
- zlib-devel
|
||||
- zlib-static
|
||||
recommend:
|
||||
- glibc-devel.ppc
|
||||
- glibc-devel.s390
|
||||
- glibc-static.ppc
|
||||
- glibc-static.s390
|
||||
- libgcc.ppc
|
||||
- libgcc.s390
|
||||
- libstdc++-devel.ppc
|
||||
- libstdc++-devel.s390
|
||||
- libstdc++.ppc
|
||||
- libstdc++.s390
|
||||
- libstdc++-static.ppc
|
||||
- libstdc++-static.s390
|
||||
- zlib-devel.ppc
|
||||
- zlib-static.ppc
|
||||
- dnf-utils
|
||||
- yum-utils
|
||||
duration: 3h
|
||||
enabled: true
|
||||
adjust:
|
||||
- require+:
|
||||
- glibc-devel.i686
|
||||
- glibc-devel.x86_64
|
||||
- glibc-static.i686
|
||||
- glibc-static.x86_64
|
||||
- libgcc.i686
|
||||
- libgcc.x86_64
|
||||
- libstdc++-devel.i686
|
||||
- libstdc++-devel.x86_64
|
||||
- libstdc++.i686
|
||||
- libstdc++.x86_64
|
||||
- libstdc++-static.i686
|
||||
- libstdc++-static.x86_64
|
||||
when: arch == x86_64
|
||||
- enabled: false
|
||||
when: distro == rhel-6 and collection is defined
|
||||
continue: false
|
||||
- enabled: false
|
||||
# Too "heavy" for Fedora CI (for now)
|
||||
when: distro == fedora and trigger is defined
|
||||
continue: false
|
||||
extra-nitrate: TC#0147459
|
||||
extra-summary: /tools/gcc/Sanity/rebuild-binutils
|
||||
extra-task: /tools/gcc/Sanity/rebuild-binutils
|
||||
|
|
@ -1,89 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Sanity/rebuild-binutils
|
||||
# Description: Rebuild binutils.
|
||||
# Author: Marek Polacek <polacek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
# The test is expected to fail in devtoolset-* on RHEL-6 because of
|
||||
# the "Unresolvable `R_X86_64_NONE` relocation" family of bugs, e.g.
|
||||
# https://bugzilla.redhat.com/show_bug.cgi?id=1545386
|
||||
# They have been fixed for both the base and devtoolset binutils
|
||||
# on RHEL-7 but on RHEL-6, it was just the base binutils.
|
||||
|
||||
GCC=${GCC:-gcc}
|
||||
|
||||
# Set the variabile UNDER_DTS on non-empty string, when run under devtoolset.
|
||||
if $( echo `which gcc` | grep -qE '/opt/rh/' ); then
|
||||
UNDER_DTS="true"
|
||||
# Set the actual version of DTS
|
||||
DTS=`which gcc | awk 'BEGIN { FS="/" } { print $4 }'`
|
||||
fi
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
rlLog "Using GCC: `rpmquery -f $(which $GCC)`"
|
||||
rlRun "rpmquery -a | grep -e yum-utils -e dnf-utils" 0 "YUM or DNF utils are installed"
|
||||
rlRun "TmpDir=\$(mktemp -d)"
|
||||
rlRun "pushd $TmpDir"
|
||||
|
||||
if [ -z ${UNDER_DTS} ]; then
|
||||
rlFetchSrcForInstalled binutils || yumdownloader --source binutils
|
||||
srpm=$(find binutils*.src.rpm | tail -n1)
|
||||
else
|
||||
rlFetchSrcForInstalled $DTS-binutils || yumdownloader --source $DTS-binutils
|
||||
srpm=$(find $DTS-binutils*.src.rpm | tail -n1)
|
||||
fi
|
||||
rlRun "rpm -Uvh $srpm"
|
||||
spec_dir=$(rpm --eval=%_specdir)
|
||||
yum-builddep -y $spec_dir/binutils.spec
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
if [ "$(uname -i)" == "ppc64" ]; then
|
||||
if rlIsRHEL 6; then
|
||||
target='--target=ppc64'
|
||||
else
|
||||
target='--target=ppc'
|
||||
fi
|
||||
fi
|
||||
if [ "$(uname -i)" == "i386" ]; then
|
||||
target='--target=i686'
|
||||
fi
|
||||
|
||||
rlRun "setsebool allow_execmod 1"
|
||||
rlRun "CC=$GCC rpmbuild -bb $target --clean $spec_dir/binutils.spec &> BUILD_LOG" || ( echo "========== BUILD_LOG tail ==========" ; tail -n 20 BUILD_LOG )
|
||||
rlRun "setsebool allow_execmod 0"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlBundleLogs "Build-log" BUILD_LOG
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,76 +0,0 @@
|
|||
description: |
|
||||
Rebuild current glibc.
|
||||
summary: Rebuild glibc
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Sanity/rebuild-glibc
|
||||
framework: beakerlib
|
||||
require:
|
||||
- audit-libs-devel
|
||||
- binutils
|
||||
- gcc
|
||||
- gd-devel
|
||||
- glibc-devel
|
||||
- glibc-static
|
||||
- glibc-utils
|
||||
- libcap-devel
|
||||
- libgcc
|
||||
- libpng-devel
|
||||
- libstdc++
|
||||
- libstdc++-devel
|
||||
- libstdc++-static
|
||||
- libXpm-devel
|
||||
- nspr-devel
|
||||
- nss-devel
|
||||
- nss-softokn-devel
|
||||
- nss-util-devel
|
||||
- rpm-build
|
||||
- systemtap-sdt-devel
|
||||
- yum-utils
|
||||
recommend:
|
||||
- glibc-devel.ppc
|
||||
- glibc-devel.s390
|
||||
- glibc-static.ppc
|
||||
- glibc-static.s390
|
||||
- libgcc.ppc
|
||||
- libgcc.s390
|
||||
- libstdc++-devel.ppc
|
||||
- libstdc++-devel.s390
|
||||
- libstdc++.ppc
|
||||
- libstdc++.s390
|
||||
- libstdc++-static.ppc
|
||||
- libstdc++-static.s390
|
||||
- dnf-utils
|
||||
- yum-utils
|
||||
duration: 18h
|
||||
enabled: true
|
||||
tag:
|
||||
- NoDTS
|
||||
- rhel8-buildroot
|
||||
adjust:
|
||||
- require+:
|
||||
- glibc-devel.i686
|
||||
- glibc-devel.x86_64
|
||||
- glibc-static.i686
|
||||
- glibc-static.x86_64
|
||||
- libgcc.i686
|
||||
- libgcc.x86_64
|
||||
- libstdc++-devel.i686
|
||||
- libstdc++-devel.x86_64
|
||||
- libstdc++.i686
|
||||
- libstdc++.x86_64
|
||||
- libstdc++-static.i686
|
||||
- libstdc++-static.x86_64
|
||||
when: arch == x86_64
|
||||
- enabled: false
|
||||
when: collection is defined
|
||||
continue: false
|
||||
- enabled: false
|
||||
# Too "heavy" for Fedora CI (for now)
|
||||
when: distro == fedora and trigger is defined
|
||||
continue: false
|
||||
extra-nitrate: TC#0035677
|
||||
extra-summary: /tools/gcc/Sanity/rebuild-glibc
|
||||
extra-task: /tools/gcc/Sanity/rebuild-glibc
|
||||
|
|
@ -1,79 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# Copyright (c) 2009, 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
# Author: Michal Nowak <mnowak@redhat.com>
|
||||
# Rewrite: Marek Polacek <polacek@redhat.com>
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
cpu_good_for_make_check () {
|
||||
# glibc can create several alternative CPU-specific bits that are selected
|
||||
# in runtime. However the "make check" phase tries to test all of them and
|
||||
# fails when testing a more "advanced" binary than the SUT's CPU. In such
|
||||
# case we'd want to skip "make check" to prevent "rpmbuild" from a certain
|
||||
# failure.
|
||||
if rlIsRHEL '>=8' && [[ $(arch) = ppc64le ]] && grep -q 'POWER[2-8]' /proc/cpuinfo; then
|
||||
rlLogInfo 'RHEL8+ on <POWER9, make check will be skipped'
|
||||
return 1
|
||||
fi
|
||||
return 0
|
||||
}
|
||||
|
||||
GCC=${GCC:-gcc}
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
|
||||
cpu_good_for_make_check && CHECK_PARAM='' || CHECK_PARAM='--nocheck'
|
||||
|
||||
rlRun "rpmquery -a | grep -e yum-utils -e dnf-utils" 0 "YUM or DNF utils are installed"
|
||||
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
rlRun "pushd $TmpDir"
|
||||
|
||||
rlLogInfo "Running kernel: `uname -r`"
|
||||
rlLogInfo "Installed kernel(s): `rpm -q kernel`"
|
||||
rlLogInfo "Installed headers: `rpm -q kernel-headers`"
|
||||
|
||||
rlFetchSrcForInstalled glibc || yumdownloader --source glibc
|
||||
srpm=$(find glibc*.src.rpm | tail -n1)
|
||||
rlRun "rpm -Uvh $srpm"
|
||||
spec_dir=$(rpm --eval=%_specdir)
|
||||
yum-builddep -y $spec_dir/glibc.spec
|
||||
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartTest
|
||||
if [ "$(uname -i)" == "ppc64" ]; then
|
||||
if rlIsRHEL 7 || rlIsRHEL 6; then
|
||||
target='--target=ppc64'
|
||||
else
|
||||
target='--target=ppc'
|
||||
fi
|
||||
fi
|
||||
rlRun "CC=$GCC rpmbuild -bb $target $CHECK_PARAM --clean $spec_dir/glibc.spec &> BUILD_LOG"
|
||||
test $? -eq 0 || tail -n 20 BUILD_LOG
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlBundleLogs "Build-log" BUILD_LOG
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
int
|
||||
main (void)
|
||||
{
|
||||
char *mem = __builtin_alloca (40);
|
||||
__builtin___clear_cache (mem, mem + 40);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,78 +0,0 @@
|
|||
template <class T>
|
||||
class X
|
||||
{
|
||||
T p;
|
||||
public:
|
||||
template <class U> auto f() -> decltype(+p) { }
|
||||
};
|
||||
|
||||
struct A
|
||||
{
|
||||
int i = 42;
|
||||
};
|
||||
|
||||
struct B
|
||||
{
|
||||
int i = 42;
|
||||
B() { }
|
||||
B(int i): i(i) { }
|
||||
};
|
||||
|
||||
template <class T, T t>
|
||||
struct C
|
||||
{
|
||||
T m = t;
|
||||
};
|
||||
|
||||
template <class T, T t>
|
||||
struct D
|
||||
{
|
||||
T m = t;
|
||||
D() { }
|
||||
D(T m):m(m) { }
|
||||
};
|
||||
|
||||
struct complex
|
||||
{
|
||||
typedef float value_type;
|
||||
typedef __complex__ float _ComplexT;
|
||||
|
||||
constexpr complex(_ComplexT __z) : _M_value(__z) { }
|
||||
|
||||
constexpr complex(float __r = 0.0f, float __i = 0.0f)
|
||||
: _M_value(__r + __i * 1.0f) { }
|
||||
|
||||
private:
|
||||
_ComplexT _M_value;
|
||||
};
|
||||
|
||||
constexpr complex c1;
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
X<int>().f<int>();
|
||||
A a1;
|
||||
if (a1.i != 42) return 1;
|
||||
A a2{};
|
||||
if (a2.i != 42) return 2;
|
||||
A a3[1];
|
||||
if (a3[0].i != 42) return 3;
|
||||
|
||||
B b1;
|
||||
if (b1.i != 42) return 3;
|
||||
B b2 (24);
|
||||
if (b2.i != 24) return 4;
|
||||
|
||||
C<int,3> c1;
|
||||
if (c1.m != 3) return 5;
|
||||
C<int,5> c2 {};
|
||||
if (c2.m != 5) return 6;
|
||||
|
||||
D<int,3> d1;
|
||||
if (d1.m != 3) return 7;
|
||||
D<int,3> d2 (5) ;
|
||||
if (d2.m != 5) return 8;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,8 +0,0 @@
|
|||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
puts ("Hello World!");
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
#include <iostream>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
std::cout << "Hello, world!\n";
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
program hello
|
||||
print *, "Hello World!"
|
||||
end program hello
|
||||
|
|
@ -1,41 +0,0 @@
|
|||
// { dg-options -std=c++0x }
|
||||
// { dg-do run }
|
||||
|
||||
extern "C" void abort();
|
||||
|
||||
template <class T>
|
||||
auto apply (T t) -> decltype (t())
|
||||
{
|
||||
return t();
|
||||
}
|
||||
|
||||
template <class T>
|
||||
T f(T t)
|
||||
{
|
||||
T t2 = t;
|
||||
if (t != [=]()->T { return t; }())
|
||||
abort ();
|
||||
if (t != [=] { return t; }())
|
||||
abort ();
|
||||
if (t != [=] { return t2; }())
|
||||
abort ();
|
||||
if (t != [&] { return t; }())
|
||||
abort ();
|
||||
if (t != apply([=]{return t;}))
|
||||
abort ();
|
||||
|
||||
int i;
|
||||
[&] (int a) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(a) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(i) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(t) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(a+i) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(a+t) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(i+t) { return a+i+t; } (0);
|
||||
[&] (int a) -> decltype(a+i+t) { return a+i+t; } (0);
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
f(0xbeef);
|
||||
}
|
||||
|
|
@ -1,51 +0,0 @@
|
|||
summary: Try -m32 and -m64 options.
|
||||
description: ''
|
||||
contact: mcermak@redhat.com
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
path: /tests/Sanity/test-m32-m64-options
|
||||
framework: beakerlib
|
||||
require:
|
||||
- gcc
|
||||
- gcc-c++
|
||||
- gcc-gfortran
|
||||
- glibc-common
|
||||
- libgcc
|
||||
- libgomp
|
||||
- libgfortran
|
||||
- libstdc++
|
||||
- libstdc++-devel
|
||||
- glibc-devel
|
||||
- libitm
|
||||
recommend:
|
||||
- libgfortran44.i686
|
||||
- libgfortran44.x86_64
|
||||
- libgfortran4.i686
|
||||
- libgfortran4.x86_64
|
||||
duration: 10m
|
||||
enabled: true
|
||||
link:
|
||||
- relates: https://bugzilla.redhat.com/show_bug.cgi?id=1113429
|
||||
adjust:
|
||||
- enabled: false
|
||||
when: arch == ia64, ppc64, s390, s390x
|
||||
continue: false
|
||||
- require+:
|
||||
- glibc-devel.i686
|
||||
- glibc-devel.x86_64
|
||||
- libgcc.i686
|
||||
- libgcc.x86_64
|
||||
- libgfortran.i686
|
||||
- libgfortran.x86_64
|
||||
- libgomp.i686
|
||||
- libgomp.x86_64
|
||||
- libitm.i686
|
||||
- libitm.x86_64
|
||||
- libstdc++.i686
|
||||
- libstdc++.x86_64
|
||||
when: arch == x86_64
|
||||
continue: false
|
||||
extra-nitrate: TC#0197178
|
||||
extra-summary: /tools/gcc/Sanity/test-m32-m64-options
|
||||
extra-task: /tools/gcc/Sanity/test-m32-m64-options
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
#include <omp.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
int th_id;
|
||||
int nthreads;
|
||||
|
||||
#pragma omp parallel private(th_id)
|
||||
{
|
||||
th_id = omp_get_thread_num ();
|
||||
printf ("Hello World from thread %d\n", th_id);
|
||||
|
||||
#pragma omp barrier
|
||||
if (th_id == 0)
|
||||
{
|
||||
nthreads = omp_get_num_threads ();
|
||||
printf ("There are %d threads\n", nthreads);
|
||||
}
|
||||
}
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
#include <quadmath.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
__float128 r = strtoflt128 ("1.23456789", NULL);
|
||||
|
||||
int prec = 20;
|
||||
int width = 46;
|
||||
char buf[128];
|
||||
|
||||
r = 2.0q;
|
||||
r = sqrtq (r);
|
||||
int n = quadmath_snprintf (buf, sizeof buf, "%+-#*.20Qe", width, r);
|
||||
if ((size_t) n < sizeof buf)
|
||||
/* Prints: +1.41421356237309504880e+00. */
|
||||
printf ("%s\n", buf);
|
||||
quadmath_snprintf (buf, sizeof buf, "%Qa", r);
|
||||
if ((size_t) n < sizeof buf)
|
||||
/* Prints: 0x1.6a09e667f3bcc908b2fb1366ea96p+0. */
|
||||
printf ("%s\n", buf);
|
||||
n = quadmath_snprintf (NULL, 0, "%+-#46.*Qe", prec, r);
|
||||
if (n > -1)
|
||||
{
|
||||
char *str = malloc (n + 1);
|
||||
if (str)
|
||||
{
|
||||
quadmath_snprintf (str, n + 1, "%+-#46.*Qe", prec, r);
|
||||
/* Prints: +1.41421356237309504880e+00. */
|
||||
printf ("%s\n", str);
|
||||
}
|
||||
free (str);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,213 +0,0 @@
|
|||
#!/bin/bash
|
||||
# vim: dict=/usr/share/beakerlib/dictionary.vim cpt=.,w,b,u,t,i,k
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# runtest.sh of /tools/gcc/Sanity/test-m32-m64-options
|
||||
# Description: Try -m32 and -m64 options.
|
||||
# Author: Marek Polacek <polacek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
# This is for Toolset.
|
||||
#
|
||||
# In this test, we try to compile and run programs using -m32 and -m64.
|
||||
# We compile C, C++ and Fortran Hello World programs. Also, there are two
|
||||
# proglets which are exercising some C++11 features. Furthermore, we try
|
||||
# -fgnu-tm, -fopenmp options. We also use libquadmath a little bit.
|
||||
# We call a function from libgcc. We also use the __thread keyword.
|
||||
# Everything should be ok when running under e.g.:
|
||||
# scl enable devtoolset-1.0 bash
|
||||
# Note, that gfortran is not a part of 1.0 release.
|
||||
|
||||
# Include Beaker environment
|
||||
. /usr/share/beakerlib/beakerlib.sh || exit 1
|
||||
|
||||
PACKAGES=(gcc gcc-c++ gcc-gfortran glibc-common libgcc libgomp libgfortran glibc-devel libitm)
|
||||
|
||||
PACKAGES_X86_64=(libgomp libgfortran glibc-devel libgcc libitm)
|
||||
|
||||
# Choose the compiler.
|
||||
GCC=${GCC:-gcc}
|
||||
GXX=${GXX:-g++}
|
||||
GFORTRAN=${GFORTRAN:-gfortran}
|
||||
|
||||
PACKAGE=$GCC
|
||||
|
||||
# Set the variabile UNDER_DTS on non-empty string, when run under devtoolset
|
||||
if $( echo `which gcc` | grep -qE '/opt/rh/' ); then
|
||||
UNDER_DTS="true"
|
||||
# Set the actual version of DTS
|
||||
DTS=`which gcc | awk 'BEGIN { FS="/" } { print $4 }'`
|
||||
fi
|
||||
|
||||
rlJournalStart
|
||||
rlPhaseStartSetup
|
||||
for p in "${PACKAGES[@]}"; do
|
||||
rpm -q "$p" || yum install -y $p
|
||||
rlAssertRpm "$p"
|
||||
done; unset p
|
||||
yum update -y libitm # this is a hack, since libitm is a troublemaker
|
||||
if [ -n "`rlGetSecondaryArch`" ]; then
|
||||
rlCheckRpm "libitm.`rlGetSecondaryArch`" || yum install -y libitm.`rlGetSecondaryArch`
|
||||
rlAssertRpm "libitm.`rlGetSecondaryArch`"
|
||||
fi
|
||||
|
||||
rlCheckRpm "libstdc++-devel.`rlGetPrimaryArch`" || yum install -y libstdc++-devel.`rlGetPrimaryArch`
|
||||
rlAssertRpm "libstdc++-devel.`rlGetPrimaryArch`"
|
||||
# RHEL-8 CI debugging hack (to be removed when not needed):
|
||||
rlRun "rpmquery -l libstdc++-devel.`rlGetPrimaryArch` | grep -e bits/c++config"
|
||||
rlRun "rpmquery -l libstdc++-devel.`rlGetPrimaryArch` | grep -e iostream"
|
||||
|
||||
if [ -n "`rlGetSecondaryArch`" ]; then
|
||||
rlCheckRpm "libitm.`rlGetSecondaryArch`" || yum install -y libitm.`rlGetSecondaryArch`
|
||||
rlAssertRpm "libitm.`rlGetSecondaryArch`"
|
||||
fi
|
||||
|
||||
if [ ! -z ${UNDER_DTS} ]; then
|
||||
rlCheckRpm "$DTS-libstdc++-devel" || yum install -y $DTS-libstdc++-devel
|
||||
rlAssertRpm "$DTS-libstdc++-devel"
|
||||
if [ "`arch`" = 'x86_64' ]; then
|
||||
rlCheckRpm "$DTS-libquadmath-devel" || yum install -y $DTS-libquadmath-devel
|
||||
rlAssertRpm "$DTS-libquadmath-devel"
|
||||
fi
|
||||
if rlIsRHEL '<=7'; then # no libgfortran[45] on RHEL8+
|
||||
rlCheckRpm "libgfortran4" || yum install -y libgfortran4
|
||||
if [ -n "`rlGetSecondaryArch`" ]; then
|
||||
rlCheckRpm "libgfortran4.`rlGetSecondaryArch`" || yum install -y libgfortran4.`rlGetSecondaryArch`
|
||||
rlAssertRpm "libgfortran4.`rlGetSecondaryArch`"
|
||||
fi
|
||||
rlCheckRpm "libgfortran5" || yum install -y libgfortran5
|
||||
rlAssertRpm "libgfortran5" && yum -y update libgfortran5
|
||||
if [ -n "`rlGetSecondaryArch`" ]; then
|
||||
rlCheckRpm "libgfortran5.`rlGetSecondaryArch`" || yum install -y libgfortran5.`rlGetSecondaryArch`
|
||||
rlAssertRpm "libgfortran5.`rlGetSecondaryArch`"
|
||||
fi
|
||||
fi
|
||||
fi
|
||||
|
||||
# Check whether on rhel6 x86_64 i686-packages are installed too.
|
||||
# On rhel5 i386-packages should be already installed.
|
||||
if [ "$(uname -i)" == "x86_64" ]; then
|
||||
for pack in "${PACKAGES_X86_64[@]}"; do
|
||||
rpm -q ${pack}.i?86 || yum install -y ${pack}.i?86
|
||||
done; unset pack
|
||||
|
||||
if [ ! -z ${UNDER_DTS} ]; then
|
||||
yum install -y $DTS-libstdc++-devel.i?86
|
||||
yum install -y $DTS-libquadmath-devel.i?86
|
||||
fi
|
||||
fi
|
||||
|
||||
rlRun "TmpDir=\$(mktemp -d)" 0 "Creating tmp directory"
|
||||
# We need some files.
|
||||
rlRun "cp -v hello.{c,cpp,f90} tm.c quad.c thr-init-2.c \
|
||||
clear_cache.c omphello.c lambda-template.C cpp11.cpp $TmpDir"
|
||||
rlRun "pushd $TmpDir"
|
||||
rlPhaseEnd
|
||||
|
||||
rlPhaseStartSetup "Showing compiler versions"
|
||||
for compiler in $GCC $GXX $GFORTRAN
|
||||
do
|
||||
rlLog "Version of compiler: $compiler"
|
||||
eval "$compiler --version 2>&1" | while read line
|
||||
do
|
||||
rlLog " $line"
|
||||
done
|
||||
done
|
||||
rlPhaseEnd
|
||||
|
||||
ARCH="$(uname -i)"
|
||||
case "$ARCH" in
|
||||
"aarch64") export SWITCHES="-mlittle-endian" # we don't have -m64, so let's use some dummy switch that is enabled by default
|
||||
;;
|
||||
"i386") export SWITCHES="-m32"
|
||||
;;
|
||||
"ppc64") export SWITCHES="-m32 -m64"
|
||||
;;
|
||||
"ppc64le") export SWITCHES="-m64"
|
||||
;;
|
||||
"s390x") export SWITCHES="-m31 -m64"
|
||||
;;
|
||||
"x86_64") export SWITCHES="-m32 -m64"
|
||||
;;
|
||||
esac
|
||||
|
||||
# Always try both -m32 and -m64.
|
||||
for m in $SWITCHES; do
|
||||
rlPhaseStartTest "Compile and run [$m]"
|
||||
rlRun "$GCC $m hello.c -o hello_c"
|
||||
rlRun "./hello_c"
|
||||
|
||||
rlRun "$GXX $m hello.cpp -o hello_cpp"
|
||||
rlRun "./hello_cpp"
|
||||
|
||||
# Now try a few C++11 features.
|
||||
$GXX -xc++ -std=c++11 - <<< "int main(){}"
|
||||
if test $? -eq 0; then
|
||||
rlRun "$GXX $m -std=c++11 lambda-template.C -o lambda"
|
||||
rlRun "./lambda"
|
||||
|
||||
rlRun "$GXX $m -std=c++11 cpp11.cpp -o cpp11"
|
||||
rlRun "./cpp11"
|
||||
fi
|
||||
|
||||
rlRun "$GFORTRAN $m hello.f90 -o hello_fortran"
|
||||
rlRun "./hello_fortran"
|
||||
|
||||
# TM support is GCC >=4.7 only.
|
||||
$GCC -xc -O2 -std=gnu99 -fgnu-tm - <<< "int main(){}"
|
||||
if test $? -eq 0; then
|
||||
rlRun "$GCC $m -O2 -std=gnu99 -fgnu-tm tm.c -o tm"
|
||||
rlRun "./tm"
|
||||
fi
|
||||
|
||||
# Test OpenMP.
|
||||
rlRun "$GCC $m omphello.c -O2 -std=gnu99 -fopenmp -o omp"
|
||||
rlRun "./omp"
|
||||
|
||||
# Test __thread.
|
||||
rlRun "$GCC $m thr-init-2.c -O2 -std=gnu99 -ftls-model=initial-exec -o thr"
|
||||
rlRun "./thr"
|
||||
|
||||
# Now test some libquadmath stuff (__float128 support).
|
||||
# libquadmath is mising on RHEL machines, usually.
|
||||
# But with DTS, this should be available.
|
||||
if [ ! -z ${UNDER_DTS} ]; then
|
||||
if [ "`arch`" = 'x86_64' ]; then
|
||||
rlRun "$GCC $m quad.c -O2 -std=gnu99 -lquadmath -o quad -lm"
|
||||
rlRun "./quad"
|
||||
else
|
||||
rlLog "quadmath test skipped (needs x86_64)"
|
||||
fi
|
||||
fi
|
||||
|
||||
# And now something from libgcc, e.g. __builtin___clear_cache.
|
||||
rlRun "$GCC $m clear_cache.c -O2 -std=gnu99 -o cache"
|
||||
rlRun "./cache"
|
||||
rlPhaseEnd
|
||||
done; unset m
|
||||
|
||||
rlPhaseStartCleanup
|
||||
rlRun "popd"
|
||||
rlRun "rm -r $TmpDir" 0 "Removing tmp directory"
|
||||
rlPhaseEnd
|
||||
rlJournalPrintText
|
||||
rlJournalEnd
|
||||
|
|
@ -1,20 +0,0 @@
|
|||
extern void abort() ;
|
||||
|
||||
static __thread int fstat ;
|
||||
static __thread int fstat = 1;
|
||||
|
||||
int test_code(int b)
|
||||
{
|
||||
fstat += b ;
|
||||
return fstat;
|
||||
}
|
||||
|
||||
int main (int ac, char *av[])
|
||||
{
|
||||
int a = test_code(1);
|
||||
|
||||
if ((a != 2) || (fstat != 2))
|
||||
abort () ;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,34 +0,0 @@
|
|||
extern void *malloc (__SIZE_TYPE__) __attribute__((malloc,transaction_safe));
|
||||
|
||||
static int __attribute__((transaction_safe))
|
||||
something (void)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
struct large { int foo[500]; };
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
int *p;
|
||||
struct large *lp;
|
||||
|
||||
__transaction_atomic {
|
||||
p = malloc (sizeof (*p) * 100);
|
||||
lp = malloc (sizeof (*lp) * 100);
|
||||
|
||||
/* No instrumentation necessary; P and LP are transaction local. */
|
||||
p[5] = 123;
|
||||
lp->foo[66] = 123;
|
||||
|
||||
if (something ())
|
||||
__transaction_cancel;
|
||||
}
|
||||
|
||||
__transaction_relaxed {
|
||||
++p[5];
|
||||
}
|
||||
|
||||
return ((p[5] == 124) ? 0 : 1);
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
#include <stdio.h>
|
||||
|
||||
void hello() {
|
||||
printf("Hello World\n");
|
||||
}
|
||||
|
|
@ -1,5 +0,0 @@
|
|||
#include <iostream>
|
||||
|
||||
void hello() {
|
||||
std::cout << "Hello World\n";
|
||||
}
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
void hello();
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
hello();
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,6 +0,0 @@
|
|||
void hello();
|
||||
|
||||
int main(int argc, char **argv) {
|
||||
hello();
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
summary: Test compiling with the Fedora C/CXX flags.
|
||||
description: ''
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
require:
|
||||
- annobin-annocheck
|
||||
- gcc
|
||||
- gcc-c++
|
||||
- redhat-rpm-config
|
||||
|
|
@ -1,29 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
set -ex
|
||||
|
||||
default_cflags=$(rpm -E '%{build_cflags}')
|
||||
default_cxxflags=$(rpm -E '%{build_cxxflags}')
|
||||
default_ldflags=$(rpm -E '%{build_ldflags}')
|
||||
|
||||
cflags=$(rpm -D '%toolchain gcc' -E '%{build_cflags}')
|
||||
cxxflags=$(rpm -D '%toolchain gcc' -E '%{build_cxxflags}')
|
||||
ldflags=$(rpm -D '%toolchain gcc' -E '%{build_ldflags}')
|
||||
|
||||
test "$default_cflags" = "$cflags"
|
||||
test "$default_cxxflags" = "$cxxflags"
|
||||
test "$default_ldflags" = "$ldflags"
|
||||
|
||||
gcc $cflags -o hello.o -c hello.c
|
||||
annocheck hello.o
|
||||
gcc $cflags -o main.o -c main.c
|
||||
gcc $ldflags -o hello main.o hello.o
|
||||
annocheck hello
|
||||
./hello | grep "Hello World"
|
||||
|
||||
g++ $cxxflags -o hello-cpp.o -c hello.cpp
|
||||
annocheck hello-cpp.o
|
||||
g++ $cxxflags -o main-cpp.o -c main.cpp
|
||||
g++ $ldflags -o hello-cpp main-cpp.o hello-cpp.o
|
||||
annocheck hello-cpp
|
||||
./hello-cpp | grep "Hello World"
|
||||
|
|
@ -1,65 +0,0 @@
|
|||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Makefile of /tools/gcc/Sanity/smoke-test
|
||||
# Description: Basic smoke test.
|
||||
# Author: Marek Polacek <polacek@redhat.com>
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
#
|
||||
# Copyright (c) 2012 Red Hat, Inc. All rights reserved.
|
||||
#
|
||||
# This copyrighted material is made available to anyone wishing
|
||||
# to use, modify, copy, or redistribute it subject to the terms
|
||||
# and conditions of the GNU General Public License version 2.
|
||||
#
|
||||
# This program is distributed in the hope that it will be
|
||||
# useful, but WITHOUT ANY WARRANTY; without even the implied
|
||||
# warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
||||
# PURPOSE. See the GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public
|
||||
# License along with this program; if not, write to the Free
|
||||
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
# Boston, MA 02110-1301, USA.
|
||||
#
|
||||
# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
export TEST=/tools/gcc/Sanity/smoke-test
|
||||
export TESTVERSION=1.0
|
||||
|
||||
BUILT_FILES=
|
||||
|
||||
FILES=$(METADATA) runtest.sh Makefile PURPOSE hello.c hello.f90 hello.cpp tm.c quad.c omphello.c thr-init-2.c clear_cache.c
|
||||
|
||||
.PHONY: all install download clean
|
||||
|
||||
run: $(FILES) build
|
||||
./runtest.sh
|
||||
|
||||
build: $(BUILT_FILES)
|
||||
test -x runtest.sh || chmod a+x runtest.sh
|
||||
|
||||
clean:
|
||||
rm -f *~ $(BUILT_FILES)
|
||||
|
||||
|
||||
include /usr/share/rhts/lib/rhts-make.include
|
||||
|
||||
$(METADATA): Makefile
|
||||
@echo "Owner: Marek Polacek <mpolacek@redhat.com>" > $(METADATA)
|
||||
@echo "Name: $(TEST)" >> $(METADATA)
|
||||
@echo "TestVersion: $(TESTVERSION)" >> $(METADATA)
|
||||
@echo "Path: $(TEST_DIR)" >> $(METADATA)
|
||||
@echo "Description: Basic smoke test." >> $(METADATA)
|
||||
@echo "Type: Sanity" >> $(METADATA)
|
||||
@echo "TestTime: 10m" >> $(METADATA)
|
||||
@echo "RunFor: gcc" >> $(METADATA)
|
||||
@echo "RunFor: devtoolset-1.0-gcc" >> $(METADATA)
|
||||
@echo "Requires: gcc gcc-c++ gcc-gfortran glibc-common glibc-devel" >> $(METADATA)
|
||||
@echo "Requires: libquadmath libquadmath-devel libgomp libgcc libstdc++-devel" >> $(METADATA)
|
||||
@echo "Priority: Normal" >> $(METADATA)
|
||||
@echo "License: GPLv2" >> $(METADATA)
|
||||
@echo "Confidential: no" >> $(METADATA)
|
||||
@echo "Destructive: no" >> $(METADATA)
|
||||
|
||||
rhts-lint $(METADATA)
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
PURPOSE of /tools/gcc/Sanity/smoke-test
|
||||
Description: Basic smoke test.
|
||||
Author: Marek Polacek <polacek@redhat.com>
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
int
|
||||
main (void)
|
||||
{
|
||||
char *mem = __builtin_alloca (40);
|
||||
__builtin___clear_cache (mem, mem + 40);
|
||||
return 0;
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
puts ("Hello World!");
|
||||
}
|
||||
|
|
@ -1,7 +0,0 @@
|
|||
#include <iostream>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
std::cout << "Hello, world!\n";
|
||||
}
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
program hello
|
||||
print *, "Hello World!"
|
||||
end program hello
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
summary: Basic smoke test.
|
||||
description: ''
|
||||
contact:
|
||||
- Marek Polacek <mpolacek@redhat.com>
|
||||
component:
|
||||
- gcc
|
||||
test: ./runtest.sh
|
||||
framework: beakerlib
|
||||
recommend:
|
||||
- gcc
|
||||
- gcc-c++
|
||||
- gcc-gfortran
|
||||
- glibc-common
|
||||
- glibc-devel
|
||||
- libquadmath
|
||||
- libquadmath-devel
|
||||
- libgomp
|
||||
- libgcc
|
||||
- libstdc++-devel
|
||||
duration: 10m
|
||||
extra-summary: /tools/gcc/Sanity/smoke-test
|
||||
extra-task: /tools/gcc/Sanity/smoke-test
|
||||
|
|
@ -1,24 +0,0 @@
|
|||
#include <omp.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
int th_id;
|
||||
int nthreads;
|
||||
|
||||
#pragma omp parallel private(th_id)
|
||||
{
|
||||
th_id = omp_get_thread_num ();
|
||||
printf ("Hello World from thread %d\n", th_id);
|
||||
|
||||
#pragma omp barrier
|
||||
if (th_id == 0)
|
||||
{
|
||||
nthreads = omp_get_num_threads ();
|
||||
printf ("There are %d threads\n", nthreads);
|
||||
}
|
||||
}
|
||||
return EXIT_SUCCESS;
|
||||
}
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
#include <quadmath.h>
|
||||
#include <stdlib.h>
|
||||
#include <stdio.h>
|
||||
|
||||
int
|
||||
main (void)
|
||||
{
|
||||
__float128 r = strtoflt128 ("1.23456789", NULL);
|
||||
|
||||
int prec = 20;
|
||||
int width = 46;
|
||||
char buf[128];
|
||||
|
||||
r = 2.0q;
|
||||
r = sqrtq (r);
|
||||
int n = quadmath_snprintf (buf, sizeof buf, "%+-#*.20Qe", width, r);
|
||||
if ((size_t) n < sizeof buf)
|
||||
/* Prints: +1.41421356237309504880e+00 */
|
||||
printf ("%s\n", buf);
|
||||
quadmath_snprintf (buf, sizeof buf, "%Qa", r);
|
||||
if ((size_t) n < sizeof buf)
|
||||
/* Prints: 0x1.6a09e667f3bcc908b2fb1366ea96p+0 */
|
||||
printf ("%s\n", buf);
|
||||
n = quadmath_snprintf (NULL, 0, "%+-#46.*Qe", prec, r);
|
||||
if (n > -1)
|
||||
{
|
||||
char *str = malloc (n + 1);
|
||||
if (str)
|
||||
{
|
||||
quadmath_snprintf (str, n + 1, "%+-#46.*Qe", prec, r);
|
||||
/* Prints: +1.41421356237309504880e+00 */
|
||||
printf ("%s\n", str);
|
||||
}
|
||||
free (str);
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue