mirror of
https://github.com/opencv/opencv.git
synced 2025-06-07 17:44:04 +08:00
core:vsx workaround for the unexpected results of vec_vbpermq
in gcc4.9
This commit is contained in:
parent
7e6bdbad9b
commit
ec033330df
@ -233,6 +233,10 @@ VSX_FINLINE(rt) fnm(const rg& a, const rg& b) \
|
|||||||
#if __GNUG__ < 5
|
#if __GNUG__ < 5
|
||||||
// vec_xxpermdi in gcc4 missing little-endian supports just like clang
|
// vec_xxpermdi in gcc4 missing little-endian supports just like clang
|
||||||
# define vec_permi(a, b, c) vec_xxpermdi(b, a, (3 ^ (((c) & 1) << 1 | (c) >> 1)))
|
# define vec_permi(a, b, c) vec_xxpermdi(b, a, (3 ^ (((c) & 1) << 1 | (c) >> 1)))
|
||||||
|
// same as vec_xxpermdi
|
||||||
|
# undef vec_vbpermq
|
||||||
|
VSX_IMPL_2VRG(vec_udword2, vec_uchar16, vbpermq, vec_vbpermq)
|
||||||
|
VSX_IMPL_2VRG(vec_dword2, vec_char16, vbpermq, vec_vbpermq)
|
||||||
#else
|
#else
|
||||||
# define vec_permi vec_xxpermdi
|
# define vec_permi vec_xxpermdi
|
||||||
#endif // __GNUG__ < 5
|
#endif // __GNUG__ < 5
|
||||||
|
Loading…
Reference in New Issue
Block a user