12 Commits

Author SHA1 Message Date
Louis Dionne
09e3a36058
[libc++][modules] Fix missing and incorrect includes (#108850)
This patch adds a large number of missing includes in the libc++ headers
and the test suite. Those were found as part of the effort to move
towards a mostly monolithic top-level std module.
2024-09-16 15:06:20 -04:00
ZhangYin
812ae91d54
[libc++] <experimental/simd> Add ++/-- operators for simd reference (#88091) 2024-08-14 15:30:17 +08:00
ZhangYin
899055f20b
[libc++] <experimental/simd> Add compound assignment operators for simd reference (#86761) 2024-08-04 10:16:56 +08:00
ZhangYin
6ec1ddfd72
[libc++] <experimental/simd> Add swap functions of simd reference (#86478) 2024-06-23 12:51:02 +08:00
ZhangYin
5c663aa9ae
[libc++] <experimental/simd> Reduce types for template parameter U in tests (#83781) 2024-03-26 14:38:20 +08:00
Kamau Bridgeman
503dbe75a0 XFailing test cases that fail on PowerPC
These test cases fail when the libcxx and libcxxabi runtimes are
built on Linux PowerPC. XFailing them until the issue is resolved.
2023-12-04 12:11:45 -06:00
Michael Platings
8aeacebf28 [libc++] Add initial support for picolibc
Picolibc is a C Standard Library that is commonly used in embedded
environments. This patch adds initial support for this configuration
along with pre-commit CI. As of this patch, the test suite only builds
the tests and nothing is run. A follow-up patch will make the test suite
actually run the tests.

Differential Revision: https://reviews.llvm.org/D154246
2023-11-29 10:43:16 -05:00
Louis Dionne
5cd24759c4
[libc++] Reduce the compilation time required by SIMD tests (#72602)
Testing all the SIMD widths exhaustively is nice in theory, however in
practice it leads to extremely slow tests. Given that
1. our testing resources are finite and actually pretty costly
2. we have thousands of other tests we also need to run
3. the value of executing these SIMD tests for absolutely all supported
SIMD widths is fairly small compared to cherry-picking a few relevant
widths

I think it makes a lot of sense to reduce the exhaustiveness of these
tests. I'm getting a ~4x speedup for the worst offender
(reference_assignment.pass.cpp) after this patch.

I'd also like to make this a reminder to anyone seeing this PR that
tests impact everyone's productivity. Slow unit tests contribute to
making the CI slower as a whole, and that has a direct impact on
everyone's ability to iterate quickly during PRs. Even though we have a
pretty robust CI setup in place, we should remember that it doesn't come
for free and should strive to keep our tests at a good bang for the buck
ratio.
2023-11-20 13:27:59 -05:00
Vitaly Buka
22c3d9d9a4 [libc++] Disable test which timeouts on ARM with sanitizers
Introduced with cf0f6a146038ca95e9ab9df40c153fd22015a042 (#70020).

https://lab.llvm.org/buildbot/#/builders/237/builds/5145
https://lab.llvm.org/buildbot/#/builders/236/builds/7004
https://lab.llvm.org/buildbot/#/builders/239/builds/4269

Sometimes it passes with Asan but it's extemly slow

```
Slowest Tests:
1388.61s: llvm-libc++-shared.cfg.in :: std/experimental/simd/simd.reference/reference_assignment.pass.cpp
309.42s:  llvm-libc++-shared.cfg.in :: std/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp
```
2023-10-27 14:28:28 -07:00
ZhangYin
cf0f6a1460
[libc++] <experimental/simd> Add assignment operator of simd reference (#70020) 2023-10-26 23:09:55 +02:00
ZhangYin
dc53410693
[libc++] <experimental/simd> Add operator value_type() of simd reference (#68960) 2023-10-23 11:51:34 +02:00
Zhangyin
e7a45c6d76 [libcxx] <experimental/simd> Added internal storage type, constructors, subscript operators of class simd/simd_mask and related tests
[libcxx] <experimental/simd> Added internal storage type for class simd/simd_mask
[libcxx] <experimental/simd> Added all constructors of class simd/simd_mask and related tests
[libcxx] <experimental/simd> Added basic simd reference implementation, subscript operators of class simd/simd_mask and related tests

Reviewed By: #libc, philnik

Differential Revision: https://reviews.llvm.org/D144364
2023-09-12 11:41:46 +08:00