[DOXYGEN] Fix doxygen and content issues in avxintrin.h

- Fix incorrect wording in various intrinsic descriptions. Previously the descriptions used "low-order" and "high-order" when the intended meaning was "even-indexed" and "odd-indexed".
- Fix a few typos and errors found during review.
- Restore new line endings.

This patch was made by Craig Flores

llvm-svn: 322027
This commit is contained in:
Douglas Yung 2018-01-08 21:21:17 +00:00
parent 7e3e28f968
commit 7ff91421b4
1 changed files with 200 additions and 201 deletions

View File

@ -1120,7 +1120,7 @@ _mm256_permutevar_ps(__m256 __a, __m256i __c)
/// \param A
/// A 256-bit vector of [8 x float].
/// \param C
/// An immediate integer operand specifying how the values are to be \n
/// An immediate integer operand specifying how the values are to be
/// copied. \n
/// Bits [1:0]: \n
/// 00: Bits [31:0] of the source are copied to bits [31:0] of the
@ -1150,7 +1150,7 @@ _mm256_permutevar_ps(__m256 __a, __m256i __c)
/// 11: Bits [127:96] of the source are copied to bits [95:64] of the
/// returned vector. \n
/// Bits [7:6]: \n
/// 00: Bits [31:qq0] of the source are copied to bits [127:96] of the
/// 00: Bits [31:0] of the source are copied to bits [127:96] of the
/// returned vector. \n
/// 01: Bits [63:32] of the source are copied to bits [127:96] of the
/// returned vector. \n
@ -1665,38 +1665,38 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
/// \param c
/// An immediate integer operand, with bits [4:0] specifying which comparison
/// operation to use: \n
/// 0x00 : Equal (ordered, non-signaling)
/// 0x01 : Less-than (ordered, signaling)
/// 0x02 : Less-than-or-equal (ordered, signaling)
/// 0x03 : Unordered (non-signaling)
/// 0x04 : Not-equal (unordered, non-signaling)
/// 0x05 : Not-less-than (unordered, signaling)
/// 0x06 : Not-less-than-or-equal (unordered, signaling)
/// 0x07 : Ordered (non-signaling)
/// 0x08 : Equal (unordered, non-signaling)
/// 0x09 : Not-greater-than-or-equal (unordered, signaling)
/// 0x0a : Not-greater-than (unordered, signaling)
/// 0x0b : False (ordered, non-signaling)
/// 0x0c : Not-equal (ordered, non-signaling)
/// 0x0d : Greater-than-or-equal (ordered, signaling)
/// 0x0e : Greater-than (ordered, signaling)
/// 0x0f : True (unordered, non-signaling)
/// 0x10 : Equal (ordered, signaling)
/// 0x11 : Less-than (ordered, non-signaling)
/// 0x12 : Less-than-or-equal (ordered, non-signaling)
/// 0x13 : Unordered (signaling)
/// 0x14 : Not-equal (unordered, signaling)
/// 0x15 : Not-less-than (unordered, non-signaling)
/// 0x16 : Not-less-than-or-equal (unordered, non-signaling)
/// 0x17 : Ordered (signaling)
/// 0x18 : Equal (unordered, signaling)
/// 0x19 : Not-greater-than-or-equal (unordered, non-signaling)
/// 0x1a : Not-greater-than (unordered, non-signaling)
/// 0x1b : False (ordered, signaling)
/// 0x1c : Not-equal (ordered, signaling)
/// 0x1d : Greater-than-or-equal (ordered, non-signaling)
/// 0x1e : Greater-than (ordered, non-signaling)
/// 0x1f : True (unordered, signaling)
/// 0x00: Equal (ordered, non-signaling) \n
/// 0x01: Less-than (ordered, signaling) \n
/// 0x02: Less-than-or-equal (ordered, signaling) \n
/// 0x03: Unordered (non-signaling) \n
/// 0x04: Not-equal (unordered, non-signaling) \n
/// 0x05: Not-less-than (unordered, signaling) \n
/// 0x06: Not-less-than-or-equal (unordered, signaling) \n
/// 0x07: Ordered (non-signaling) \n
/// 0x08: Equal (unordered, non-signaling) \n
/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n
/// 0x0A: Not-greater-than (unordered, signaling) \n
/// 0x0B: False (ordered, non-signaling) \n
/// 0x0C: Not-equal (ordered, non-signaling) \n
/// 0x0D: Greater-than-or-equal (ordered, signaling) \n
/// 0x0E: Greater-than (ordered, signaling) \n
/// 0x0F: True (unordered, non-signaling) \n
/// 0x10: Equal (ordered, signaling) \n
/// 0x11: Less-than (ordered, non-signaling) \n
/// 0x12: Less-than-or-equal (ordered, non-signaling) \n
/// 0x13: Unordered (signaling) \n
/// 0x14: Not-equal (unordered, signaling) \n
/// 0x15: Not-less-than (unordered, non-signaling) \n
/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n
/// 0x17: Ordered (signaling) \n
/// 0x18: Equal (unordered, signaling) \n
/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n
/// 0x1A: Not-greater-than (unordered, non-signaling) \n
/// 0x1B: False (ordered, signaling) \n
/// 0x1C: Not-equal (ordered, signaling) \n
/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n
/// 0x1E: Greater-than (ordered, non-signaling) \n
/// 0x1F: True (unordered, signaling)
/// \returns A 128-bit vector of [2 x double] containing the comparison results.
#define _mm_cmp_pd(a, b, c) __extension__ ({ \
(__m128d)__builtin_ia32_cmppd((__v2df)(__m128d)(a), \
@ -1725,38 +1725,38 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
/// \param c
/// An immediate integer operand, with bits [4:0] specifying which comparison
/// operation to use: \n
/// 0x00 : Equal (ordered, non-signaling)
/// 0x01 : Less-than (ordered, signaling)
/// 0x02 : Less-than-or-equal (ordered, signaling)
/// 0x03 : Unordered (non-signaling)
/// 0x04 : Not-equal (unordered, non-signaling)
/// 0x05 : Not-less-than (unordered, signaling)
/// 0x06 : Not-less-than-or-equal (unordered, signaling)
/// 0x07 : Ordered (non-signaling)
/// 0x08 : Equal (unordered, non-signaling)
/// 0x09 : Not-greater-than-or-equal (unordered, signaling)
/// 0x0a : Not-greater-than (unordered, signaling)
/// 0x0b : False (ordered, non-signaling)
/// 0x0c : Not-equal (ordered, non-signaling)
/// 0x0d : Greater-than-or-equal (ordered, signaling)
/// 0x0e : Greater-than (ordered, signaling)
/// 0x0f : True (unordered, non-signaling)
/// 0x10 : Equal (ordered, signaling)
/// 0x11 : Less-than (ordered, non-signaling)
/// 0x12 : Less-than-or-equal (ordered, non-signaling)
/// 0x13 : Unordered (signaling)
/// 0x14 : Not-equal (unordered, signaling)
/// 0x15 : Not-less-than (unordered, non-signaling)
/// 0x16 : Not-less-than-or-equal (unordered, non-signaling)
/// 0x17 : Ordered (signaling)
/// 0x18 : Equal (unordered, signaling)
/// 0x19 : Not-greater-than-or-equal (unordered, non-signaling)
/// 0x1a : Not-greater-than (unordered, non-signaling)
/// 0x1b : False (ordered, signaling)
/// 0x1c : Not-equal (ordered, signaling)
/// 0x1d : Greater-than-or-equal (ordered, non-signaling)
/// 0x1e : Greater-than (ordered, non-signaling)
/// 0x1f : True (unordered, signaling)
/// 0x00: Equal (ordered, non-signaling) \n
/// 0x01: Less-than (ordered, signaling) \n
/// 0x02: Less-than-or-equal (ordered, signaling) \n
/// 0x03: Unordered (non-signaling) \n
/// 0x04: Not-equal (unordered, non-signaling) \n
/// 0x05: Not-less-than (unordered, signaling) \n
/// 0x06: Not-less-than-or-equal (unordered, signaling) \n
/// 0x07: Ordered (non-signaling) \n
/// 0x08: Equal (unordered, non-signaling) \n
/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n
/// 0x0A: Not-greater-than (unordered, signaling) \n
/// 0x0B: False (ordered, non-signaling) \n
/// 0x0C: Not-equal (ordered, non-signaling) \n
/// 0x0D: Greater-than-or-equal (ordered, signaling) \n
/// 0x0E: Greater-than (ordered, signaling) \n
/// 0x0F: True (unordered, non-signaling) \n
/// 0x10: Equal (ordered, signaling) \n
/// 0x11: Less-than (ordered, non-signaling) \n
/// 0x12: Less-than-or-equal (ordered, non-signaling) \n
/// 0x13: Unordered (signaling) \n
/// 0x14: Not-equal (unordered, signaling) \n
/// 0x15: Not-less-than (unordered, non-signaling) \n
/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n
/// 0x17: Ordered (signaling) \n
/// 0x18: Equal (unordered, signaling) \n
/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n
/// 0x1A: Not-greater-than (unordered, non-signaling) \n
/// 0x1B: False (ordered, signaling) \n
/// 0x1C: Not-equal (ordered, signaling) \n
/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n
/// 0x1E: Greater-than (ordered, non-signaling) \n
/// 0x1F: True (unordered, signaling)
/// \returns A 128-bit vector of [4 x float] containing the comparison results.
#define _mm_cmp_ps(a, b, c) __extension__ ({ \
(__m128)__builtin_ia32_cmpps((__v4sf)(__m128)(a), \
@ -1785,38 +1785,38 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
/// \param c
/// An immediate integer operand, with bits [4:0] specifying which comparison
/// operation to use: \n
/// 0x00 : Equal (ordered, non-signaling)
/// 0x01 : Less-than (ordered, signaling)
/// 0x02 : Less-than-or-equal (ordered, signaling)
/// 0x03 : Unordered (non-signaling)
/// 0x04 : Not-equal (unordered, non-signaling)
/// 0x05 : Not-less-than (unordered, signaling)
/// 0x06 : Not-less-than-or-equal (unordered, signaling)
/// 0x07 : Ordered (non-signaling)
/// 0x08 : Equal (unordered, non-signaling)
/// 0x09 : Not-greater-than-or-equal (unordered, signaling)
/// 0x0a : Not-greater-than (unordered, signaling)
/// 0x0b : False (ordered, non-signaling)
/// 0x0c : Not-equal (ordered, non-signaling)
/// 0x0d : Greater-than-or-equal (ordered, signaling)
/// 0x0e : Greater-than (ordered, signaling)
/// 0x0f : True (unordered, non-signaling)
/// 0x10 : Equal (ordered, signaling)
/// 0x11 : Less-than (ordered, non-signaling)
/// 0x12 : Less-than-or-equal (ordered, non-signaling)
/// 0x13 : Unordered (signaling)
/// 0x14 : Not-equal (unordered, signaling)
/// 0x15 : Not-less-than (unordered, non-signaling)
/// 0x16 : Not-less-than-or-equal (unordered, non-signaling)
/// 0x17 : Ordered (signaling)
/// 0x18 : Equal (unordered, signaling)
/// 0x19 : Not-greater-than-or-equal (unordered, non-signaling)
/// 0x1a : Not-greater-than (unordered, non-signaling)
/// 0x1b : False (ordered, signaling)
/// 0x1c : Not-equal (ordered, signaling)
/// 0x1d : Greater-than-or-equal (ordered, non-signaling)
/// 0x1e : Greater-than (ordered, non-signaling)
/// 0x1f : True (unordered, signaling)
/// 0x00: Equal (ordered, non-signaling) \n
/// 0x01: Less-than (ordered, signaling) \n
/// 0x02: Less-than-or-equal (ordered, signaling) \n
/// 0x03: Unordered (non-signaling) \n
/// 0x04: Not-equal (unordered, non-signaling) \n
/// 0x05: Not-less-than (unordered, signaling) \n
/// 0x06: Not-less-than-or-equal (unordered, signaling) \n
/// 0x07: Ordered (non-signaling) \n
/// 0x08: Equal (unordered, non-signaling) \n
/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n
/// 0x0A: Not-greater-than (unordered, signaling) \n
/// 0x0B: False (ordered, non-signaling) \n
/// 0x0C: Not-equal (ordered, non-signaling) \n
/// 0x0D: Greater-than-or-equal (ordered, signaling) \n
/// 0x0E: Greater-than (ordered, signaling) \n
/// 0x0F: True (unordered, non-signaling) \n
/// 0x10: Equal (ordered, signaling) \n
/// 0x11: Less-than (ordered, non-signaling) \n
/// 0x12: Less-than-or-equal (ordered, non-signaling) \n
/// 0x13: Unordered (signaling) \n
/// 0x14: Not-equal (unordered, signaling) \n
/// 0x15: Not-less-than (unordered, non-signaling) \n
/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n
/// 0x17: Ordered (signaling) \n
/// 0x18: Equal (unordered, signaling) \n
/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n
/// 0x1A: Not-greater-than (unordered, non-signaling) \n
/// 0x1B: False (ordered, signaling) \n
/// 0x1C: Not-equal (ordered, signaling) \n
/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n
/// 0x1E: Greater-than (ordered, non-signaling) \n
/// 0x1F: True (unordered, signaling)
/// \returns A 256-bit vector of [4 x double] containing the comparison results.
#define _mm256_cmp_pd(a, b, c) __extension__ ({ \
(__m256d)__builtin_ia32_cmppd256((__v4df)(__m256d)(a), \
@ -1845,38 +1845,38 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
/// \param c
/// An immediate integer operand, with bits [4:0] specifying which comparison
/// operation to use: \n
/// 0x00 : Equal (ordered, non-signaling)
/// 0x01 : Less-than (ordered, signaling)
/// 0x02 : Less-than-or-equal (ordered, signaling)
/// 0x03 : Unordered (non-signaling)
/// 0x04 : Not-equal (unordered, non-signaling)
/// 0x05 : Not-less-than (unordered, signaling)
/// 0x06 : Not-less-than-or-equal (unordered, signaling)
/// 0x07 : Ordered (non-signaling)
/// 0x08 : Equal (unordered, non-signaling)
/// 0x09 : Not-greater-than-or-equal (unordered, signaling)
/// 0x0a : Not-greater-than (unordered, signaling)
/// 0x0b : False (ordered, non-signaling)
/// 0x0c : Not-equal (ordered, non-signaling)
/// 0x0d : Greater-than-or-equal (ordered, signaling)
/// 0x0e : Greater-than (ordered, signaling)
/// 0x0f : True (unordered, non-signaling)
/// 0x10 : Equal (ordered, signaling)
/// 0x11 : Less-than (ordered, non-signaling)
/// 0x12 : Less-than-or-equal (ordered, non-signaling)
/// 0x13 : Unordered (signaling)
/// 0x14 : Not-equal (unordered, signaling)
/// 0x15 : Not-less-than (unordered, non-signaling)
/// 0x16 : Not-less-than-or-equal (unordered, non-signaling)
/// 0x17 : Ordered (signaling)
/// 0x18 : Equal (unordered, signaling)
/// 0x19 : Not-greater-than-or-equal (unordered, non-signaling)
/// 0x1a : Not-greater-than (unordered, non-signaling)
/// 0x1b : False (ordered, signaling)
/// 0x1c : Not-equal (ordered, signaling)
/// 0x1d : Greater-than-or-equal (ordered, non-signaling)
/// 0x1e : Greater-than (ordered, non-signaling)
/// 0x1f : True (unordered, signaling)
/// 0x00: Equal (ordered, non-signaling) \n
/// 0x01: Less-than (ordered, signaling) \n
/// 0x02: Less-than-or-equal (ordered, signaling) \n
/// 0x03: Unordered (non-signaling) \n
/// 0x04: Not-equal (unordered, non-signaling) \n
/// 0x05: Not-less-than (unordered, signaling) \n
/// 0x06: Not-less-than-or-equal (unordered, signaling) \n
/// 0x07: Ordered (non-signaling) \n
/// 0x08: Equal (unordered, non-signaling) \n
/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n
/// 0x0A: Not-greater-than (unordered, signaling) \n
/// 0x0B: False (ordered, non-signaling) \n
/// 0x0C: Not-equal (ordered, non-signaling) \n
/// 0x0D: Greater-than-or-equal (ordered, signaling) \n
/// 0x0E: Greater-than (ordered, signaling) \n
/// 0x0F: True (unordered, non-signaling) \n
/// 0x10: Equal (ordered, signaling) \n
/// 0x11: Less-than (ordered, non-signaling) \n
/// 0x12: Less-than-or-equal (ordered, non-signaling) \n
/// 0x13: Unordered (signaling) \n
/// 0x14: Not-equal (unordered, signaling) \n
/// 0x15: Not-less-than (unordered, non-signaling) \n
/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n
/// 0x17: Ordered (signaling) \n
/// 0x18: Equal (unordered, signaling) \n
/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n
/// 0x1A: Not-greater-than (unordered, non-signaling) \n
/// 0x1B: False (ordered, signaling) \n
/// 0x1C: Not-equal (ordered, signaling) \n
/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n
/// 0x1E: Greater-than (ordered, non-signaling) \n
/// 0x1F: True (unordered, signaling)
/// \returns A 256-bit vector of [8 x float] containing the comparison results.
#define _mm256_cmp_ps(a, b, c) __extension__ ({ \
(__m256)__builtin_ia32_cmpps256((__v8sf)(__m256)(a), \
@ -1904,38 +1904,38 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
/// \param c
/// An immediate integer operand, with bits [4:0] specifying which comparison
/// operation to use: \n
/// 0x00 : Equal (ordered, non-signaling)
/// 0x01 : Less-than (ordered, signaling)
/// 0x02 : Less-than-or-equal (ordered, signaling)
/// 0x03 : Unordered (non-signaling)
/// 0x04 : Not-equal (unordered, non-signaling)
/// 0x05 : Not-less-than (unordered, signaling)
/// 0x06 : Not-less-than-or-equal (unordered, signaling)
/// 0x07 : Ordered (non-signaling)
/// 0x08 : Equal (unordered, non-signaling)
/// 0x09 : Not-greater-than-or-equal (unordered, signaling)
/// 0x0a : Not-greater-than (unordered, signaling)
/// 0x0b : False (ordered, non-signaling)
/// 0x0c : Not-equal (ordered, non-signaling)
/// 0x0d : Greater-than-or-equal (ordered, signaling)
/// 0x0e : Greater-than (ordered, signaling)
/// 0x0f : True (unordered, non-signaling)
/// 0x10 : Equal (ordered, signaling)
/// 0x11 : Less-than (ordered, non-signaling)
/// 0x12 : Less-than-or-equal (ordered, non-signaling)
/// 0x13 : Unordered (signaling)
/// 0x14 : Not-equal (unordered, signaling)
/// 0x15 : Not-less-than (unordered, non-signaling)
/// 0x16 : Not-less-than-or-equal (unordered, non-signaling)
/// 0x17 : Ordered (signaling)
/// 0x18 : Equal (unordered, signaling)
/// 0x19 : Not-greater-than-or-equal (unordered, non-signaling)
/// 0x1a : Not-greater-than (unordered, non-signaling)
/// 0x1b : False (ordered, signaling)
/// 0x1c : Not-equal (ordered, signaling)
/// 0x1d : Greater-than-or-equal (ordered, non-signaling)
/// 0x1e : Greater-than (ordered, non-signaling)
/// 0x1f : True (unordered, signaling)
/// 0x00: Equal (ordered, non-signaling) \n
/// 0x01: Less-than (ordered, signaling) \n
/// 0x02: Less-than-or-equal (ordered, signaling) \n
/// 0x03: Unordered (non-signaling) \n
/// 0x04: Not-equal (unordered, non-signaling) \n
/// 0x05: Not-less-than (unordered, signaling) \n
/// 0x06: Not-less-than-or-equal (unordered, signaling) \n
/// 0x07: Ordered (non-signaling) \n
/// 0x08: Equal (unordered, non-signaling) \n
/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n
/// 0x0A: Not-greater-than (unordered, signaling) \n
/// 0x0B: False (ordered, non-signaling) \n
/// 0x0C: Not-equal (ordered, non-signaling) \n
/// 0x0D: Greater-than-or-equal (ordered, signaling) \n
/// 0x0E: Greater-than (ordered, signaling) \n
/// 0x0F: True (unordered, non-signaling) \n
/// 0x10: Equal (ordered, signaling) \n
/// 0x11: Less-than (ordered, non-signaling) \n
/// 0x12: Less-than-or-equal (ordered, non-signaling) \n
/// 0x13: Unordered (signaling) \n
/// 0x14: Not-equal (unordered, signaling) \n
/// 0x15: Not-less-than (unordered, non-signaling) \n
/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n
/// 0x17: Ordered (signaling) \n
/// 0x18: Equal (unordered, signaling) \n
/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n
/// 0x1A: Not-greater-than (unordered, non-signaling) \n
/// 0x1B: False (ordered, signaling) \n
/// 0x1C: Not-equal (ordered, signaling) \n
/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n
/// 0x1E: Greater-than (ordered, non-signaling) \n
/// 0x1F: True (unordered, signaling)
/// \returns A 128-bit vector of [2 x double] containing the comparison results.
#define _mm_cmp_sd(a, b, c) __extension__ ({ \
(__m128d)__builtin_ia32_cmpsd((__v2df)(__m128d)(a), \
@ -1963,38 +1963,38 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
/// \param c
/// An immediate integer operand, with bits [4:0] specifying which comparison
/// operation to use: \n
/// 0x00 : Equal (ordered, non-signaling)
/// 0x01 : Less-than (ordered, signaling)
/// 0x02 : Less-than-or-equal (ordered, signaling)
/// 0x03 : Unordered (non-signaling)
/// 0x04 : Not-equal (unordered, non-signaling)
/// 0x05 : Not-less-than (unordered, signaling)
/// 0x06 : Not-less-than-or-equal (unordered, signaling)
/// 0x07 : Ordered (non-signaling)
/// 0x08 : Equal (unordered, non-signaling)
/// 0x09 : Not-greater-than-or-equal (unordered, signaling)
/// 0x0a : Not-greater-than (unordered, signaling)
/// 0x0b : False (ordered, non-signaling)
/// 0x0c : Not-equal (ordered, non-signaling)
/// 0x0d : Greater-than-or-equal (ordered, signaling)
/// 0x0e : Greater-than (ordered, signaling)
/// 0x0f : True (unordered, non-signaling)
/// 0x10 : Equal (ordered, signaling)
/// 0x11 : Less-than (ordered, non-signaling)
/// 0x12 : Less-than-or-equal (ordered, non-signaling)
/// 0x13 : Unordered (signaling)
/// 0x14 : Not-equal (unordered, signaling)
/// 0x15 : Not-less-than (unordered, non-signaling)
/// 0x16 : Not-less-than-or-equal (unordered, non-signaling)
/// 0x17 : Ordered (signaling)
/// 0x18 : Equal (unordered, signaling)
/// 0x19 : Not-greater-than-or-equal (unordered, non-signaling)
/// 0x1a : Not-greater-than (unordered, non-signaling)
/// 0x1b : False (ordered, signaling)
/// 0x1c : Not-equal (ordered, signaling)
/// 0x1d : Greater-than-or-equal (ordered, non-signaling)
/// 0x1e : Greater-than (ordered, non-signaling)
/// 0x1f : True (unordered, signaling)
/// 0x00: Equal (ordered, non-signaling) \n
/// 0x01: Less-than (ordered, signaling) \n
/// 0x02: Less-than-or-equal (ordered, signaling) \n
/// 0x03: Unordered (non-signaling) \n
/// 0x04: Not-equal (unordered, non-signaling) \n
/// 0x05: Not-less-than (unordered, signaling) \n
/// 0x06: Not-less-than-or-equal (unordered, signaling) \n
/// 0x07: Ordered (non-signaling) \n
/// 0x08: Equal (unordered, non-signaling) \n
/// 0x09: Not-greater-than-or-equal (unordered, signaling) \n
/// 0x0A: Not-greater-than (unordered, signaling) \n
/// 0x0B: False (ordered, non-signaling) \n
/// 0x0C: Not-equal (ordered, non-signaling) \n
/// 0x0D: Greater-than-or-equal (ordered, signaling) \n
/// 0x0E: Greater-than (ordered, signaling) \n
/// 0x0F: True (unordered, non-signaling) \n
/// 0x10: Equal (ordered, signaling) \n
/// 0x11: Less-than (ordered, non-signaling) \n
/// 0x12: Less-than-or-equal (ordered, non-signaling) \n
/// 0x13: Unordered (signaling) \n
/// 0x14: Not-equal (unordered, signaling) \n
/// 0x15: Not-less-than (unordered, non-signaling) \n
/// 0x16: Not-less-than-or-equal (unordered, non-signaling) \n
/// 0x17: Ordered (signaling) \n
/// 0x18: Equal (unordered, signaling) \n
/// 0x19: Not-greater-than-or-equal (unordered, non-signaling) \n
/// 0x1A: Not-greater-than (unordered, non-signaling) \n
/// 0x1B: False (ordered, signaling) \n
/// 0x1C: Not-equal (ordered, signaling) \n
/// 0x1D: Greater-than-or-equal (ordered, non-signaling) \n
/// 0x1E: Greater-than (ordered, non-signaling) \n
/// 0x1F: True (unordered, signaling)
/// \returns A 128-bit vector of [4 x float] containing the comparison results.
#define _mm_cmp_ss(a, b, c) __extension__ ({ \
(__m128)__builtin_ia32_cmpss((__v4sf)(__m128)(a), \
@ -2375,9 +2375,8 @@ _mm256_cvtss_f32(__m256 __a)
}
/* Vector replicate */
/// \brief Moves and duplicates high-order (odd-indexed) values from a 256-bit
/// vector of [8 x float] to float values in a 256-bit vector of
/// [8 x float].
/// \brief Moves and duplicates odd-indexed values from a 256-bit vector of
/// [8 x float] to float values in a 256-bit vector of [8 x float].
///
/// \headerfile <x86intrin.h>
///
@ -2401,8 +2400,8 @@ _mm256_movehdup_ps(__m256 __a)
return __builtin_shufflevector((__v8sf)__a, (__v8sf)__a, 1, 1, 3, 3, 5, 5, 7, 7);
}
/// \brief Moves and duplicates low-order (even-indexed) values from a 256-bit
/// vector of [8 x float] to float values in a 256-bit vector of [8 x float].
/// \brief Moves and duplicates even-indexed values from a 256-bit vector of
/// [8 x float] to float values in a 256-bit vector of [8 x float].
///
/// \headerfile <x86intrin.h>
///
@ -2998,7 +2997,7 @@ _mm256_movemask_pd(__m256d __a)
return __builtin_ia32_movmskpd256((__v4df)__a);
}
/// \brief Extracts the sign bits of double-precision floating point elements
/// \brief Extracts the sign bits of single-precision floating point elements
/// in a 256-bit vector of [8 x float] and writes them to the lower order
/// bits of the return value.
///
@ -3007,7 +3006,7 @@ _mm256_movemask_pd(__m256d __a)
/// This intrinsic corresponds to the <c> VMOVMSKPS </c> instruction.
///
/// \param __a
/// A 256-bit vector of [8 x float] containing the double-precision floating
/// A 256-bit vector of [8 x float] containing the single-precision floating
/// point values with sign bits to be extracted.
/// \returns The sign bits from the operand, written to bits [7:0].
static __inline int __DEFAULT_FN_ATTRS