llvm-project/clang/test/Headers
Thomas Lively 1e9c39a3f9 [WebAssembly] Use functions instead of macros for const SIMD intrinsics
To improve hygiene, consistency, and usability, it would be good to replace all
the macro intrinsics in wasm_simd128.h with functions. The reason for using
macros in the first place was to enforce the use of constants for some arguments
using `_Static_assert` with `__builtin_constant_p`. This commit switches to
using functions and uses the `__diagnose_if__` attribute rather than
`_Static_assert` to enforce constantness.

The remaining macro intrinsics cannot be made into functions until the builtin
functions they are implemented with can be replaced with normal code patterns
because the builtin functions themselves require that their arguments are
constants.

This commit also fixes a bug with the const_splat intrinsics in which the f32x4
and f64x2 variants were incorrectly producing integer vectors.

Differential Revision: https://reviews.llvm.org/D102018
2021-05-07 11:50:19 -07:00
..
Inputs [OpenMP] Make sure classes work on the device as they do on the host 2021-05-06 02:10:30 -05:00
altivec-header.c Revert "PR17164: Change clang's default behavior from -flax-vector-conversions=all to -flax-vector-conversions=integer." 2020-01-20 16:34:09 -08:00
altivec-intrin.c
arm-acle-header.c [clang][Headers] Use __has_builtin instead of _MSC_VER. 2020-03-06 13:48:09 -08:00
arm-cde-header.c [ARM] Replace arm vendor with none. NFC 2020-04-22 18:19:35 +01:00
arm-cmse-header-ns.c [ARM][CMSE] Add CMSE header and builtins 2019-12-12 15:01:14 +00:00
arm-cmse-header.c [ARM][CMSE] Add CMSE header and builtins 2019-12-12 15:01:14 +00:00
arm-fp16-header.c [Testing] Workaround libcxx bug when OS is "none" 2019-09-26 08:19:44 +00:00
arm-neon-header.c [ARM] Add missing target for Arm neon test case. 2020-10-01 00:32:33 +01:00
arm64-apple-ios-types.cpp
c11.c Revert Include corecrt.h in stddef.h and vcruntime.h in stdarg.h to improve MS compatibility. 2019-05-08 22:01:20 +00:00
c89.c
cpuid.c [clang] Add missing header guard in <cpuid.h> 2020-11-10 19:34:25 -08:00
cxx11.cpp
float-darwin.c
float.c
float16.c Fix the predefined exponent limit macros for the 16-bit IEEE format. 2019-05-31 01:21:36 +00:00
hip-header.hip [HIP] Support overloaded math functions for hipRTC 2021-04-22 19:06:51 -04:00
htm-header.c
int64-type.c
limits.cpp
mm3dnow.c
ms-arm64-intrin.cpp
ms-cppoperkey.cpp
ms-cppoperkey1.cpp
ms-cppoperkey2.cpp
ms-intrin.cpp [X86] Fix the implementation of __readcr3/__writecr3 to work in 64-bit mode 2019-11-14 13:21:36 -08:00
ms-null-ms-header-vs-stddef.cpp Revert Include corecrt.h in stddef.h and vcruntime.h in stdarg.h to improve MS compatibility. 2019-05-08 22:01:20 +00:00
ms-wchar.c
nvptx_device_cmath_functions.c [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_cmath_functions.cpp [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_cmath_functions_cxx17.cpp [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_math_complex.c [OpenMP] Overhaul `declare target` handling 2021-05-06 02:10:41 -05:00
nvptx_device_math_complex.cpp [OpenMP] Support `std::complex` math functions in target regions 2020-09-16 13:37:10 -05:00
nvptx_device_math_functions.c [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_math_functions.cpp [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_math_functions_cxx17.cpp [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_math_macro.cpp Prevent test from failing in my home directory 2020-05-28 16:14:49 +02:00
nvptx_device_math_modf.cpp [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_math_sin.c [OpenMP][SYCL] Improve diagnosing of unsupported types usage 2020-05-29 18:00:48 +03:00
nvptx_device_math_sin.cpp [OpenMP][SYCL] Improve diagnosing of unsupported types usage 2020-05-29 18:00:48 +03:00
nvptx_device_math_sin_cos.cpp [OpenMP] Provide math functions in OpenMP device code via OpenMP variants 2020-04-07 23:33:24 -05:00
nvptx_device_math_sincos.cpp [OpenMP] Allow <math.h> to go first in C++-mode in target regions 2020-04-09 22:10:31 -05:00
opencl-c-header.cl [OpenCL] Prevent adding vendor extensions for all targets 2021-04-30 14:42:51 +01:00
openmp_device_math_isnan.cpp [OpenMP] Overload `std::isnan` and friends multiple times for the GPU 2020-09-16 13:37:09 -05:00
pconfigintin.c
pmmintrin.c
ppc-intrinsics.c [PowerPC] [Clang] Port SSE3, SSSE3 and SSE4 intrinsics to PowerPC 2019-08-09 03:39:55 +00:00
riscv-vector-header.c [Clang][RISCV] Add custom TableGen backend for riscv-vector intrinsics. 2021-03-10 18:43:43 -08:00
sgxintrin.c
stdarg-gnuc_va_list.c
stdarg.cpp Delete le32/le64 targets 2021-04-21 18:44:12 -07:00
stdatomic.c
stdbool.cpp Add -fgnuc-version= to control __GNUC__ and other GCC macros 2019-10-10 21:04:25 +00:00
stddefneeds.cpp
stdint-typeof-MINMAX.cpp
target_include_new.cpp [OpenMP] Make sure classes work on the device as they do on the host 2021-05-06 02:10:30 -05:00
tgmath-darwin.c
tgmath.c
thumbv7-apple-ios-types.cpp
typedef_guards.c
unwind.c
wasm.c [WebAssembly] Use functions instead of macros for const SIMD intrinsics 2021-05-07 11:50:19 -07:00
wasm.cpp [WebAssembly] Fix types in wasm_simd128.h and add tests 2020-08-05 14:00:01 -07:00
wchar_limits.cpp
wmmintrin.c
x86-header-warnings.c [X86] Fix x86-header-warnings.c test not detecting regressions as intended. 2020-04-08 15:22:44 +01:00
x86-intrinsics-headers-clean.cpp [X86] Mark various pointer arguments in builtins as const 2019-12-19 11:42:11 -08:00
x86-intrinsics-headers.c Revert "PR17164: Change clang's default behavior from -flax-vector-conversions=all to -flax-vector-conversions=integer." 2020-01-20 16:34:09 -08:00
x86_64-apple-macosx-types.cpp
x86intrin-2.c Add header guards for header files that should not be included on the PS4 platform. 2020-04-30 16:17:34 -07:00
x86intrin.c Revert "PR17164: Change clang's default behavior from -flax-vector-conversions=all to -flax-vector-conversions=integer." 2020-01-20 16:34:09 -08:00
x86intrin.cpp
xmmintrin.c [test] Add {{.*}} to make tests immune to dso_local/dso_preemptable/(none) differences 2020-12-30 20:52:01 -08:00