Research Article
Inastemp: A Novel Intrinsics-as-Template Library for Portable SIMD-Vectorization
Code 10
Inastemp comparison-vector.
(1) // Considering InaVecBestType can contain 4 doubles | (2) InaVecBestType<double> a_value = ; | (3) InaVecBestType<double> another_value = ; | (4) | (5) // [true, true, false, true] | (6) InaVecBestType<double>::InaVecMask a_is_positive_mask = a_value.isPositiveMask(); | (7) InaVecBestType<double>::MaskType a_is_positive_mask_op = a_value < 0.; | (8) | (9) // [false, false, true, true] | (10) InaVecBestType<double>::InaVecMask a_lower_than_another_mask = … | InaVecBestType<double>::IsLowerMask(a_value, another_value); | (11) InaVecBestType<double>::MaskType a_lower_than_another_mask_op = a_value < another_value; | (12) | (13) | (14) // [true, true, true, true] | (15) InaVecBestType<double>::MaskType a_lower_than_another_mask = … | InaVecBestType<double>::IsNoEqualMask(a_value, another_value) | (16) InaVecBestType<double>::MaskType a_lower_than_another_mask_op = a_value != another_value; |
|