diff options
author | Louis Dionne <ldionne.2@gmail.com> | 2023-06-12 11:21:47 -0700 |
---|---|---|
committer | Louis Dionne <ldionne.2@gmail.com> | 2023-06-13 10:20:30 -0700 |
commit | 520c7fbbd0356f135a19cc764ff70e7f52ba11a0 (patch) | |
tree | 13b99f8d69106590f08ba0e3ac9c3868ea524a5b /libcxx/test/std/strings/basic.string | |
parent | 35419651c53c9f9a58d2b86a4ec61d47c2105c55 (diff) | |
download | llvm-520c7fbbd0356f135a19cc764ff70e7f52ba11a0.zip llvm-520c7fbbd0356f135a19cc764ff70e7f52ba11a0.tar.gz llvm-520c7fbbd0356f135a19cc764ff70e7f52ba11a0.tar.bz2 |
[libc++] Mark slow tests as unsupported on GCC
Some tests in our test suite are unbelievably slow on GCC due to the
use of the always_inline attribute. See [1] for more details.
This patch introduces the GCC-ALWAYS_INLINE-FIXME lit feature to
disable tests that are plagued by that issue. At the same time, it
moves several existing tests from ad-hoc `UNSUPPORTED: gcc-12` markup
to the new GCC-ALWAYS_INLINE-FIXME feature, and marks the slowest tests
reported by the CI as `UNSUPPORTED: GCC-ALWAYS_INLINE-FIXME`.
[1]: https://discourse.llvm.org/t/rfc-stop-supporting-extern-instantiations-with-gcc/71277/1
Differential Revision: https://reviews.llvm.org/D152736
Diffstat (limited to 'libcxx/test/std/strings/basic.string')
3 files changed, 6 insertions, 0 deletions
diff --git a/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_T_size_size.pass.cpp b/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_T_size_size.pass.cpp index b3c58b9d..74e25c6 100644 --- a/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_T_size_size.pass.cpp +++ b/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_T_size_size.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// +// UNSUPPORTED: GCC-ALWAYS_INLINE-FIXME + // <string> // template <class T> diff --git a/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp b/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp index 2c9a488..b700eb7 100644 --- a/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp +++ b/libcxx/test/std/strings/basic.string/string.modifiers/string_replace/size_size_string_size_size.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// +// UNSUPPORTED: GCC-ALWAYS_INLINE-FIXME + // <string> // basic_string<charT,traits,Allocator>& diff --git a/libcxx/test/std/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp b/libcxx/test/std/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp index 68dbecb..33d780e 100644 --- a/libcxx/test/std/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp +++ b/libcxx/test/std/strings/basic.string/string.ops/string_compare/size_size_string_size_size.pass.cpp @@ -6,6 +6,8 @@ // //===----------------------------------------------------------------------===// +// UNSUPPORTED: GCC-ALWAYS_INLINE-FIXME + // <string> // int compare(size_type pos1, size_type n1, const basic_string& str, |