#include "test_precomp.hpp"
-#include "test_intrin_utils.hpp"
#include <climits>
+#include "test_intrin_utils.hpp"
+
+#define CV_CPU_SIMD_FILENAME "test_intrin_utils.hpp"
+#define CV_CPU_DISPATCH_MODE FP16
+#include "opencv2/core/private/cv_cpu_include_simd_declarations.hpp"
+
+
using namespace cv;
namespace cvtest { namespace hal {
+using namespace CV_CPU_OPTIMIZATION_NAMESPACE;
//============= 8-bit integer =====================================================================
}
#endif
+TEST(hal_intrin,float16x4)
+{
+ CV_CPU_CALL_FP16(test_hal_intrin_float16x4, ());
+ throw SkipTestException("Unsupported hardware: FP16 is not available");
+}
+
}}
#include "test_intrin_utils.hpp"
namespace cvtest { namespace hal {
-TEST(hal_intrin, float16x4) {
+CV_CPU_OPTIMIZATION_NAMESPACE_BEGIN
+
+void test_hal_intrin_float16x4()
+{
TheTest<v_float16x4>()
.test_loadstore_fp16()
.test_float_cvt_fp16()
;
}
-}}
+
+CV_CPU_OPTIMIZATION_NAMESPACE_END
+}} // namespace
-#ifndef _TEST_UTILS_HPP_
-#define _TEST_UTILS_HPP_
-
#include "opencv2/core/hal/intrin.hpp"
-#include "opencv2/ts.hpp"
-#include <ostream>
-#include <algorithm>
-#include <climits>
+
+namespace cvtest { namespace hal {
+CV_CPU_OPTIMIZATION_NAMESPACE_BEGIN
+
+void test_hal_intrin_float16x4();
+
+#ifndef CV_CPU_OPTIMIZATION_DECLARATIONS_ONLY
template <typename R> struct Data;
template <int N> struct initializer;
return out;
}
-namespace cvtest { namespace hal {
-
template<typename T> static inline void EXPECT_COMPARE_EQ_(const T a, const T b);
template<> inline void EXPECT_COMPARE_EQ_<float>(const float a, const float b)
{
}
};
- }
-}
#endif
+
+CV_CPU_OPTIMIZATION_NAMESPACE_END
+}} // namespace