Merge pull request #11304 from kinchungwong:issue_11242_intrin_cv34x_nocpp11
authorRyan Wong <kinchungwong@users.noreply.github.com>
Fri, 20 Apr 2018 15:43:47 +0000 (08:43 -0700)
committerAlexander Alekhin <alexander.a.alekhin@gmail.com>
Fri, 20 Apr 2018 15:43:47 +0000 (18:43 +0300)
commit6f675ae75bbf16d92d1f0c379d13cb76a2bf8c4d
tree91a0d3a713c3238ea350405a1e0f37e3c55ededd
parentc8b515ea69eff2ac5d0a01c832e08b370627c99f
Merge pull request #11304 from kinchungwong:issue_11242_intrin_cv34x_nocpp11

* Issue 11242 intrinsics v_extract, v_rotate improvement, branch 3.4, without C++11 (remove type restrictions for SSE2, use PALIGNR on SSSE3, compile to no-op when imm is 0 or nlanes).

* fix whitespace

* Fix #11242 (NEON intrinsics v_rotate...) branch 3.4
Separate macro expansion OPENCV_HAL_IMPL_NEON_SHIFT_OP for bitwise shifts for integers, from macro expansion OPENCV_HAL_IMPL_NEON_ROTATE for lane rotations. Bitwise shifts do not apply to floats, but lane-rotations can apply to both.

* fix whitespace

* Fix #11242 compile error (VSX intrinsics v_rotate(a)) branch 3.4 no-c++11
modules/core/include/opencv2/core/hal/intrin_cpp.hpp
modules/core/include/opencv2/core/hal/intrin_neon.hpp
modules/core/include/opencv2/core/hal/intrin_sse.hpp
modules/core/include/opencv2/core/hal/intrin_vsx.hpp
modules/core/test/test_intrin.cpp