AArch64 and PowerPC support

Marshall,
If I look at the libc++ LLVM page, the architectures like AArch64 and
PowerPC with Linux are still not marked as “Supported.” What are the
time frame for them to be properly supported?
On POWER8 I seem to build and use libc++, but not throughly using the
libc++ test suite for the complete coverage.

I suspect that means that either:

  • The web pages are out of date, or
  • We don’t have bots for them - so they’re not really tested.

I know that people are using libc++ on 64 bit ARM platforms (both iOS and Android, for example)

I’ll put it on my TODO list.

– Marshall

Marshall,
If I look at the libc++ LLVM page, the architectures like AArch64 and
PowerPC with Linux are still not marked as "Supported." What are the
time frame for them to be properly supported?
On POWER8 I seem to build and use libc++, but not throughly using the
libc++ test suite for the complete coverage.

I suspect that means that either:
* The web pages are out of date, or
* We don't have bots for them - so they're not really tested.

I know that people are using libc++ on 64 bit ARM platforms (both iOS and Android, for example)

For the record, we have buildbots for AArch64 Linux here:
http://lab.llvm.org:8011/builders/libcxx-libcxxabi-libunwind-aarch64-linux
http://lab.llvm.org:8011/builders/libcxx-libcxxabi-libunwind-aarch64-linux-noexceptions

They're red at the time of writing, but we're actively maintaining
them and will bring them back to green asap.

Please let us know if there are any other requirements or if we should
be testing other configs as well (at the time being we're only
compiling with clang, is gcc also a must?).

Cheers,
Diana

Hi,

Would you be able to execute the libc++ test suite just after the build is finished? I’ve been trying to do that on our local HPE Apollo, but no luck.

Hi,

Would you be able to execute the libc++ test suite just after the build is finished? I’ve been trying to do that on our local HPE Apollo, but no luck.

I'm not sure what you mean by that. The bots run
$ make cxxabi
$ make cxx
$ make check-libcxx
$ make check-libcxxabi

For check-libcxx we have

  Expected Passes : 6108
  Expected Failures : 38
  Unsupported Tests : 149

And for check-libcxxabi we have

  Expected Passes : 53
  Unsupported Tests : 10

What do you see on your machine?

Cheers,
Diana

Ah thanks for listing the targets executed during the job.

“Testing libc++”

https://libcxx.llvm.org/docs/TestingLibcxx.html

I am having problems to follow their instructions, but I suspect it is out of date?

Ah thanks for listing the targets executed during the job.

“Testing libc++”

https://libcxx.llvm.org/docs/TestingLibcxx.html

I am having problems to follow their instructions, but I suspect it is out of date?

Not out of date, but incomplete. :frowning:

You can run lit manually to run a subset of the tests (and I do this most every day),
but to run the entire test suite you just run make check-libcxx from your build directory (as Diana has mentioned).
[ On a i5 x86 laptop, this takes about 25 minutes ]

– Marshall

Marshall,

Then may I ask you to update (make the doc in sync with the latest trunk) it for us? Running all the jobs on POWER8 should not take longer either though.

Testing Times were 191 seconds for check-libcxx and 32 seconds for check-libcxxabi
on POWER8, but given there are some unexpected failures during the tests, executing
failure tests only with lit helps us.

The very first sentence of that page is:
libc++ uses LIT to configure and run its tests. The primary way to run the libc++ tests is by using make check-libcxx.

(I missed it too)

– Marshall