onnxruntime
1ab11a11 - ppc64le: mlas: fix both MaximumFloat and MinimumFloat to return NAN (#12628)

Commit
3 years ago
ppc64le: mlas: fix both MaximumFloat and MinimumFloat to return NAN (#12628) Avoid using vec_max/vec_min because their behaviors are undefined if one of the elements is NAN. The Power Vector Intrinsic Programming Reference says: "For floating-point types, if both source elements contain signed zeros, or if either source element contains a NaN, it is undefined which of the two source elements is copied into the corresponding result element." As the unittest Activation.ShortExecute expects NAN, this patch uses vec_sel and vec_cmpgt to return NAN if one of the elements is NAN. https://git.openpower.foundation/systemsoftware/Programming-Guides/src/branch/master/Intrinsics_Reference/ch_vec_reference.xml#L26808
Author
Parents
Loading