Compare commits
19 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a51ada6706 | ||
|
|
ef663e333e | ||
|
|
be09b20a40 | ||
|
|
9ca2364694 | ||
|
|
3dc1bc2ded | ||
|
|
1a2219ec26 | ||
|
|
b6f097f729 | ||
|
|
d3e320fee7 | ||
|
|
830d5fccf4 | ||
|
|
4132b1d552 | ||
|
|
f9bdeb62e2 | ||
|
|
e728ed7a36 | ||
|
|
a644fb05a7 | ||
|
|
86d8c0aa26 | ||
|
|
fb096fff78 | ||
|
|
14ecb539df | ||
|
|
09271951d9 | ||
|
|
7bac07bf12 | ||
|
|
0f413b2207 |
38
BUILDING.txt
38
BUILDING.txt
@@ -128,7 +128,8 @@ Add
|
|||||||
|
|
||||||
--host x86_64-apple-darwin10.0.0 NASM=/opt/local/bin/nasm
|
--host x86_64-apple-darwin10.0.0 NASM=/opt/local/bin/nasm
|
||||||
|
|
||||||
to the configure command line. NASM 2.07 from MacPorts must be installed.
|
to the configure command line. NASM 2.07 or later from MacPorts must be
|
||||||
|
installed.
|
||||||
|
|
||||||
|
|
||||||
32-bit Library Build on 64-bit OS/X
|
32-bit Library Build on 64-bit OS/X
|
||||||
@@ -166,6 +167,29 @@ Add
|
|||||||
to the configure command line.
|
to the configure command line.
|
||||||
|
|
||||||
|
|
||||||
|
64-bit Library Build on 64-bit FreeBSD
|
||||||
|
--------------------------------------
|
||||||
|
|
||||||
|
Add
|
||||||
|
|
||||||
|
--host x86_64-unknown-freebsd
|
||||||
|
|
||||||
|
to the configure command line. NASM 2.07 or later from FreeBSD ports must be
|
||||||
|
installed.
|
||||||
|
|
||||||
|
|
||||||
|
32-bit Library Build on 64-bit FreeBSD
|
||||||
|
--------------------------------------
|
||||||
|
|
||||||
|
Add
|
||||||
|
|
||||||
|
--host i386-unknown-freebsd CC='gcc -B /usr/lib32' CXX='g++ -B/usr/lib32' \
|
||||||
|
CFLAGS='-O3 -m32' CXXFLAGS='-O3 -m32' LDFLAGS='-B/usr/lib32'
|
||||||
|
|
||||||
|
to the configure command line. NASM 2.07 or later from FreeBSD ports must be
|
||||||
|
installed.
|
||||||
|
|
||||||
|
|
||||||
MinGW Build on Cygwin
|
MinGW Build on Cygwin
|
||||||
---------------------
|
---------------------
|
||||||
|
|
||||||
@@ -251,14 +275,10 @@ This will generate the following files under libjpeg-turbo\windows\:
|
|||||||
turbojpeg.dll Shared library for TurboJPEG/OSS
|
turbojpeg.dll Shared library for TurboJPEG/OSS
|
||||||
turbojpeg.lib Development stub for TurboJPEG/OSS shared library
|
turbojpeg.lib Development stub for TurboJPEG/OSS shared library
|
||||||
|
|
||||||
#If a 64-bit Windows platform is detected, then the build system will attempt
|
If a 64-bit Windows platform is detected, then the build system will attempt
|
||||||
#to build a 64-bit version of libjpeg-turbo. You can override this by running
|
to build a 64-bit version of libjpeg-turbo. You can override this by running
|
||||||
#
|
|
||||||
# make -f win/Makefile WIN64=no
|
|
||||||
|
|
||||||
NOTE: For unknown reasons, Win64 support doesn't work yet, so at the moment,
|
make -f win/Makefile WIN64=no
|
||||||
you have to run 'make -f win/Makefile WIN64=yes' to get a 64-bit build on
|
|
||||||
64-bit Windows. The paragraph above will apply once Win64 support is working.
|
|
||||||
|
|
||||||
|
|
||||||
*******************************************************************************
|
*******************************************************************************
|
||||||
@@ -299,7 +319,7 @@ make nsi
|
|||||||
libjpeg-turbo SDK. This requires the Nullsoft Install System
|
libjpeg-turbo SDK. This requires the Nullsoft Install System
|
||||||
(http://nsis.sourceforge.net/.) makensis.exe should be in your PATH.
|
(http://nsis.sourceforge.net/.) makensis.exe should be in your PATH.
|
||||||
|
|
||||||
make -f win/Makefile dist
|
make -f win/Makefile nsi
|
||||||
|
|
||||||
This creates a Win32 installer for the Visual C++ version of the
|
This creates a Win32 installer for the Visual C++ version of the
|
||||||
libjpeg-turbo SDK. This requires the Nullsoft Install System
|
libjpeg-turbo SDK. This requires the Nullsoft Install System
|
||||||
|
|||||||
@@ -1,3 +1,11 @@
|
|||||||
|
Significant changes since 0.0.91
|
||||||
|
================================
|
||||||
|
|
||||||
|
[1] Fixed x86-64 build on FreeBSD systems
|
||||||
|
|
||||||
|
[2] Added support for Windows 64-bit systems
|
||||||
|
|
||||||
|
|
||||||
Significant changes since 0.0.90
|
Significant changes since 0.0.90
|
||||||
================================
|
================================
|
||||||
|
|
||||||
|
|||||||
@@ -158,15 +158,20 @@ sunpkg: all
|
|||||||
sh $(srcdir)/release/makesunpkg ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
sh $(srcdir)/release/makesunpkg ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
||||||
${DEBARCH} ${srcdir} $(CC) $(CXX) combined
|
${DEBARCH} ${srcdir} $(CC) $(CXX) combined
|
||||||
|
|
||||||
|
nsi: all
|
||||||
|
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo-gcc64 \
|
||||||
|
-DWLIBDIR=.libs -DWSRCDIR=$(srcdir) -DWBLDDIR=. -DWHDRDIR=. -DWIN64 \
|
||||||
|
-DPLATFORM="GCC 64-bit" -DGCC $(srcdir)/release/libjpeg-turbo.nsi
|
||||||
|
|
||||||
else
|
else
|
||||||
|
|
||||||
sunpkg: all
|
sunpkg: all
|
||||||
sh $(srcdir)/release/makesunpkg ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
sh $(srcdir)/release/makesunpkg ${PACKAGE_NAME} ${VERSION} ${BUILD} \
|
||||||
${DEBARCH} ${srcdir} $(CC) $(CXX)
|
${DEBARCH} ${srcdir} $(CC) $(CXX)
|
||||||
|
|
||||||
endif
|
|
||||||
|
|
||||||
nsi: all
|
nsi: all
|
||||||
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo-gcc \
|
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo-gcc \
|
||||||
-DWLIBDIR=.libs -DWSRCDIR=$(srcdir) -DWBLDDIR=. -DWHDRDIR=. \
|
-DWLIBDIR=.libs -DWSRCDIR=$(srcdir) -DWBLDDIR=. -DWHDRDIR=. \
|
||||||
-DPLATFORM="GCC" -DGCC $(srcdir)/release/libjpeg-turbo.nsi
|
-DPLATFORM="GCC" -DGCC $(srcdir)/release/libjpeg-turbo.nsi
|
||||||
|
|
||||||
|
endif
|
||||||
|
|||||||
@@ -138,15 +138,15 @@ of libjpeg by setting
|
|||||||
|
|
||||||
If using Cygwin, then set
|
If using Cygwin, then set
|
||||||
|
|
||||||
CPATH=/cygdrive/c/libjpeg-turbo-gcc/include
|
CPATH=/cygdrive/c/libjpeg-turbo-gcc[64]/include
|
||||||
and
|
and
|
||||||
LIBRARY_PATH=/cygdrive/c/libjpeg-turbo-gcc/lib
|
LIBRARY_PATH=/cygdrive/c/libjpeg-turbo-gcc[64]/lib
|
||||||
|
|
||||||
If using MinGW, then set
|
If using MinGW, then set
|
||||||
|
|
||||||
CPATH=/c/libjpeg-turbo-gcc/include
|
CPATH=/c/libjpeg-turbo-gcc[64]/include
|
||||||
and
|
and
|
||||||
LIBRARY_PATH=/c/libjpeg-turbo-gcc/lib
|
LIBRARY_PATH=/c/libjpeg-turbo-gcc[64]/lib
|
||||||
|
|
||||||
Building against libjpeg-turbo is useful, for instance, if you want to build an
|
Building against libjpeg-turbo is useful, for instance, if you want to build an
|
||||||
application that leverages the libjpeg-turbo colorspace extensions (see below.)
|
application that leverages the libjpeg-turbo colorspace extensions (see below.)
|
||||||
@@ -166,10 +166,10 @@ On OS X, simply add /opt/libjpeg-turbo/{lib}/libjpeg.a to the linker command
|
|||||||
line (this also works on Linux and Solaris.)
|
line (this also works on Linux and Solaris.)
|
||||||
|
|
||||||
To build Visual C++ applications using libjpeg-turbo, add
|
To build Visual C++ applications using libjpeg-turbo, add
|
||||||
c:\libjpeg-turbo\include to your system or user INCLUDE environment variable
|
c:\libjpeg-turbo[64]\include to your system or user INCLUDE environment
|
||||||
and c:\libjpeg-turbo\lib to your system or user LIB environment variable, and
|
variable and c:\libjpeg-turbo[64]\lib to your system or user LIB environment
|
||||||
then link against either jpeg.lib (to use jpeg62.dll) or jpeg-static.lib (to
|
variable, and then link against either jpeg.lib (to use jpeg62.dll) or
|
||||||
use the static version of libjpeg-turbo.)
|
jpeg-static.lib (to use the static version of libjpeg-turbo.)
|
||||||
|
|
||||||
=====================
|
=====================
|
||||||
Colorspace Extensions
|
Colorspace Extensions
|
||||||
|
|||||||
@@ -44,7 +44,14 @@ case "$host_os" in
|
|||||||
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
if echo __ELF__ | $CC -E - | grep __ELF__ > /dev/null; then
|
||||||
objfmt='BSD-a.out'
|
objfmt='BSD-a.out'
|
||||||
else
|
else
|
||||||
objfmt='ELF'
|
case "$host_cpu" in
|
||||||
|
x86_64)
|
||||||
|
objfmt='ELF64'
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
objfmt='ELF'
|
||||||
|
;;
|
||||||
|
esac
|
||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
solaris* | sunos* | sysv* | sco*)
|
solaris* | sunos* | sysv* | sco*)
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
# Process this file with autoconf to produce a configure script.
|
# Process this file with autoconf to produce a configure script.
|
||||||
|
|
||||||
AC_PREREQ([2.56])
|
AC_PREREQ([2.56])
|
||||||
AC_INIT([libjpeg-turbo], [0.0.91])
|
AC_INIT([libjpeg-turbo], [0.0.93])
|
||||||
BUILD=`date +%Y%m%d`
|
BUILD=`date +%Y%m%d`
|
||||||
|
|
||||||
AM_INIT_AUTOMAKE([-Wall foreign dist-bzip2])
|
AM_INIT_AUTOMAKE([-Wall foreign dist-bzip2])
|
||||||
|
|||||||
4
jchuff.c
4
jchuff.c
@@ -384,7 +384,7 @@ dump_buffer (working_state * state)
|
|||||||
put_buffer = (put_buffer << size) | code; \
|
put_buffer = (put_buffer << size) | code; \
|
||||||
}
|
}
|
||||||
|
|
||||||
#if __WORDSIZE==64
|
#if __WORDSIZE==64 || defined(_WIN64)
|
||||||
|
|
||||||
#define DUMP_BITS(code, size) { \
|
#define DUMP_BITS(code, size) { \
|
||||||
CHECKBUF47() \
|
CHECKBUF47() \
|
||||||
@@ -425,7 +425,7 @@ dump_buffer (working_state * state)
|
|||||||
|
|
||||||
int _max=0;
|
int _max=0;
|
||||||
|
|
||||||
#if __WORDSIZE==64
|
#if __WORDSIZE==64 || defined(_WIN64)
|
||||||
|
|
||||||
#define DUMP_VALUE(ht, codevalue, t, nbits) { \
|
#define DUMP_VALUE(ht, codevalue, t, nbits) { \
|
||||||
size = ht->ehufsi[codevalue]; \
|
size = ht->ehufsi[codevalue]; \
|
||||||
|
|||||||
2
jdhuff.c
2
jdhuff.c
@@ -628,7 +628,7 @@ decode_mcu_slow (j_decompress_ptr cinfo, JBLOCKROW *MCU_data)
|
|||||||
|
|
||||||
/***************************************************************/
|
/***************************************************************/
|
||||||
|
|
||||||
#if __WORDSIZE == 64
|
#if __WORDSIZE == 64 || defined(_WIN64)
|
||||||
|
|
||||||
#define ENSURE_SHORT \
|
#define ENSURE_SHORT \
|
||||||
if (bits_left < 16) { \
|
if (bits_left < 16) { \
|
||||||
|
|||||||
2
jdhuff.h
2
jdhuff.h
@@ -73,7 +73,7 @@ EXTERN(void) jpeg_make_d_derived_tbl
|
|||||||
* necessary.
|
* necessary.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#if __WORDSIZE == 64
|
#if __WORDSIZE == 64 || defined(_WIN64)
|
||||||
|
|
||||||
typedef size_t bit_buf_type; /* type of bit-extraction buffer */
|
typedef size_t bit_buf_type; /* type of bit-extraction buffer */
|
||||||
#define BIT_BUF_SIZE 64 /* size of buffer in bits */
|
#define BIT_BUF_SIZE 64 /* size of buffer in bits */
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
!include x64.nsh
|
||||||
Name "libjpeg-turbo SDK for ${PLATFORM}"
|
Name "libjpeg-turbo SDK for ${PLATFORM}"
|
||||||
OutFile ${WBLDDIR}\${APPNAME}.exe
|
OutFile ${WBLDDIR}\${APPNAME}.exe
|
||||||
InstallDir c:\${APPNAME}
|
InstallDir c:\${APPNAME}
|
||||||
@@ -11,6 +12,11 @@ UninstPage uninstConfirm
|
|||||||
UninstPage instfiles
|
UninstPage instfiles
|
||||||
|
|
||||||
Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
||||||
|
!ifdef WIN64
|
||||||
|
${If} ${RunningX64}
|
||||||
|
${DisableX64FSRedirection}
|
||||||
|
${Endif}
|
||||||
|
!endif
|
||||||
SectionIn RO
|
SectionIn RO
|
||||||
!ifdef GCC
|
!ifdef GCC
|
||||||
IfFileExists $SYSDIR/libturbojpeg.dll exists 0
|
IfFileExists $SYSDIR/libturbojpeg.dll exists 0
|
||||||
@@ -35,7 +41,7 @@ Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
|||||||
!endif
|
!endif
|
||||||
SetOutPath $INSTDIR\bin
|
SetOutPath $INSTDIR\bin
|
||||||
!ifdef GCC
|
!ifdef GCC
|
||||||
File "${WLIBDIR}\libjpeg-62.dll"
|
File "/oname=libjpeg-62.dll" "${WLIBDIR}\libjpeg-*.dll"
|
||||||
!else
|
!else
|
||||||
File "${WLIBDIR}\jpeg62.dll"
|
File "${WLIBDIR}\jpeg62.dll"
|
||||||
!endif
|
!endif
|
||||||
@@ -74,6 +80,11 @@ Section "libjpeg-turbo SDK for ${PLATFORM} (required)"
|
|||||||
SectionEnd
|
SectionEnd
|
||||||
|
|
||||||
Section "Uninstall"
|
Section "Uninstall"
|
||||||
|
!ifdef WIN64
|
||||||
|
${If} ${RunningX64}
|
||||||
|
${DisableX64FSRedirection}
|
||||||
|
${Endif}
|
||||||
|
!endif
|
||||||
|
|
||||||
SetShellVarContext all
|
SetShellVarContext all
|
||||||
|
|
||||||
|
|||||||
@@ -6,7 +6,7 @@ SUNW_PKGVERS=1.0
|
|||||||
DESC=A SIMD-accelerated JPEG codec which provides both the libjpeg and TurboJPEG APIs
|
DESC=A SIMD-accelerated JPEG codec which provides both the libjpeg and TurboJPEG APIs
|
||||||
VENDOR=The libjpeg-turbo Project
|
VENDOR=The libjpeg-turbo Project
|
||||||
HOTLINE=http://libjpeg-turbo.VirtualGL.org
|
HOTLINE=http://libjpeg-turbo.VirtualGL.org
|
||||||
EMAIL=dcommander@users.sourceforge.net
|
EMAIL=information@virtualgl.org
|
||||||
MAXINST=1
|
MAXINST=1
|
||||||
CATEGORY=application
|
CATEGORY=application
|
||||||
BASEDIR=/opt
|
BASEDIR=/opt
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jcclrss2.asm - colorspace conversion (64-bit SSE2)
|
; jcclrss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; x86 SIMD extension for IJG JPEG library
|
; x86 SIMD extension for IJG JPEG library
|
||||||
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
||||||
@@ -70,7 +70,7 @@ EXTN(jsimd_rgb_ycc_convert_sse2):
|
|||||||
pop rcx
|
pop rcx
|
||||||
|
|
||||||
mov rsi, r11
|
mov rsi, r11
|
||||||
mov rax, r14
|
mov eax, r14d
|
||||||
test rax,rax
|
test rax,rax
|
||||||
jle near .return
|
jle near .return
|
||||||
.rowloop:
|
.rowloop:
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jccolss2.asm - colorspace conversion (64-bit SSE2)
|
; jccolss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; x86 SIMD extension for IJG JPEG library
|
; x86 SIMD extension for IJG JPEG library
|
||||||
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
; Copyright (C) 1999-2006, MIYASAKA Masaru.
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jcqnts2f.asm - sample data conversion and quantization (64-bit SSE & SSE2)
|
; jcqnts2f-64.asm - sample data conversion and quantization (64-bit SSE & SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jcqnts2i.asm - sample data conversion and quantization (64-bit SSE2)
|
; jcqnts2i-64.asm - sample data conversion and quantization (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jcsamss2.asm - downsampling (64-bit SSE2)
|
; jcsamss2-64.asm - downsampling (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jdclrss2.asm - colorspace conversion (64-bit SSE2)
|
; jdclrss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
@@ -72,7 +72,7 @@ EXTN(jsimd_ycc_rgb_convert_sse2):
|
|||||||
pop rcx
|
pop rcx
|
||||||
|
|
||||||
mov rdi, r13
|
mov rdi, r13
|
||||||
mov rax, r14
|
mov eax, r14d
|
||||||
test rax,rax
|
test rax,rax
|
||||||
jle near .return
|
jle near .return
|
||||||
.rowloop:
|
.rowloop:
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jdcolss2.asm - colorspace conversion (64-bit SSE2)
|
; jdcolss2-64.asm - colorspace conversion (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jdmerss2.asm - merged upsampling/color conversion (64-bit SSE2)
|
; jdmerss2-64.asm - merged upsampling/color conversion (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jdmrgss2.asm - merged upsampling/color conversion (64-bit SSE2)
|
; jdmrgss2-64.asm - merged upsampling/color conversion (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
@@ -521,10 +521,10 @@ EXTN(jsimd_h2v2_merged_upsample_sse2):
|
|||||||
push rax
|
push rax
|
||||||
|
|
||||||
%ifdef WIN64
|
%ifdef WIN64
|
||||||
; rcx already parameter 1
|
mov r8, rcx
|
||||||
mov rdx, rdi
|
mov r9, rdi
|
||||||
mov r8, rax
|
mov rcx, rax
|
||||||
mov r9, rbx
|
mov rdx, rbx
|
||||||
%else
|
%else
|
||||||
mov rdx, rcx
|
mov rdx, rcx
|
||||||
mov rcx, rdi
|
mov rcx, rdi
|
||||||
@@ -554,10 +554,10 @@ EXTN(jsimd_h2v2_merged_upsample_sse2):
|
|||||||
push rax
|
push rax
|
||||||
|
|
||||||
%ifdef WIN64
|
%ifdef WIN64
|
||||||
; rcx already parameter 1
|
mov r8, rcx
|
||||||
mov rdx, rdi
|
mov r9, rdi
|
||||||
mov r8, rax
|
mov rcx, rax
|
||||||
mov r9, rbx
|
mov rdx, rbx
|
||||||
%else
|
%else
|
||||||
mov rdx, rcx
|
mov rdx, rcx
|
||||||
mov rcx, rdi
|
mov rcx, rdi
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jdsamss2.asm - upsampling (64-bit SSE2)
|
; jdsamss2-64.asm - upsampling (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jfss2fst.asm - fast integer FDCT (64-bit SSE2)
|
; jfss2fst-64.asm - fast integer FDCT (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jfss2int.asm - accurate integer FDCT (64-bit SSE2)
|
; jfss2int-64.asm - accurate integer FDCT (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jfsseflt.asm - floating-point FDCT (64-bit SSE)
|
; jfsseflt-64.asm - floating-point FDCT (64-bit SSE)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jiss2flt.asm - floating-point IDCT (64-bit SSE & SSE2)
|
; jiss2flt-64.asm - floating-point IDCT (64-bit SSE & SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jiss2fst.asm - fast integer IDCT (64-bit SSE2)
|
; jiss2fst-64.asm - fast integer IDCT (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jiss2int.asm - accurate integer IDCT (64-bit SSE2)
|
; jiss2int-64.asm - accurate integer IDCT (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
;
|
;
|
||||||
; jiss2red.asm - reduced-size IDCT (64-bit SSE2)
|
; jiss2red-64.asm - reduced-size IDCT (64-bit SSE2)
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
; Copyright 2009 D. R. Commander
|
; Copyright 2009 D. R. Commander
|
||||||
|
|||||||
@@ -2,6 +2,7 @@
|
|||||||
; jsimdext.inc - common declarations
|
; jsimdext.inc - common declarations
|
||||||
;
|
;
|
||||||
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
; Copyright 2009 Pierre Ossman <ossman@cendio.se> for Cendio AB
|
||||||
|
; Copyright 2010 D. R. Commander
|
||||||
;
|
;
|
||||||
; Based on
|
; Based on
|
||||||
; x86 SIMD extension for IJG JPEG library - version 1.02
|
; x86 SIMD extension for IJG JPEG library - version 1.02
|
||||||
@@ -310,6 +311,27 @@ const_base:
|
|||||||
mov r13, r9
|
mov r13, r9
|
||||||
mov r14, [rax+48]
|
mov r14, [rax+48]
|
||||||
mov r15, [rax+56]
|
mov r15, [rax+56]
|
||||||
|
push rsi
|
||||||
|
push rdi
|
||||||
|
sub rsp, SIZEOF_XMMWORD
|
||||||
|
movlpd XMMWORD [rsp], xmm6
|
||||||
|
sub rsp, SIZEOF_XMMWORD
|
||||||
|
movlpd XMMWORD [rsp], xmm7
|
||||||
|
%endmacro
|
||||||
|
|
||||||
|
%imacro uncollect_args 0
|
||||||
|
movlpd xmm7, XMMWORD [rsp]
|
||||||
|
add rsp, SIZEOF_XMMWORD
|
||||||
|
movlpd xmm6, XMMWORD [rsp]
|
||||||
|
add rsp, SIZEOF_XMMWORD
|
||||||
|
pop rdi
|
||||||
|
pop rsi
|
||||||
|
pop r15
|
||||||
|
pop r14
|
||||||
|
pop r13
|
||||||
|
pop r12
|
||||||
|
pop r11
|
||||||
|
pop r10
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%else
|
%else
|
||||||
@@ -329,8 +351,6 @@ const_base:
|
|||||||
mov r15, r9
|
mov r15, r9
|
||||||
%endmacro
|
%endmacro
|
||||||
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%imacro uncollect_args 0
|
%imacro uncollect_args 0
|
||||||
pop r15
|
pop r15
|
||||||
pop r14
|
pop r14
|
||||||
@@ -342,6 +362,8 @@ const_base:
|
|||||||
|
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%endif
|
||||||
|
|
||||||
; --------------------------------------------------------------------------
|
; --------------------------------------------------------------------------
|
||||||
; Defines picked up from the C headers
|
; Defines picked up from the C headers
|
||||||
;
|
;
|
||||||
|
|||||||
10
win/Makefile
10
win/Makefile
@@ -229,11 +229,19 @@ $(ODIR)/jpegut.exe: $(ODIR)/jpegut.obj $(ODIR)/turbojpeg.lib
|
|||||||
$(LINK) $(LDFLAGS) -out:$@ $^
|
$(LINK) $(LDFLAGS) -out:$@ $^
|
||||||
|
|
||||||
|
|
||||||
dist: all
|
ifeq ($(WIN64), yes)
|
||||||
|
nsi: all
|
||||||
|
$(RM) $(ODIR)/libjpeg-turbo64.exe
|
||||||
|
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo64 \
|
||||||
|
-DWLIBDIR=windows64 -DWSRCDIR=. -DWBLDDIR=windows64 -DWHDRDIR=win \
|
||||||
|
-DPLATFORM="Visual C++ 64-bit" -DWIN64 release/libjpeg-turbo.nsi
|
||||||
|
else
|
||||||
|
nsi: all
|
||||||
$(RM) $(ODIR)/libjpeg-turbo.exe
|
$(RM) $(ODIR)/libjpeg-turbo.exe
|
||||||
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo \
|
makensis -nocd -DVERSION=$(VERSION) -DAPPNAME=libjpeg-turbo \
|
||||||
-DWLIBDIR=windows -DWSRCDIR=. -DWBLDDIR=windows -DWHDRDIR=win \
|
-DWLIBDIR=windows -DWSRCDIR=. -DWBLDDIR=windows -DWHDRDIR=win \
|
||||||
-DPLATFORM="Visual C++" release/libjpeg-turbo.nsi
|
-DPLATFORM="Visual C++" release/libjpeg-turbo.nsi
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
test: testclean $(ODIR)/cjpeg.exe $(ODIR)/djpeg.exe $(ODIR)/jpegtran.exe \
|
test: testclean $(ODIR)/cjpeg.exe $(ODIR)/djpeg.exe $(ODIR)/jpegtran.exe \
|
||||||
|
|||||||
@@ -1,20 +1,19 @@
|
|||||||
ODIR = windows
|
ODIR = windows
|
||||||
WIN64 = no
|
WIN64 = no
|
||||||
# Win64 doesn't work yet, for unknown reasons
|
ifeq ($(PROCESSOR_ARCHITECTURE), AMD64)
|
||||||
#ifeq ($(PROCESSOR_ARCHITECTURE), AMD64)
|
WIN64 = yes
|
||||||
# WIN64 = yes
|
else
|
||||||
#else
|
ifeq ($(PROCESSOR_ARCHITEW6432), AMD64)
|
||||||
# ifeq ($(PROCESSOR_ARCHITEW6432), AMD64)
|
WIN64 = yes
|
||||||
# WIN64 = yes
|
endif
|
||||||
# endif
|
endif
|
||||||
#endif
|
|
||||||
ifeq ($(WIN64), yes)
|
ifeq ($(WIN64), yes)
|
||||||
ODIR = windows64
|
ODIR = windows64
|
||||||
endif
|
endif
|
||||||
|
|
||||||
_DUMMY := $(shell mkdir -p $(ODIR))
|
_DUMMY := $(shell mkdir -p $(ODIR))
|
||||||
|
|
||||||
VERSION = 0.0.90
|
VERSION = 0.0.93
|
||||||
|
|
||||||
CC = "cl" -nologo
|
CC = "cl" -nologo
|
||||||
CXX = "cl" -EHsc -nologo
|
CXX = "cl" -EHsc -nologo
|
||||||
@@ -27,8 +26,8 @@ ifeq ($(NASM),)
|
|||||||
NASM = nasm
|
NASM = nasm
|
||||||
endif
|
endif
|
||||||
|
|
||||||
CFLAGS = -W3 -wd4996 -Iwin -I.
|
CFLAGS = -W3 -wd4996 -Iwin -I. -DBMP_SUPPORTED -DGIF_SUPPORTED \
|
||||||
CDEFINES = -DWIN32 -D_CRT_SECURE_NO_DEPRECATE
|
-DPPM_SUPPORTED -DTARGA_SUPPORTED
|
||||||
ifeq ($(WIN64), yes)
|
ifeq ($(WIN64), yes)
|
||||||
NAFLAGS = -fwin64 -DWIN64 -DMSVC -D__x86_64__ -Iwin/
|
NAFLAGS = -fwin64 -DWIN64 -DMSVC -D__x86_64__ -Iwin/
|
||||||
else
|
else
|
||||||
|
|||||||
Reference in New Issue
Block a user