From e54d31affe69fbbc5fbafbe333365fa8f3566d89 Mon Sep 17 00:00:00 2001 From: DRC Date: Sat, 12 Jan 2013 07:30:58 +0000 Subject: [PATCH 1/2] git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.2.x@897 632fc199-4ca6-4c93-a231-07263d6284db --- README | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/README b/README index 0e9b4295..eb9ebb1b 100644 --- a/README +++ b/README @@ -1,8 +1,8 @@ -libjpeg-turbo note: This file contains portions of the libjpeg v6b and v8 -README files, with additional wordsmithing by The libjpeg-turbo Project. -It is included only for reference, as some parts of it may not apply to -libjpeg-turbo. Please see README-turbo.txt for information specific to -libjpeg-turbo. +libjpeg-turbo note: This file has been modified by The libjpeg-turbo Project +to include only information relevant to libjpeg-turbo, to wordsmith certain +sections, and to remove impolitic language that existed in the libjpeg v8 +README. It is included only for reference. Please see README-turbo.txt for +information specific to libjpeg-turbo. The Independent JPEG Group's JPEG software From b87a0b468733ad1c258b30f86fb93637f38bc118 Mon Sep 17 00:00:00 2001 From: DRC Date: Sun, 13 Jan 2013 12:15:58 +0000 Subject: [PATCH 2/2] Fix the x86 build with NASM 0.98. Since NASM 0.98 is the default version on OS X, we want to at least allow people to build 32-bit code with it, even though it can't properly build 64-bit code. git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.2.x@906 632fc199-4ca6-4c93-a231-07263d6284db --- ChangeLog.txt | 4 ++++ simd/jdclrss2-64.asm | 8 ++++---- simd/jdclrss2.asm | 9 +++++---- simd/jdmrgss2-64.asm | 10 +++++----- simd/jdmrgss2.asm | 9 +++++---- 5 files changed, 23 insertions(+), 17 deletions(-) diff --git a/ChangeLog.txt b/ChangeLog.txt index 0cc61fde..12a0b54e 100644 --- a/ChangeLog.txt +++ b/ChangeLog.txt @@ -8,6 +8,10 @@ symlinks in /usr/lib/i386-linux-gnu for the TurboJPEG libraries in /usr/lib32. This allows those libraries to be used on MultiArch-compatible systems (such as Ubuntu 11 and later) without setting the linker path. +[3] Fixed a regression caused by 1.2.1[7] whereby the build would fail with +multiple "Mismatch in operand sizes" errors when attempting to build the x86 +SIMD code with NASM 0.98. + 1.2.1 ===== diff --git a/simd/jdclrss2-64.asm b/simd/jdclrss2-64.asm index 9b2e9308..7d17c52b 100644 --- a/simd/jdclrss2-64.asm +++ b/simd/jdclrss2-64.asm @@ -2,7 +2,7 @@ ; jdclrss2-64.asm - colorspace conversion (64-bit SSE2) ; ; Copyright 2009, 2012 Pierre Ossman for Cendio AB -; Copyright 2009 D. R. Commander +; Copyright 2009, 2012 D. R. Commander ; ; Based on ; x86 SIMD extension for IJG JPEG library @@ -288,7 +288,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. cmp rcx, byte SIZEOF_MMWORD jb short .column_st7 - movq MMWORD [rdi], xmmA + movq XMM_MMWORD [rdi], xmmA add rdi, byte SIZEOF_MMWORD sub rcx, byte SIZEOF_MMWORD psrldq xmmA, SIZEOF_MMWORD @@ -297,7 +297,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. cmp rcx, byte SIZEOF_DWORD jb short .column_st3 - movd DWORD [rdi], xmmA + movd XMM_DWORD [rdi], xmmA add rdi, byte SIZEOF_DWORD sub rcx, byte SIZEOF_DWORD psrldq xmmA, SIZEOF_DWORD @@ -407,7 +407,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. test rcx, rcx jz short .nextrow - movd DWORD [rdi], xmmA + movd XMM_DWORD [rdi], xmmA %endif ; RGB_PIXELSIZE ; --------------- diff --git a/simd/jdclrss2.asm b/simd/jdclrss2.asm index d26a5bbb..97754cb4 100644 --- a/simd/jdclrss2.asm +++ b/simd/jdclrss2.asm @@ -2,6 +2,7 @@ ; jdclrss2.asm - colorspace conversion (SSE2) ; ; Copyright 2009, 2012 Pierre Ossman for Cendio AB +; Copyright 2012 D. R. Commander ; ; Based on ; x86 SIMD extension for IJG JPEG library @@ -300,7 +301,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. cmp ecx, byte SIZEOF_MMWORD jb short .column_st7 - movq MMWORD [edi], xmmA + movq XMM_MMWORD [edi], xmmA add edi, byte SIZEOF_MMWORD sub ecx, byte SIZEOF_MMWORD psrldq xmmA, SIZEOF_MMWORD @@ -309,7 +310,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. cmp ecx, byte SIZEOF_DWORD jb short .column_st3 - movd DWORD [edi], xmmA + movd XMM_DWORD [edi], xmmA add edi, byte SIZEOF_DWORD sub ecx, byte SIZEOF_DWORD psrldq xmmA, SIZEOF_DWORD @@ -411,7 +412,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. cmp ecx, byte SIZEOF_XMMWORD/8 jb short .column_st7 - movq MMWORD [edi], xmmA + movq XMM_MMWORD [edi], xmmA add edi, byte SIZEOF_XMMWORD/8*4 sub ecx, byte SIZEOF_XMMWORD/8 psrldq xmmA, SIZEOF_XMMWORD/8*4 @@ -420,7 +421,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2): ; space. test ecx, ecx jz short .nextrow - movd DWORD [edi], xmmA + movd XMM_DWORD [edi], xmmA %endif ; RGB_PIXELSIZE ; --------------- diff --git a/simd/jdmrgss2-64.asm b/simd/jdmrgss2-64.asm index 5d8fc462..ffbf6b25 100644 --- a/simd/jdmrgss2-64.asm +++ b/simd/jdmrgss2-64.asm @@ -2,7 +2,7 @@ ; jdmrgss2-64.asm - merged upsampling/color conversion (64-bit SSE2) ; ; Copyright 2009, 2012 Pierre Ossman for Cendio AB -; Copyright 2009 D. R. Commander +; Copyright 2009, 2012 D. R. Commander ; ; Based on ; x86 SIMD extension for IJG JPEG library @@ -292,7 +292,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. cmp rcx, byte SIZEOF_MMWORD jb short .column_st7 - movq MMWORD [rdi], xmmA + movq XMM_MMWORD [rdi], xmmA add rdi, byte SIZEOF_MMWORD sub rcx, byte SIZEOF_MMWORD psrldq xmmA, SIZEOF_MMWORD @@ -301,7 +301,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. cmp rcx, byte SIZEOF_DWORD jb short .column_st3 - movd DWORD [rdi], xmmA + movd XMM_DWORD [rdi], xmmA add rdi, byte SIZEOF_DWORD sub rcx, byte SIZEOF_DWORD psrldq xmmA, SIZEOF_DWORD @@ -405,7 +405,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. cmp rcx, byte SIZEOF_XMMWORD/8 jb short .column_st7 - movq MMWORD [rdi], xmmA + movq XMM_MMWORD [rdi], xmmA add rdi, byte SIZEOF_XMMWORD/8*4 sub rcx, byte SIZEOF_XMMWORD/8 psrldq xmmA, SIZEOF_XMMWORD/8*4 @@ -414,7 +414,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. test rcx, rcx jz short .endcolumn - movd DWORD [rdi], xmmA + movd XMM_DWORD [rdi], xmmA %endif ; RGB_PIXELSIZE ; --------------- diff --git a/simd/jdmrgss2.asm b/simd/jdmrgss2.asm index f190468a..6494340f 100644 --- a/simd/jdmrgss2.asm +++ b/simd/jdmrgss2.asm @@ -2,6 +2,7 @@ ; jdmrgss2.asm - merged upsampling/color conversion (SSE2) ; ; Copyright 2009, 2012 Pierre Ossman for Cendio AB +; Copyright 2012 D. R. Commander ; ; Based on ; x86 SIMD extension for IJG JPEG library @@ -305,7 +306,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. cmp ecx, byte SIZEOF_MMWORD jb short .column_st7 - movq MMWORD [edi], xmmA + movq XMM_MMWORD [edi], xmmA add edi, byte SIZEOF_MMWORD sub ecx, byte SIZEOF_MMWORD psrldq xmmA, SIZEOF_MMWORD @@ -314,7 +315,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. cmp ecx, byte SIZEOF_DWORD jb short .column_st3 - movd DWORD [edi], xmmA + movd XMM_DWORD [edi], xmmA add edi, byte SIZEOF_DWORD sub ecx, byte SIZEOF_DWORD psrldq xmmA, SIZEOF_DWORD @@ -419,7 +420,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. cmp ecx, byte SIZEOF_XMMWORD/8 jb short .column_st7 - movq MMWORD [edi], xmmA + movq XMM_MMWORD [edi], xmmA add edi, byte SIZEOF_XMMWORD/8*4 sub ecx, byte SIZEOF_XMMWORD/8 psrldq xmmA, SIZEOF_XMMWORD/8*4 @@ -428,7 +429,7 @@ EXTN(jsimd_h2v1_merged_upsample_sse2): ; space. test ecx, ecx jz short .endcolumn - movd DWORD [edi], xmmA + movd XMM_DWORD [edi], xmmA %endif ; RGB_PIXELSIZE ; ---------------