diff options
Diffstat (limited to 'extern/libopenjpeg')
-rw-r--r-- | extern/libopenjpeg/CMakeLists.txt | 2 | ||||
-rw-r--r-- | extern/libopenjpeg/dwt.c | 10 | ||||
-rw-r--r-- | extern/libopenjpeg/opj_malloc.h | 2 | ||||
-rw-r--r-- | extern/libopenjpeg/patches/fbsd.patch | 13 |
4 files changed, 20 insertions, 7 deletions
diff --git a/extern/libopenjpeg/CMakeLists.txt b/extern/libopenjpeg/CMakeLists.txt index 0a985aceb37..d7b25ed1412 100644 --- a/extern/libopenjpeg/CMakeLists.txt +++ b/extern/libopenjpeg/CMakeLists.txt @@ -28,5 +28,5 @@ SET(INC . src) FILE(GLOB SRC *.c except t1_generate_luts.c) ADD_DEFINITIONS(-DWITH_OPENJPEG) -BLENDERLIB(extern_libopenjpeg "${SRC}" "${INC}") +BLENDERLIB(extern_openjpeg "${SRC}" "${INC}") #, libtype=['international','player'], priority=[5, 210]) diff --git a/extern/libopenjpeg/dwt.c b/extern/libopenjpeg/dwt.c index 78d18d175f4..357b475b9ac 100644 --- a/extern/libopenjpeg/dwt.c +++ b/extern/libopenjpeg/dwt.c @@ -610,7 +610,7 @@ static void v4dwt_decode_step1_sse(v4* w, int count, const __m128 c){ int i; for(i = 0; i < count; ++i){ __m128 tmp = vw[i*2]; - vw[i*2] = tmp * c; + vw[i*2] = _mm_mul_ps(tmp, c); } } @@ -622,18 +622,18 @@ static void v4dwt_decode_step2_sse(v4* l, v4* w, int k, int m, __m128 c){ __m128 tmp1 = vl[ 0]; __m128 tmp2 = vw[-1]; __m128 tmp3 = vw[ 0]; - vw[-1] = tmp2 + ((tmp1 + tmp3) * c); + vw[-1] = _mm_add_ps(tmp2, _mm_mul_ps(_mm_add_ps(tmp1, tmp3), c)); vl = vw; vw += 2; } if(m >= k){ return; } - c += c; - c *= vl[0]; + c = _mm_add_ps(c, c); + c = _mm_mul_ps(c, vl[0]); for(; m < k; ++m){ __m128 tmp = vw[-1]; - vw[-1] = tmp + c; + vw[-1] = _mm_add_ps(tmp, c); vw += 2; } } diff --git a/extern/libopenjpeg/opj_malloc.h b/extern/libopenjpeg/opj_malloc.h index 4e9727af0f3..960bdb3ec4b 100644 --- a/extern/libopenjpeg/opj_malloc.h +++ b/extern/libopenjpeg/opj_malloc.h @@ -76,7 +76,7 @@ Allocate memory aligned to a 16 byte boundry #if defined(__sun) #define HAVE_MEMALIGN #elif defined(__GNUC__) - #ifndef __APPLE__ + #if !defined(__APPLE__) && !defined(__FreeBSD__) #define HAVE_MEMALIGN #include <malloc.h> #endif diff --git a/extern/libopenjpeg/patches/fbsd.patch b/extern/libopenjpeg/patches/fbsd.patch new file mode 100644 index 00000000000..90e77600941 --- /dev/null +++ b/extern/libopenjpeg/patches/fbsd.patch @@ -0,0 +1,13 @@ +Index: extern/libopenjpeg/opj_malloc.h +=================================================================== +--- extern/libopenjpeg/opj_malloc.h (revision 27736) ++++ extern/libopenjpeg/opj_malloc.h (working copy) +@@ -76,7 +76,7 @@ + #if defined(__sun) + #define HAVE_MEMALIGN + #elif defined(__GNUC__) +- #ifndef __APPLE__ ++ #if !defined(__APPLE__) && !defined(__FreeBSD__) + #define HAVE_MEMALIGN + #include <malloc.h> + #endif |