llvm-project/clang/lib/Headers
Michael Zuckerman facb37cabf [X86][AVX512][Clang][Intrinsics][reduce] Adding missing reduce (Operators: +,*,&&,||) intrinsics to Clang
Committed after LGTM and check-all

 
Vector-reduction arithmetic accepts vectors as inputs and produces scalars as outputs.
This class of vector operation forms the basis of many scientific computations.
In vector-reduction arithmetic, the evaluation off is independent of the order of the input elements of V.
 
Used bisection method. At each step, we partition the vector with previous
step in half, and the operation is performed on its two halves.
This takes log2(n) steps where n is the number of elements in the vector.
 
Reviwer: 1. igorb
         2. craig.topper    
Differential Revision: https://reviews.llvm.org/D25527

llvm-svn: 285054
2016-10-25 07:56:04 +00:00
..
cuda_wrappers [CUDA] Re-land support for <complex> (r283683 and r283680). 2016-10-11 17:36:03 +00:00
CMakeLists.txt [CUDA] Re-land support for <complex> (r283683 and r283680). 2016-10-11 17:36:03 +00:00
__clang_cuda_builtin_vars.h [CUDA] Rename cuda_builtin_vars.h to __clang_cuda_builtin_vars.h. 2016-10-08 22:16:08 +00:00
__clang_cuda_cmath.h [CUDA] Declare our __device__ math functions in the same inline namespace as our standard library. 2016-10-08 22:16:03 +00:00
__clang_cuda_complex_builtins.h [CUDA] Re-land support for <complex> (r283683 and r283680). 2016-10-11 17:36:03 +00:00
__clang_cuda_intrinsics.h NVPTX: Rename __builtin_ptx_shfl -> __nvvm_shfl 2016-07-06 19:52:32 +00:00
__clang_cuda_math_forward_declares.h [CUDA] Declare our __device__ math functions in the same inline namespace as our standard library. 2016-10-08 22:16:03 +00:00
__clang_cuda_runtime_wrapper.h [CUDA] Re-land support for <complex> (r283683 and r283680). 2016-10-11 17:36:03 +00:00
__stddef_max_align_t.h Restore the libc++ definition of max_align_t on Apple platforms 2015-02-24 01:06:22 +00:00
__wmmintrin_aes.h Clean up: remove trailing spaces in x86 intrinsic headers. 2016-05-28 00:18:59 +00:00
__wmmintrin_pclmul.h Clean up: remove trailing spaces in x86 intrinsic headers. 2016-05-28 00:18:59 +00:00
adxintrin.h [X86] Rename DEFAULT_FN_ATTR macro to __DEFAULT_FN_ATTR 2015-06-30 13:36:19 +00:00
altivec.h [Power9] Builtins for ELF v.2 ABI conformance - front end portion 2016-09-27 10:45:22 +00:00
ammintrin.h Updated doxygen comments for intrinsics. 2016-04-27 07:14:02 +00:00
arm_acle.h Update functions in clang supplied headers to use the compiler reserved 2016-02-12 02:22:53 +00:00
armintr.h Headers: Add ARM support to intrin.h for MSVC compatibility 2016-08-06 17:58:24 +00:00
avx2intrin.h [X86] Use undefined instead of setzero in shufflevector based intrinsics when the second source is unused. Rewrite immediate extractions in shuffle intrinsics to be in ((c >> x) & y) form instead of ((c & z) >> x). This way only x varies between each use instead of having to vary x and z. 2016-07-04 22:18:01 +00:00
avx512bwintrin.h [AVX-512] Replace 512-bit pmovzx/sx builtins with native IR. 2016-10-23 07:35:47 +00:00
avx512cdintrin.h [Clang][BuiltIn][AVX512] Adding intrinsics without mask for VBROADCAST and VPBROADCAST instruction set . 2016-04-27 11:43:14 +00:00
avx512dqintrin.h [AVX-512] Remove masked integer mullo builtins and replace with native IR. 2016-09-03 19:19:49 +00:00
avx512erintrin.h Fixing problem with rsqrt28_sd 2016-06-05 15:57:49 +00:00
avx512fintrin.h [X86][AVX512][Clang][Intrinsics][reduce] Adding missing reduce (Operators: +,*,&&,||) intrinsics to Clang 2016-10-25 07:56:04 +00:00
avx512ifmaintrin.h [AVX512] Remove space in -1 constants. NFC 2016-06-04 05:43:37 +00:00
avx512ifmavlintrin.h [AVX512] Remove space in -1 constants. NFC 2016-06-04 05:43:37 +00:00
avx512pfintrin.h [Clang][avx512][Intrinsics] adding prefetch gather intrinsics 2016-06-14 13:45:17 +00:00
avx512vbmiintrin.h [Clang][AVX512] Making cosmetic changes 2016-07-12 12:42:27 +00:00
avx512vbmivlintrin.h [clang][AVX512][Builtin] adding missing intrinsics for vpmultishiftqb{128|256|512} instruction set . 2016-05-23 15:04:39 +00:00
avx512vlbwintrin.h [AVX-512] Replace masked 128/256-bit byte, word, and dword min/max builtins with selects and the older unmasked builtins. 2016-10-23 23:57:30 +00:00
avx512vlcdintrin.h [AVX512] Move the 128-bit and 256-bit lzcnt intrinsics to avx512vlcdintrin.h where they belong. 2016-06-21 06:53:58 +00:00
avx512vldqintrin.h [AVX-512] Remove masked integer mullo builtins and replace with native IR. 2016-09-03 19:19:49 +00:00
avx512vlintrin.h [AVX-512] Replace masked 128/256-bit byte, word, and dword min/max builtins with selects and the older unmasked builtins. 2016-10-23 23:57:30 +00:00
avxintrin.h [X86][SSE] Reimplement SSE fp2si conversion intrinsics instead of using generic IR 2016-07-20 10:18:01 +00:00
bmi2intrin.h [X86] Rename DEFAULT_FN_ATTR macro to __DEFAULT_FN_ATTR 2015-06-30 13:36:19 +00:00
bmiintrin.h [Clang][bmi][intrinsics] Adding _mm_tzcnt_64 _mm_tzcnt_32 intrinsics to clang. 2016-06-22 12:32:43 +00:00
clflushoptintrin.h [Clang][Feature] Adding CLFLUSHOPT feature and intrinsic to clang 2016-07-05 15:56:03 +00:00
cpuid.h Add more gcc compatibility names to clang's cpuid.h 2016-07-31 20:23:23 +00:00
emmintrin.h Add more doxygen comments to emmintrin.h's intrinsics. 2016-10-23 07:30:50 +00:00
f16cintrin.h Doxygen comments for avxintrin.h. 2016-05-16 22:54:45 +00:00
float.h <float.h>: do not define DECIMAL_DIG in -std=c89 mode; this macro was added in C99. 2016-02-12 01:15:33 +00:00
fma4intrin.h [X86] Add typecasts to remove most assumptions about what __m128i/__m256i is defined as. Add similar typecasts for the fp types as well. 2016-05-16 06:38:42 +00:00
fmaintrin.h [X86] Add typecasts to remove most assumptions about what __m128i/__m256i is defined as. Add similar typecasts for the fp types as well. 2016-05-16 06:38:42 +00:00
fxsrintrin.h [X86] Add missing __x86_64__ qualifiers on a bunch of intrinsics that assume 64-bit GPRs are available. 2016-07-21 07:38:39 +00:00
htmintrin.h Update functions in clang supplied headers to use the compiler reserved 2016-02-12 02:22:53 +00:00
htmxlintrin.h Update functions in clang supplied headers to use the compiler reserved 2016-02-12 02:22:53 +00:00
ia32intrin.h Add some MS aliases for existing intrinsics 2016-09-14 21:19:43 +00:00
immintrin.h [Clang][Feature] Adding CLFLUSHOPT feature and intrinsic to clang 2016-07-05 15:56:03 +00:00
intrin.h Implement __stosb intrinsic as a volatile memset 2016-10-14 17:33:05 +00:00
inttypes.h Headers: wordsmith error message 2016-06-17 00:27:02 +00:00
iso646.h
limits.h
lzcntintrin.h [X86] Rename DEFAULT_FN_ATTR macro to __DEFAULT_FN_ATTR 2015-06-30 13:36:19 +00:00
mm3dnow.h [X86] Add void to the argument list of intrinsics that don't take arguments since empty argument list mean something else in C. 2016-06-09 05:14:28 +00:00
mm_malloc.h
mmintrin.h Add doxygen comments to mmintrin.h's intrinsics. 2016-06-10 00:10:40 +00:00
module.modulemap [Modules] Add 'freestanding' to the 'requires-declaration' feature-list. 2016-09-04 06:00:42 +00:00
msa.h [mips] MSA intrinsics header file 2016-09-20 15:07:36 +00:00
mwaitxintrin.h Clean up: remove trailing spaces in x86 intrinsic headers. 2016-05-28 00:18:59 +00:00
nmmintrin.h Update the intel intrinsic headers to use the target attribute support. 2015-06-17 07:09:32 +00:00
opencl-c.h [OpenCL] Make is_valid_event, create_user_event overloadable. 2016-08-30 14:42:54 +00:00
pkuintrin.h Update functions in clang supplied headers to use the compiler reserved 2016-02-12 02:22:53 +00:00
pmmintrin.h Clean up: remove trailing spaces in x86 intrinsic headers. 2016-05-28 00:18:59 +00:00
popcntintrin.h This patch adds doxygen comments for the intrinsincs in the header file popcntintrin.h. 2016-03-01 20:04:57 +00:00
prfchwintrin.h [X86] Add missing _m_prefetch intrinsic 2015-07-27 19:01:52 +00:00
rdseedintrin.h [X86] Rename DEFAULT_FN_ATTR macro to __DEFAULT_FN_ATTR 2015-06-30 13:36:19 +00:00
rtmintrin.h [X86] Rename DEFAULT_FN_ATTR macro to __DEFAULT_FN_ATTR 2015-06-30 13:36:19 +00:00
s390intrin.h [SystemZ] Add support for vecintrin.h vector built-in functions 2015-07-30 14:10:43 +00:00
shaintrin.h [X86] Add missing typecasts in intrinsic macros. This should make them more robust against inputs that aren't already the right type. 2015-11-11 03:47:10 +00:00
smmintrin.h [X86] Use unsigned types for vector arithmetic in intrinsics to avoid undefined behavior for signed integer overflow. 2016-06-04 05:43:41 +00:00
stdalign.h
stdarg.h
stdatomic.h Trailing dot that shouldn't have been committed. 2016-09-04 00:51:02 +00:00
stdbool.h
stddef.h
stdint.h Clean up trailing whitespace in the builtin headers 2015-09-12 02:55:19 +00:00
stdnoreturn.h
tbmintrin.h Update functions in clang supplied headers to use the compiler reserved 2016-02-12 02:22:53 +00:00
tgmath.h Clean up trailing whitespace in the builtin headers 2015-09-12 02:55:19 +00:00
tmmintrin.h This patch adds doxygen comments for all the intrinsincs in the header file tmmintrin.h. 2016-03-03 00:20:11 +00:00
unwind.h Add ARM EHABI-related constants to unwind.h. 2016-02-28 15:01:42 +00:00
vadefs.h Intercept __crt_va_* used by MSVC "14" 2014-11-20 22:44:03 +00:00
varargs.h
vecintrin.h [SystemZ] Add support for vecintrin.h vector built-in functions 2015-07-30 14:10:43 +00:00
wmmintrin.h Update the intel intrinsic headers to use the target attribute support. 2015-06-17 07:09:32 +00:00
x86intrin.h Add new intrinsic support for MONITORX and MWAITX instructions 2016-05-18 11:56:23 +00:00
xmmintrin.h [NFC] Fixing the description for _mm_store_ps and _mm_store_ps1. 2016-10-12 23:27:27 +00:00
xopintrin.h [X86] Add typecasts to remove most assumptions about what __m128i/__m256i is defined as. Add similar typecasts for the fp types as well. 2016-05-16 06:38:42 +00:00
xsavecintrin.h Headers: Switch some headers to LF line endings for consistency. 2015-10-15 10:33:27 +00:00
xsaveintrin.h Revert "[X86] Add xgetbv/x[X86] Add xgetbv xsetbv intrinsics to non-windows platforms" 2016-08-16 16:04:14 +00:00
xsaveoptintrin.h Headers: Switch some headers to LF line endings for consistency. 2015-10-15 10:33:27 +00:00
xsavesintrin.h Headers: Switch some headers to LF line endings for consistency. 2015-10-15 10:33:27 +00:00
xtestintrin.h Move xtest to its own file to match the gcc header organization. 2015-06-17 18:42:07 +00:00