@@ -207,6 +207,8 @@ _mm256_div_ps(__m256 __a, __m256 __b)
207
207
/// Compares two 256-bit vectors of [4 x double] and returns the greater
208
208
/// of each pair of values.
209
209
///
210
+ /// If either value in a comparison is NaN, returns the value from \a __b.
211
+ ///
210
212
/// \headerfile <x86intrin.h>
211
213
///
212
214
/// This intrinsic corresponds to the <c> VMAXPD </c> instruction.
@@ -226,6 +228,8 @@ _mm256_max_pd(__m256d __a, __m256d __b)
226
228
/// Compares two 256-bit vectors of [8 x float] and returns the greater
227
229
/// of each pair of values.
228
230
///
231
+ /// If either value in a comparison is NaN, returns the value from \a __b.
232
+ ///
229
233
/// \headerfile <x86intrin.h>
230
234
///
231
235
/// This intrinsic corresponds to the <c> VMAXPS </c> instruction.
@@ -245,6 +249,8 @@ _mm256_max_ps(__m256 __a, __m256 __b)
245
249
/// Compares two 256-bit vectors of [4 x double] and returns the lesser
246
250
/// of each pair of values.
247
251
///
252
+ /// If either value in a comparison is NaN, returns the value from \a __b.
253
+ ///
248
254
/// \headerfile <x86intrin.h>
249
255
///
250
256
/// This intrinsic corresponds to the <c> VMINPD </c> instruction.
@@ -264,6 +270,8 @@ _mm256_min_pd(__m256d __a, __m256d __b)
264
270
/// Compares two 256-bit vectors of [8 x float] and returns the lesser
265
271
/// of each pair of values.
266
272
///
273
+ /// If either value in a comparison is NaN, returns the value from \a __b.
274
+ ///
267
275
/// \headerfile <x86intrin.h>
268
276
///
269
277
/// This intrinsic corresponds to the <c> VMINPS </c> instruction.
@@ -1604,9 +1612,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1604
1612
/// 128-bit vectors of [2 x double], using the operation specified by the
1605
1613
/// immediate integer operand.
1606
1614
///
1607
- /// Returns a [2 x double] vector consisting of two doubles corresponding to
1608
- /// the two comparison results: zero if the comparison is false, and all 1's
1609
- /// if the comparison is true.
1615
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFFFFFFFFFF for true.
1616
+ /// If either value in a comparison is NaN, comparisons that are ordered
1617
+ /// return false, and comparisons that are unordered return true.
1610
1618
///
1611
1619
/// \headerfile <x86intrin.h>
1612
1620
///
@@ -1663,9 +1671,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1663
1671
/// [4 x float], using the operation specified by the immediate integer
1664
1672
/// operand.
1665
1673
///
1666
- /// Returns a [4 x float] vector consisting of four floats corresponding to
1667
- /// the four comparison results: zero if the comparison is false, and all 1's
1668
- /// if the comparison is true.
1674
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFF for true.
1675
+ /// If either value in a comparison is NaN, comparisons that are ordered
1676
+ /// return false, and comparisons that are unordered return true.
1669
1677
///
1670
1678
/// \headerfile <x86intrin.h>
1671
1679
///
@@ -1721,9 +1729,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1721
1729
/// 256-bit vectors of [4 x double], using the operation specified by the
1722
1730
/// immediate integer operand.
1723
1731
///
1724
- /// Returns a [4 x double] vector consisting of four doubles corresponding to
1725
- /// the four comparison results: zero if the comparison is false, and all 1's
1726
- /// if the comparison is true.
1732
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFFFFFFFFFF for true.
1733
+ /// If either value in a comparison is NaN, comparisons that are ordered
1734
+ /// return false, and comparisons that are unordered return true.
1727
1735
///
1728
1736
/// \headerfile <x86intrin.h>
1729
1737
///
@@ -1781,9 +1789,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1781
1789
/// [8 x float], using the operation specified by the immediate integer
1782
1790
/// operand.
1783
1791
///
1784
- /// Returns a [8 x float] vector consisting of eight floats corresponding to
1785
- /// the eight comparison results: zero if the comparison is false, and all
1786
- /// 1's if the comparison is true.
1792
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFF for true.
1793
+ /// If either value in a comparison is NaN, comparisons that are ordered
1794
+ /// return false, and comparisons that are unordered return true.
1787
1795
///
1788
1796
/// \headerfile <x86intrin.h>
1789
1797
///
@@ -1842,8 +1850,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1842
1850
/// two 128-bit vectors of [2 x double], using the operation specified by the
1843
1851
/// immediate integer operand.
1844
1852
///
1845
- /// If the result is true, all 64 bits of the destination vector are set;
1846
- /// otherwise they are cleared.
1853
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFFFFFFFFFF for true.
1854
+ /// If either value in a comparison is NaN, comparisons that are ordered
1855
+ /// return false, and comparisons that are unordered return true.
1847
1856
///
1848
1857
/// \headerfile <x86intrin.h>
1849
1858
///
@@ -1900,8 +1909,9 @@ _mm256_blendv_ps(__m256 __a, __m256 __b, __m256 __c)
1900
1909
/// vectors of [4 x float], using the operation specified by the immediate
1901
1910
/// integer operand.
1902
1911
///
1903
- /// If the result is true, all 32 bits of the destination vector are set;
1904
- /// otherwise they are cleared.
1912
+ /// Each comparison returns 0x0 for false, 0xFFFFFFFF for true.
1913
+ /// If either value in a comparison is NaN, comparisons that are ordered
1914
+ /// return false, and comparisons that are unordered return true.
1905
1915
///
1906
1916
/// \headerfile <x86intrin.h>
1907
1917
///
0 commit comments