Workaround for Intel platform: replace min() with ternary operator
authorAlexander Karsakov <alexander.karsakov@itseez.com>
Mon, 17 Mar 2014 08:18:55 +0000 (12:18 +0400)
committerAlexander Karsakov <alexander.karsakov@itseez.com>
Fri, 21 Mar 2014 05:33:00 +0000 (09:33 +0400)
modules/imgproc/src/opencl/morph.cl

index cb6e733..35c0a27 100644 (file)
 #endif
 
 #ifdef ERODE
+#ifdef INTEL_DEVICE
+// workaround for bug in Intel HD graphics drivers (10.18.10.3496 or older)
+#define MORPH_OP(A,B) ((A) < (B) ? (A) : (B))
+#else
 #define MORPH_OP(A,B) min((A),(B))
 #endif
+#endif
 #ifdef DILATE
 #define MORPH_OP(A,B) max((A),(B))
 #endif