[libcxx-commits] [PATCH] D154246: [libc++] Add check for building with picolibc
Michael Platings via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Tue Jul 4 03:53:19 PDT 2023
michaelplatings added inline comments.
================
Comment at: libcxx/utils/ci/run-buildbot:617
+ # -Wno-atomic-alignment to disable warning-as-error:
+ # cxx_atomic_impl.h:376:12: large atomic operation may incur significant performance
+ # penalty; the access size (4 bytes) exceeds the max lock-free size (0 bytes)
----------------
ldionne wrote:
> I think we should just use a pragma to disable the warning in that function.
I've now found that the warning pops up in all the `__c11_atomic_...` invocations so I've surrounded all the invocations with a pragma disable.
================
Comment at: libcxx/utils/ci/run-buildbot:625
+ echo "--- Installing libc++, libc++abi and libunwind to a fake location"
+ ${NINJA} -vC "${BUILD_DIR}" install-cxx install-cxxabi install-unwind
+;;
----------------
ldionne wrote:
> We're not running the tests? I would expect
>
> ```
> echo "+++ Running the libc++ tests"
> ${NINJA} -vC "${BUILD_DIR}" check-cxx check-cxxabi check-unwind
> ```
Yes I'd also like to get the tests passing or xfailed but that's going to require a fair bit of work. Off the top of my head:
* Add linker scripts.
* Figure out how to run the tests via emulation in the Docker containers.
* Xfail all the tests that rely on features that picolibc doesn't support.
All of these have been done already with various hacks in various downstream repositories, but finding a suitable way to do them properly in the libcxx sources is something I anticipate could take months.
For now I just want to set a baseline of keeping libcxx+picolibc building. Once that's in place we can start ratcheting up the quality bar.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D154246/new/
https://reviews.llvm.org/D154246
More information about the libcxx-commits
mailing list