Changeset 533 for trunk/src/image/miniz.cc
- Timestamp:
- 01/12/17 13:16:48 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/image/miniz.cc
r520 r533 3 3 4 4 using namespace nv; 5 6 #define MINIZ_NO_TIME7 #define MINIZ_NO_ZLIB_COMPATIBLE_NAMES8 9 #define MINIZ_HAS_64BIT_REGISTERS 010 #define TINFL_USE_64BIT_BITBUF 011 5 12 6 #if NV_COMPILER == NV_CLANG … … 17 11 18 12 #if defined( _M_IX86 ) || defined( _M_X64 ) || defined( __i386__ ) || defined( __i386 ) || defined( __i486__ ) || defined( __i486 ) || defined( i386 ) || defined( __ia64__ ) || defined( __x86_64__ ) 19 // MINIZ_X86_OR_X64_CPU is only used to help set the below macros.20 #define MINIZ_X86_OR_X64_CPU 121 #endif22 23 #if (__BYTE_ORDER__==__ORDER_LITTLE_ENDIAN__) || MINIZ_X86_OR_X64_CPU24 // Set MINIZ_LITTLE_ENDIAN to 1 if the processor is little endian.25 #define MINIZ_LITTLE_ENDIAN 126 #endif27 28 #if MINIZ_X86_OR_X64_CPU29 13 // Set MINIZ_USE_UNALIGNED_LOADS_AND_STORES to 1 on CPU's that permit efficient integer loads and stores from unaligned addresses. 30 14 #define MINIZ_USE_UNALIGNED_LOADS_AND_STORES 1 31 #endif32 33 #if defined(_M_X64) || defined(_WIN64) || defined(__MINGW64__) || defined(_LP64) || defined(__LP64__) || defined(__ia64__) || defined(__x86_64__)34 // Set MINIZ_HAS_64BIT_REGISTERS to 1 if operations on 64-bit integers are reasonably fast (and don't involve compiler generated calls to helper functions).35 #define MINIZ_HAS_64BIT_REGISTERS 136 15 #endif 37 16 … … 204 183 const char *mz_error( int err ); 205 184 206 // Redefine zlib-compatible names to miniz equivalents, so miniz.c can be used as a drop-in replacement for the subset of zlib that miniz.c supports.207 // Define MINIZ_NO_ZLIB_COMPATIBLE_NAMES to disable zlib-compatibility if you use zlib in the same project.208 #ifndef MINIZ_NO_ZLIB_COMPATIBLE_NAMES209 typedef unsigned char Byte;210 typedef unsigned int uInt;211 typedef mz_ulong uLong;212 typedef Byte Bytef;213 typedef uInt uIntf;214 typedef char charf;215 typedef int intf;216 typedef void *voidpf;217 typedef uLong uLongf;218 typedef void *voidp;219 typedef void *const voidpc;220 #define Z_NULL 0221 #define Z_NO_FLUSH MZ_NO_FLUSH222 #define Z_PARTIAL_FLUSH MZ_PARTIAL_FLUSH223 #define Z_SYNC_FLUSH MZ_SYNC_FLUSH224 #define Z_FULL_FLUSH MZ_FULL_FLUSH225 #define Z_FINISH MZ_FINISH226 #define Z_BLOCK MZ_BLOCK227 #define Z_OK MZ_OK228 #define Z_STREAM_END MZ_STREAM_END229 #define Z_NEED_DICT MZ_NEED_DICT230 #define Z_ERRNO MZ_ERRNO231 #define Z_STREAM_ERROR MZ_STREAM_ERROR232 #define Z_DATA_ERROR MZ_DATA_ERROR233 #define Z_MEM_ERROR MZ_MEM_ERROR234 #define Z_BUF_ERROR MZ_BUF_ERROR235 #define Z_VERSION_ERROR MZ_VERSION_ERROR236 #define Z_PARAM_ERROR MZ_PARAM_ERROR237 #define Z_NO_COMPRESSION MZ_NO_COMPRESSION238 #define Z_BEST_SPEED MZ_BEST_SPEED239 #define Z_BEST_COMPRESSION MZ_BEST_COMPRESSION240 #define Z_DEFAULT_COMPRESSION MZ_DEFAULT_COMPRESSION241 #define Z_DEFAULT_STRATEGY MZ_DEFAULT_STRATEGY242 #define Z_FILTERED MZ_FILTERED243 #define Z_HUFFMAN_ONLY MZ_HUFFMAN_ONLY244 #define Z_RLE MZ_RLE245 #define Z_FIXED MZ_FIXED246 #define Z_DEFLATED MZ_DEFLATED247 #define Z_DEFAULT_WINDOW_BITS MZ_DEFAULT_WINDOW_BITS248 #define alloc_func mz_alloc_func249 #define free_func mz_free_func250 #define internal_state mz_internal_state251 #define z_stream mz_stream252 #define deflateInit mz_deflateInit253 #define deflateInit2 mz_deflateInit2254 #define deflateReset mz_deflateReset255 #define deflate mz_deflate256 #define deflateEnd mz_deflateEnd257 #define deflateBound mz_deflateBound258 #define compress mz_compress259 #define compress2 mz_compress2260 #define compressBound mz_compressBound261 #define inflateInit mz_inflateInit262 #define inflateInit2 mz_inflateInit2263 #define inflate mz_inflate264 #define inflateEnd mz_inflateEnd265 #define uncompress mz_uncompress266 #define crc32 mz_crc32267 #define adler32 mz_adler32268 #define MAX_WBITS 15269 #define MAX_MEM_LEVEL 9270 #define zError mz_error271 #define ZLIB_VERSION MZ_VERSION272 #define ZLIB_VERNUM MZ_VERNUM273 #define ZLIB_VER_MAJOR MZ_VER_MAJOR274 #define ZLIB_VER_MINOR MZ_VER_MINOR275 #define ZLIB_VER_REVISION MZ_VER_REVISION276 #define ZLIB_VER_SUBREVISION MZ_VER_SUBREVISION277 #define zlibVersion mz_version278 #define zlib_version mz_version()279 #endif // #ifndef MINIZ_NO_ZLIB_COMPATIBLE_NAMES280 185 281 186 #endif // MINIZ_NO_ZLIB_APIS … … 321 226 mz_uint16 m_bit_flag; 322 227 mz_uint16 m_method; 323 #ifndef MINIZ_NO_TIME 324 time_t m_time; 325 #endif 228 // time_t m_time; 229 326 230 mz_uint32 m_crc32; 327 231 mz_uint64 m_comp_size; … … 567 471 } tinfl_huff_table; 568 472 569 #if MINIZ_HAS_64BIT_REGISTERS 570 #define TINFL_USE_64BIT_BITBUF 1 571 #endif 572 573 #if TINFL_USE_64BIT_BITBUF 473 #if NV_ARCHITECTURE == NV_64BIT 574 474 typedef mz_uint64 tinfl_bit_buf_t; 575 475 #define TINFL_BITBUF_SIZE (64) … … 766 666 #define MZ_CLEAR_OBJ(obj) nvmemset(&(obj), 0, sizeof(obj)) 767 667 768 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && MINIZ_LITTLE_ENDIAN668 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && NV_ENDIANESS == NV_LITTLEENDIAN 769 669 #define MZ_READ_LE16(p) *((const mz_uint16 *)(p)) 770 670 #define MZ_READ_LE32(p) *((const mz_uint32 *)(p)) … … 1382 1282 { 1383 1283 int sym2; mz_uint code_len; 1384 #if TINFL_USE_64BIT_BITBUF1284 #if NV_ARCHITECTURE == NV_64BIT 1385 1285 if ( num_bits < 30 ) { bit_buf |= ( ( (tinfl_bit_buf_t)MZ_READ_LE32( pIn_buf_cur ) ) << num_bits ); pIn_buf_cur += 4; num_bits += 32; } 1386 1286 #else … … 1397 1297 break; 1398 1298 1399 #if !TINFL_USE_64BIT_BITBUF1299 #if NV_ARCHITECTURE == NV_32BIT 1400 1300 if ( num_bits < 15 ) { bit_buf |= ( ( (tinfl_bit_buf_t)MZ_READ_LE16( pIn_buf_cur ) ) << num_bits ); pIn_buf_cur += 2; num_bits += 16; } 1401 1301 #endif … … 1835 1735 static const mz_uint mz_bitmasks[17] = { 0x0000, 0x0001, 0x0003, 0x0007, 0x000F, 0x001F, 0x003F, 0x007F, 0x00FF, 0x01FF, 0x03FF, 0x07FF, 0x0FFF, 0x1FFF, 0x3FFF, 0x7FFF, 0xFFFF }; 1836 1736 1837 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && MINIZ_LITTLE_ENDIAN && MINIZ_HAS_64BIT_REGISTERS 1737 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && NV_ENDIANESS == NV_LITTLEENDIAN && NV_ARCHITECTURE == NV_64BIT 1738 1838 1739 static mz_bool tdefl_compress_lz_codes( tdefl_compressor *d ) 1839 1740 { … … 1968 1869 return ( d->m_pOutput_buf < d->m_pOutput_buf_end ); 1969 1870 } 1970 #endif // MINIZ_USE_UNALIGNED_LOADS_AND_STORES && MINIZ_LITTLE_ENDIAN && MINIZ_HAS_64BIT_REGISTERS 1871 #endif // MINIZ_USE_UNALIGNED_LOADS_AND_STORES && NV_ENDIANESS == NV_LITTLEENDIAN && NV_ARCHITECTURE == NV_64BIT 1872 1971 1873 1972 1874 static mz_bool tdefl_compress_block( tdefl_compressor *d, mz_bool static_block ) … … 2145 2047 #endif // #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES 2146 2048 2147 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && MINIZ_LITTLE_ENDIAN2049 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && NV_ENDIANESS == NV_LITTLEENDIAN 2148 2050 static mz_bool tdefl_compress_fast( tdefl_compressor *d ) 2149 2051 { … … 2480 2382 return ( d->m_prev_return_status = tdefl_flush_output_buffer( d ) ); 2481 2383 2482 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && MINIZ_LITTLE_ENDIAN2384 #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && NV_ENDIANESS == NV_LITTLEENDIAN 2483 2385 if ( ( ( d->m_flags & TDEFL_MAX_PROBES_MASK ) == 1 ) && 2484 2386 ( ( d->m_flags & TDEFL_GREEDY_PARSING_FLAG ) != 0 ) && … … 2489 2391 } 2490 2392 else 2491 #endif // #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && MINIZ_LITTLE_ENDIAN2393 #endif // #if MINIZ_USE_UNALIGNED_LOADS_AND_STORES && NV_ENDIANESS == NV_LITTLEENDIAN 2492 2394 { 2493 2395 if ( !tdefl_compress_normal( d ) )
Note: See TracChangeset
for help on using the changeset viewer.