Details
- Reviewers
phosek - Group Reviewers
Restricted Project - Commits
- rG180e9e5eab49: [libc++] Add a CI job to test the Runtimes build
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
So, if IIUC this will build clang and test libc++(abi) using this freshly built clang, right?
Yes, that's it. I think the Linux builders are beefy enough that it won't take too long, but we'll find out soon.
LGTM, in the future we may also consider having a build only for runtimes without Clang (that is using ${MONOREPO_ROOT}/runtimes as the top-level CMake directory).
libcxx/utils/ci/run-buildbot | ||
---|---|---|
370 | I'd use a full canonical target. |
@phosek Do you know why check-runtimes didn't actually run any tests? https://buildkite.com/llvm-project/libcxx-ci/builds/1722#ebb12c03-bc08-4dbb-99fa-a7b3547c9e34/400-642
No real comments on the patch, but I noticed the parent revision has been reverted. Does that mean the tests aren't executed?
libcxx/utils/ci/run-buildbot | ||
---|---|---|
370 | Turns out this is actually the reason for some of the failing tests. There are some directives in tests that check for linux-gnu but if you use just x86_64-unknown-linux those aren't matched. |
Locally I'm also seeing this failure:
FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:611 GDB printed: u"warning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nwarning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nstd::shared_ptr<int> count 2, weak 0 containing = {__ptr_ = 0x46a338}" Value should match: u'std::shared_ptr<int> count 2, weak 0 containing = {__ptr_ = 0x[a-f0-9]+}' FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:616 GDB printed: u"warning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nwarning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nstd::shared_ptr<int> count 3, weak 0 containing = {__ptr_ = 0x46a338}" Value should match: u'std::shared_ptr<int> count 3, weak 0 containing = {__ptr_ = 0x[a-f0-9]+}' FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:622 GDB printed: u"warning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nwarning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nstd::shared_ptr<int> count 3, weak 1 containing = {__ptr_ = 0x46a338}" Value should match: u'std::shared_ptr<int> count 3, weak 1 containing = {__ptr_ = 0x[a-f0-9]+}' FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:627 GDB printed: u"warning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nwarning: RTTI symbol not found for class 'std::__1::__shared_ptr_emplace<int const, std::__1::allocator<int const> >'\nstd::shared_ptr<int> count 3, weak 0 containing = {__ptr_ = 0x46a338}" Value should match: u'std::shared_ptr<int> count 3, weak 0 containing = {__ptr_ = 0x[a-f0-9]+}' PASS: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:632 FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:243 GDB printed: u'std::bitset<258>Traceback (most recent call last):\n File "/src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/../../../utils/gdb/libcxx/printers.py", line 444, in _list_it\n if self.values[word] & (1 << word_bit):\nTypeError: list indices must be integers, not float\n' Value should match: u'std::bitset<258>' PASS: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:246 FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:249 GDB printed: u'std::bitset<15>Traceback (most recent call last):\n File "/src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/../../../utils/gdb/libcxx/printers.py", line 444, in _list_it\n if self.values[word] & (1 << word_bit):\nTypeError: list indices must be integers, not float\n' Value should match: u'std::bitset<15> = {[2] = 1, [3] = 1, [4] = 1, [5] = 1, [6] = 1, [7] = 1, [8] = 1, [9] = 1}' FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:257 GDB printed: u'std::bitset<258>Traceback (most recent call last):\n File "/src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/../../../utils/gdb/libcxx/printers.py", line 444, in _list_it\n if self.values[word] & (1 << word_bit):\nTypeError: list indices must be integers, not float\n' Value should match: u'std::bitset<258> = {[0] = 1, [129] = 1, [132] = 1}'
I haven't seen this on bots so we shouldn't block the submission on this, but I'd like to investigate it to understand why it's failing only under the runtimes build.
The above are tracked by https://bugs.llvm.org/show_bug.cgi?id=48937. To check, use gcc or build in Debug mode (the test should pass).
PASS: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:632
FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:243
GDB printed:u'std::bitset<258>Traceback (most recent call last):\n File "/src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/../../../utils/gdb/libcxx/printers.py", line 444, in _list_it\n if self.values[word] & (1 << word_bit):\nTypeError: list indices must be integers, not float\n'Value should match:
u'std::bitset<258>'PASS: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:246
FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:249
GDB printed:u'std::bitset<15>Traceback (most recent call last):\n File "/src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/../../../utils/gdb/libcxx/printers.py", line 444, in _list_it\n if self.values[word] & (1 << word_bit):\nTypeError: list indices must be integers, not float\n'Value should match:
u'std::bitset<15> = {[2] = 1, [3] = 1, [4] = 1, [5] = 1, [6] = 1, [7] = 1, [8] = 1, [9] = 1}'FAIL: /src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/gdb_pretty_printer_test.sh.cpp:257
GDB printed:u'std::bitset<258>Traceback (most recent call last):\n File "/src/clang-llvm/llvm-project/libcxx/test/libcxx/gdb/../../../utils/gdb/libcxx/printers.py", line 444, in _list_it\n if self.values[word] & (1 << word_bit):\nTypeError: list indices must be integers, not float\n'Value should match:
u'std::bitset<258> = {[0] = 1, [129] = 1, [132] = 1}'I haven't seen this on bots so we shouldn't block the submission on this, but I'd like to investigate it to understand why it's failing only under the runtimes build.
Those ones seem to be new.
Use full canonical target
libcxx/utils/ci/run-buildbot | ||
---|---|---|
370 | Oh, how sloppy of me. I thought I had done it. Thanks. |
I'll ship this since the Runtimes build has been fixed, however the Linaro ARM bots seem to be offline. @DavidSpickett can you please take a look? Here's a build where the ARM jobs are stuck: https://buildkite.com/llvm-project/libcxx-ci/builds/2183
I'd use a full canonical target.