[libcxx] implement <experimental/simd> declarations based on P0214R7.
authorTim Shen <timshen91@gmail.com>
Mon, 23 Apr 2018 18:47:07 +0000 (18:47 +0000)
committerTim Shen <timshen91@gmail.com>
Mon, 23 Apr 2018 18:47:07 +0000 (18:47 +0000)
commit6a72ef6c4b7aedda0ee087d0b1c99d3ecb216338
tree6a8f93e0128d91cd61d3f8b9f8b415f60eb4955d
parent213aee0bddd0a55f536c337a53619f4b2e1e6f26
[libcxx] implement <experimental/simd> declarations based on P0214R7.

Summary:
The patch includes all declarations, and also implements the following features:
* ABI.
* narrowing-conversion related SFIANE, including simd<> ctors and (static_)simd_cast.

Reviewers: mclow.lists, EricWF

Subscribers: lichray, sanjoy, MaskRay, cfe-commits

Differential Revision: https://reviews.llvm.org/D41148

llvm-svn: 330627
14 files changed:
libcxx/include/experimental/__config
libcxx/include/experimental/simd [new file with mode: 0644]
libcxx/include/module.modulemap
libcxx/test/libcxx/double_include.sh.cpp
libcxx/test/std/experimental/simd/nothing_to_do.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.casts/simd_cast.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.casts/static_simd_cast.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.cons/broadcast.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.cons/genertor.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.traits/abi_for_size.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.traits/is_abi_tag.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.traits/is_simd.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.traits/is_simd_flag_type.pass.cpp [new file with mode: 0644]
libcxx/test/std/experimental/simd/simd.traits/is_simd_mask.pass.cpp [new file with mode: 0644]