]> git.pld-linux.org Git - packages/opencv.git/blobdiff - ix86-pause.patch
- there is no _mm_pause() on ix86
[packages/opencv.git] / ix86-pause.patch
diff --git a/ix86-pause.patch b/ix86-pause.patch
new file mode 100644 (file)
index 0000000..1f29f23
--- /dev/null
@@ -0,0 +1,14 @@
+--- opencv-3.4.1/modules/core/src/parallel_impl.cpp~   2018-02-23 09:38:33.000000000 +0100
++++ opencv-3.4.1/modules/core/src/parallel_impl.cpp    2018-04-26 22:46:13.441805476 +0200
+@@ -49,8 +49,10 @@
+ DECLARE_CV_PAUSE
+ #endif
+ #ifndef CV_PAUSE
+-#if defined __GNUC__ && (defined __i386__ || defined __x86_64__)
++#if defined __GNUC__ && defined __x86_64__
+ #   define CV_PAUSE(v) do { for (int __delay = (v); __delay > 0; --__delay) { _mm_pause(); } } while (0)
++# elif defined __GNUC__ && defined __i386__
++#   define CV_PAUSE(v) do { for (int __delay = (v); __delay > 0; --__delay) { asm volatile("pause" ::: "memory"); } } while (0)
+ # elif defined __GNUC__ && defined __aarch64__
+ #   define CV_PAUSE(v) do { for (int __delay = (v); __delay > 0; --__delay) { asm volatile("yield" ::: "memory"); } } while (0)
+ # elif defined __GNUC__ && defined __arm__
This page took 0.040534 seconds and 4 git commands to generate.