Oops. OS X doesn't define __WORDSIZE unless you include stdint.h, so apparently the Huffman codec hasn't ever been fully accelerated on 64-bit OS X.

git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/branches/1.4.x@1541 632fc199-4ca6-4c93-a231-07263d6284db
This commit is contained in:
DRC
2015-04-22 08:43:04 +00:00
parent 48dde8baf1
commit e080e5d90b
3 changed files with 15 additions and 0 deletions

View File

@@ -32,6 +32,11 @@ SIMD-enabled libjpeg-turbo MIPS build was executed with the -nosmooth option on
a MIPS machine that lacked DSPr2 support. The MIPS SIMD routines for h2v1 and
h2v2 merged upsampling were not properly checking for the existence of DSPr2.
[6] Performance has been improved significantly on 64-bit Mac platforms
(particularly compression performance.) Due to an oversight, the 64-bit
version of the accelerated Huffman codec was not being compiled in when
libjpeg-turbo was built on OS X. Oops.
1.4.0
=====

View File

@@ -21,6 +21,7 @@
#include "jpeglib.h"
#include "jchuff.h" /* Declarations shared with jcphuff.c */
#include <limits.h>
#include <stdint.h>
/*
* NOTE: If USE_CLZ_INTRINSIC is defined, then clz/bsr instructions will be
@@ -376,6 +377,10 @@ dump_buffer (working_state * state)
} \
}
#if !defined(_WIN32) && !defined(__WORDSIZE)
#error __WORDSIZE is not defined
#endif
#if __WORDSIZE==64 || defined(_WIN64)
#define EMIT_BITS(code, size) { \

View File

@@ -22,6 +22,7 @@
#include "jdhuff.h" /* Declarations shared with jdphuff.c */
#include "jpegcomp.h"
#include "jstdhuff.c"
#include <stdint.h>
/*
@@ -419,6 +420,10 @@ jpeg_fill_bit_buffer (bitread_working_state * state,
} \
}
#if !defined(_WIN32) && !defined(__WORDSIZE)
#error __WORDSIZE is not defined
#endif
#if __WORDSIZE == 64 || defined(_WIN64)
/* Pre-fetch 48 bytes, because the holding register is 64-bit */