f7a0340a82325c212ae8bcf6d433aacfa8cfdfcc |
28-Apr-2014 |
Andrew Hsieh <andrewhsieh@google.com> |
update libc++ to upstream r210061 The following are updated as well sources/cxx-stl/llvm-libc++/patches.android/* tests/device/test-libc++-static-full tests/device/test-libc++-shared-full Change-Id: If2a2035c15526edaf8c550d38e10d9fdd2bc3227
unc.wrap.func.con/alloc_function.pass.cpp
|
1b97ee35bafeb02b7c1feabc3a99b6d004637ddc |
25-Feb-2014 |
Andrew Hsieh <andrewhsieh@google.com> |
Add libc++ *pass.cpp tests in ndk-build build system 1. both are "long" test (only run when with "--full", eg. ./run-tests.sh --full) 2. Only *.pass.cpp tests (4397 in total) are added. *.fail.cpp tests (248 in total) will be added later because currently run-tests.sh only handles single fail 3. All except for the following tests can't be compiled (See black_list_*) Will update black_list when issues are fixed. all: utilities/meta/meta.trans/meta.trans.other/aligned_storage.pass.cpp error message: static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(std::alignment_of<T1>::value == 16, ""); static_assert(sizeof(T1) == 32, ""); x86: language.support/support.types/max_align_t.pass.cpp error message: max_align_t.pass.cpp:22:5: error: static_assert failed "std::alignment_of<std::max_align_t>::value >= std::alignment_of<long long>::value" static_assert((std::alignment_of<std::max_align_t>::value >= gcc4.8: 49 tests in atomics/* thread/futures/futures.async/async.pass.cpp thread/futures/futures.overview/launch.pass.cpp utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/default02.pass.cpp utilities/memory/unique.ptr/unique.ptr.runtime/unique.ptr.runtime.ctor/pointer02.pass.cpp utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/default02.pass.cpp utilities/memory/unique.ptr/unique.ptr.single/unique.ptr.single.ctor/pointer02.pass.cpp utilities/meta/meta.rel/is_convertible.pass.cpp utilities/meta/meta.trans/meta.trans.other/underlying_type.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_literal_type.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_nothrow_assignable.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_nothrow_copy_constructible.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_nothrow_destructible.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_nothrow_move_constructible.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivially_assignable.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivially_copy_assignable.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivially_copy_constructible.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivially_move_assignable.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivially_move_constructible.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivial.pass.cpp utilities/utility/pairs/pairs.pair/copy_ctor.pass.cpp utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp clang3.3 utilities/meta/meta.unary/meta.unary.prop/is_trivialially_copyable.pass.cpp 4. Add enough symlink to rename file/path with '=' (replace it with 'EQ') Change-Id: I8d90f1ac242ddbc0ed34e766c0ed1280cb0ee789
unc.wrap.func.nullptr/operator_==.pass.cpp
|
5de42e6621b3d0131472c3f8838b7f0ccf3e8963 |
22-Oct-2013 |
Andrew Hsieh <andrewhsieh@google.com> |
Update libc++ to upstream revision r201101 To catch fixes since last update (r186119) which fails clang3.4 on containers/associative/map/map.modifiers/emplace_hint.pass.cpp with error reads: .../tuple:320:11: error: rvalue reference to type 'double' cannot bind to lvalue of type 'double' : value(__t.get()) ^ ~~~~~~~~~ .../tuple:444:8: note: in instantiation of member function 'std::__1::__tuple_leaf<1, double &&, false>::__tuple_leaf' requested here struct __tuple_impl<__tuple_indices<_Indx...>, _Tp...> ^ emplace_hint.pass.cpp:69:42: note: in instantiation of function template specialization 'std::__1::forward_as_tuple<int, double>' requested here std::forward_as_tuple(2, 3.5)); ^ Now clang3.4 test results are same as clang3.3 ### clang3.4 armeabi-v7a ... Target: armv5te-none-linux-androideabi Thread model: posix with -std=c++11 -O0 -g -march=armv7-a -mthumb -mfpu=vfpv3-d16 -march=armv7-a -mthumb -Wl,--fix-cortex-a8 -I/usr/local/google/home/andrewhsieh/mydroid/ndk/sources/cxx-stl/llvm-libc++/libcxx/test/support -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS ... number of tests failed : 123 number of tests passed : 4522 + ---- total number of tests : 4645 ### clang3.4 x86 ... using clang version 3.4 (https://bitbucket.org/loganchien/clang c34bb12af3af42f671296cdb978b34b931062d2a) (https://bitbucket.org/loganchien/llvm d09f2eff406d17c86d51db7660bd374cf092e6ed) Target: i686-none-linux-android Thread model: posix with -std=c++11 -O0 -g -I/usr/local/google/home/andrewhsieh/mydroid/ndk/sources/cxx-stl/llvm-libc++/libcxx/test/support -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS ... number of tests failed : 125 number of tests passed : 4520 + ---- total number of tests : 4645 ### clang3.4 mips ... Target: mipsel-none-linux-android Thread model: posix with -std=c++11 -O0 -g -I/usr/local/google/home/andrewhsieh/mydroid/ndk/sources/cxx-stl/llvm-libc++/libcxx/test/support -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS ... number of tests failed : 122 number of tests passed : 4523 + ---- total number of tests : 4645 Change-Id: I3a0aa734b9f07abf15774bfe1d687d9de5e3a4a9
unc.wrap.func.con/alloc.pass.cpp
unc.wrap.func.con/alloc_F.pass.cpp
unc.wrap.func.con/alloc_function.pass.cpp
unc.wrap.func.con/alloc_nullptr.pass.cpp
unc.wrap.func.con/alloc_rfunction.pass.cpp
unc.wrap.func.mod/assign_F_alloc.pass.cpp
est_allocator.h
|
ad46d2248426e810edc5878c7cb086b7093f3cf5 |
11-Jul-2013 |
David 'Digit' Turner <digit@android.com> |
Update libc++ to upstream revision 186119 Nothing really drastic here. Note that this introduces a new file under patches.android/ to deal with __config which assumes that __linux__ means GLibc is being used. Change-Id: Iddd56728f9cfdbcea981b1269612248e7c7af797
unc.wrap.func.con/F_incomplete.pass.cpp
unc.wrap.func.con/alloc_F.pass.cpp
|
a8bf9de8057ad254cc642f33bd7d0a48dc1ae55c |
02-May-2013 |
David 'Digit' Turner <digit@android.com> |
Update libc++ sources to @180916 This patches updates the llvm libc++ in the following way: 1/ Move all llvm-specific sources from .../llvm-libc++/ to .../llvm-libc++/libcxx/ 2/ Move .../android/README to .../README.NDK and update it with upstream/patch information. 3/ Add .../patches.android containing the list of Android-specific patches used to generate the content of libcxx/ after checking out the upstream version of the sources. 4/ Move .../android/llvm/libc++/Android.mk to .../Android.mk 5/ Move .../include/support/android/ to .../android/support/include/ and .../src/support/android/ to .../android/support/src/ It's likely that this will go into another helper static library at some point, since it provides missing C library functions that could benefit other programs. This move makes updating the support code easier since it doesn't require changing the content of patches.android/ each time. Apart from that, there is no drastic change here in features / bugs, the test program still links but the library probably doesn't do much and will crash easily. Change-Id: I953cc528ba3d0199b5947ef3dbdcbfedfb25f3e8
unc.wrap.func.alg/swap.pass.cpp
unc.wrap.func.cap/operator_bool.pass.cpp
unc.wrap.func.con/F.pass.cpp
unc.wrap.func.con/F_assign.pass.cpp
unc.wrap.func.con/F_incomplete.pass.cpp
unc.wrap.func.con/alloc.pass.cpp
unc.wrap.func.con/alloc_F.pass.cpp
unc.wrap.func.con/alloc_function.pass.cpp
unc.wrap.func.con/alloc_nullptr.pass.cpp
unc.wrap.func.con/alloc_rfunction.pass.cpp
unc.wrap.func.con/copy.pass.cpp
unc.wrap.func.con/copy_assign.pass.cpp
unc.wrap.func.con/default.pass.cpp
unc.wrap.func.con/nullptr_t.pass.cpp
unc.wrap.func.con/nullptr_t_assign.pass.cpp
unc.wrap.func.inv/invoke.fail.cpp
unc.wrap.func.inv/invoke.pass.cpp
unc.wrap.func.inv/invoke_int_0.pass.cpp
unc.wrap.func.inv/invoke_void_0.pass.cpp
unc.wrap.func.mod/assign_F_alloc.pass.cpp
unc.wrap.func.mod/swap.pass.cpp
unc.wrap.func.nullptr/operator_==.pass.cpp
unc.wrap.func.targ/target.pass.cpp
unc.wrap.func.targ/target_type.pass.cpp
est_allocator.h
ypes.pass.cpp
|