[clang] [clang][docs] Revise documentation for `__builtin_reduce_(max|min)`. (PR #114637)

Matt Arsenault via cfe-commits cfe-commits at lists.llvm.org
Tue Nov 5 13:48:01 PST 2024


================
@@ -745,12 +745,8 @@ Let ``VT`` be a vector type and ``ET`` the element type of ``VT``.
 ======================================= ====================================================================== ==================================
          Name                            Operation                                                              Supported element types
 ======================================= ====================================================================== ==================================
- ET __builtin_reduce_max(VT a)           return x or y, whichever is larger; If exactly one argument is         integer and floating point types
-                                         a NaN, return the other argument. If both arguments are NaNs,
-                                         fmax() return a NaN.
- ET __builtin_reduce_min(VT a)           return x or y, whichever is smaller; If exactly one argument           integer and floating point types
-                                         is a NaN, return the other argument. If both arguments are
-                                         NaNs, fmax() return a NaN.
+ ET __builtin_reduce_max(VT a)           return the largest element of the vector.                              integer and floating point types
+ ET __builtin_reduce_min(VT a)           return the smallest element of the vector.                             integer and floating point types
----------------
arsenm wrote:

Do we have any kind of conformance testing for this? For a signaling nan the behavior will be different depending on whether there are 2 or more elements 

https://github.com/llvm/llvm-project/pull/114637


More information about the cfe-commits mailing list