Actions
Bug #773
closedtests/device/crystax-test-c++11 failed on arm64 device when being built with clang-based toolchain
Start date:
12/24/2014
Due date:
% Done:
100%
Estimated time:
CPU Architecture:
arm64
Host OS:
Toolchain:
clang-3.4, clang-3.5
Android version:
CrystaX NDK Version:
Description
## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 push /Volumes/android/ndk/out/tests/clang3.5/build/crystax-test-c++11/libs/arm64-v8a/libcrystax.so /data/local/tmp/ndk-tests/libcrystax.so 6967 KB/s (785576 bytes in 0.110s) ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 shell chmod 0755 /data/local/tmp/ndk-tests/libcrystax.so ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 push /Volumes/android/ndk/out/tests/clang3.5/build/crystax-test-c++11/libs/arm64-v8a/libgnustl_shared.so /data/local/tmp/ndk-tests/libgnustl_shared.so 7157 KB/s (1108248 bytes in 0.151s) ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 shell chmod 0755 /data/local/tmp/ndk-tests/libgnustl_shared.so ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 push /Volumes/android/ndk/out/tests/clang3.5/build/crystax-test-c++11/libs/arm64-v8a/crystax-test-c++11 /data/local/tmp/ndk-tests/crystax-test-c++11 6192 KB/s (75472 bytes in 0.011s) ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 shell chmod 0755 /data/local/tmp/ndk-tests/crystax-test-c++11 Running device test [arm64-v8a]: crystax-test-c++11 (crystax-test-c++11) /opt/android/android-sdk-mac/platform-tools/adb -s "HT4AKJT00846" shell "cd /data/local/tmp/ndk-tests && LD_LIBRARY_PATH=/data/local/tmp/ndk-tests ./crystax-test-c++11" lambda call: 3 test1 test2: invalid format: missing arguments test3: 1 extra arguments provided to fooprintf r1: foo " \ bar r2: this is raw string literal void foobar(const A &) void foobar(A &&) test language: OK test chrono_duration_ctor: OK test chrono_duration_operators: OK test chrono_duration_count: OK test chrono_duration_min_max: OK Thread 2 executing pure virtual method called terminate called without an active exception Thread 2 executing Thread 2 executing Thread 2 executing Thread 2 executing Aborted 134 ---> TEST FAILED!!
The same test built by gcc-4.9 works just fine:
## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 push /Volumes/android/ndk/out/tests/gcc4.9/build/crystax-test-c++11/libs/arm64-v8a/libcrystax.so /data/local/tmp/ndk-tests/libcrystax.so 7214 KB/s (785576 bytes in 0.106s) ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 shell chmod 0755 /data/local/tmp/ndk-tests/libcrystax.so ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 push /Volumes/android/ndk/out/tests/gcc4.9/build/crystax-test-c++11/libs/arm64-v8a/libgnustl_shared.so /data/local/tmp/ndk-tests/libgnustl_shared.so 7458 KB/s (1108248 bytes in 0.145s) ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 shell chmod 0755 /data/local/tmp/ndk-tests/libgnustl_shared.so ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 push /Volumes/android/ndk/out/tests/gcc4.9/build/crystax-test-c++11/libs/arm64-v8a/crystax-test-c++11 /data/local/tmp/ndk-tests/crystax-test-c++11 6602 KB/s (75456 bytes in 0.011s) ## COMMAND: /opt/android/android-sdk-mac/platform-tools/adb -s HT4AKJT00846 shell chmod 0755 /data/local/tmp/ndk-tests/crystax-test-c++11 Running device test [arm64-v8a]: crystax-test-c++11 (crystax-test-c++11) /opt/android/android-sdk-mac/platform-tools/adb -s "HT4AKJT00846" shell "cd /data/local/tmp/ndk-tests && LD_LIBRARY_PATH=/data/local/tmp/ndk-tests ./crystax-test-c++11" lambda call: 3 test1 test2: invalid format: missing arguments test3: 1 extra arguments provided to fooprintf r1: foo " \ bar r2: this is raw string literal void foobar(const A&) void foobar(A&&) test language: OK test chrono_duration_ctor: OK test chrono_duration_operators: OK test chrono_duration_count: OK test chrono_duration_min_max: OK Thread 2 executing Thread 1 executing Thread 2 executing Thread 1 executing Thread 2 executing Thread 1 executing Thread 2 executing Thread 1 executing Thread 2 executing Thread 1 executing Final value of n is 5 test thread: OK test to_string: OK test to_wstring: OK test stol: OK 0
Updated by Dmitry M. about 10 years ago
- Status changed from Open to In Progress
- Assignee set to Dmitry M.
This looks like clang bug reported "here":http://llvm.org/bugs/show_bug.cgi?id=12730
TL;DR: clang doesn't define _GCC_HAVE_SYNC_COMPARE_AND_SWAP[1248] macros for aarch64. In the link above people reporting they've added these macros for x86 and arm architectures. Obviously, it's still missing for aarch64, so hopefully fixing clang in a way defining those macros for aarch64 too will fix this issue.
Updated by Dmitry M. almost 10 years ago
- Status changed from In Progress to Completed
- % Done changed from 0 to 100
Actions