Fossil SCM
Update the built-in zlib to version 1.2.13, released on October 13, 2022.
Commit
a9e589ca28a28665c7eb5f8b9ac7e89f3709533586e7b32540438f7579ffb615
Parent
04a01d066a84ba0…
108 files changed
+2
+3
-39
+18
-6
+22
+5
-408
+8
-12
+2
-2
+3
-3
+46
-51
+1
-1
-452
-51
-357
+1
-1
+1
-1
+2
-2
+1
-1
-1157
-1368
-2
-553
-186
-396
-28
-2
-1080
-479
-24
+1
-1
+1
-1
+11
-11
+1
-1
+5
+1
-1
+3
-3
+3
-1
+1
-6
+1
-1
+1
-1
+2
-2
+1
-1
+1
-4
+1
-1
+1
-1
+8
-16
+1
-4
+1
-1
+3
-3
+13
-37
-3
+17
-41
-3
+8
-16
+3
-3
+13
-21
+17
-41
+8
-16
+3
-3
+13
-21
+17
-41
+8
-16
+3
-3
+13
-21
+17
-41
+1
-1
+1
-1
+5
-61
+1
-1
+3
-3
+11
-65
+13
-69
+21
-12
+114
-108
+2
-2
+1
-1
+2
-2
+1
-1
+2
-2
+1
-1
+1
-1
+1
-1
+3
-5
+1
-1
+10
-7
+5
-2
+2
-2
+1
-1
+2
-2
+3
-3
+8
+3
-3
+5
-5
+2
-1
+1
-1
+2
-2
+61
-62
+2
-2
+2
-2
+1
-1
+18
-5
+16
-3
+16
-3
+2
-2
+10
-10
+2
-2
+9
-7
+1
~
.fossil-settings/ignore-glob
~
compat/zlib/CMakeLists.txt
~
compat/zlib/ChangeLog
~
compat/zlib/LICENSE
~
compat/zlib/Makefile
~
compat/zlib/Makefile.in
~
compat/zlib/README
~
compat/zlib/compress.c
~
compat/zlib/configure
~
compat/zlib/contrib/README.contrib
-
compat/zlib/contrib/amd64/amd64-match.S
-
compat/zlib/contrib/asm686/README.686
-
compat/zlib/contrib/asm686/match.S
~
compat/zlib/contrib/delphi/ZLib.pas
~
compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs
~
compat/zlib/contrib/infback9/inftree9.c
~
compat/zlib/contrib/infback9/inftree9.h
-
compat/zlib/contrib/inflate86/inffas86.c
-
compat/zlib/contrib/inflate86/inffast.S
-
compat/zlib/contrib/masmx64/bld_ml64.bat
-
compat/zlib/contrib/masmx64/gvmat64.asm
-
compat/zlib/contrib/masmx64/inffas8664.c
-
compat/zlib/contrib/masmx64/inffasx64.asm
-
compat/zlib/contrib/masmx64/readme.txt
-
compat/zlib/contrib/masmx86/bld_ml32.bat
-
compat/zlib/contrib/masmx86/inffas32.asm
-
compat/zlib/contrib/masmx86/match686.asm
-
compat/zlib/contrib/masmx86/readme.txt
~
compat/zlib/contrib/minizip/configure.ac
~
compat/zlib/contrib/minizip/crypt.h
~
compat/zlib/contrib/minizip/ioapi.c
~
compat/zlib/contrib/minizip/ioapi.h
~
compat/zlib/contrib/minizip/iowin32.c
~
compat/zlib/contrib/minizip/miniunz.c
~
compat/zlib/contrib/minizip/minizip.c
~
compat/zlib/contrib/minizip/unzip.c
~
compat/zlib/contrib/minizip/zip.c
~
compat/zlib/contrib/pascal/zlibpas.pas
~
compat/zlib/contrib/puff/README
~
compat/zlib/contrib/puff/puff.c
~
compat/zlib/contrib/puff/pufftest.c
~
compat/zlib/contrib/vstudio/readme.txt
~
compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters
~
compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters
~
compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj
~
compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters
~
compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters
~
compat/zlib/contrib/vstudio/vc10/zlib.rc
~
compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj
~
compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters
~
compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj
~
compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters
~
compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj
~
compat/zlib/contrib/vstudio/vc11/zlib.rc
~
compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj
~
compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj
~
compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj
~
compat/zlib/contrib/vstudio/vc12/zlib.rc
~
compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj
~
compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj
~
compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj
~
compat/zlib/contrib/vstudio/vc14/zlib.rc
~
compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj
~
compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj
~
compat/zlib/contrib/vstudio/vc9/miniunz.vcproj
~
compat/zlib/contrib/vstudio/vc9/minizip.vcproj
~
compat/zlib/contrib/vstudio/vc9/testzlib.vcproj
~
compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj
~
compat/zlib/contrib/vstudio/vc9/zlib.rc
~
compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj
~
compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj
~
compat/zlib/crc32.c
~
compat/zlib/deflate.c
~
compat/zlib/deflate.h
~
compat/zlib/examples/enough.c
~
compat/zlib/examples/fitblk.c
~
compat/zlib/examples/gun.c
~
compat/zlib/examples/gzappend.c
~
compat/zlib/examples/gzlog.h
~
compat/zlib/examples/zran.c
~
compat/zlib/gzlib.c
~
compat/zlib/gzread.c
~
compat/zlib/gzwrite.c
~
compat/zlib/infback.c
~
compat/zlib/inflate.c
~
compat/zlib/inftrees.c
~
compat/zlib/inftrees.h
~
compat/zlib/make_vms.com
~
compat/zlib/os400/README400
~
compat/zlib/os400/bndsrc
~
compat/zlib/os400/zlib.inc
~
compat/zlib/qnx/package.qpg
~
compat/zlib/test/example.c
~
compat/zlib/test/minigzip.c
~
compat/zlib/treebuild.xml
~
compat/zlib/trees.c
~
compat/zlib/uncompr.c
~
compat/zlib/win32/README-WIN32.txt
~
compat/zlib/win32/zlib1.rc
~
compat/zlib/zconf.h
~
compat/zlib/zconf.h.cmakein
~
compat/zlib/zconf.h.in
~
compat/zlib/zlib.3
~
compat/zlib/zlib.3.pdf
~
compat/zlib/zlib.h
~
compat/zlib/zlib2ansi
~
compat/zlib/zutil.c
~
compat/zlib/zutil.h
| --- .fossil-settings/ignore-glob | ||
| +++ .fossil-settings/ignore-glob | ||
| @@ -1,7 +1,9 @@ | ||
| 1 | 1 | compat/openssl* |
| 2 | 2 | compat/tcl* |
| 3 | +compat/zlib/contrib/ada/* | |
| 4 | +compat/zlib/doc/* | |
| 3 | 5 | fossil |
| 4 | 6 | fossil.exe |
| 5 | 7 | win/fossil.exe |
| 6 | 8 | *shell-see.* |
| 7 | 9 | *sqlite3-see.* |
| 8 | 10 |
| --- .fossil-settings/ignore-glob | |
| +++ .fossil-settings/ignore-glob | |
| @@ -1,7 +1,9 @@ | |
| 1 | compat/openssl* |
| 2 | compat/tcl* |
| 3 | fossil |
| 4 | fossil.exe |
| 5 | win/fossil.exe |
| 6 | *shell-see.* |
| 7 | *sqlite3-see.* |
| 8 |
| --- .fossil-settings/ignore-glob | |
| +++ .fossil-settings/ignore-glob | |
| @@ -1,7 +1,9 @@ | |
| 1 | compat/openssl* |
| 2 | compat/tcl* |
| 3 | compat/zlib/contrib/ada/* |
| 4 | compat/zlib/doc/* |
| 5 | fossil |
| 6 | fossil.exe |
| 7 | win/fossil.exe |
| 8 | *shell-see.* |
| 9 | *sqlite3-see.* |
| 10 |
+3
-39
| --- compat/zlib/CMakeLists.txt | ||
| +++ compat/zlib/CMakeLists.txt | ||
| @@ -1,14 +1,11 @@ | ||
| 1 | 1 | cmake_minimum_required(VERSION 2.4.4) |
| 2 | 2 | set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON) |
| 3 | 3 | |
| 4 | 4 | project(zlib C) |
| 5 | 5 | |
| 6 | -set(VERSION "1.2.12") | |
| 7 | - | |
| 8 | -option(ASM686 "Enable building i686 assembly implementation") | |
| 9 | -option(AMD64 "Enable building amd64 assembly implementation") | |
| 6 | +set(VERSION "1.2.13") | |
| 10 | 7 | |
| 11 | 8 | set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables") |
| 12 | 9 | set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries") |
| 13 | 10 | set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers") |
| 14 | 11 | set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") |
| @@ -127,43 +124,10 @@ | ||
| 127 | 124 | set(ZLIB_DLL_SRCS |
| 128 | 125 | win32/zlib1.rc # If present will override custom build rule below. |
| 129 | 126 | ) |
| 130 | 127 | endif() |
| 131 | 128 | |
| 132 | -if(CMAKE_COMPILER_IS_GNUCC) | |
| 133 | - if(ASM686) | |
| 134 | - set(ZLIB_ASMS contrib/asm686/match.S) | |
| 135 | - elseif (AMD64) | |
| 136 | - set(ZLIB_ASMS contrib/amd64/amd64-match.S) | |
| 137 | - endif () | |
| 138 | - | |
| 139 | - if(ZLIB_ASMS) | |
| 140 | - add_definitions(-DASMV) | |
| 141 | - set_source_files_properties(${ZLIB_ASMS} PROPERTIES LANGUAGE C COMPILE_FLAGS -DNO_UNDERLINE) | |
| 142 | - endif() | |
| 143 | -endif() | |
| 144 | - | |
| 145 | -if(MSVC) | |
| 146 | - if(ASM686) | |
| 147 | - ENABLE_LANGUAGE(ASM_MASM) | |
| 148 | - set(ZLIB_ASMS | |
| 149 | - contrib/masmx86/inffas32.asm | |
| 150 | - contrib/masmx86/match686.asm | |
| 151 | - ) | |
| 152 | - elseif (AMD64) | |
| 153 | - ENABLE_LANGUAGE(ASM_MASM) | |
| 154 | - set(ZLIB_ASMS | |
| 155 | - contrib/masmx64/gvmat64.asm | |
| 156 | - contrib/masmx64/inffasx64.asm | |
| 157 | - ) | |
| 158 | - endif() | |
| 159 | - | |
| 160 | - if(ZLIB_ASMS) | |
| 161 | - add_definitions(-DASMV -DASMINF) | |
| 162 | - endif() | |
| 163 | -endif() | |
| 164 | - | |
| 165 | 129 | # parse the full version number from zlib.h and include in ZLIB_FULL_VERSION |
| 166 | 130 | file(READ ${CMAKE_CURRENT_SOURCE_DIR}/zlib.h _zlib_h_contents) |
| 167 | 131 | string(REGEX REPLACE ".*#define[ \t]+ZLIB_VERSION[ \t]+\"([-0-9A-Za-z.]+)\".*" |
| 168 | 132 | "\\1" ZLIB_FULL_VERSION ${_zlib_h_contents}) |
| 169 | 133 | |
| @@ -181,12 +145,12 @@ | ||
| 181 | 145 | -o ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj |
| 182 | 146 | -i ${CMAKE_CURRENT_SOURCE_DIR}/win32/zlib1.rc) |
| 183 | 147 | set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj) |
| 184 | 148 | endif(MINGW) |
| 185 | 149 | |
| 186 | -add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
| 187 | -add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
| 150 | +add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
| 151 | +add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) | |
| 188 | 152 | set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) |
| 189 | 153 | set_target_properties(zlib PROPERTIES SOVERSION 1) |
| 190 | 154 | |
| 191 | 155 | if(NOT CYGWIN) |
| 192 | 156 | # This property causes shared libraries on Linux to have the full version |
| 193 | 157 |
| --- compat/zlib/CMakeLists.txt | |
| +++ compat/zlib/CMakeLists.txt | |
| @@ -1,14 +1,11 @@ | |
| 1 | cmake_minimum_required(VERSION 2.4.4) |
| 2 | set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON) |
| 3 | |
| 4 | project(zlib C) |
| 5 | |
| 6 | set(VERSION "1.2.12") |
| 7 | |
| 8 | option(ASM686 "Enable building i686 assembly implementation") |
| 9 | option(AMD64 "Enable building amd64 assembly implementation") |
| 10 | |
| 11 | set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables") |
| 12 | set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries") |
| 13 | set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers") |
| 14 | set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") |
| @@ -127,43 +124,10 @@ | |
| 127 | set(ZLIB_DLL_SRCS |
| 128 | win32/zlib1.rc # If present will override custom build rule below. |
| 129 | ) |
| 130 | endif() |
| 131 | |
| 132 | if(CMAKE_COMPILER_IS_GNUCC) |
| 133 | if(ASM686) |
| 134 | set(ZLIB_ASMS contrib/asm686/match.S) |
| 135 | elseif (AMD64) |
| 136 | set(ZLIB_ASMS contrib/amd64/amd64-match.S) |
| 137 | endif () |
| 138 | |
| 139 | if(ZLIB_ASMS) |
| 140 | add_definitions(-DASMV) |
| 141 | set_source_files_properties(${ZLIB_ASMS} PROPERTIES LANGUAGE C COMPILE_FLAGS -DNO_UNDERLINE) |
| 142 | endif() |
| 143 | endif() |
| 144 | |
| 145 | if(MSVC) |
| 146 | if(ASM686) |
| 147 | ENABLE_LANGUAGE(ASM_MASM) |
| 148 | set(ZLIB_ASMS |
| 149 | contrib/masmx86/inffas32.asm |
| 150 | contrib/masmx86/match686.asm |
| 151 | ) |
| 152 | elseif (AMD64) |
| 153 | ENABLE_LANGUAGE(ASM_MASM) |
| 154 | set(ZLIB_ASMS |
| 155 | contrib/masmx64/gvmat64.asm |
| 156 | contrib/masmx64/inffasx64.asm |
| 157 | ) |
| 158 | endif() |
| 159 | |
| 160 | if(ZLIB_ASMS) |
| 161 | add_definitions(-DASMV -DASMINF) |
| 162 | endif() |
| 163 | endif() |
| 164 | |
| 165 | # parse the full version number from zlib.h and include in ZLIB_FULL_VERSION |
| 166 | file(READ ${CMAKE_CURRENT_SOURCE_DIR}/zlib.h _zlib_h_contents) |
| 167 | string(REGEX REPLACE ".*#define[ \t]+ZLIB_VERSION[ \t]+\"([-0-9A-Za-z.]+)\".*" |
| 168 | "\\1" ZLIB_FULL_VERSION ${_zlib_h_contents}) |
| 169 | |
| @@ -181,12 +145,12 @@ | |
| 181 | -o ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj |
| 182 | -i ${CMAKE_CURRENT_SOURCE_DIR}/win32/zlib1.rc) |
| 183 | set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj) |
| 184 | endif(MINGW) |
| 185 | |
| 186 | add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) |
| 187 | add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_ASMS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) |
| 188 | set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) |
| 189 | set_target_properties(zlib PROPERTIES SOVERSION 1) |
| 190 | |
| 191 | if(NOT CYGWIN) |
| 192 | # This property causes shared libraries on Linux to have the full version |
| 193 |
| --- compat/zlib/CMakeLists.txt | |
| +++ compat/zlib/CMakeLists.txt | |
| @@ -1,14 +1,11 @@ | |
| 1 | cmake_minimum_required(VERSION 2.4.4) |
| 2 | set(CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS ON) |
| 3 | |
| 4 | project(zlib C) |
| 5 | |
| 6 | set(VERSION "1.2.13") |
| 7 | |
| 8 | set(INSTALL_BIN_DIR "${CMAKE_INSTALL_PREFIX}/bin" CACHE PATH "Installation directory for executables") |
| 9 | set(INSTALL_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib" CACHE PATH "Installation directory for libraries") |
| 10 | set(INSTALL_INC_DIR "${CMAKE_INSTALL_PREFIX}/include" CACHE PATH "Installation directory for headers") |
| 11 | set(INSTALL_MAN_DIR "${CMAKE_INSTALL_PREFIX}/share/man" CACHE PATH "Installation directory for manual pages") |
| @@ -127,43 +124,10 @@ | |
| 124 | set(ZLIB_DLL_SRCS |
| 125 | win32/zlib1.rc # If present will override custom build rule below. |
| 126 | ) |
| 127 | endif() |
| 128 | |
| 129 | # parse the full version number from zlib.h and include in ZLIB_FULL_VERSION |
| 130 | file(READ ${CMAKE_CURRENT_SOURCE_DIR}/zlib.h _zlib_h_contents) |
| 131 | string(REGEX REPLACE ".*#define[ \t]+ZLIB_VERSION[ \t]+\"([-0-9A-Za-z.]+)\".*" |
| 132 | "\\1" ZLIB_FULL_VERSION ${_zlib_h_contents}) |
| 133 | |
| @@ -181,12 +145,12 @@ | |
| 145 | -o ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj |
| 146 | -i ${CMAKE_CURRENT_SOURCE_DIR}/win32/zlib1.rc) |
| 147 | set(ZLIB_DLL_SRCS ${CMAKE_CURRENT_BINARY_DIR}/zlib1rc.obj) |
| 148 | endif(MINGW) |
| 149 | |
| 150 | add_library(zlib SHARED ${ZLIB_SRCS} ${ZLIB_DLL_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) |
| 151 | add_library(zlibstatic STATIC ${ZLIB_SRCS} ${ZLIB_PUBLIC_HDRS} ${ZLIB_PRIVATE_HDRS}) |
| 152 | set_target_properties(zlib PROPERTIES DEFINE_SYMBOL ZLIB_DLL) |
| 153 | set_target_properties(zlib PROPERTIES SOVERSION 1) |
| 154 | |
| 155 | if(NOT CYGWIN) |
| 156 | # This property causes shared libraries on Linux to have the full version |
| 157 |
+18
-6
| --- compat/zlib/ChangeLog | ||
| +++ compat/zlib/ChangeLog | ||
| @@ -1,8 +1,20 @@ | ||
| 1 | 1 | |
| 2 | 2 | ChangeLog file for zlib |
| 3 | 3 | |
| 4 | +Changes in 1.2.13 (13 Oct 2022) | |
| 5 | +- Fix configure issue that discarded provided CC definition | |
| 6 | +- Correct incorrect inputs provided to the CRC functions | |
| 7 | +- Repair prototypes and exporting of new CRC functions | |
| 8 | +- Fix inflateBack to detect invalid input with distances too far | |
| 9 | +- Have infback() deliver all of the available output up to any error | |
| 10 | +- Fix a bug when getting a gzip header extra field with inflate() | |
| 11 | +- Fix bug in block type selection when Z_FIXED used | |
| 12 | +- Tighten deflateBound bounds | |
| 13 | +- Remove deleted assembler code references | |
| 14 | +- Various portability and appearance improvements | |
| 15 | + | |
| 4 | 16 | Changes in 1.2.12 (27 Mar 2022) |
| 5 | 17 | - Cygwin does not have _wopen(), so do not create gzopen_w() there |
| 6 | 18 | - Permit a deflateParams() parameter change as soon as possible |
| 7 | 19 | - Limit hash table inserts after switch from stored deflate |
| 8 | 20 | - Fix bug when window full in deflate_stored() |
| @@ -157,11 +169,11 @@ | ||
| 157 | 169 | - Don't specify --version-script on Apple platforms in CMakeLists.txt |
| 158 | 170 | - Fix casting error in contrib/testzlib/testzlib.c |
| 159 | 171 | - Fix types in contrib/minizip to match result of get_crc_table() |
| 160 | 172 | - Simplify contrib/vstudio/vc10 with 'd' suffix |
| 161 | 173 | - Add TOP support to win32/Makefile.msc |
| 162 | -- Suport i686 and amd64 assembler builds in CMakeLists.txt | |
| 174 | +- Support i686 and amd64 assembler builds in CMakeLists.txt | |
| 163 | 175 | - Fix typos in the use of _LARGEFILE64_SOURCE in zconf.h |
| 164 | 176 | - Add vc11 and vc12 build files to contrib/vstudio |
| 165 | 177 | - Add gzvprintf() as an undocumented function in zlib |
| 166 | 178 | - Fix configure for Sun shell |
| 167 | 179 | - Remove runtime check in configure for four-byte integer type |
| @@ -357,18 +369,18 @@ | ||
| 357 | 369 | - Clarify the use of Z_FINISH with deflateBound() amount of space |
| 358 | 370 | - Set binary for output file in puff.c |
| 359 | 371 | - Use u4 type for crc_table to avoid conversion warnings |
| 360 | 372 | - Apply casts in zlib.h to avoid conversion warnings |
| 361 | 373 | - Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller] |
| 362 | -- Improve inflateSync() documentation to note indeterminancy | |
| 374 | +- Improve inflateSync() documentation to note indeterminacy | |
| 363 | 375 | - Add deflatePending() function to return the amount of pending output |
| 364 | 376 | - Correct the spelling of "specification" in FAQ [Randers-Pehrson] |
| 365 | 377 | - Add a check in configure for stdarg.h, use for gzprintf() |
| 366 | 378 | - Check that pointers fit in ints when gzprint() compiled old style |
| 367 | 379 | - Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler] |
| 368 | 380 | - Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt] |
| 369 | -- Add debug records in assmebler code [Londer] | |
| 381 | +- Add debug records in assembler code [Londer] | |
| 370 | 382 | - Update RFC references to use http://tools.ietf.org/html/... [Li] |
| 371 | 383 | - Add --archs option, use of libtool to configure for Mac OS X [Borstel] |
| 372 | 384 | |
| 373 | 385 | Changes in 1.2.5 (19 Apr 2010) |
| 374 | 386 | - Disable visibility attribute in win32/Makefile.gcc [Bar-Lev] |
| @@ -1031,11 +1043,11 @@ | ||
| 1031 | 1043 | - Refine detection of Turbo C need for dummy returns |
| 1032 | 1044 | - Refine ZLIB_DLL compilation |
| 1033 | 1045 | - Include additional header file on VMS for off_t typedef |
| 1034 | 1046 | - Try to use _vsnprintf where it supplants vsprintf [Vollant] |
| 1035 | 1047 | - Add some casts in inffast.c |
| 1036 | -- Enchance comments in zlib.h on what happens if gzprintf() tries to | |
| 1048 | +- Enhance comments in zlib.h on what happens if gzprintf() tries to | |
| 1037 | 1049 | write more than 4095 bytes before compression |
| 1038 | 1050 | - Remove unused state from inflateBackEnd() |
| 1039 | 1051 | - Remove exit(0) from minigzip.c, example.c |
| 1040 | 1052 | - Get rid of all those darn tabs |
| 1041 | 1053 | - Add "check" target to Makefile.in that does the same thing as "test" |
| @@ -1209,11 +1221,11 @@ | ||
| 1209 | 1221 | . Simplify Z_FINISH check in inflate() |
| 1210 | 1222 | |
| 1211 | 1223 | - Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8 |
| 1212 | 1224 | - in inftrees.c, avoid cc -O bug on HP (Farshid Elahi) |
| 1213 | 1225 | - in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with |
| 1214 | - the declaration of FAR (Gilles VOllant) | |
| 1226 | + the declaration of FAR (Gilles Vollant) | |
| 1215 | 1227 | - install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann) |
| 1216 | 1228 | - read_buf buf parameter of type Bytef* instead of charf* |
| 1217 | 1229 | - zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout) |
| 1218 | 1230 | - do not redeclare unlink in minigzip.c for WIN32 (John Bowler) |
| 1219 | 1231 | - fix check for presence of directories in "make install" (Ian Willis) |
| @@ -1565,14 +1577,14 @@ | ||
| 1565 | 1577 | if compression method == 8 |
| 1566 | 1578 | - added adler32 and crc32 |
| 1567 | 1579 | - renamed deflateOptions as deflateInit2, call one or the other but not both |
| 1568 | 1580 | - added the method parameter for deflateInit2 |
| 1569 | 1581 | - added inflateInit2 |
| 1570 | -- simplied considerably deflateInit and inflateInit by not supporting | |
| 1582 | +- simplified considerably deflateInit and inflateInit by not supporting | |
| 1571 | 1583 | user-provided history buffer. This is supported only in deflateInit2 |
| 1572 | 1584 | and inflateInit2 |
| 1573 | 1585 | |
| 1574 | 1586 | Changes in 0.3: |
| 1575 | 1587 | - prefix all macro names with Z_ |
| 1576 | 1588 | - use Z_FINISH instead of deflateEnd to finish compression |
| 1577 | 1589 | - added Z_HUFFMAN_ONLY |
| 1578 | 1590 | - added gzerror() |
| 1579 | 1591 | |
| 1580 | 1592 | ADDED compat/zlib/LICENSE |
| --- compat/zlib/ChangeLog | |
| +++ compat/zlib/ChangeLog | |
| @@ -1,8 +1,20 @@ | |
| 1 | |
| 2 | ChangeLog file for zlib |
| 3 | |
| 4 | Changes in 1.2.12 (27 Mar 2022) |
| 5 | - Cygwin does not have _wopen(), so do not create gzopen_w() there |
| 6 | - Permit a deflateParams() parameter change as soon as possible |
| 7 | - Limit hash table inserts after switch from stored deflate |
| 8 | - Fix bug when window full in deflate_stored() |
| @@ -157,11 +169,11 @@ | |
| 157 | - Don't specify --version-script on Apple platforms in CMakeLists.txt |
| 158 | - Fix casting error in contrib/testzlib/testzlib.c |
| 159 | - Fix types in contrib/minizip to match result of get_crc_table() |
| 160 | - Simplify contrib/vstudio/vc10 with 'd' suffix |
| 161 | - Add TOP support to win32/Makefile.msc |
| 162 | - Suport i686 and amd64 assembler builds in CMakeLists.txt |
| 163 | - Fix typos in the use of _LARGEFILE64_SOURCE in zconf.h |
| 164 | - Add vc11 and vc12 build files to contrib/vstudio |
| 165 | - Add gzvprintf() as an undocumented function in zlib |
| 166 | - Fix configure for Sun shell |
| 167 | - Remove runtime check in configure for four-byte integer type |
| @@ -357,18 +369,18 @@ | |
| 357 | - Clarify the use of Z_FINISH with deflateBound() amount of space |
| 358 | - Set binary for output file in puff.c |
| 359 | - Use u4 type for crc_table to avoid conversion warnings |
| 360 | - Apply casts in zlib.h to avoid conversion warnings |
| 361 | - Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller] |
| 362 | - Improve inflateSync() documentation to note indeterminancy |
| 363 | - Add deflatePending() function to return the amount of pending output |
| 364 | - Correct the spelling of "specification" in FAQ [Randers-Pehrson] |
| 365 | - Add a check in configure for stdarg.h, use for gzprintf() |
| 366 | - Check that pointers fit in ints when gzprint() compiled old style |
| 367 | - Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler] |
| 368 | - Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt] |
| 369 | - Add debug records in assmebler code [Londer] |
| 370 | - Update RFC references to use http://tools.ietf.org/html/... [Li] |
| 371 | - Add --archs option, use of libtool to configure for Mac OS X [Borstel] |
| 372 | |
| 373 | Changes in 1.2.5 (19 Apr 2010) |
| 374 | - Disable visibility attribute in win32/Makefile.gcc [Bar-Lev] |
| @@ -1031,11 +1043,11 @@ | |
| 1031 | - Refine detection of Turbo C need for dummy returns |
| 1032 | - Refine ZLIB_DLL compilation |
| 1033 | - Include additional header file on VMS for off_t typedef |
| 1034 | - Try to use _vsnprintf where it supplants vsprintf [Vollant] |
| 1035 | - Add some casts in inffast.c |
| 1036 | - Enchance comments in zlib.h on what happens if gzprintf() tries to |
| 1037 | write more than 4095 bytes before compression |
| 1038 | - Remove unused state from inflateBackEnd() |
| 1039 | - Remove exit(0) from minigzip.c, example.c |
| 1040 | - Get rid of all those darn tabs |
| 1041 | - Add "check" target to Makefile.in that does the same thing as "test" |
| @@ -1209,11 +1221,11 @@ | |
| 1209 | . Simplify Z_FINISH check in inflate() |
| 1210 | |
| 1211 | - Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8 |
| 1212 | - in inftrees.c, avoid cc -O bug on HP (Farshid Elahi) |
| 1213 | - in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with |
| 1214 | the declaration of FAR (Gilles VOllant) |
| 1215 | - install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann) |
| 1216 | - read_buf buf parameter of type Bytef* instead of charf* |
| 1217 | - zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout) |
| 1218 | - do not redeclare unlink in minigzip.c for WIN32 (John Bowler) |
| 1219 | - fix check for presence of directories in "make install" (Ian Willis) |
| @@ -1565,14 +1577,14 @@ | |
| 1565 | if compression method == 8 |
| 1566 | - added adler32 and crc32 |
| 1567 | - renamed deflateOptions as deflateInit2, call one or the other but not both |
| 1568 | - added the method parameter for deflateInit2 |
| 1569 | - added inflateInit2 |
| 1570 | - simplied considerably deflateInit and inflateInit by not supporting |
| 1571 | user-provided history buffer. This is supported only in deflateInit2 |
| 1572 | and inflateInit2 |
| 1573 | |
| 1574 | Changes in 0.3: |
| 1575 | - prefix all macro names with Z_ |
| 1576 | - use Z_FINISH instead of deflateEnd to finish compression |
| 1577 | - added Z_HUFFMAN_ONLY |
| 1578 | - added gzerror() |
| 1579 | |
| 1580 | DDED compat/zlib/LICENSE |
| --- compat/zlib/ChangeLog | |
| +++ compat/zlib/ChangeLog | |
| @@ -1,8 +1,20 @@ | |
| 1 | |
| 2 | ChangeLog file for zlib |
| 3 | |
| 4 | Changes in 1.2.13 (13 Oct 2022) |
| 5 | - Fix configure issue that discarded provided CC definition |
| 6 | - Correct incorrect inputs provided to the CRC functions |
| 7 | - Repair prototypes and exporting of new CRC functions |
| 8 | - Fix inflateBack to detect invalid input with distances too far |
| 9 | - Have infback() deliver all of the available output up to any error |
| 10 | - Fix a bug when getting a gzip header extra field with inflate() |
| 11 | - Fix bug in block type selection when Z_FIXED used |
| 12 | - Tighten deflateBound bounds |
| 13 | - Remove deleted assembler code references |
| 14 | - Various portability and appearance improvements |
| 15 | |
| 16 | Changes in 1.2.12 (27 Mar 2022) |
| 17 | - Cygwin does not have _wopen(), so do not create gzopen_w() there |
| 18 | - Permit a deflateParams() parameter change as soon as possible |
| 19 | - Limit hash table inserts after switch from stored deflate |
| 20 | - Fix bug when window full in deflate_stored() |
| @@ -157,11 +169,11 @@ | |
| 169 | - Don't specify --version-script on Apple platforms in CMakeLists.txt |
| 170 | - Fix casting error in contrib/testzlib/testzlib.c |
| 171 | - Fix types in contrib/minizip to match result of get_crc_table() |
| 172 | - Simplify contrib/vstudio/vc10 with 'd' suffix |
| 173 | - Add TOP support to win32/Makefile.msc |
| 174 | - Support i686 and amd64 assembler builds in CMakeLists.txt |
| 175 | - Fix typos in the use of _LARGEFILE64_SOURCE in zconf.h |
| 176 | - Add vc11 and vc12 build files to contrib/vstudio |
| 177 | - Add gzvprintf() as an undocumented function in zlib |
| 178 | - Fix configure for Sun shell |
| 179 | - Remove runtime check in configure for four-byte integer type |
| @@ -357,18 +369,18 @@ | |
| 369 | - Clarify the use of Z_FINISH with deflateBound() amount of space |
| 370 | - Set binary for output file in puff.c |
| 371 | - Use u4 type for crc_table to avoid conversion warnings |
| 372 | - Apply casts in zlib.h to avoid conversion warnings |
| 373 | - Add OF to prototypes for adler32_combine_ and crc32_combine_ [Miller] |
| 374 | - Improve inflateSync() documentation to note indeterminacy |
| 375 | - Add deflatePending() function to return the amount of pending output |
| 376 | - Correct the spelling of "specification" in FAQ [Randers-Pehrson] |
| 377 | - Add a check in configure for stdarg.h, use for gzprintf() |
| 378 | - Check that pointers fit in ints when gzprint() compiled old style |
| 379 | - Add dummy name before $(SHAREDLIBV) in Makefile [Bar-Lev, Bowler] |
| 380 | - Delete line in configure that adds -L. libz.a to LDFLAGS [Weigelt] |
| 381 | - Add debug records in assembler code [Londer] |
| 382 | - Update RFC references to use http://tools.ietf.org/html/... [Li] |
| 383 | - Add --archs option, use of libtool to configure for Mac OS X [Borstel] |
| 384 | |
| 385 | Changes in 1.2.5 (19 Apr 2010) |
| 386 | - Disable visibility attribute in win32/Makefile.gcc [Bar-Lev] |
| @@ -1031,11 +1043,11 @@ | |
| 1043 | - Refine detection of Turbo C need for dummy returns |
| 1044 | - Refine ZLIB_DLL compilation |
| 1045 | - Include additional header file on VMS for off_t typedef |
| 1046 | - Try to use _vsnprintf where it supplants vsprintf [Vollant] |
| 1047 | - Add some casts in inffast.c |
| 1048 | - Enhance comments in zlib.h on what happens if gzprintf() tries to |
| 1049 | write more than 4095 bytes before compression |
| 1050 | - Remove unused state from inflateBackEnd() |
| 1051 | - Remove exit(0) from minigzip.c, example.c |
| 1052 | - Get rid of all those darn tabs |
| 1053 | - Add "check" target to Makefile.in that does the same thing as "test" |
| @@ -1209,11 +1221,11 @@ | |
| 1221 | . Simplify Z_FINISH check in inflate() |
| 1222 | |
| 1223 | - Avoid gcc 2.8.0 comparison bug a little differently than zlib 1.0.8 |
| 1224 | - in inftrees.c, avoid cc -O bug on HP (Farshid Elahi) |
| 1225 | - in zconf.h move the ZLIB_DLL stuff earlier to avoid problems with |
| 1226 | the declaration of FAR (Gilles Vollant) |
| 1227 | - install libz.so* with mode 755 (executable) instead of 644 (Marc Lehmann) |
| 1228 | - read_buf buf parameter of type Bytef* instead of charf* |
| 1229 | - zmemcpy parameters are of type Bytef*, not charf* (Joseph Strout) |
| 1230 | - do not redeclare unlink in minigzip.c for WIN32 (John Bowler) |
| 1231 | - fix check for presence of directories in "make install" (Ian Willis) |
| @@ -1565,14 +1577,14 @@ | |
| 1577 | if compression method == 8 |
| 1578 | - added adler32 and crc32 |
| 1579 | - renamed deflateOptions as deflateInit2, call one or the other but not both |
| 1580 | - added the method parameter for deflateInit2 |
| 1581 | - added inflateInit2 |
| 1582 | - simplified considerably deflateInit and inflateInit by not supporting |
| 1583 | user-provided history buffer. This is supported only in deflateInit2 |
| 1584 | and inflateInit2 |
| 1585 | |
| 1586 | Changes in 0.3: |
| 1587 | - prefix all macro names with Z_ |
| 1588 | - use Z_FINISH instead of deflateEnd to finish compression |
| 1589 | - added Z_HUFFMAN_ONLY |
| 1590 | - added gzerror() |
| 1591 | |
| 1592 | DDED compat/zlib/LICENSE |
+22
| --- a/compat/zlib/LICENSE | ||
| +++ b/compat/zlib/LICENSE | ||
| @@ -0,0 +1,22 @@ | ||
| 1 | +Copyright notice: | |
| 2 | + | |
| 3 | + (C) 1995-2022 Jean-loup Gailly and Mark Adler | |
| 4 | + | |
| 5 | + This software is provided 'as-is', without any express or implied | |
| 6 | + warranty. In no event will the authors be held liable for any damages | |
| 7 | + arising from the use of this software. | |
| 8 | + | |
| 9 | + Permission is granted to anyone to use this software for any purpose, | |
| 10 | + including commercial applications, and to alter it and redistribute it | |
| 11 | + freely, subject to the following restrictions: | |
| 12 | + | |
| 13 | + 1. The origin of this software must not be misrepresented; you must not | |
| 14 | + claim that you wrote the original software. If you use this software | |
| 15 | + in a product, an acknowledgment in the product documentation would be | |
| 16 | + appreciated but is not required. | |
| 17 | + 2. Altered source versions must be plainly marked as such, and must not be | |
| 18 | + misrepresented as being the original software. | |
| 19 | + 3. This notice may not be removed or altered from any source distribution. | |
| 20 | + | |
| 21 | + Jean-loup Gailly Mark Adler | |
| 22 | + [email protected] |
| --- a/compat/zlib/LICENSE | |
| +++ b/compat/zlib/LICENSE | |
| @@ -0,0 +1,22 @@ | |
| --- a/compat/zlib/LICENSE | |
| +++ b/compat/zlib/LICENSE | |
| @@ -0,0 +1,22 @@ | |
| 1 | Copyright notice: |
| 2 | |
| 3 | (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 4 | |
| 5 | This software is provided 'as-is', without any express or implied |
| 6 | warranty. In no event will the authors be held liable for any damages |
| 7 | arising from the use of this software. |
| 8 | |
| 9 | Permission is granted to anyone to use this software for any purpose, |
| 10 | including commercial applications, and to alter it and redistribute it |
| 11 | freely, subject to the following restrictions: |
| 12 | |
| 13 | 1. The origin of this software must not be misrepresented; you must not |
| 14 | claim that you wrote the original software. If you use this software |
| 15 | in a product, an acknowledgment in the product documentation would be |
| 16 | appreciated but is not required. |
| 17 | 2. Altered source versions must be plainly marked as such, and must not be |
| 18 | misrepresented as being the original software. |
| 19 | 3. This notice may not be removed or altered from any source distribution. |
| 20 | |
| 21 | Jean-loup Gailly Mark Adler |
| 22 | [email protected] |
+5
-408
| --- compat/zlib/Makefile | ||
| +++ compat/zlib/Makefile | ||
| @@ -1,408 +1,5 @@ | ||
| 1 | -# Makefile for zlib | |
| 2 | -# Copyright (C) 1995-2017 Jean-loup Gailly, Mark Adler | |
| 3 | -# For conditions of distribution and use, see copyright notice in zlib.h | |
| 4 | - | |
| 5 | -# To compile and test, type: | |
| 6 | -# ./configure; make test | |
| 7 | -# Normally configure builds both a static and a shared library. | |
| 8 | -# If you want to build just a static library, use: ./configure --static | |
| 9 | - | |
| 10 | -# To use the asm code, type: | |
| 11 | -# cp contrib/asm?86/match.S ./match.S | |
| 12 | -# make LOC=-DASMV OBJA=match.o | |
| 13 | - | |
| 14 | -# To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: | |
| 15 | -# make install | |
| 16 | -# To install in $HOME instead of /usr/local, use: | |
| 17 | -# make install prefix=$HOME | |
| 18 | - | |
| 19 | -CC=gcc | |
| 20 | - | |
| 21 | -CFLAGS=-O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN | |
| 22 | -#CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 | |
| 23 | -#CFLAGS=-g -DZLIB_DEBUG | |
| 24 | -#CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ | |
| 25 | -# -Wstrict-prototypes -Wmissing-prototypes | |
| 26 | - | |
| 27 | -SFLAGS=-O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN | |
| 28 | -LDFLAGS= | |
| 29 | -TEST_LDFLAGS=-L. libz.a | |
| 30 | -LDSHARED=gcc | |
| 31 | -CPP=gcc -E | |
| 32 | - | |
| 33 | -STATICLIB=libz.a | |
| 34 | -SHAREDLIB= | |
| 35 | -SHAREDLIBV= | |
| 36 | -SHAREDLIBM= | |
| 37 | -LIBS=$(STATICLIB) $(SHAREDLIBV) | |
| 38 | - | |
| 39 | -AR=ar | |
| 40 | -ARFLAGS=rc | |
| 41 | -RANLIB=ranlib | |
| 42 | -LDCONFIG=ldconfig | |
| 43 | -LDSHAREDLIBC=-lc | |
| 44 | -TAR=tar | |
| 45 | -SHELL=/bin/sh | |
| 46 | -EXE= | |
| 47 | - | |
| 48 | -prefix =/usr/local | |
| 49 | -exec_prefix =${prefix} | |
| 50 | -libdir =${exec_prefix}/lib | |
| 51 | -sharedlibdir =${libdir} | |
| 52 | -includedir =${prefix}/include | |
| 53 | -mandir =${prefix}/share/man | |
| 54 | -man3dir = ${mandir}/man3 | |
| 55 | -pkgconfigdir = ${libdir}/pkgconfig | |
| 56 | -SRCDIR= | |
| 57 | -ZINC= | |
| 58 | -ZINCOUT=-I. | |
| 59 | - | |
| 60 | -OBJZ = adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o | |
| 61 | -OBJG = compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o | |
| 62 | -OBJC = $(OBJZ) $(OBJG) | |
| 63 | - | |
| 64 | -PIC_OBJZ = adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo | |
| 65 | -PIC_OBJG = compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo | |
| 66 | -PIC_OBJC = $(PIC_OBJZ) $(PIC_OBJG) | |
| 67 | - | |
| 68 | -# to use the asm code: make OBJA=match.o, PIC_OBJA=match.lo | |
| 69 | -OBJA = | |
| 70 | -PIC_OBJA = | |
| 71 | - | |
| 72 | -OBJS = $(OBJC) $(OBJA) | |
| 73 | - | |
| 74 | -PIC_OBJS = $(PIC_OBJC) $(PIC_OBJA) | |
| 75 | - | |
| 76 | -all: static all64 | |
| 77 | - | |
| 78 | -static: example$(EXE) minigzip$(EXE) | |
| 79 | - | |
| 80 | -shared: examplesh$(EXE) minigzipsh$(EXE) | |
| 81 | - | |
| 82 | -all64: example64$(EXE) minigzip64$(EXE) | |
| 83 | - | |
| 84 | -check: test | |
| 85 | - | |
| 86 | -test: all teststatic test64 | |
| 87 | - | |
| 88 | -teststatic: static | |
| 89 | - @TMPST=tmpst_$$; \ | |
| 90 | - if echo hello world | ./minigzip | ./minigzip -d && ./example $$TMPST ; then \ | |
| 91 | - echo ' *** zlib test OK ***'; \ | |
| 92 | - else \ | |
| 93 | - echo ' *** zlib test FAILED ***'; false; \ | |
| 94 | - fi | |
| 95 | - @rm -f tmpst_$$ | |
| 96 | - | |
| 97 | -testshared: shared | |
| 98 | - @LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ | |
| 99 | - LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \ | |
| 100 | - DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \ | |
| 101 | - SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \ | |
| 102 | - TMPSH=tmpsh_$$; \ | |
| 103 | - if echo hello world | ./minigzipsh | ./minigzipsh -d && ./examplesh $$TMPSH; then \ | |
| 104 | - echo ' *** zlib shared test OK ***'; \ | |
| 105 | - else \ | |
| 106 | - echo ' *** zlib shared test FAILED ***'; false; \ | |
| 107 | - fi | |
| 108 | - @rm -f tmpsh_$$ | |
| 109 | - | |
| 110 | -test64: all64 | |
| 111 | - @TMP64=tmp64_$$; \ | |
| 112 | - if echo hello world | ./minigzip64 | ./minigzip64 -d && ./example64 $$TMP64; then \ | |
| 113 | - echo ' *** zlib 64-bit test OK ***'; \ | |
| 114 | - else \ | |
| 115 | - echo ' *** zlib 64-bit test FAILED ***'; false; \ | |
| 116 | - fi | |
| 117 | - @rm -f tmp64_$$ | |
| 118 | - | |
| 119 | -infcover.o: $(SRCDIR)test/infcover.c $(SRCDIR)zlib.h zconf.h | |
| 120 | - $(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/infcover.c | |
| 121 | - | |
| 122 | -infcover: infcover.o libz.a | |
| 123 | - $(CC) $(CFLAGS) -o $@ infcover.o libz.a | |
| 124 | - | |
| 125 | -cover: infcover | |
| 126 | - rm -f *.gcda | |
| 127 | - ./infcover | |
| 128 | - gcov inf*.c | |
| 129 | - | |
| 130 | -libz.a: $(OBJS) | |
| 131 | - $(AR) $(ARFLAGS) $@ $(OBJS) | |
| 132 | - -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 | |
| 133 | - | |
| 134 | -match.o: match.S | |
| 135 | - $(CPP) match.S > _match.s | |
| 136 | - $(CC) -c _match.s | |
| 137 | - mv _match.o match.o | |
| 138 | - rm -f _match.s | |
| 139 | - | |
| 140 | -match.lo: match.S | |
| 141 | - $(CPP) match.S > _match.s | |
| 142 | - $(CC) -c -fPIC _match.s | |
| 143 | - mv _match.o match.lo | |
| 144 | - rm -f _match.s | |
| 145 | - | |
| 146 | -example.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h | |
| 147 | - $(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/example.c | |
| 148 | - | |
| 149 | -minigzip.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h | |
| 150 | - $(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/minigzip.c | |
| 151 | - | |
| 152 | -example64.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h | |
| 153 | - $(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/example.c | |
| 154 | - | |
| 155 | -minigzip64.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h | |
| 156 | - $(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/minigzip.c | |
| 157 | - | |
| 158 | - | |
| 159 | -adler32.o: $(SRCDIR)adler32.c | |
| 160 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)adler32.c | |
| 161 | - | |
| 162 | -crc32.o: $(SRCDIR)crc32.c | |
| 163 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)crc32.c | |
| 164 | - | |
| 165 | -deflate.o: $(SRCDIR)deflate.c | |
| 166 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)deflate.c | |
| 167 | - | |
| 168 | -infback.o: $(SRCDIR)infback.c | |
| 169 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)infback.c | |
| 170 | - | |
| 171 | -inffast.o: $(SRCDIR)inffast.c | |
| 172 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inffast.c | |
| 173 | - | |
| 174 | -inflate.o: $(SRCDIR)inflate.c | |
| 175 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inflate.c | |
| 176 | - | |
| 177 | -inftrees.o: $(SRCDIR)inftrees.c | |
| 178 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inftrees.c | |
| 179 | - | |
| 180 | -trees.o: $(SRCDIR)trees.c | |
| 181 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)trees.c | |
| 182 | - | |
| 183 | -zutil.o: $(SRCDIR)zutil.c | |
| 184 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)zutil.c | |
| 185 | - | |
| 186 | -compress.o: $(SRCDIR)compress.c | |
| 187 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)compress.c | |
| 188 | - | |
| 189 | -uncompr.o: $(SRCDIR)uncompr.c | |
| 190 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)uncompr.c | |
| 191 | - | |
| 192 | -gzclose.o: $(SRCDIR)gzclose.c | |
| 193 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzclose.c | |
| 194 | - | |
| 195 | -gzlib.o: $(SRCDIR)gzlib.c | |
| 196 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzlib.c | |
| 197 | - | |
| 198 | -gzread.o: $(SRCDIR)gzread.c | |
| 199 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzread.c | |
| 200 | - | |
| 201 | -gzwrite.o: $(SRCDIR)gzwrite.c | |
| 202 | - $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzwrite.c | |
| 203 | - | |
| 204 | - | |
| 205 | -adler32.lo: $(SRCDIR)adler32.c | |
| 206 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 207 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/adler32.o $(SRCDIR)adler32.c | |
| 208 | - -@mv objs/adler32.o $@ | |
| 209 | - | |
| 210 | -crc32.lo: $(SRCDIR)crc32.c | |
| 211 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 212 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/crc32.o $(SRCDIR)crc32.c | |
| 213 | - -@mv objs/crc32.o $@ | |
| 214 | - | |
| 215 | -deflate.lo: $(SRCDIR)deflate.c | |
| 216 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 217 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/deflate.o $(SRCDIR)deflate.c | |
| 218 | - -@mv objs/deflate.o $@ | |
| 219 | - | |
| 220 | -infback.lo: $(SRCDIR)infback.c | |
| 221 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 222 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/infback.o $(SRCDIR)infback.c | |
| 223 | - -@mv objs/infback.o $@ | |
| 224 | - | |
| 225 | -inffast.lo: $(SRCDIR)inffast.c | |
| 226 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 227 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/inffast.o $(SRCDIR)inffast.c | |
| 228 | - -@mv objs/inffast.o $@ | |
| 229 | - | |
| 230 | -inflate.lo: $(SRCDIR)inflate.c | |
| 231 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 232 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/inflate.o $(SRCDIR)inflate.c | |
| 233 | - -@mv objs/inflate.o $@ | |
| 234 | - | |
| 235 | -inftrees.lo: $(SRCDIR)inftrees.c | |
| 236 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 237 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/inftrees.o $(SRCDIR)inftrees.c | |
| 238 | - -@mv objs/inftrees.o $@ | |
| 239 | - | |
| 240 | -trees.lo: $(SRCDIR)trees.c | |
| 241 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 242 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/trees.o $(SRCDIR)trees.c | |
| 243 | - -@mv objs/trees.o $@ | |
| 244 | - | |
| 245 | -zutil.lo: $(SRCDIR)zutil.c | |
| 246 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 247 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/zutil.o $(SRCDIR)zutil.c | |
| 248 | - -@mv objs/zutil.o $@ | |
| 249 | - | |
| 250 | -compress.lo: $(SRCDIR)compress.c | |
| 251 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 252 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/compress.o $(SRCDIR)compress.c | |
| 253 | - -@mv objs/compress.o $@ | |
| 254 | - | |
| 255 | -uncompr.lo: $(SRCDIR)uncompr.c | |
| 256 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 257 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/uncompr.o $(SRCDIR)uncompr.c | |
| 258 | - -@mv objs/uncompr.o $@ | |
| 259 | - | |
| 260 | -gzclose.lo: $(SRCDIR)gzclose.c | |
| 261 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 262 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzclose.o $(SRCDIR)gzclose.c | |
| 263 | - -@mv objs/gzclose.o $@ | |
| 264 | - | |
| 265 | -gzlib.lo: $(SRCDIR)gzlib.c | |
| 266 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 267 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzlib.o $(SRCDIR)gzlib.c | |
| 268 | - -@mv objs/gzlib.o $@ | |
| 269 | - | |
| 270 | -gzread.lo: $(SRCDIR)gzread.c | |
| 271 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 272 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzread.o $(SRCDIR)gzread.c | |
| 273 | - -@mv objs/gzread.o $@ | |
| 274 | - | |
| 275 | -gzwrite.lo: $(SRCDIR)gzwrite.c | |
| 276 | - -@mkdir objs 2>/dev/null || test -d objs | |
| 277 | - $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzwrite.o $(SRCDIR)gzwrite.c | |
| 278 | - -@mv objs/gzwrite.o $@ | |
| 279 | - | |
| 280 | - | |
| 281 | -placebo $(SHAREDLIBV): $(PIC_OBJS) libz.a | |
| 282 | - $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS) | |
| 283 | - rm -f $(SHAREDLIB) $(SHAREDLIBM) | |
| 284 | - ln -s $@ $(SHAREDLIB) | |
| 285 | - ln -s $@ $(SHAREDLIBM) | |
| 286 | - -@rmdir objs | |
| 287 | - | |
| 288 | -example$(EXE): example.o $(STATICLIB) | |
| 289 | - $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS) | |
| 290 | - | |
| 291 | -minigzip$(EXE): minigzip.o $(STATICLIB) | |
| 292 | - $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) | |
| 293 | - | |
| 294 | -examplesh$(EXE): example.o $(SHAREDLIBV) | |
| 295 | - $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV) | |
| 296 | - | |
| 297 | -minigzipsh$(EXE): minigzip.o $(SHAREDLIBV) | |
| 298 | - $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV) | |
| 299 | - | |
| 300 | -example64$(EXE): example64.o $(STATICLIB) | |
| 301 | - $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS) | |
| 302 | - | |
| 303 | -minigzip64$(EXE): minigzip64.o $(STATICLIB) | |
| 304 | - $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS) | |
| 305 | - | |
| 306 | -install-libs: $(LIBS) | |
| 307 | - -@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi | |
| 308 | - -@if [ ! -d $(DESTDIR)$(libdir) ]; then mkdir -p $(DESTDIR)$(libdir); fi | |
| 309 | - -@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi | |
| 310 | - -@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi | |
| 311 | - -@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi | |
| 312 | - rm -f $(DESTDIR)$(libdir)/$(STATICLIB) | |
| 313 | - cp $(STATICLIB) $(DESTDIR)$(libdir) | |
| 314 | - chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB) | |
| 315 | - -@($(RANLIB) $(DESTDIR)$(libdir)/libz.a || true) >/dev/null 2>&1 | |
| 316 | - -@if test -n "$(SHAREDLIBV)"; then \ | |
| 317 | - rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \ | |
| 318 | - cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir); \ | |
| 319 | - echo "cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)"; \ | |
| 320 | - chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \ | |
| 321 | - echo "chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV)"; \ | |
| 322 | - rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \ | |
| 323 | - ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB); \ | |
| 324 | - ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \ | |
| 325 | - ($(LDCONFIG) || true) >/dev/null 2>&1; \ | |
| 326 | - fi | |
| 327 | - rm -f $(DESTDIR)$(man3dir)/zlib.3 | |
| 328 | - cp $(SRCDIR)zlib.3 $(DESTDIR)$(man3dir) | |
| 329 | - chmod 644 $(DESTDIR)$(man3dir)/zlib.3 | |
| 330 | - rm -f $(DESTDIR)$(pkgconfigdir)/zlib.pc | |
| 331 | - cp zlib.pc $(DESTDIR)$(pkgconfigdir) | |
| 332 | - chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc | |
| 333 | -# The ranlib in install is needed on NeXTSTEP which checks file times | |
| 334 | -# ldconfig is for Linux | |
| 335 | - | |
| 336 | -install: install-libs | |
| 337 | - -@if [ ! -d $(DESTDIR)$(includedir) ]; then mkdir -p $(DESTDIR)$(includedir); fi | |
| 338 | - rm -f $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h | |
| 339 | - cp $(SRCDIR)zlib.h zconf.h $(DESTDIR)$(includedir) | |
| 340 | - chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h | |
| 341 | - | |
| 342 | -uninstall: | |
| 343 | - cd $(DESTDIR)$(includedir) && rm -f zlib.h zconf.h | |
| 344 | - cd $(DESTDIR)$(libdir) && rm -f libz.a; \ | |
| 345 | - if test -n "$(SHAREDLIBV)" -a -f $(SHAREDLIBV); then \ | |
| 346 | - rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \ | |
| 347 | - fi | |
| 348 | - cd $(DESTDIR)$(man3dir) && rm -f zlib.3 | |
| 349 | - cd $(DESTDIR)$(pkgconfigdir) && rm -f zlib.pc | |
| 350 | - | |
| 351 | -docs: zlib.3.pdf | |
| 352 | - | |
| 353 | -zlib.3.pdf: $(SRCDIR)zlib.3 | |
| 354 | - groff -mandoc -f H -T ps $(SRCDIR)zlib.3 | ps2pdf - $@ | |
| 355 | - | |
| 356 | -zconf.h.cmakein: $(SRCDIR)zconf.h.in | |
| 357 | - -@ TEMPFILE=zconfh_$$; \ | |
| 358 | - echo "/#define ZCONF_H/ a\\\\\n#cmakedefine Z_PREFIX\\\\\n#cmakedefine Z_HAVE_UNISTD_H\n" >> $$TEMPFILE &&\ | |
| 359 | - sed -f $$TEMPFILE $(SRCDIR)zconf.h.in > $@ &&\ | |
| 360 | - touch -r $(SRCDIR)zconf.h.in $@ &&\ | |
| 361 | - rm $$TEMPFILE | |
| 362 | - | |
| 363 | -zconf: $(SRCDIR)zconf.h.in | |
| 364 | - cp -p $(SRCDIR)zconf.h.in zconf.h | |
| 365 | - | |
| 366 | -mostlyclean: clean | |
| 367 | -clean: | |
| 368 | - rm -f *.o *.lo *~ \ | |
| 369 | - example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \ | |
| 370 | - example64$(EXE) minigzip64$(EXE) \ | |
| 371 | - infcover \ | |
| 372 | - libz.* foo.gz so_locations \ | |
| 373 | - _match.s maketree contrib/infback9/*.o | |
| 374 | - rm -rf objs | |
| 375 | - rm -f *.gcda *.gcno *.gcov | |
| 376 | - rm -f contrib/infback9/*.gcda contrib/infback9/*.gcno contrib/infback9/*.gcov | |
| 377 | - | |
| 378 | -maintainer-clean: distclean | |
| 379 | -distclean: clean zconf zconf.h.cmakein | |
| 380 | - rm -f Makefile zlib.pc configure.log | |
| 381 | - -@rm -f .DS_Store | |
| 382 | - @if [ -f Makefile.in ]; then \ | |
| 383 | - printf 'all:\n\t-@echo "Please use ./configure first. Thank you."\n' > Makefile ; \ | |
| 384 | - printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile ; \ | |
| 385 | - touch -r $(SRCDIR)Makefile.in Makefile ; fi | |
| 386 | - | |
| 387 | -tags: | |
| 388 | - etags $(SRCDIR)*.[ch] | |
| 389 | - | |
| 390 | -adler32.o zutil.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h | |
| 391 | -gzclose.o gzlib.o gzread.o gzwrite.o: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h | |
| 392 | -compress.o example.o minigzip.o uncompr.o: $(SRCDIR)zlib.h zconf.h | |
| 393 | -crc32.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h | |
| 394 | -deflate.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h | |
| 395 | -infback.o inflate.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h | |
| 396 | -inffast.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h | |
| 397 | -inftrees.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h | |
| 398 | -trees.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h | |
| 399 | - | |
| 400 | -adler32.lo zutil.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h | |
| 401 | -gzclose.lo gzlib.lo gzread.lo gzwrite.lo: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h | |
| 402 | -compress.lo example.lo minigzip.lo uncompr.lo: $(SRCDIR)zlib.h zconf.h | |
| 403 | -crc32.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h | |
| 404 | -deflate.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h | |
| 405 | -infback.lo inflate.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h | |
| 406 | -inffast.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h | |
| 407 | -inftrees.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h | |
| 408 | -trees.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h | |
| 1 | +all: | |
| 2 | + -@echo "Please use ./configure first. Thank you." | |
| 3 | + | |
| 4 | +distclean: | |
| 5 | + make -f Makefile.in distclean | |
| 409 | 6 |
| --- compat/zlib/Makefile | |
| +++ compat/zlib/Makefile | |
| @@ -1,408 +1,5 @@ | |
| 1 | # Makefile for zlib |
| 2 | # Copyright (C) 1995-2017 Jean-loup Gailly, Mark Adler |
| 3 | # For conditions of distribution and use, see copyright notice in zlib.h |
| 4 | |
| 5 | # To compile and test, type: |
| 6 | # ./configure; make test |
| 7 | # Normally configure builds both a static and a shared library. |
| 8 | # If you want to build just a static library, use: ./configure --static |
| 9 | |
| 10 | # To use the asm code, type: |
| 11 | # cp contrib/asm?86/match.S ./match.S |
| 12 | # make LOC=-DASMV OBJA=match.o |
| 13 | |
| 14 | # To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: |
| 15 | # make install |
| 16 | # To install in $HOME instead of /usr/local, use: |
| 17 | # make install prefix=$HOME |
| 18 | |
| 19 | CC=gcc |
| 20 | |
| 21 | CFLAGS=-O3 -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN |
| 22 | #CFLAGS=-O -DMAX_WBITS=14 -DMAX_MEM_LEVEL=7 |
| 23 | #CFLAGS=-g -DZLIB_DEBUG |
| 24 | #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ |
| 25 | # -Wstrict-prototypes -Wmissing-prototypes |
| 26 | |
| 27 | SFLAGS=-O3 -fPIC -D_LARGEFILE64_SOURCE=1 -DHAVE_HIDDEN |
| 28 | LDFLAGS= |
| 29 | TEST_LDFLAGS=-L. libz.a |
| 30 | LDSHARED=gcc |
| 31 | CPP=gcc -E |
| 32 | |
| 33 | STATICLIB=libz.a |
| 34 | SHAREDLIB= |
| 35 | SHAREDLIBV= |
| 36 | SHAREDLIBM= |
| 37 | LIBS=$(STATICLIB) $(SHAREDLIBV) |
| 38 | |
| 39 | AR=ar |
| 40 | ARFLAGS=rc |
| 41 | RANLIB=ranlib |
| 42 | LDCONFIG=ldconfig |
| 43 | LDSHAREDLIBC=-lc |
| 44 | TAR=tar |
| 45 | SHELL=/bin/sh |
| 46 | EXE= |
| 47 | |
| 48 | prefix =/usr/local |
| 49 | exec_prefix =${prefix} |
| 50 | libdir =${exec_prefix}/lib |
| 51 | sharedlibdir =${libdir} |
| 52 | includedir =${prefix}/include |
| 53 | mandir =${prefix}/share/man |
| 54 | man3dir = ${mandir}/man3 |
| 55 | pkgconfigdir = ${libdir}/pkgconfig |
| 56 | SRCDIR= |
| 57 | ZINC= |
| 58 | ZINCOUT=-I. |
| 59 | |
| 60 | OBJZ = adler32.o crc32.o deflate.o infback.o inffast.o inflate.o inftrees.o trees.o zutil.o |
| 61 | OBJG = compress.o uncompr.o gzclose.o gzlib.o gzread.o gzwrite.o |
| 62 | OBJC = $(OBJZ) $(OBJG) |
| 63 | |
| 64 | PIC_OBJZ = adler32.lo crc32.lo deflate.lo infback.lo inffast.lo inflate.lo inftrees.lo trees.lo zutil.lo |
| 65 | PIC_OBJG = compress.lo uncompr.lo gzclose.lo gzlib.lo gzread.lo gzwrite.lo |
| 66 | PIC_OBJC = $(PIC_OBJZ) $(PIC_OBJG) |
| 67 | |
| 68 | # to use the asm code: make OBJA=match.o, PIC_OBJA=match.lo |
| 69 | OBJA = |
| 70 | PIC_OBJA = |
| 71 | |
| 72 | OBJS = $(OBJC) $(OBJA) |
| 73 | |
| 74 | PIC_OBJS = $(PIC_OBJC) $(PIC_OBJA) |
| 75 | |
| 76 | all: static all64 |
| 77 | |
| 78 | static: example$(EXE) minigzip$(EXE) |
| 79 | |
| 80 | shared: examplesh$(EXE) minigzipsh$(EXE) |
| 81 | |
| 82 | all64: example64$(EXE) minigzip64$(EXE) |
| 83 | |
| 84 | check: test |
| 85 | |
| 86 | test: all teststatic test64 |
| 87 | |
| 88 | teststatic: static |
| 89 | @TMPST=tmpst_$$; \ |
| 90 | if echo hello world | ./minigzip | ./minigzip -d && ./example $$TMPST ; then \ |
| 91 | echo ' *** zlib test OK ***'; \ |
| 92 | else \ |
| 93 | echo ' *** zlib test FAILED ***'; false; \ |
| 94 | fi |
| 95 | @rm -f tmpst_$$ |
| 96 | |
| 97 | testshared: shared |
| 98 | @LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ |
| 99 | LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \ |
| 100 | DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \ |
| 101 | SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \ |
| 102 | TMPSH=tmpsh_$$; \ |
| 103 | if echo hello world | ./minigzipsh | ./minigzipsh -d && ./examplesh $$TMPSH; then \ |
| 104 | echo ' *** zlib shared test OK ***'; \ |
| 105 | else \ |
| 106 | echo ' *** zlib shared test FAILED ***'; false; \ |
| 107 | fi |
| 108 | @rm -f tmpsh_$$ |
| 109 | |
| 110 | test64: all64 |
| 111 | @TMP64=tmp64_$$; \ |
| 112 | if echo hello world | ./minigzip64 | ./minigzip64 -d && ./example64 $$TMP64; then \ |
| 113 | echo ' *** zlib 64-bit test OK ***'; \ |
| 114 | else \ |
| 115 | echo ' *** zlib 64-bit test FAILED ***'; false; \ |
| 116 | fi |
| 117 | @rm -f tmp64_$$ |
| 118 | |
| 119 | infcover.o: $(SRCDIR)test/infcover.c $(SRCDIR)zlib.h zconf.h |
| 120 | $(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/infcover.c |
| 121 | |
| 122 | infcover: infcover.o libz.a |
| 123 | $(CC) $(CFLAGS) -o $@ infcover.o libz.a |
| 124 | |
| 125 | cover: infcover |
| 126 | rm -f *.gcda |
| 127 | ./infcover |
| 128 | gcov inf*.c |
| 129 | |
| 130 | libz.a: $(OBJS) |
| 131 | $(AR) $(ARFLAGS) $@ $(OBJS) |
| 132 | -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 |
| 133 | |
| 134 | match.o: match.S |
| 135 | $(CPP) match.S > _match.s |
| 136 | $(CC) -c _match.s |
| 137 | mv _match.o match.o |
| 138 | rm -f _match.s |
| 139 | |
| 140 | match.lo: match.S |
| 141 | $(CPP) match.S > _match.s |
| 142 | $(CC) -c -fPIC _match.s |
| 143 | mv _match.o match.lo |
| 144 | rm -f _match.s |
| 145 | |
| 146 | example.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h |
| 147 | $(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/example.c |
| 148 | |
| 149 | minigzip.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h |
| 150 | $(CC) $(CFLAGS) $(ZINCOUT) -c -o $@ $(SRCDIR)test/minigzip.c |
| 151 | |
| 152 | example64.o: $(SRCDIR)test/example.c $(SRCDIR)zlib.h zconf.h |
| 153 | $(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/example.c |
| 154 | |
| 155 | minigzip64.o: $(SRCDIR)test/minigzip.c $(SRCDIR)zlib.h zconf.h |
| 156 | $(CC) $(CFLAGS) $(ZINCOUT) -D_FILE_OFFSET_BITS=64 -c -o $@ $(SRCDIR)test/minigzip.c |
| 157 | |
| 158 | |
| 159 | adler32.o: $(SRCDIR)adler32.c |
| 160 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)adler32.c |
| 161 | |
| 162 | crc32.o: $(SRCDIR)crc32.c |
| 163 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)crc32.c |
| 164 | |
| 165 | deflate.o: $(SRCDIR)deflate.c |
| 166 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)deflate.c |
| 167 | |
| 168 | infback.o: $(SRCDIR)infback.c |
| 169 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)infback.c |
| 170 | |
| 171 | inffast.o: $(SRCDIR)inffast.c |
| 172 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inffast.c |
| 173 | |
| 174 | inflate.o: $(SRCDIR)inflate.c |
| 175 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inflate.c |
| 176 | |
| 177 | inftrees.o: $(SRCDIR)inftrees.c |
| 178 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)inftrees.c |
| 179 | |
| 180 | trees.o: $(SRCDIR)trees.c |
| 181 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)trees.c |
| 182 | |
| 183 | zutil.o: $(SRCDIR)zutil.c |
| 184 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)zutil.c |
| 185 | |
| 186 | compress.o: $(SRCDIR)compress.c |
| 187 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)compress.c |
| 188 | |
| 189 | uncompr.o: $(SRCDIR)uncompr.c |
| 190 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)uncompr.c |
| 191 | |
| 192 | gzclose.o: $(SRCDIR)gzclose.c |
| 193 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzclose.c |
| 194 | |
| 195 | gzlib.o: $(SRCDIR)gzlib.c |
| 196 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzlib.c |
| 197 | |
| 198 | gzread.o: $(SRCDIR)gzread.c |
| 199 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzread.c |
| 200 | |
| 201 | gzwrite.o: $(SRCDIR)gzwrite.c |
| 202 | $(CC) $(CFLAGS) $(ZINC) -c -o $@ $(SRCDIR)gzwrite.c |
| 203 | |
| 204 | |
| 205 | adler32.lo: $(SRCDIR)adler32.c |
| 206 | -@mkdir objs 2>/dev/null || test -d objs |
| 207 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/adler32.o $(SRCDIR)adler32.c |
| 208 | -@mv objs/adler32.o $@ |
| 209 | |
| 210 | crc32.lo: $(SRCDIR)crc32.c |
| 211 | -@mkdir objs 2>/dev/null || test -d objs |
| 212 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/crc32.o $(SRCDIR)crc32.c |
| 213 | -@mv objs/crc32.o $@ |
| 214 | |
| 215 | deflate.lo: $(SRCDIR)deflate.c |
| 216 | -@mkdir objs 2>/dev/null || test -d objs |
| 217 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/deflate.o $(SRCDIR)deflate.c |
| 218 | -@mv objs/deflate.o $@ |
| 219 | |
| 220 | infback.lo: $(SRCDIR)infback.c |
| 221 | -@mkdir objs 2>/dev/null || test -d objs |
| 222 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/infback.o $(SRCDIR)infback.c |
| 223 | -@mv objs/infback.o $@ |
| 224 | |
| 225 | inffast.lo: $(SRCDIR)inffast.c |
| 226 | -@mkdir objs 2>/dev/null || test -d objs |
| 227 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/inffast.o $(SRCDIR)inffast.c |
| 228 | -@mv objs/inffast.o $@ |
| 229 | |
| 230 | inflate.lo: $(SRCDIR)inflate.c |
| 231 | -@mkdir objs 2>/dev/null || test -d objs |
| 232 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/inflate.o $(SRCDIR)inflate.c |
| 233 | -@mv objs/inflate.o $@ |
| 234 | |
| 235 | inftrees.lo: $(SRCDIR)inftrees.c |
| 236 | -@mkdir objs 2>/dev/null || test -d objs |
| 237 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/inftrees.o $(SRCDIR)inftrees.c |
| 238 | -@mv objs/inftrees.o $@ |
| 239 | |
| 240 | trees.lo: $(SRCDIR)trees.c |
| 241 | -@mkdir objs 2>/dev/null || test -d objs |
| 242 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/trees.o $(SRCDIR)trees.c |
| 243 | -@mv objs/trees.o $@ |
| 244 | |
| 245 | zutil.lo: $(SRCDIR)zutil.c |
| 246 | -@mkdir objs 2>/dev/null || test -d objs |
| 247 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/zutil.o $(SRCDIR)zutil.c |
| 248 | -@mv objs/zutil.o $@ |
| 249 | |
| 250 | compress.lo: $(SRCDIR)compress.c |
| 251 | -@mkdir objs 2>/dev/null || test -d objs |
| 252 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/compress.o $(SRCDIR)compress.c |
| 253 | -@mv objs/compress.o $@ |
| 254 | |
| 255 | uncompr.lo: $(SRCDIR)uncompr.c |
| 256 | -@mkdir objs 2>/dev/null || test -d objs |
| 257 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/uncompr.o $(SRCDIR)uncompr.c |
| 258 | -@mv objs/uncompr.o $@ |
| 259 | |
| 260 | gzclose.lo: $(SRCDIR)gzclose.c |
| 261 | -@mkdir objs 2>/dev/null || test -d objs |
| 262 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzclose.o $(SRCDIR)gzclose.c |
| 263 | -@mv objs/gzclose.o $@ |
| 264 | |
| 265 | gzlib.lo: $(SRCDIR)gzlib.c |
| 266 | -@mkdir objs 2>/dev/null || test -d objs |
| 267 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzlib.o $(SRCDIR)gzlib.c |
| 268 | -@mv objs/gzlib.o $@ |
| 269 | |
| 270 | gzread.lo: $(SRCDIR)gzread.c |
| 271 | -@mkdir objs 2>/dev/null || test -d objs |
| 272 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzread.o $(SRCDIR)gzread.c |
| 273 | -@mv objs/gzread.o $@ |
| 274 | |
| 275 | gzwrite.lo: $(SRCDIR)gzwrite.c |
| 276 | -@mkdir objs 2>/dev/null || test -d objs |
| 277 | $(CC) $(SFLAGS) $(ZINC) -fPIC -c -o objs/gzwrite.o $(SRCDIR)gzwrite.c |
| 278 | -@mv objs/gzwrite.o $@ |
| 279 | |
| 280 | |
| 281 | placebo $(SHAREDLIBV): $(PIC_OBJS) libz.a |
| 282 | $(LDSHARED) $(SFLAGS) -o $@ $(PIC_OBJS) $(LDSHAREDLIBC) $(LDFLAGS) |
| 283 | rm -f $(SHAREDLIB) $(SHAREDLIBM) |
| 284 | ln -s $@ $(SHAREDLIB) |
| 285 | ln -s $@ $(SHAREDLIBM) |
| 286 | -@rmdir objs |
| 287 | |
| 288 | example$(EXE): example.o $(STATICLIB) |
| 289 | $(CC) $(CFLAGS) -o $@ example.o $(TEST_LDFLAGS) |
| 290 | |
| 291 | minigzip$(EXE): minigzip.o $(STATICLIB) |
| 292 | $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) |
| 293 | |
| 294 | examplesh$(EXE): example.o $(SHAREDLIBV) |
| 295 | $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV) |
| 296 | |
| 297 | minigzipsh$(EXE): minigzip.o $(SHAREDLIBV) |
| 298 | $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV) |
| 299 | |
| 300 | example64$(EXE): example64.o $(STATICLIB) |
| 301 | $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS) |
| 302 | |
| 303 | minigzip64$(EXE): minigzip64.o $(STATICLIB) |
| 304 | $(CC) $(CFLAGS) -o $@ minigzip64.o $(TEST_LDFLAGS) |
| 305 | |
| 306 | install-libs: $(LIBS) |
| 307 | -@if [ ! -d $(DESTDIR)$(exec_prefix) ]; then mkdir -p $(DESTDIR)$(exec_prefix); fi |
| 308 | -@if [ ! -d $(DESTDIR)$(libdir) ]; then mkdir -p $(DESTDIR)$(libdir); fi |
| 309 | -@if [ ! -d $(DESTDIR)$(sharedlibdir) ]; then mkdir -p $(DESTDIR)$(sharedlibdir); fi |
| 310 | -@if [ ! -d $(DESTDIR)$(man3dir) ]; then mkdir -p $(DESTDIR)$(man3dir); fi |
| 311 | -@if [ ! -d $(DESTDIR)$(pkgconfigdir) ]; then mkdir -p $(DESTDIR)$(pkgconfigdir); fi |
| 312 | rm -f $(DESTDIR)$(libdir)/$(STATICLIB) |
| 313 | cp $(STATICLIB) $(DESTDIR)$(libdir) |
| 314 | chmod 644 $(DESTDIR)$(libdir)/$(STATICLIB) |
| 315 | -@($(RANLIB) $(DESTDIR)$(libdir)/libz.a || true) >/dev/null 2>&1 |
| 316 | -@if test -n "$(SHAREDLIBV)"; then \ |
| 317 | rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \ |
| 318 | cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir); \ |
| 319 | echo "cp $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)"; \ |
| 320 | chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV); \ |
| 321 | echo "chmod 755 $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBV)"; \ |
| 322 | rm -f $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \ |
| 323 | ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIB); \ |
| 324 | ln -s $(SHAREDLIBV) $(DESTDIR)$(sharedlibdir)/$(SHAREDLIBM); \ |
| 325 | ($(LDCONFIG) || true) >/dev/null 2>&1; \ |
| 326 | fi |
| 327 | rm -f $(DESTDIR)$(man3dir)/zlib.3 |
| 328 | cp $(SRCDIR)zlib.3 $(DESTDIR)$(man3dir) |
| 329 | chmod 644 $(DESTDIR)$(man3dir)/zlib.3 |
| 330 | rm -f $(DESTDIR)$(pkgconfigdir)/zlib.pc |
| 331 | cp zlib.pc $(DESTDIR)$(pkgconfigdir) |
| 332 | chmod 644 $(DESTDIR)$(pkgconfigdir)/zlib.pc |
| 333 | # The ranlib in install is needed on NeXTSTEP which checks file times |
| 334 | # ldconfig is for Linux |
| 335 | |
| 336 | install: install-libs |
| 337 | -@if [ ! -d $(DESTDIR)$(includedir) ]; then mkdir -p $(DESTDIR)$(includedir); fi |
| 338 | rm -f $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h |
| 339 | cp $(SRCDIR)zlib.h zconf.h $(DESTDIR)$(includedir) |
| 340 | chmod 644 $(DESTDIR)$(includedir)/zlib.h $(DESTDIR)$(includedir)/zconf.h |
| 341 | |
| 342 | uninstall: |
| 343 | cd $(DESTDIR)$(includedir) && rm -f zlib.h zconf.h |
| 344 | cd $(DESTDIR)$(libdir) && rm -f libz.a; \ |
| 345 | if test -n "$(SHAREDLIBV)" -a -f $(SHAREDLIBV); then \ |
| 346 | rm -f $(SHAREDLIBV) $(SHAREDLIB) $(SHAREDLIBM); \ |
| 347 | fi |
| 348 | cd $(DESTDIR)$(man3dir) && rm -f zlib.3 |
| 349 | cd $(DESTDIR)$(pkgconfigdir) && rm -f zlib.pc |
| 350 | |
| 351 | docs: zlib.3.pdf |
| 352 | |
| 353 | zlib.3.pdf: $(SRCDIR)zlib.3 |
| 354 | groff -mandoc -f H -T ps $(SRCDIR)zlib.3 | ps2pdf - $@ |
| 355 | |
| 356 | zconf.h.cmakein: $(SRCDIR)zconf.h.in |
| 357 | -@ TEMPFILE=zconfh_$$; \ |
| 358 | echo "/#define ZCONF_H/ a\\\\\n#cmakedefine Z_PREFIX\\\\\n#cmakedefine Z_HAVE_UNISTD_H\n" >> $$TEMPFILE &&\ |
| 359 | sed -f $$TEMPFILE $(SRCDIR)zconf.h.in > $@ &&\ |
| 360 | touch -r $(SRCDIR)zconf.h.in $@ &&\ |
| 361 | rm $$TEMPFILE |
| 362 | |
| 363 | zconf: $(SRCDIR)zconf.h.in |
| 364 | cp -p $(SRCDIR)zconf.h.in zconf.h |
| 365 | |
| 366 | mostlyclean: clean |
| 367 | clean: |
| 368 | rm -f *.o *.lo *~ \ |
| 369 | example$(EXE) minigzip$(EXE) examplesh$(EXE) minigzipsh$(EXE) \ |
| 370 | example64$(EXE) minigzip64$(EXE) \ |
| 371 | infcover \ |
| 372 | libz.* foo.gz so_locations \ |
| 373 | _match.s maketree contrib/infback9/*.o |
| 374 | rm -rf objs |
| 375 | rm -f *.gcda *.gcno *.gcov |
| 376 | rm -f contrib/infback9/*.gcda contrib/infback9/*.gcno contrib/infback9/*.gcov |
| 377 | |
| 378 | maintainer-clean: distclean |
| 379 | distclean: clean zconf zconf.h.cmakein |
| 380 | rm -f Makefile zlib.pc configure.log |
| 381 | -@rm -f .DS_Store |
| 382 | @if [ -f Makefile.in ]; then \ |
| 383 | printf 'all:\n\t-@echo "Please use ./configure first. Thank you."\n' > Makefile ; \ |
| 384 | printf '\ndistclean:\n\tmake -f Makefile.in distclean\n' >> Makefile ; \ |
| 385 | touch -r $(SRCDIR)Makefile.in Makefile ; fi |
| 386 | |
| 387 | tags: |
| 388 | etags $(SRCDIR)*.[ch] |
| 389 | |
| 390 | adler32.o zutil.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h |
| 391 | gzclose.o gzlib.o gzread.o gzwrite.o: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h |
| 392 | compress.o example.o minigzip.o uncompr.o: $(SRCDIR)zlib.h zconf.h |
| 393 | crc32.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h |
| 394 | deflate.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h |
| 395 | infback.o inflate.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h |
| 396 | inffast.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h |
| 397 | inftrees.o: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h |
| 398 | trees.o: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h |
| 399 | |
| 400 | adler32.lo zutil.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h |
| 401 | gzclose.lo gzlib.lo gzread.lo gzwrite.lo: $(SRCDIR)zlib.h zconf.h $(SRCDIR)gzguts.h |
| 402 | compress.lo example.lo minigzip.lo uncompr.lo: $(SRCDIR)zlib.h zconf.h |
| 403 | crc32.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)crc32.h |
| 404 | deflate.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h |
| 405 | infback.lo inflate.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h $(SRCDIR)inffixed.h |
| 406 | inffast.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h $(SRCDIR)inflate.h $(SRCDIR)inffast.h |
| 407 | inftrees.lo: $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)inftrees.h |
| 408 | trees.lo: $(SRCDIR)deflate.h $(SRCDIR)zutil.h $(SRCDIR)zlib.h zconf.h $(SRCDIR)trees.h |
| 409 |
| --- compat/zlib/Makefile | |
| +++ compat/zlib/Makefile | |
| @@ -1,408 +1,5 @@ | |
| 1 | all: |
| 2 | -@echo "Please use ./configure first. Thank you." |
| 3 | |
| 4 | distclean: |
| 5 | make -f Makefile.in distclean |
| 6 |
+8
-12
| --- compat/zlib/Makefile.in | ||
| +++ compat/zlib/Makefile.in | ||
| @@ -5,14 +5,10 @@ | ||
| 5 | 5 | # To compile and test, type: |
| 6 | 6 | # ./configure; make test |
| 7 | 7 | # Normally configure builds both a static and a shared library. |
| 8 | 8 | # If you want to build just a static library, use: ./configure --static |
| 9 | 9 | |
| 10 | -# To use the asm code, type: | |
| 11 | -# cp contrib/asm?86/match.S ./match.S | |
| 12 | -# make LOC=-DASMV OBJA=match.o | |
| 13 | - | |
| 14 | 10 | # To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: |
| 15 | 11 | # make install |
| 16 | 12 | # To install in $HOME instead of /usr/local, use: |
| 17 | 13 | # make install prefix=$HOME |
| 18 | 14 | |
| @@ -24,17 +20,17 @@ | ||
| 24 | 20 | #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ |
| 25 | 21 | # -Wstrict-prototypes -Wmissing-prototypes |
| 26 | 22 | |
| 27 | 23 | SFLAGS=-O |
| 28 | 24 | LDFLAGS= |
| 29 | -TEST_LDFLAGS=-L. libz.a | |
| 25 | +TEST_LDFLAGS=$(LDFLAGS) -L. libz.a | |
| 30 | 26 | LDSHARED=$(CC) |
| 31 | 27 | CPP=$(CC) -E |
| 32 | 28 | |
| 33 | 29 | STATICLIB=libz.a |
| 34 | 30 | SHAREDLIB=libz.so |
| 35 | -SHAREDLIBV=libz.so.1.2.12 | |
| 31 | +SHAREDLIBV=libz.so.1.2.13 | |
| 36 | 32 | SHAREDLIBM=libz.so.1 |
| 37 | 33 | LIBS=$(STATICLIB) $(SHAREDLIBV) |
| 38 | 34 | |
| 39 | 35 | AR=ar |
| 40 | 36 | ARFLAGS=rc |
| @@ -85,11 +81,11 @@ | ||
| 85 | 81 | |
| 86 | 82 | test: all teststatic testshared |
| 87 | 83 | |
| 88 | 84 | teststatic: static |
| 89 | 85 | @TMPST=tmpst_$$; \ |
| 90 | - if echo hello world | ./minigzip | ./minigzip -d && ./example $$TMPST ; then \ | |
| 86 | + if echo hello world | ${QEMU_RUN} ./minigzip | ${QEMU_RUN} ./minigzip -d && ${QEMU_RUN} ./example $$TMPST ; then \ | |
| 91 | 87 | echo ' *** zlib test OK ***'; \ |
| 92 | 88 | else \ |
| 93 | 89 | echo ' *** zlib test FAILED ***'; false; \ |
| 94 | 90 | fi |
| 95 | 91 | @rm -f tmpst_$$ |
| @@ -98,20 +94,20 @@ | ||
| 98 | 94 | @LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ |
| 99 | 95 | LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \ |
| 100 | 96 | DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \ |
| 101 | 97 | SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \ |
| 102 | 98 | TMPSH=tmpsh_$$; \ |
| 103 | - if echo hello world | ./minigzipsh | ./minigzipsh -d && ./examplesh $$TMPSH; then \ | |
| 99 | + if echo hello world | ${QEMU_RUN} ./minigzipsh | ${QEMU_RUN} ./minigzipsh -d && ${QEMU_RUN} ./examplesh $$TMPSH; then \ | |
| 104 | 100 | echo ' *** zlib shared test OK ***'; \ |
| 105 | 101 | else \ |
| 106 | 102 | echo ' *** zlib shared test FAILED ***'; false; \ |
| 107 | 103 | fi |
| 108 | 104 | @rm -f tmpsh_$$ |
| 109 | 105 | |
| 110 | 106 | test64: all64 |
| 111 | 107 | @TMP64=tmp64_$$; \ |
| 112 | - if echo hello world | ./minigzip64 | ./minigzip64 -d && ./example64 $$TMP64; then \ | |
| 108 | + if echo hello world | ${QEMU_RUN} ./minigzip64 | ${QEMU_RUN} ./minigzip64 -d && ${QEMU_RUN} ./example64 $$TMP64; then \ | |
| 113 | 109 | echo ' *** zlib 64-bit test OK ***'; \ |
| 114 | 110 | else \ |
| 115 | 111 | echo ' *** zlib 64-bit test FAILED ***'; false; \ |
| 116 | 112 | fi |
| 117 | 113 | @rm -f tmp64_$$ |
| @@ -122,11 +118,11 @@ | ||
| 122 | 118 | infcover: infcover.o libz.a |
| 123 | 119 | $(CC) $(CFLAGS) -o $@ infcover.o libz.a |
| 124 | 120 | |
| 125 | 121 | cover: infcover |
| 126 | 122 | rm -f *.gcda |
| 127 | - ./infcover | |
| 123 | + ${QEMU_RUN} ./infcover | |
| 128 | 124 | gcov inf*.c |
| 129 | 125 | |
| 130 | 126 | libz.a: $(OBJS) |
| 131 | 127 | $(AR) $(ARFLAGS) $@ $(OBJS) |
| 132 | 128 | -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 |
| @@ -290,14 +286,14 @@ | ||
| 290 | 286 | |
| 291 | 287 | minigzip$(EXE): minigzip.o $(STATICLIB) |
| 292 | 288 | $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) |
| 293 | 289 | |
| 294 | 290 | examplesh$(EXE): example.o $(SHAREDLIBV) |
| 295 | - $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV) | |
| 291 | + $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) -L. $(SHAREDLIBV) | |
| 296 | 292 | |
| 297 | 293 | minigzipsh$(EXE): minigzip.o $(SHAREDLIBV) |
| 298 | - $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV) | |
| 294 | + $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) -L. $(SHAREDLIBV) | |
| 299 | 295 | |
| 300 | 296 | example64$(EXE): example64.o $(STATICLIB) |
| 301 | 297 | $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS) |
| 302 | 298 | |
| 303 | 299 | minigzip64$(EXE): minigzip64.o $(STATICLIB) |
| 304 | 300 |
| --- compat/zlib/Makefile.in | |
| +++ compat/zlib/Makefile.in | |
| @@ -5,14 +5,10 @@ | |
| 5 | # To compile and test, type: |
| 6 | # ./configure; make test |
| 7 | # Normally configure builds both a static and a shared library. |
| 8 | # If you want to build just a static library, use: ./configure --static |
| 9 | |
| 10 | # To use the asm code, type: |
| 11 | # cp contrib/asm?86/match.S ./match.S |
| 12 | # make LOC=-DASMV OBJA=match.o |
| 13 | |
| 14 | # To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: |
| 15 | # make install |
| 16 | # To install in $HOME instead of /usr/local, use: |
| 17 | # make install prefix=$HOME |
| 18 | |
| @@ -24,17 +20,17 @@ | |
| 24 | #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ |
| 25 | # -Wstrict-prototypes -Wmissing-prototypes |
| 26 | |
| 27 | SFLAGS=-O |
| 28 | LDFLAGS= |
| 29 | TEST_LDFLAGS=-L. libz.a |
| 30 | LDSHARED=$(CC) |
| 31 | CPP=$(CC) -E |
| 32 | |
| 33 | STATICLIB=libz.a |
| 34 | SHAREDLIB=libz.so |
| 35 | SHAREDLIBV=libz.so.1.2.12 |
| 36 | SHAREDLIBM=libz.so.1 |
| 37 | LIBS=$(STATICLIB) $(SHAREDLIBV) |
| 38 | |
| 39 | AR=ar |
| 40 | ARFLAGS=rc |
| @@ -85,11 +81,11 @@ | |
| 85 | |
| 86 | test: all teststatic testshared |
| 87 | |
| 88 | teststatic: static |
| 89 | @TMPST=tmpst_$$; \ |
| 90 | if echo hello world | ./minigzip | ./minigzip -d && ./example $$TMPST ; then \ |
| 91 | echo ' *** zlib test OK ***'; \ |
| 92 | else \ |
| 93 | echo ' *** zlib test FAILED ***'; false; \ |
| 94 | fi |
| 95 | @rm -f tmpst_$$ |
| @@ -98,20 +94,20 @@ | |
| 98 | @LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ |
| 99 | LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \ |
| 100 | DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \ |
| 101 | SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \ |
| 102 | TMPSH=tmpsh_$$; \ |
| 103 | if echo hello world | ./minigzipsh | ./minigzipsh -d && ./examplesh $$TMPSH; then \ |
| 104 | echo ' *** zlib shared test OK ***'; \ |
| 105 | else \ |
| 106 | echo ' *** zlib shared test FAILED ***'; false; \ |
| 107 | fi |
| 108 | @rm -f tmpsh_$$ |
| 109 | |
| 110 | test64: all64 |
| 111 | @TMP64=tmp64_$$; \ |
| 112 | if echo hello world | ./minigzip64 | ./minigzip64 -d && ./example64 $$TMP64; then \ |
| 113 | echo ' *** zlib 64-bit test OK ***'; \ |
| 114 | else \ |
| 115 | echo ' *** zlib 64-bit test FAILED ***'; false; \ |
| 116 | fi |
| 117 | @rm -f tmp64_$$ |
| @@ -122,11 +118,11 @@ | |
| 122 | infcover: infcover.o libz.a |
| 123 | $(CC) $(CFLAGS) -o $@ infcover.o libz.a |
| 124 | |
| 125 | cover: infcover |
| 126 | rm -f *.gcda |
| 127 | ./infcover |
| 128 | gcov inf*.c |
| 129 | |
| 130 | libz.a: $(OBJS) |
| 131 | $(AR) $(ARFLAGS) $@ $(OBJS) |
| 132 | -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 |
| @@ -290,14 +286,14 @@ | |
| 290 | |
| 291 | minigzip$(EXE): minigzip.o $(STATICLIB) |
| 292 | $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) |
| 293 | |
| 294 | examplesh$(EXE): example.o $(SHAREDLIBV) |
| 295 | $(CC) $(CFLAGS) -o $@ example.o -L. $(SHAREDLIBV) |
| 296 | |
| 297 | minigzipsh$(EXE): minigzip.o $(SHAREDLIBV) |
| 298 | $(CC) $(CFLAGS) -o $@ minigzip.o -L. $(SHAREDLIBV) |
| 299 | |
| 300 | example64$(EXE): example64.o $(STATICLIB) |
| 301 | $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS) |
| 302 | |
| 303 | minigzip64$(EXE): minigzip64.o $(STATICLIB) |
| 304 |
| --- compat/zlib/Makefile.in | |
| +++ compat/zlib/Makefile.in | |
| @@ -5,14 +5,10 @@ | |
| 5 | # To compile and test, type: |
| 6 | # ./configure; make test |
| 7 | # Normally configure builds both a static and a shared library. |
| 8 | # If you want to build just a static library, use: ./configure --static |
| 9 | |
| 10 | # To install /usr/local/lib/libz.* and /usr/local/include/zlib.h, type: |
| 11 | # make install |
| 12 | # To install in $HOME instead of /usr/local, use: |
| 13 | # make install prefix=$HOME |
| 14 | |
| @@ -24,17 +20,17 @@ | |
| 20 | #CFLAGS=-O3 -Wall -Wwrite-strings -Wpointer-arith -Wconversion \ |
| 21 | # -Wstrict-prototypes -Wmissing-prototypes |
| 22 | |
| 23 | SFLAGS=-O |
| 24 | LDFLAGS= |
| 25 | TEST_LDFLAGS=$(LDFLAGS) -L. libz.a |
| 26 | LDSHARED=$(CC) |
| 27 | CPP=$(CC) -E |
| 28 | |
| 29 | STATICLIB=libz.a |
| 30 | SHAREDLIB=libz.so |
| 31 | SHAREDLIBV=libz.so.1.2.13 |
| 32 | SHAREDLIBM=libz.so.1 |
| 33 | LIBS=$(STATICLIB) $(SHAREDLIBV) |
| 34 | |
| 35 | AR=ar |
| 36 | ARFLAGS=rc |
| @@ -85,11 +81,11 @@ | |
| 81 | |
| 82 | test: all teststatic testshared |
| 83 | |
| 84 | teststatic: static |
| 85 | @TMPST=tmpst_$$; \ |
| 86 | if echo hello world | ${QEMU_RUN} ./minigzip | ${QEMU_RUN} ./minigzip -d && ${QEMU_RUN} ./example $$TMPST ; then \ |
| 87 | echo ' *** zlib test OK ***'; \ |
| 88 | else \ |
| 89 | echo ' *** zlib test FAILED ***'; false; \ |
| 90 | fi |
| 91 | @rm -f tmpst_$$ |
| @@ -98,20 +94,20 @@ | |
| 94 | @LD_LIBRARY_PATH=`pwd`:$(LD_LIBRARY_PATH) ; export LD_LIBRARY_PATH; \ |
| 95 | LD_LIBRARYN32_PATH=`pwd`:$(LD_LIBRARYN32_PATH) ; export LD_LIBRARYN32_PATH; \ |
| 96 | DYLD_LIBRARY_PATH=`pwd`:$(DYLD_LIBRARY_PATH) ; export DYLD_LIBRARY_PATH; \ |
| 97 | SHLIB_PATH=`pwd`:$(SHLIB_PATH) ; export SHLIB_PATH; \ |
| 98 | TMPSH=tmpsh_$$; \ |
| 99 | if echo hello world | ${QEMU_RUN} ./minigzipsh | ${QEMU_RUN} ./minigzipsh -d && ${QEMU_RUN} ./examplesh $$TMPSH; then \ |
| 100 | echo ' *** zlib shared test OK ***'; \ |
| 101 | else \ |
| 102 | echo ' *** zlib shared test FAILED ***'; false; \ |
| 103 | fi |
| 104 | @rm -f tmpsh_$$ |
| 105 | |
| 106 | test64: all64 |
| 107 | @TMP64=tmp64_$$; \ |
| 108 | if echo hello world | ${QEMU_RUN} ./minigzip64 | ${QEMU_RUN} ./minigzip64 -d && ${QEMU_RUN} ./example64 $$TMP64; then \ |
| 109 | echo ' *** zlib 64-bit test OK ***'; \ |
| 110 | else \ |
| 111 | echo ' *** zlib 64-bit test FAILED ***'; false; \ |
| 112 | fi |
| 113 | @rm -f tmp64_$$ |
| @@ -122,11 +118,11 @@ | |
| 118 | infcover: infcover.o libz.a |
| 119 | $(CC) $(CFLAGS) -o $@ infcover.o libz.a |
| 120 | |
| 121 | cover: infcover |
| 122 | rm -f *.gcda |
| 123 | ${QEMU_RUN} ./infcover |
| 124 | gcov inf*.c |
| 125 | |
| 126 | libz.a: $(OBJS) |
| 127 | $(AR) $(ARFLAGS) $@ $(OBJS) |
| 128 | -@ ($(RANLIB) $@ || true) >/dev/null 2>&1 |
| @@ -290,14 +286,14 @@ | |
| 286 | |
| 287 | minigzip$(EXE): minigzip.o $(STATICLIB) |
| 288 | $(CC) $(CFLAGS) -o $@ minigzip.o $(TEST_LDFLAGS) |
| 289 | |
| 290 | examplesh$(EXE): example.o $(SHAREDLIBV) |
| 291 | $(CC) $(CFLAGS) -o $@ example.o $(LDFLAGS) -L. $(SHAREDLIBV) |
| 292 | |
| 293 | minigzipsh$(EXE): minigzip.o $(SHAREDLIBV) |
| 294 | $(CC) $(CFLAGS) -o $@ minigzip.o $(LDFLAGS) -L. $(SHAREDLIBV) |
| 295 | |
| 296 | example64$(EXE): example64.o $(STATICLIB) |
| 297 | $(CC) $(CFLAGS) -o $@ example64.o $(TEST_LDFLAGS) |
| 298 | |
| 299 | minigzip64$(EXE): minigzip64.o $(STATICLIB) |
| 300 |
+2
-2
| --- compat/zlib/README | ||
| +++ compat/zlib/README | ||
| @@ -1,8 +1,8 @@ | ||
| 1 | 1 | ZLIB DATA COMPRESSION LIBRARY |
| 2 | 2 | |
| 3 | -zlib 1.2.12 is a general purpose data compression library. All the code is | |
| 3 | +zlib 1.2.13 is a general purpose data compression library. All the code is | |
| 4 | 4 | thread safe. The data format used by the zlib library is described by RFCs |
| 5 | 5 | (Request for Comments) 1950 to 1952 in the files |
| 6 | 6 | http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and |
| 7 | 7 | rfc1952 (gzip format). |
| 8 | 8 | |
| @@ -29,11 +29,11 @@ | ||
| 29 | 29 | |
| 30 | 30 | Mark Nelson <[email protected]> wrote an article about zlib for the Jan. 1997 |
| 31 | 31 | issue of Dr. Dobb's Journal; a copy of the article is available at |
| 32 | 32 | http://marknelson.us/1997/01/01/zlib-engine/ . |
| 33 | 33 | |
| 34 | -The changes made in version 1.2.12 are documented in the file ChangeLog. | |
| 34 | +The changes made in version 1.2.13 are documented in the file ChangeLog. | |
| 35 | 35 | |
| 36 | 36 | Unsupported third party contributions are provided in directory contrib/ . |
| 37 | 37 | |
| 38 | 38 | zlib is available in Java using the java.util.zip package, documented at |
| 39 | 39 | http://java.sun.com/developer/technicalArticles/Programming/compression/ . |
| 40 | 40 |
| --- compat/zlib/README | |
| +++ compat/zlib/README | |
| @@ -1,8 +1,8 @@ | |
| 1 | ZLIB DATA COMPRESSION LIBRARY |
| 2 | |
| 3 | zlib 1.2.12 is a general purpose data compression library. All the code is |
| 4 | thread safe. The data format used by the zlib library is described by RFCs |
| 5 | (Request for Comments) 1950 to 1952 in the files |
| 6 | http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and |
| 7 | rfc1952 (gzip format). |
| 8 | |
| @@ -29,11 +29,11 @@ | |
| 29 | |
| 30 | Mark Nelson <[email protected]> wrote an article about zlib for the Jan. 1997 |
| 31 | issue of Dr. Dobb's Journal; a copy of the article is available at |
| 32 | http://marknelson.us/1997/01/01/zlib-engine/ . |
| 33 | |
| 34 | The changes made in version 1.2.12 are documented in the file ChangeLog. |
| 35 | |
| 36 | Unsupported third party contributions are provided in directory contrib/ . |
| 37 | |
| 38 | zlib is available in Java using the java.util.zip package, documented at |
| 39 | http://java.sun.com/developer/technicalArticles/Programming/compression/ . |
| 40 |
| --- compat/zlib/README | |
| +++ compat/zlib/README | |
| @@ -1,8 +1,8 @@ | |
| 1 | ZLIB DATA COMPRESSION LIBRARY |
| 2 | |
| 3 | zlib 1.2.13 is a general purpose data compression library. All the code is |
| 4 | thread safe. The data format used by the zlib library is described by RFCs |
| 5 | (Request for Comments) 1950 to 1952 in the files |
| 6 | http://tools.ietf.org/html/rfc1950 (zlib format), rfc1951 (deflate format) and |
| 7 | rfc1952 (gzip format). |
| 8 | |
| @@ -29,11 +29,11 @@ | |
| 29 | |
| 30 | Mark Nelson <[email protected]> wrote an article about zlib for the Jan. 1997 |
| 31 | issue of Dr. Dobb's Journal; a copy of the article is available at |
| 32 | http://marknelson.us/1997/01/01/zlib-engine/ . |
| 33 | |
| 34 | The changes made in version 1.2.13 are documented in the file ChangeLog. |
| 35 | |
| 36 | Unsupported third party contributions are provided in directory contrib/ . |
| 37 | |
| 38 | zlib is available in Java using the java.util.zip package, documented at |
| 39 | http://java.sun.com/developer/technicalArticles/Programming/compression/ . |
| 40 |
+3
-3
| --- compat/zlib/compress.c | ||
| +++ compat/zlib/compress.c | ||
| @@ -17,11 +17,11 @@ | ||
| 17 | 17 | |
| 18 | 18 | compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough |
| 19 | 19 | memory, Z_BUF_ERROR if there was not enough room in the output buffer, |
| 20 | 20 | Z_STREAM_ERROR if the level parameter is invalid. |
| 21 | 21 | */ |
| 22 | -int ZEXPORT compress2 (dest, destLen, source, sourceLen, level) | |
| 22 | +int ZEXPORT compress2(dest, destLen, source, sourceLen, level) | |
| 23 | 23 | Bytef *dest; |
| 24 | 24 | uLongf *destLen; |
| 25 | 25 | const Bytef *source; |
| 26 | 26 | uLong sourceLen; |
| 27 | 27 | int level; |
| @@ -63,11 +63,11 @@ | ||
| 63 | 63 | return err == Z_STREAM_END ? Z_OK : err; |
| 64 | 64 | } |
| 65 | 65 | |
| 66 | 66 | /* =========================================================================== |
| 67 | 67 | */ |
| 68 | -int ZEXPORT compress (dest, destLen, source, sourceLen) | |
| 68 | +int ZEXPORT compress(dest, destLen, source, sourceLen) | |
| 69 | 69 | Bytef *dest; |
| 70 | 70 | uLongf *destLen; |
| 71 | 71 | const Bytef *source; |
| 72 | 72 | uLong sourceLen; |
| 73 | 73 | { |
| @@ -76,11 +76,11 @@ | ||
| 76 | 76 | |
| 77 | 77 | /* =========================================================================== |
| 78 | 78 | If the default memLevel or windowBits for deflateInit() is changed, then |
| 79 | 79 | this function needs to be updated. |
| 80 | 80 | */ |
| 81 | -uLong ZEXPORT compressBound (sourceLen) | |
| 81 | +uLong ZEXPORT compressBound(sourceLen) | |
| 82 | 82 | uLong sourceLen; |
| 83 | 83 | { |
| 84 | 84 | return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + |
| 85 | 85 | (sourceLen >> 25) + 13; |
| 86 | 86 | } |
| 87 | 87 |
| --- compat/zlib/compress.c | |
| +++ compat/zlib/compress.c | |
| @@ -17,11 +17,11 @@ | |
| 17 | |
| 18 | compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough |
| 19 | memory, Z_BUF_ERROR if there was not enough room in the output buffer, |
| 20 | Z_STREAM_ERROR if the level parameter is invalid. |
| 21 | */ |
| 22 | int ZEXPORT compress2 (dest, destLen, source, sourceLen, level) |
| 23 | Bytef *dest; |
| 24 | uLongf *destLen; |
| 25 | const Bytef *source; |
| 26 | uLong sourceLen; |
| 27 | int level; |
| @@ -63,11 +63,11 @@ | |
| 63 | return err == Z_STREAM_END ? Z_OK : err; |
| 64 | } |
| 65 | |
| 66 | /* =========================================================================== |
| 67 | */ |
| 68 | int ZEXPORT compress (dest, destLen, source, sourceLen) |
| 69 | Bytef *dest; |
| 70 | uLongf *destLen; |
| 71 | const Bytef *source; |
| 72 | uLong sourceLen; |
| 73 | { |
| @@ -76,11 +76,11 @@ | |
| 76 | |
| 77 | /* =========================================================================== |
| 78 | If the default memLevel or windowBits for deflateInit() is changed, then |
| 79 | this function needs to be updated. |
| 80 | */ |
| 81 | uLong ZEXPORT compressBound (sourceLen) |
| 82 | uLong sourceLen; |
| 83 | { |
| 84 | return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + |
| 85 | (sourceLen >> 25) + 13; |
| 86 | } |
| 87 |
| --- compat/zlib/compress.c | |
| +++ compat/zlib/compress.c | |
| @@ -17,11 +17,11 @@ | |
| 17 | |
| 18 | compress2 returns Z_OK if success, Z_MEM_ERROR if there was not enough |
| 19 | memory, Z_BUF_ERROR if there was not enough room in the output buffer, |
| 20 | Z_STREAM_ERROR if the level parameter is invalid. |
| 21 | */ |
| 22 | int ZEXPORT compress2(dest, destLen, source, sourceLen, level) |
| 23 | Bytef *dest; |
| 24 | uLongf *destLen; |
| 25 | const Bytef *source; |
| 26 | uLong sourceLen; |
| 27 | int level; |
| @@ -63,11 +63,11 @@ | |
| 63 | return err == Z_STREAM_END ? Z_OK : err; |
| 64 | } |
| 65 | |
| 66 | /* =========================================================================== |
| 67 | */ |
| 68 | int ZEXPORT compress(dest, destLen, source, sourceLen) |
| 69 | Bytef *dest; |
| 70 | uLongf *destLen; |
| 71 | const Bytef *source; |
| 72 | uLong sourceLen; |
| 73 | { |
| @@ -76,11 +76,11 @@ | |
| 76 | |
| 77 | /* =========================================================================== |
| 78 | If the default memLevel or windowBits for deflateInit() is changed, then |
| 79 | this function needs to be updated. |
| 80 | */ |
| 81 | uLong ZEXPORT compressBound(sourceLen) |
| 82 | uLong sourceLen; |
| 83 | { |
| 84 | return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + |
| 85 | (sourceLen >> 25) + 13; |
| 86 | } |
| 87 |
+46
-51
| --- compat/zlib/configure | ||
| +++ compat/zlib/configure | ||
| @@ -30,12 +30,15 @@ | ||
| 30 | 30 | SRCDIR="$SRCDIR/" |
| 31 | 31 | fi |
| 32 | 32 | |
| 33 | 33 | # set command prefix for cross-compilation |
| 34 | 34 | if [ -n "${CHOST}" ]; then |
| 35 | - uname="`echo "${CHOST}" | sed -e 's/^[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)-.*$/\1/'`" | |
| 35 | + uname=${CHOST} | |
| 36 | + mname=${CHOST} | |
| 36 | 37 | CROSS_PREFIX="${CHOST}-" |
| 38 | +else | |
| 39 | + mname=`(uname -a || echo unknown) 2>/dev/null` | |
| 37 | 40 | fi |
| 38 | 41 | |
| 39 | 42 | # destination name for static library |
| 40 | 43 | STATICLIB=libz.a |
| 41 | 44 | |
| @@ -172,13 +175,14 @@ | ||
| 172 | 175 | if ${CROSS_PREFIX}gcc -v >/dev/null 2>&1; then |
| 173 | 176 | cc=${CROSS_PREFIX}gcc |
| 174 | 177 | else |
| 175 | 178 | cc=${CROSS_PREFIX}cc |
| 176 | 179 | fi |
| 180 | +else | |
| 181 | + cc=${CC} | |
| 177 | 182 | fi |
| 178 | -cflags=${CFLAGS-"-O3"} | |
| 179 | -# to force the asm version use: CFLAGS="-O3 -DASMV" ./configure | |
| 183 | + | |
| 180 | 184 | case "$cc" in |
| 181 | 185 | *gcc*) gcc=1 ;; |
| 182 | 186 | *clang*) gcc=1 ;; |
| 183 | 187 | esac |
| 184 | 188 | case `$cc -v 2>&1` in |
| @@ -200,67 +204,72 @@ | ||
| 200 | 204 | CFLAGS="${CFLAGS} -m64" |
| 201 | 205 | SFLAGS="${SFLAGS} -m64" |
| 202 | 206 | fi |
| 203 | 207 | if test "$warn" -eq 1; then |
| 204 | 208 | if test "$zconst" -eq 1; then |
| 205 | - CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual -pedantic -DZLIB_CONST" | |
| 209 | + CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual -DZLIB_CONST" | |
| 206 | 210 | else |
| 207 | - CFLAGS="${CFLAGS} -Wall -Wextra -pedantic" | |
| 211 | + CFLAGS="${CFLAGS} -Wall -Wextra" | |
| 208 | 212 | fi |
| 209 | 213 | fi |
| 210 | 214 | if test $sanitize -eq 1; then |
| 211 | - CFLAGS="${CFLAGS} -fsanitize=address" | |
| 215 | + CFLAGS="${CFLAGS} -g -fsanitize=address" | |
| 212 | 216 | fi |
| 213 | 217 | if test $debug -eq 1; then |
| 214 | 218 | CFLAGS="${CFLAGS} -DZLIB_DEBUG" |
| 215 | 219 | SFLAGS="${SFLAGS} -DZLIB_DEBUG" |
| 216 | 220 | fi |
| 217 | 221 | if test -z "$uname"; then |
| 218 | 222 | uname=`(uname -s || echo unknown) 2>/dev/null` |
| 219 | 223 | fi |
| 220 | 224 | case "$uname" in |
| 221 | - Linux* | linux* | GNU | GNU/* | solaris*) | |
| 225 | + Linux* | linux* | *-linux* | GNU | GNU/* | solaris*) | |
| 226 | + case "$mname" in | |
| 227 | + *sparc*) | |
| 228 | + LDFLAGS="${LDFLAGS} -Wl,--no-warn-rwx-segments" ;; | |
| 229 | + esac | |
| 222 | 230 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} ;; |
| 223 | 231 | *BSD | *bsd* | DragonFly) |
| 224 | 232 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} |
| 225 | 233 | LDCONFIG="ldconfig -m" ;; |
| 226 | - CYGWIN* | Cygwin* | cygwin* | OS/2*) | |
| 234 | + CYGWIN* | Cygwin* | cygwin* | *-cygwin* | OS/2*) | |
| 227 | 235 | EXE='.exe' ;; |
| 228 | - MINGW* | mingw*) | |
| 229 | -# temporary bypass | |
| 236 | + MINGW* | mingw* | *-mingw*) | |
| 230 | 237 | rm -f $test.[co] $test $test$shared_ext |
| 231 | - echo "Please use win32/Makefile.gcc instead." | tee -a configure.log | |
| 232 | - leave 1 | |
| 238 | + echo "If this doesn't work for you, try win32/Makefile.gcc." | tee -a configure.log | |
| 233 | 239 | LDSHARED=${LDSHARED-"$cc -shared"} |
| 234 | 240 | LDSHAREDLIBC="" |
| 235 | 241 | EXE='.exe' ;; |
| 236 | - QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4 | |
| 237 | - # ([email protected]) | |
| 238 | - LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;; | |
| 242 | + QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4 | |
| 243 | + # ([email protected]) | |
| 244 | + LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;; | |
| 239 | 245 | HP-UX*) |
| 240 | - LDSHARED=${LDSHARED-"$cc -shared $SFLAGS"} | |
| 241 | - case `(uname -m || echo unknown) 2>/dev/null` in | |
| 242 | - ia64) | |
| 243 | - shared_ext='.so' | |
| 244 | - SHAREDLIB='libz.so' ;; | |
| 245 | - *) | |
| 246 | - shared_ext='.sl' | |
| 247 | - SHAREDLIB='libz.sl' ;; | |
| 248 | - esac ;; | |
| 249 | - Darwin* | darwin*) | |
| 250 | - shared_ext='.dylib' | |
| 251 | - SHAREDLIB=libz$shared_ext | |
| 252 | - SHAREDLIBV=libz.$VER$shared_ext | |
| 253 | - SHAREDLIBM=libz.$VER1$shared_ext | |
| 254 | - LDSHARED=${LDSHARED-"$cc -dynamiclib -install_name $libdir/$SHAREDLIBM -compatibility_version $VER1 -current_version $VER3"} | |
| 255 | - if libtool -V 2>&1 | grep Apple > /dev/null; then | |
| 256 | - AR="libtool" | |
| 257 | - else | |
| 258 | - AR="/usr/bin/libtool" | |
| 259 | - fi | |
| 260 | - ARFLAGS="-o" ;; | |
| 261 | - *) LDSHARED=${LDSHARED-"$cc -shared"} ;; | |
| 246 | + LDSHARED=${LDSHARED-"$cc -shared $SFLAGS"} | |
| 247 | + case `(uname -m || echo unknown) 2>/dev/null` in | |
| 248 | + ia64) | |
| 249 | + shared_ext='.so' | |
| 250 | + SHAREDLIB='libz.so' ;; | |
| 251 | + *) | |
| 252 | + shared_ext='.sl' | |
| 253 | + SHAREDLIB='libz.sl' ;; | |
| 254 | + esac ;; | |
| 255 | + AIX*) | |
| 256 | + LDFLAGS="${LDFLAGS} -Wl,-brtl" ;; | |
| 257 | + Darwin* | darwin* | *-darwin*) | |
| 258 | + shared_ext='.dylib' | |
| 259 | + SHAREDLIB=libz$shared_ext | |
| 260 | + SHAREDLIBV=libz.$VER$shared_ext | |
| 261 | + SHAREDLIBM=libz.$VER1$shared_ext | |
| 262 | + LDSHARED=${LDSHARED-"$cc -dynamiclib -install_name $libdir/$SHAREDLIBM -compatibility_version $VER1 -current_version $VER3"} | |
| 263 | + if libtool -V 2>&1 | grep Apple > /dev/null; then | |
| 264 | + AR="libtool" | |
| 265 | + else | |
| 266 | + AR="/usr/bin/libtool" | |
| 267 | + fi | |
| 268 | + ARFLAGS="-o" ;; | |
| 269 | + *) | |
| 270 | + LDSHARED=${LDSHARED-"$cc -shared"} ;; | |
| 262 | 271 | esac |
| 263 | 272 | else |
| 264 | 273 | # find system name and corresponding cc options |
| 265 | 274 | CC=${CC-cc} |
| 266 | 275 | gcc=0 |
| @@ -448,24 +457,10 @@ | ||
| 448 | 457 | else |
| 449 | 458 | ALL="static shared" |
| 450 | 459 | TEST="all teststatic testshared" |
| 451 | 460 | fi |
| 452 | 461 | |
| 453 | -# check for underscores in external names for use by assembler code | |
| 454 | -CPP=${CPP-"$CC -E"} | |
| 455 | -case $CFLAGS in | |
| 456 | - *ASMV*) | |
| 457 | - echo >> configure.log | |
| 458 | - show "$NM $test.o | grep _hello" | |
| 459 | - if test "`$NM $test.o | grep _hello | tee -a configure.log`" = ""; then | |
| 460 | - CPP="$CPP -DNO_UNDERLINE" | |
| 461 | - echo Checking for underline in external names... No. | tee -a configure.log | |
| 462 | - else | |
| 463 | - echo Checking for underline in external names... Yes. | tee -a configure.log | |
| 464 | - fi ;; | |
| 465 | -esac | |
| 466 | - | |
| 467 | 462 | echo >> configure.log |
| 468 | 463 | |
| 469 | 464 | # check for size_t |
| 470 | 465 | cat > $test.c <<EOF |
| 471 | 466 | #include <stdio.h> |
| 472 | 467 |
| --- compat/zlib/configure | |
| +++ compat/zlib/configure | |
| @@ -30,12 +30,15 @@ | |
| 30 | SRCDIR="$SRCDIR/" |
| 31 | fi |
| 32 | |
| 33 | # set command prefix for cross-compilation |
| 34 | if [ -n "${CHOST}" ]; then |
| 35 | uname="`echo "${CHOST}" | sed -e 's/^[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)$/\1/' -e 's/^[^-]*-[^-]*-\([^-]*\)-.*$/\1/'`" |
| 36 | CROSS_PREFIX="${CHOST}-" |
| 37 | fi |
| 38 | |
| 39 | # destination name for static library |
| 40 | STATICLIB=libz.a |
| 41 | |
| @@ -172,13 +175,14 @@ | |
| 172 | if ${CROSS_PREFIX}gcc -v >/dev/null 2>&1; then |
| 173 | cc=${CROSS_PREFIX}gcc |
| 174 | else |
| 175 | cc=${CROSS_PREFIX}cc |
| 176 | fi |
| 177 | fi |
| 178 | cflags=${CFLAGS-"-O3"} |
| 179 | # to force the asm version use: CFLAGS="-O3 -DASMV" ./configure |
| 180 | case "$cc" in |
| 181 | *gcc*) gcc=1 ;; |
| 182 | *clang*) gcc=1 ;; |
| 183 | esac |
| 184 | case `$cc -v 2>&1` in |
| @@ -200,67 +204,72 @@ | |
| 200 | CFLAGS="${CFLAGS} -m64" |
| 201 | SFLAGS="${SFLAGS} -m64" |
| 202 | fi |
| 203 | if test "$warn" -eq 1; then |
| 204 | if test "$zconst" -eq 1; then |
| 205 | CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual -pedantic -DZLIB_CONST" |
| 206 | else |
| 207 | CFLAGS="${CFLAGS} -Wall -Wextra -pedantic" |
| 208 | fi |
| 209 | fi |
| 210 | if test $sanitize -eq 1; then |
| 211 | CFLAGS="${CFLAGS} -fsanitize=address" |
| 212 | fi |
| 213 | if test $debug -eq 1; then |
| 214 | CFLAGS="${CFLAGS} -DZLIB_DEBUG" |
| 215 | SFLAGS="${SFLAGS} -DZLIB_DEBUG" |
| 216 | fi |
| 217 | if test -z "$uname"; then |
| 218 | uname=`(uname -s || echo unknown) 2>/dev/null` |
| 219 | fi |
| 220 | case "$uname" in |
| 221 | Linux* | linux* | GNU | GNU/* | solaris*) |
| 222 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} ;; |
| 223 | *BSD | *bsd* | DragonFly) |
| 224 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} |
| 225 | LDCONFIG="ldconfig -m" ;; |
| 226 | CYGWIN* | Cygwin* | cygwin* | OS/2*) |
| 227 | EXE='.exe' ;; |
| 228 | MINGW* | mingw*) |
| 229 | # temporary bypass |
| 230 | rm -f $test.[co] $test $test$shared_ext |
| 231 | echo "Please use win32/Makefile.gcc instead." | tee -a configure.log |
| 232 | leave 1 |
| 233 | LDSHARED=${LDSHARED-"$cc -shared"} |
| 234 | LDSHAREDLIBC="" |
| 235 | EXE='.exe' ;; |
| 236 | QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4 |
| 237 | # ([email protected]) |
| 238 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;; |
| 239 | HP-UX*) |
| 240 | LDSHARED=${LDSHARED-"$cc -shared $SFLAGS"} |
| 241 | case `(uname -m || echo unknown) 2>/dev/null` in |
| 242 | ia64) |
| 243 | shared_ext='.so' |
| 244 | SHAREDLIB='libz.so' ;; |
| 245 | *) |
| 246 | shared_ext='.sl' |
| 247 | SHAREDLIB='libz.sl' ;; |
| 248 | esac ;; |
| 249 | Darwin* | darwin*) |
| 250 | shared_ext='.dylib' |
| 251 | SHAREDLIB=libz$shared_ext |
| 252 | SHAREDLIBV=libz.$VER$shared_ext |
| 253 | SHAREDLIBM=libz.$VER1$shared_ext |
| 254 | LDSHARED=${LDSHARED-"$cc -dynamiclib -install_name $libdir/$SHAREDLIBM -compatibility_version $VER1 -current_version $VER3"} |
| 255 | if libtool -V 2>&1 | grep Apple > /dev/null; then |
| 256 | AR="libtool" |
| 257 | else |
| 258 | AR="/usr/bin/libtool" |
| 259 | fi |
| 260 | ARFLAGS="-o" ;; |
| 261 | *) LDSHARED=${LDSHARED-"$cc -shared"} ;; |
| 262 | esac |
| 263 | else |
| 264 | # find system name and corresponding cc options |
| 265 | CC=${CC-cc} |
| 266 | gcc=0 |
| @@ -448,24 +457,10 @@ | |
| 448 | else |
| 449 | ALL="static shared" |
| 450 | TEST="all teststatic testshared" |
| 451 | fi |
| 452 | |
| 453 | # check for underscores in external names for use by assembler code |
| 454 | CPP=${CPP-"$CC -E"} |
| 455 | case $CFLAGS in |
| 456 | *ASMV*) |
| 457 | echo >> configure.log |
| 458 | show "$NM $test.o | grep _hello" |
| 459 | if test "`$NM $test.o | grep _hello | tee -a configure.log`" = ""; then |
| 460 | CPP="$CPP -DNO_UNDERLINE" |
| 461 | echo Checking for underline in external names... No. | tee -a configure.log |
| 462 | else |
| 463 | echo Checking for underline in external names... Yes. | tee -a configure.log |
| 464 | fi ;; |
| 465 | esac |
| 466 | |
| 467 | echo >> configure.log |
| 468 | |
| 469 | # check for size_t |
| 470 | cat > $test.c <<EOF |
| 471 | #include <stdio.h> |
| 472 |
| --- compat/zlib/configure | |
| +++ compat/zlib/configure | |
| @@ -30,12 +30,15 @@ | |
| 30 | SRCDIR="$SRCDIR/" |
| 31 | fi |
| 32 | |
| 33 | # set command prefix for cross-compilation |
| 34 | if [ -n "${CHOST}" ]; then |
| 35 | uname=${CHOST} |
| 36 | mname=${CHOST} |
| 37 | CROSS_PREFIX="${CHOST}-" |
| 38 | else |
| 39 | mname=`(uname -a || echo unknown) 2>/dev/null` |
| 40 | fi |
| 41 | |
| 42 | # destination name for static library |
| 43 | STATICLIB=libz.a |
| 44 | |
| @@ -172,13 +175,14 @@ | |
| 175 | if ${CROSS_PREFIX}gcc -v >/dev/null 2>&1; then |
| 176 | cc=${CROSS_PREFIX}gcc |
| 177 | else |
| 178 | cc=${CROSS_PREFIX}cc |
| 179 | fi |
| 180 | else |
| 181 | cc=${CC} |
| 182 | fi |
| 183 | |
| 184 | case "$cc" in |
| 185 | *gcc*) gcc=1 ;; |
| 186 | *clang*) gcc=1 ;; |
| 187 | esac |
| 188 | case `$cc -v 2>&1` in |
| @@ -200,67 +204,72 @@ | |
| 204 | CFLAGS="${CFLAGS} -m64" |
| 205 | SFLAGS="${SFLAGS} -m64" |
| 206 | fi |
| 207 | if test "$warn" -eq 1; then |
| 208 | if test "$zconst" -eq 1; then |
| 209 | CFLAGS="${CFLAGS} -Wall -Wextra -Wcast-qual -DZLIB_CONST" |
| 210 | else |
| 211 | CFLAGS="${CFLAGS} -Wall -Wextra" |
| 212 | fi |
| 213 | fi |
| 214 | if test $sanitize -eq 1; then |
| 215 | CFLAGS="${CFLAGS} -g -fsanitize=address" |
| 216 | fi |
| 217 | if test $debug -eq 1; then |
| 218 | CFLAGS="${CFLAGS} -DZLIB_DEBUG" |
| 219 | SFLAGS="${SFLAGS} -DZLIB_DEBUG" |
| 220 | fi |
| 221 | if test -z "$uname"; then |
| 222 | uname=`(uname -s || echo unknown) 2>/dev/null` |
| 223 | fi |
| 224 | case "$uname" in |
| 225 | Linux* | linux* | *-linux* | GNU | GNU/* | solaris*) |
| 226 | case "$mname" in |
| 227 | *sparc*) |
| 228 | LDFLAGS="${LDFLAGS} -Wl,--no-warn-rwx-segments" ;; |
| 229 | esac |
| 230 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} ;; |
| 231 | *BSD | *bsd* | DragonFly) |
| 232 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-soname,libz.so.1,--version-script,${SRCDIR}zlib.map"} |
| 233 | LDCONFIG="ldconfig -m" ;; |
| 234 | CYGWIN* | Cygwin* | cygwin* | *-cygwin* | OS/2*) |
| 235 | EXE='.exe' ;; |
| 236 | MINGW* | mingw* | *-mingw*) |
| 237 | rm -f $test.[co] $test $test$shared_ext |
| 238 | echo "If this doesn't work for you, try win32/Makefile.gcc." | tee -a configure.log |
| 239 | LDSHARED=${LDSHARED-"$cc -shared"} |
| 240 | LDSHAREDLIBC="" |
| 241 | EXE='.exe' ;; |
| 242 | QNX*) # This is for QNX6. I suppose that the QNX rule below is for QNX2,QNX4 |
| 243 | # ([email protected]) |
| 244 | LDSHARED=${LDSHARED-"$cc -shared -Wl,-hlibz.so.1"} ;; |
| 245 | HP-UX*) |
| 246 | LDSHARED=${LDSHARED-"$cc -shared $SFLAGS"} |
| 247 | case `(uname -m || echo unknown) 2>/dev/null` in |
| 248 | ia64) |
| 249 | shared_ext='.so' |
| 250 | SHAREDLIB='libz.so' ;; |
| 251 | *) |
| 252 | shared_ext='.sl' |
| 253 | SHAREDLIB='libz.sl' ;; |
| 254 | esac ;; |
| 255 | AIX*) |
| 256 | LDFLAGS="${LDFLAGS} -Wl,-brtl" ;; |
| 257 | Darwin* | darwin* | *-darwin*) |
| 258 | shared_ext='.dylib' |
| 259 | SHAREDLIB=libz$shared_ext |
| 260 | SHAREDLIBV=libz.$VER$shared_ext |
| 261 | SHAREDLIBM=libz.$VER1$shared_ext |
| 262 | LDSHARED=${LDSHARED-"$cc -dynamiclib -install_name $libdir/$SHAREDLIBM -compatibility_version $VER1 -current_version $VER3"} |
| 263 | if libtool -V 2>&1 | grep Apple > /dev/null; then |
| 264 | AR="libtool" |
| 265 | else |
| 266 | AR="/usr/bin/libtool" |
| 267 | fi |
| 268 | ARFLAGS="-o" ;; |
| 269 | *) |
| 270 | LDSHARED=${LDSHARED-"$cc -shared"} ;; |
| 271 | esac |
| 272 | else |
| 273 | # find system name and corresponding cc options |
| 274 | CC=${CC-cc} |
| 275 | gcc=0 |
| @@ -448,24 +457,10 @@ | |
| 457 | else |
| 458 | ALL="static shared" |
| 459 | TEST="all teststatic testshared" |
| 460 | fi |
| 461 | |
| 462 | echo >> configure.log |
| 463 | |
| 464 | # check for size_t |
| 465 | cat > $test.c <<EOF |
| 466 | #include <stdio.h> |
| 467 |
| --- compat/zlib/contrib/README.contrib | ||
| +++ compat/zlib/contrib/README.contrib | ||
| @@ -1,6 +1,6 @@ | ||
| 1 | -All files under this contrib directory are UNSUPPORTED. There were | |
| 1 | +All files under this contrib directory are UNSUPPORTED. They were | |
| 2 | 2 | provided by users of zlib and were not tested by the authors of zlib. |
| 3 | 3 | Use at your own risk. Please contact the authors of the contributions |
| 4 | 4 | for help about these, not the zlib authors. Thanks. |
| 5 | 5 | |
| 6 | 6 | |
| 7 | 7 | |
| 8 | 8 | DELETED compat/zlib/contrib/amd64/amd64-match.S |
| 9 | 9 | DELETED compat/zlib/contrib/asm686/README.686 |
| 10 | 10 | DELETED compat/zlib/contrib/asm686/match.S |
| --- compat/zlib/contrib/README.contrib | |
| +++ compat/zlib/contrib/README.contrib | |
| @@ -1,6 +1,6 @@ | |
| 1 | All files under this contrib directory are UNSUPPORTED. There were |
| 2 | provided by users of zlib and were not tested by the authors of zlib. |
| 3 | Use at your own risk. Please contact the authors of the contributions |
| 4 | for help about these, not the zlib authors. Thanks. |
| 5 | |
| 6 | |
| 7 | |
| 8 | ELETED compat/zlib/contrib/amd64/amd64-match.S |
| 9 | ELETED compat/zlib/contrib/asm686/README.686 |
| 10 | ELETED compat/zlib/contrib/asm686/match.S |
| --- compat/zlib/contrib/README.contrib | |
| +++ compat/zlib/contrib/README.contrib | |
| @@ -1,6 +1,6 @@ | |
| 1 | All files under this contrib directory are UNSUPPORTED. They were |
| 2 | provided by users of zlib and were not tested by the authors of zlib. |
| 3 | Use at your own risk. Please contact the authors of the contributions |
| 4 | for help about these, not the zlib authors. Thanks. |
| 5 | |
| 6 | |
| 7 | |
| 8 | ELETED compat/zlib/contrib/amd64/amd64-match.S |
| 9 | ELETED compat/zlib/contrib/asm686/README.686 |
| 10 | ELETED compat/zlib/contrib/asm686/match.S |
D
compat/zlib/contrib/amd64/amd64-match.S
-452
| --- a/compat/zlib/contrib/amd64/amd64-match.S | ||
| +++ b/compat/zlib/contrib/amd64/amd64-match.S | ||
| @@ -1,452 +0,0 @@ | ||
| 1 | -/* | |
| 2 | - * match.S -- optimized version of longest_match() | |
| 3 | - * based on the similar work by Gilles Vollant, and Brian Raiter, written 1998 | |
| 4 | - * | |
| 5 | - * This is free software; you can redistribute it and/or modify it | |
| 6 | - * under the terms of the BSD License. Use by owners of Che Guevarra | |
| 7 | - * parafernalia is prohibited, where possible, and highly discouraged | |
| 8 | - * elsewhere. | |
| 9 | - */ | |
| 10 | - | |
| 11 | -#ifndef NO_UNDERLINE | |
| 12 | -# define match_init _match_init | |
| 13 | -# define longest_match _longest_match | |
| 14 | -#endif | |
| 15 | - | |
| 16 | -#define scanend ebx | |
| 17 | -#define scanendw bx | |
| 18 | -#define chainlenwmask edx /* high word: current chain len low word: s->wmask */ | |
| 19 | -#define curmatch rsi | |
| 20 | -#define curmatchd esi | |
| 21 | -#define windowbestlen r8 | |
| 22 | -#define scanalign r9 | |
| 23 | -#define scanalignd r9d | |
| 24 | -#define window r10 | |
| 25 | -#define bestlen r11 | |
| 26 | -#define bestlend r11d | |
| 27 | -#define scanstart r12d | |
| 28 | -#define scanstartw r12w | |
| 29 | -#define scan r13 | |
| 30 | -#define nicematch r14d | |
| 31 | -#define limit r15 | |
| 32 | -#define limitd r15d | |
| 33 | -#define prev rcx | |
| 34 | - | |
| 35 | -/* | |
| 36 | - * The 258 is a "magic number, not a parameter -- changing it | |
| 37 | - * breaks the hell loose | |
| 38 | - */ | |
| 39 | -#define MAX_MATCH (258) | |
| 40 | -#define MIN_MATCH (3) | |
| 41 | -#define MIN_LOOKAHEAD (MAX_MATCH + MIN_MATCH + 1) | |
| 42 | -#define MAX_MATCH_8 ((MAX_MATCH + 7) & ~7) | |
| 43 | - | |
| 44 | -/* stack frame offsets */ | |
| 45 | -#define LocalVarsSize (112) | |
| 46 | -#define _chainlenwmask ( 8-LocalVarsSize)(%rsp) | |
| 47 | -#define _windowbestlen (16-LocalVarsSize)(%rsp) | |
| 48 | -#define save_r14 (24-LocalVarsSize)(%rsp) | |
| 49 | -#define save_rsi (32-LocalVarsSize)(%rsp) | |
| 50 | -#define save_rbx (40-LocalVarsSize)(%rsp) | |
| 51 | -#define save_r12 (56-LocalVarsSize)(%rsp) | |
| 52 | -#define save_r13 (64-LocalVarsSize)(%rsp) | |
| 53 | -#define save_r15 (80-LocalVarsSize)(%rsp) | |
| 54 | - | |
| 55 | - | |
| 56 | -.globl match_init, longest_match | |
| 57 | - | |
| 58 | -/* | |
| 59 | - * On AMD64 the first argument of a function (in our case -- the pointer to | |
| 60 | - * deflate_state structure) is passed in %rdi, hence our offsets below are | |
| 61 | - * all off of that. | |
| 62 | - */ | |
| 63 | - | |
| 64 | -/* you can check the structure offset by running | |
| 65 | - | |
| 66 | -#include <stdlib.h> | |
| 67 | -#include <stdio.h> | |
| 68 | -#include "deflate.h" | |
| 69 | - | |
| 70 | -void print_depl() | |
| 71 | -{ | |
| 72 | -deflate_state ds; | |
| 73 | -deflate_state *s=&ds; | |
| 74 | -printf("size pointer=%u\n",(int)sizeof(void*)); | |
| 75 | - | |
| 76 | -printf("#define dsWSize (%3u)(%%rdi)\n",(int)(((char*)&(s->w_size))-((char*)s))); | |
| 77 | -printf("#define dsWMask (%3u)(%%rdi)\n",(int)(((char*)&(s->w_mask))-((char*)s))); | |
| 78 | -printf("#define dsWindow (%3u)(%%rdi)\n",(int)(((char*)&(s->window))-((char*)s))); | |
| 79 | -printf("#define dsPrev (%3u)(%%rdi)\n",(int)(((char*)&(s->prev))-((char*)s))); | |
| 80 | -printf("#define dsMatchLen (%3u)(%%rdi)\n",(int)(((char*)&(s->match_length))-((char*)s))); | |
| 81 | -printf("#define dsPrevMatch (%3u)(%%rdi)\n",(int)(((char*)&(s->prev_match))-((char*)s))); | |
| 82 | -printf("#define dsStrStart (%3u)(%%rdi)\n",(int)(((char*)&(s->strstart))-((char*)s))); | |
| 83 | -printf("#define dsMatchStart (%3u)(%%rdi)\n",(int)(((char*)&(s->match_start))-((char*)s))); | |
| 84 | -printf("#define dsLookahead (%3u)(%%rdi)\n",(int)(((char*)&(s->lookahead))-((char*)s))); | |
| 85 | -printf("#define dsPrevLen (%3u)(%%rdi)\n",(int)(((char*)&(s->prev_length))-((char*)s))); | |
| 86 | -printf("#define dsMaxChainLen (%3u)(%%rdi)\n",(int)(((char*)&(s->max_chain_length))-((char*)s))); | |
| 87 | -printf("#define dsGoodMatch (%3u)(%%rdi)\n",(int)(((char*)&(s->good_match))-((char*)s))); | |
| 88 | -printf("#define dsNiceMatch (%3u)(%%rdi)\n",(int)(((char*)&(s->nice_match))-((char*)s))); | |
| 89 | -} | |
| 90 | - | |
| 91 | -*/ | |
| 92 | - | |
| 93 | - | |
| 94 | -/* | |
| 95 | - to compile for XCode 3.2 on MacOSX x86_64 | |
| 96 | - - run "gcc -g -c -DXCODE_MAC_X64_STRUCTURE amd64-match.S" | |
| 97 | - */ | |
| 98 | - | |
| 99 | - | |
| 100 | -#ifndef CURRENT_LINX_XCODE_MAC_X64_STRUCTURE | |
| 101 | -#define dsWSize ( 68)(%rdi) | |
| 102 | -#define dsWMask ( 76)(%rdi) | |
| 103 | -#define dsWindow ( 80)(%rdi) | |
| 104 | -#define dsPrev ( 96)(%rdi) | |
| 105 | -#define dsMatchLen (144)(%rdi) | |
| 106 | -#define dsPrevMatch (148)(%rdi) | |
| 107 | -#define dsStrStart (156)(%rdi) | |
| 108 | -#define dsMatchStart (160)(%rdi) | |
| 109 | -#define dsLookahead (164)(%rdi) | |
| 110 | -#define dsPrevLen (168)(%rdi) | |
| 111 | -#define dsMaxChainLen (172)(%rdi) | |
| 112 | -#define dsGoodMatch (188)(%rdi) | |
| 113 | -#define dsNiceMatch (192)(%rdi) | |
| 114 | - | |
| 115 | -#else | |
| 116 | - | |
| 117 | -#ifndef STRUCT_OFFSET | |
| 118 | -# define STRUCT_OFFSET (0) | |
| 119 | -#endif | |
| 120 | - | |
| 121 | - | |
| 122 | -#define dsWSize ( 56 + STRUCT_OFFSET)(%rdi) | |
| 123 | -#define dsWMask ( 64 + STRUCT_OFFSET)(%rdi) | |
| 124 | -#define dsWindow ( 72 + STRUCT_OFFSET)(%rdi) | |
| 125 | -#define dsPrev ( 88 + STRUCT_OFFSET)(%rdi) | |
| 126 | -#define dsMatchLen (136 + STRUCT_OFFSET)(%rdi) | |
| 127 | -#define dsPrevMatch (140 + STRUCT_OFFSET)(%rdi) | |
| 128 | -#define dsStrStart (148 + STRUCT_OFFSET)(%rdi) | |
| 129 | -#define dsMatchStart (152 + STRUCT_OFFSET)(%rdi) | |
| 130 | -#define dsLookahead (156 + STRUCT_OFFSET)(%rdi) | |
| 131 | -#define dsPrevLen (160 + STRUCT_OFFSET)(%rdi) | |
| 132 | -#define dsMaxChainLen (164 + STRUCT_OFFSET)(%rdi) | |
| 133 | -#define dsGoodMatch (180 + STRUCT_OFFSET)(%rdi) | |
| 134 | -#define dsNiceMatch (184 + STRUCT_OFFSET)(%rdi) | |
| 135 | - | |
| 136 | -#endif | |
| 137 | - | |
| 138 | - | |
| 139 | - | |
| 140 | - | |
| 141 | -.text | |
| 142 | - | |
| 143 | -/* uInt longest_match(deflate_state *deflatestate, IPos curmatch) */ | |
| 144 | - | |
| 145 | -longest_match: | |
| 146 | -/* | |
| 147 | - * Retrieve the function arguments. %curmatch will hold cur_match | |
| 148 | - * throughout the entire function (passed via rsi on amd64). | |
| 149 | - * rdi will hold the pointer to the deflate_state (first arg on amd64) | |
| 150 | - */ | |
| 151 | - mov %rsi, save_rsi | |
| 152 | - mov %rbx, save_rbx | |
| 153 | - mov %r12, save_r12 | |
| 154 | - mov %r13, save_r13 | |
| 155 | - mov %r14, save_r14 | |
| 156 | - mov %r15, save_r15 | |
| 157 | - | |
| 158 | -/* uInt wmask = s->w_mask; */ | |
| 159 | -/* unsigned chain_length = s->max_chain_length; */ | |
| 160 | -/* if (s->prev_length >= s->good_match) { */ | |
| 161 | -/* chain_length >>= 2; */ | |
| 162 | -/* } */ | |
| 163 | - | |
| 164 | - movl dsPrevLen, %eax | |
| 165 | - movl dsGoodMatch, %ebx | |
| 166 | - cmpl %ebx, %eax | |
| 167 | - movl dsWMask, %eax | |
| 168 | - movl dsMaxChainLen, %chainlenwmask | |
| 169 | - jl LastMatchGood | |
| 170 | - shrl $2, %chainlenwmask | |
| 171 | -LastMatchGood: | |
| 172 | - | |
| 173 | -/* chainlen is decremented once beforehand so that the function can */ | |
| 174 | -/* use the sign flag instead of the zero flag for the exit test. */ | |
| 175 | -/* It is then shifted into the high word, to make room for the wmask */ | |
| 176 | -/* value, which it will always accompany. */ | |
| 177 | - | |
| 178 | - decl %chainlenwmask | |
| 179 | - shll $16, %chainlenwmask | |
| 180 | - orl %eax, %chainlenwmask | |
| 181 | - | |
| 182 | -/* if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; */ | |
| 183 | - | |
| 184 | - movl dsNiceMatch, %eax | |
| 185 | - movl dsLookahead, %ebx | |
| 186 | - cmpl %eax, %ebx | |
| 187 | - jl LookaheadLess | |
| 188 | - movl %eax, %ebx | |
| 189 | -LookaheadLess: movl %ebx, %nicematch | |
| 190 | - | |
| 191 | -/* register Bytef *scan = s->window + s->strstart; */ | |
| 192 | - | |
| 193 | - mov dsWindow, %window | |
| 194 | - movl dsStrStart, %limitd | |
| 195 | - lea (%limit, %window), %scan | |
| 196 | - | |
| 197 | -/* Determine how many bytes the scan ptr is off from being */ | |
| 198 | -/* dword-aligned. */ | |
| 199 | - | |
| 200 | - mov %scan, %scanalign | |
| 201 | - negl %scanalignd | |
| 202 | - andl $3, %scanalignd | |
| 203 | - | |
| 204 | -/* IPos limit = s->strstart > (IPos)MAX_DIST(s) ? */ | |
| 205 | -/* s->strstart - (IPos)MAX_DIST(s) : NIL; */ | |
| 206 | - | |
| 207 | - movl dsWSize, %eax | |
| 208 | - subl $MIN_LOOKAHEAD, %eax | |
| 209 | - xorl %ecx, %ecx | |
| 210 | - subl %eax, %limitd | |
| 211 | - cmovng %ecx, %limitd | |
| 212 | - | |
| 213 | -/* int best_len = s->prev_length; */ | |
| 214 | - | |
| 215 | - movl dsPrevLen, %bestlend | |
| 216 | - | |
| 217 | -/* Store the sum of s->window + best_len in %windowbestlen locally, and in memory. */ | |
| 218 | - | |
| 219 | - lea (%window, %bestlen), %windowbestlen | |
| 220 | - mov %windowbestlen, _windowbestlen | |
| 221 | - | |
| 222 | -/* register ush scan_start = *(ushf*)scan; */ | |
| 223 | -/* register ush scan_end = *(ushf*)(scan+best_len-1); */ | |
| 224 | -/* Posf *prev = s->prev; */ | |
| 225 | - | |
| 226 | - movzwl (%scan), %scanstart | |
| 227 | - movzwl -1(%scan, %bestlen), %scanend | |
| 228 | - mov dsPrev, %prev | |
| 229 | - | |
| 230 | -/* Jump into the main loop. */ | |
| 231 | - | |
| 232 | - movl %chainlenwmask, _chainlenwmask | |
| 233 | - jmp LoopEntry | |
| 234 | - | |
| 235 | -.balign 16 | |
| 236 | - | |
| 237 | -/* do { | |
| 238 | - * match = s->window + cur_match; | |
| 239 | - * if (*(ushf*)(match+best_len-1) != scan_end || | |
| 240 | - * *(ushf*)match != scan_start) continue; | |
| 241 | - * [...] | |
| 242 | - * } while ((cur_match = prev[cur_match & wmask]) > limit | |
| 243 | - * && --chain_length != 0); | |
| 244 | - * | |
| 245 | - * Here is the inner loop of the function. The function will spend the | |
| 246 | - * majority of its time in this loop, and majority of that time will | |
| 247 | - * be spent in the first ten instructions. | |
| 248 | - */ | |
| 249 | -LookupLoop: | |
| 250 | - andl %chainlenwmask, %curmatchd | |
| 251 | - movzwl (%prev, %curmatch, 2), %curmatchd | |
| 252 | - cmpl %limitd, %curmatchd | |
| 253 | - jbe LeaveNow | |
| 254 | - subl $0x00010000, %chainlenwmask | |
| 255 | - js LeaveNow | |
| 256 | -LoopEntry: cmpw -1(%windowbestlen, %curmatch), %scanendw | |
| 257 | - jne LookupLoop | |
| 258 | - cmpw %scanstartw, (%window, %curmatch) | |
| 259 | - jne LookupLoop | |
| 260 | - | |
| 261 | -/* Store the current value of chainlen. */ | |
| 262 | - movl %chainlenwmask, _chainlenwmask | |
| 263 | - | |
| 264 | -/* %scan is the string under scrutiny, and %prev to the string we */ | |
| 265 | -/* are hoping to match it up with. In actuality, %esi and %edi are */ | |
| 266 | -/* both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and %edx is */ | |
| 267 | -/* initialized to -(MAX_MATCH_8 - scanalign). */ | |
| 268 | - | |
| 269 | - mov $(-MAX_MATCH_8), %rdx | |
| 270 | - lea (%curmatch, %window), %windowbestlen | |
| 271 | - lea MAX_MATCH_8(%windowbestlen, %scanalign), %windowbestlen | |
| 272 | - lea MAX_MATCH_8(%scan, %scanalign), %prev | |
| 273 | - | |
| 274 | -/* the prefetching below makes very little difference... */ | |
| 275 | - prefetcht1 (%windowbestlen, %rdx) | |
| 276 | - prefetcht1 (%prev, %rdx) | |
| 277 | - | |
| 278 | -/* | |
| 279 | - * Test the strings for equality, 8 bytes at a time. At the end, | |
| 280 | - * adjust %rdx so that it is offset to the exact byte that mismatched. | |
| 281 | - * | |
| 282 | - * It should be confessed that this loop usually does not represent | |
| 283 | - * much of the total running time. Replacing it with a more | |
| 284 | - * straightforward "rep cmpsb" would not drastically degrade | |
| 285 | - * performance -- unrolling it, for example, makes no difference. | |
| 286 | - */ | |
| 287 | - | |
| 288 | -#undef USE_SSE /* works, but is 6-7% slower, than non-SSE... */ | |
| 289 | - | |
| 290 | -LoopCmps: | |
| 291 | -#ifdef USE_SSE | |
| 292 | - /* Preload the SSE registers */ | |
| 293 | - movdqu (%windowbestlen, %rdx), %xmm1 | |
| 294 | - movdqu (%prev, %rdx), %xmm2 | |
| 295 | - pcmpeqb %xmm2, %xmm1 | |
| 296 | - movdqu 16(%windowbestlen, %rdx), %xmm3 | |
| 297 | - movdqu 16(%prev, %rdx), %xmm4 | |
| 298 | - pcmpeqb %xmm4, %xmm3 | |
| 299 | - movdqu 32(%windowbestlen, %rdx), %xmm5 | |
| 300 | - movdqu 32(%prev, %rdx), %xmm6 | |
| 301 | - pcmpeqb %xmm6, %xmm5 | |
| 302 | - movdqu 48(%windowbestlen, %rdx), %xmm7 | |
| 303 | - movdqu 48(%prev, %rdx), %xmm8 | |
| 304 | - pcmpeqb %xmm8, %xmm7 | |
| 305 | - | |
| 306 | - /* Check the comparisions' results */ | |
| 307 | - pmovmskb %xmm1, %rax | |
| 308 | - notw %ax | |
| 309 | - bsfw %ax, %ax | |
| 310 | - jnz LeaveLoopCmps | |
| 311 | - | |
| 312 | - /* this is the only iteration of the loop with a possibility of having | |
| 313 | - incremented rdx by 0x108 (each loop iteration add 16*4 = 0x40 | |
| 314 | - and (0x40*4)+8=0x108 */ | |
| 315 | - add $8, %rdx | |
| 316 | - jz LenMaximum | |
| 317 | - add $8, %rdx | |
| 318 | - | |
| 319 | - | |
| 320 | - pmovmskb %xmm3, %rax | |
| 321 | - notw %ax | |
| 322 | - bsfw %ax, %ax | |
| 323 | - jnz LeaveLoopCmps | |
| 324 | - | |
| 325 | - | |
| 326 | - add $16, %rdx | |
| 327 | - | |
| 328 | - | |
| 329 | - pmovmskb %xmm5, %rax | |
| 330 | - notw %ax | |
| 331 | - bsfw %ax, %ax | |
| 332 | - jnz LeaveLoopCmps | |
| 333 | - | |
| 334 | - add $16, %rdx | |
| 335 | - | |
| 336 | - | |
| 337 | - pmovmskb %xmm7, %rax | |
| 338 | - notw %ax | |
| 339 | - bsfw %ax, %ax | |
| 340 | - jnz LeaveLoopCmps | |
| 341 | - | |
| 342 | - add $16, %rdx | |
| 343 | - | |
| 344 | - jmp LoopCmps | |
| 345 | -LeaveLoopCmps: add %rax, %rdx | |
| 346 | -#else | |
| 347 | - mov (%windowbestlen, %rdx), %rax | |
| 348 | - xor (%prev, %rdx), %rax | |
| 349 | - jnz LeaveLoopCmps | |
| 350 | - | |
| 351 | - mov 8(%windowbestlen, %rdx), %rax | |
| 352 | - xor 8(%prev, %rdx), %rax | |
| 353 | - jnz LeaveLoopCmps8 | |
| 354 | - | |
| 355 | - mov 16(%windowbestlen, %rdx), %rax | |
| 356 | - xor 16(%prev, %rdx), %rax | |
| 357 | - jnz LeaveLoopCmps16 | |
| 358 | - | |
| 359 | - add $24, %rdx | |
| 360 | - jnz LoopCmps | |
| 361 | - jmp LenMaximum | |
| 362 | -# if 0 | |
| 363 | -/* | |
| 364 | - * This three-liner is tantalizingly simple, but bsf is a slow instruction, | |
| 365 | - * and the complicated alternative down below is quite a bit faster. Sad... | |
| 366 | - */ | |
| 367 | - | |
| 368 | -LeaveLoopCmps: bsf %rax, %rax /* find the first non-zero bit */ | |
| 369 | - shrl $3, %eax /* divide by 8 to get the byte */ | |
| 370 | - add %rax, %rdx | |
| 371 | -# else | |
| 372 | -LeaveLoopCmps16: | |
| 373 | - add $8, %rdx | |
| 374 | -LeaveLoopCmps8: | |
| 375 | - add $8, %rdx | |
| 376 | -LeaveLoopCmps: testl $0xFFFFFFFF, %eax /* Check the first 4 bytes */ | |
| 377 | - jnz Check16 | |
| 378 | - add $4, %rdx | |
| 379 | - shr $32, %rax | |
| 380 | -Check16: testw $0xFFFF, %ax | |
| 381 | - jnz LenLower | |
| 382 | - add $2, %rdx | |
| 383 | - shrl $16, %eax | |
| 384 | -LenLower: subb $1, %al | |
| 385 | - adc $0, %rdx | |
| 386 | -# endif | |
| 387 | -#endif | |
| 388 | - | |
| 389 | -/* Calculate the length of the match. If it is longer than MAX_MATCH, */ | |
| 390 | -/* then automatically accept it as the best possible match and leave. */ | |
| 391 | - | |
| 392 | - lea (%prev, %rdx), %rax | |
| 393 | - sub %scan, %rax | |
| 394 | - cmpl $MAX_MATCH, %eax | |
| 395 | - jge LenMaximum | |
| 396 | - | |
| 397 | -/* If the length of the match is not longer than the best match we */ | |
| 398 | -/* have so far, then forget it and return to the lookup loop. */ | |
| 399 | - | |
| 400 | - cmpl %bestlend, %eax | |
| 401 | - jg LongerMatch | |
| 402 | - mov _windowbestlen, %windowbestlen | |
| 403 | - mov dsPrev, %prev | |
| 404 | - movl _chainlenwmask, %edx | |
| 405 | - jmp LookupLoop | |
| 406 | - | |
| 407 | -/* s->match_start = cur_match; */ | |
| 408 | -/* best_len = len; */ | |
| 409 | -/* if (len >= nice_match) break; */ | |
| 410 | -/* scan_end = *(ushf*)(scan+best_len-1); */ | |
| 411 | - | |
| 412 | -LongerMatch: | |
| 413 | - movl %eax, %bestlend | |
| 414 | - movl %curmatchd, dsMatchStart | |
| 415 | - cmpl %nicematch, %eax | |
| 416 | - jge LeaveNow | |
| 417 | - | |
| 418 | - lea (%window, %bestlen), %windowbestlen | |
| 419 | - mov %windowbestlen, _windowbestlen | |
| 420 | - | |
| 421 | - movzwl -1(%scan, %rax), %scanend | |
| 422 | - mov dsPrev, %prev | |
| 423 | - movl _chainlenwmask, %chainlenwmask | |
| 424 | - jmp LookupLoop | |
| 425 | - | |
| 426 | -/* Accept the current string, with the maximum possible length. */ | |
| 427 | - | |
| 428 | -LenMaximum: | |
| 429 | - movl $MAX_MATCH, %bestlend | |
| 430 | - movl %curmatchd, dsMatchStart | |
| 431 | - | |
| 432 | -/* if ((uInt)best_len <= s->lookahead) return (uInt)best_len; */ | |
| 433 | -/* return s->lookahead; */ | |
| 434 | - | |
| 435 | -LeaveNow: | |
| 436 | - movl dsLookahead, %eax | |
| 437 | - cmpl %eax, %bestlend | |
| 438 | - cmovngl %bestlend, %eax | |
| 439 | -LookaheadRet: | |
| 440 | - | |
| 441 | -/* Restore the registers and return from whence we came. */ | |
| 442 | - | |
| 443 | - mov save_rsi, %rsi | |
| 444 | - mov save_rbx, %rbx | |
| 445 | - mov save_r12, %r12 | |
| 446 | - mov save_r13, %r13 | |
| 447 | - mov save_r14, %r14 | |
| 448 | - mov save_r15, %r15 | |
| 449 | - | |
| 450 | - ret | |
| 451 | - | |
| 452 | -match_init: ret |
| --- a/compat/zlib/contrib/amd64/amd64-match.S | |
| +++ b/compat/zlib/contrib/amd64/amd64-match.S | |
| @@ -1,452 +0,0 @@ | |
| 1 | /* |
| 2 | * match.S -- optimized version of longest_match() |
| 3 | * based on the similar work by Gilles Vollant, and Brian Raiter, written 1998 |
| 4 | * |
| 5 | * This is free software; you can redistribute it and/or modify it |
| 6 | * under the terms of the BSD License. Use by owners of Che Guevarra |
| 7 | * parafernalia is prohibited, where possible, and highly discouraged |
| 8 | * elsewhere. |
| 9 | */ |
| 10 | |
| 11 | #ifndef NO_UNDERLINE |
| 12 | # define match_init _match_init |
| 13 | # define longest_match _longest_match |
| 14 | #endif |
| 15 | |
| 16 | #define scanend ebx |
| 17 | #define scanendw bx |
| 18 | #define chainlenwmask edx /* high word: current chain len low word: s->wmask */ |
| 19 | #define curmatch rsi |
| 20 | #define curmatchd esi |
| 21 | #define windowbestlen r8 |
| 22 | #define scanalign r9 |
| 23 | #define scanalignd r9d |
| 24 | #define window r10 |
| 25 | #define bestlen r11 |
| 26 | #define bestlend r11d |
| 27 | #define scanstart r12d |
| 28 | #define scanstartw r12w |
| 29 | #define scan r13 |
| 30 | #define nicematch r14d |
| 31 | #define limit r15 |
| 32 | #define limitd r15d |
| 33 | #define prev rcx |
| 34 | |
| 35 | /* |
| 36 | * The 258 is a "magic number, not a parameter -- changing it |
| 37 | * breaks the hell loose |
| 38 | */ |
| 39 | #define MAX_MATCH (258) |
| 40 | #define MIN_MATCH (3) |
| 41 | #define MIN_LOOKAHEAD (MAX_MATCH + MIN_MATCH + 1) |
| 42 | #define MAX_MATCH_8 ((MAX_MATCH + 7) & ~7) |
| 43 | |
| 44 | /* stack frame offsets */ |
| 45 | #define LocalVarsSize (112) |
| 46 | #define _chainlenwmask ( 8-LocalVarsSize)(%rsp) |
| 47 | #define _windowbestlen (16-LocalVarsSize)(%rsp) |
| 48 | #define save_r14 (24-LocalVarsSize)(%rsp) |
| 49 | #define save_rsi (32-LocalVarsSize)(%rsp) |
| 50 | #define save_rbx (40-LocalVarsSize)(%rsp) |
| 51 | #define save_r12 (56-LocalVarsSize)(%rsp) |
| 52 | #define save_r13 (64-LocalVarsSize)(%rsp) |
| 53 | #define save_r15 (80-LocalVarsSize)(%rsp) |
| 54 | |
| 55 | |
| 56 | .globl match_init, longest_match |
| 57 | |
| 58 | /* |
| 59 | * On AMD64 the first argument of a function (in our case -- the pointer to |
| 60 | * deflate_state structure) is passed in %rdi, hence our offsets below are |
| 61 | * all off of that. |
| 62 | */ |
| 63 | |
| 64 | /* you can check the structure offset by running |
| 65 | |
| 66 | #include <stdlib.h> |
| 67 | #include <stdio.h> |
| 68 | #include "deflate.h" |
| 69 | |
| 70 | void print_depl() |
| 71 | { |
| 72 | deflate_state ds; |
| 73 | deflate_state *s=&ds; |
| 74 | printf("size pointer=%u\n",(int)sizeof(void*)); |
| 75 | |
| 76 | printf("#define dsWSize (%3u)(%%rdi)\n",(int)(((char*)&(s->w_size))-((char*)s))); |
| 77 | printf("#define dsWMask (%3u)(%%rdi)\n",(int)(((char*)&(s->w_mask))-((char*)s))); |
| 78 | printf("#define dsWindow (%3u)(%%rdi)\n",(int)(((char*)&(s->window))-((char*)s))); |
| 79 | printf("#define dsPrev (%3u)(%%rdi)\n",(int)(((char*)&(s->prev))-((char*)s))); |
| 80 | printf("#define dsMatchLen (%3u)(%%rdi)\n",(int)(((char*)&(s->match_length))-((char*)s))); |
| 81 | printf("#define dsPrevMatch (%3u)(%%rdi)\n",(int)(((char*)&(s->prev_match))-((char*)s))); |
| 82 | printf("#define dsStrStart (%3u)(%%rdi)\n",(int)(((char*)&(s->strstart))-((char*)s))); |
| 83 | printf("#define dsMatchStart (%3u)(%%rdi)\n",(int)(((char*)&(s->match_start))-((char*)s))); |
| 84 | printf("#define dsLookahead (%3u)(%%rdi)\n",(int)(((char*)&(s->lookahead))-((char*)s))); |
| 85 | printf("#define dsPrevLen (%3u)(%%rdi)\n",(int)(((char*)&(s->prev_length))-((char*)s))); |
| 86 | printf("#define dsMaxChainLen (%3u)(%%rdi)\n",(int)(((char*)&(s->max_chain_length))-((char*)s))); |
| 87 | printf("#define dsGoodMatch (%3u)(%%rdi)\n",(int)(((char*)&(s->good_match))-((char*)s))); |
| 88 | printf("#define dsNiceMatch (%3u)(%%rdi)\n",(int)(((char*)&(s->nice_match))-((char*)s))); |
| 89 | } |
| 90 | |
| 91 | */ |
| 92 | |
| 93 | |
| 94 | /* |
| 95 | to compile for XCode 3.2 on MacOSX x86_64 |
| 96 | - run "gcc -g -c -DXCODE_MAC_X64_STRUCTURE amd64-match.S" |
| 97 | */ |
| 98 | |
| 99 | |
| 100 | #ifndef CURRENT_LINX_XCODE_MAC_X64_STRUCTURE |
| 101 | #define dsWSize ( 68)(%rdi) |
| 102 | #define dsWMask ( 76)(%rdi) |
| 103 | #define dsWindow ( 80)(%rdi) |
| 104 | #define dsPrev ( 96)(%rdi) |
| 105 | #define dsMatchLen (144)(%rdi) |
| 106 | #define dsPrevMatch (148)(%rdi) |
| 107 | #define dsStrStart (156)(%rdi) |
| 108 | #define dsMatchStart (160)(%rdi) |
| 109 | #define dsLookahead (164)(%rdi) |
| 110 | #define dsPrevLen (168)(%rdi) |
| 111 | #define dsMaxChainLen (172)(%rdi) |
| 112 | #define dsGoodMatch (188)(%rdi) |
| 113 | #define dsNiceMatch (192)(%rdi) |
| 114 | |
| 115 | #else |
| 116 | |
| 117 | #ifndef STRUCT_OFFSET |
| 118 | # define STRUCT_OFFSET (0) |
| 119 | #endif |
| 120 | |
| 121 | |
| 122 | #define dsWSize ( 56 + STRUCT_OFFSET)(%rdi) |
| 123 | #define dsWMask ( 64 + STRUCT_OFFSET)(%rdi) |
| 124 | #define dsWindow ( 72 + STRUCT_OFFSET)(%rdi) |
| 125 | #define dsPrev ( 88 + STRUCT_OFFSET)(%rdi) |
| 126 | #define dsMatchLen (136 + STRUCT_OFFSET)(%rdi) |
| 127 | #define dsPrevMatch (140 + STRUCT_OFFSET)(%rdi) |
| 128 | #define dsStrStart (148 + STRUCT_OFFSET)(%rdi) |
| 129 | #define dsMatchStart (152 + STRUCT_OFFSET)(%rdi) |
| 130 | #define dsLookahead (156 + STRUCT_OFFSET)(%rdi) |
| 131 | #define dsPrevLen (160 + STRUCT_OFFSET)(%rdi) |
| 132 | #define dsMaxChainLen (164 + STRUCT_OFFSET)(%rdi) |
| 133 | #define dsGoodMatch (180 + STRUCT_OFFSET)(%rdi) |
| 134 | #define dsNiceMatch (184 + STRUCT_OFFSET)(%rdi) |
| 135 | |
| 136 | #endif |
| 137 | |
| 138 | |
| 139 | |
| 140 | |
| 141 | .text |
| 142 | |
| 143 | /* uInt longest_match(deflate_state *deflatestate, IPos curmatch) */ |
| 144 | |
| 145 | longest_match: |
| 146 | /* |
| 147 | * Retrieve the function arguments. %curmatch will hold cur_match |
| 148 | * throughout the entire function (passed via rsi on amd64). |
| 149 | * rdi will hold the pointer to the deflate_state (first arg on amd64) |
| 150 | */ |
| 151 | mov %rsi, save_rsi |
| 152 | mov %rbx, save_rbx |
| 153 | mov %r12, save_r12 |
| 154 | mov %r13, save_r13 |
| 155 | mov %r14, save_r14 |
| 156 | mov %r15, save_r15 |
| 157 | |
| 158 | /* uInt wmask = s->w_mask; */ |
| 159 | /* unsigned chain_length = s->max_chain_length; */ |
| 160 | /* if (s->prev_length >= s->good_match) { */ |
| 161 | /* chain_length >>= 2; */ |
| 162 | /* } */ |
| 163 | |
| 164 | movl dsPrevLen, %eax |
| 165 | movl dsGoodMatch, %ebx |
| 166 | cmpl %ebx, %eax |
| 167 | movl dsWMask, %eax |
| 168 | movl dsMaxChainLen, %chainlenwmask |
| 169 | jl LastMatchGood |
| 170 | shrl $2, %chainlenwmask |
| 171 | LastMatchGood: |
| 172 | |
| 173 | /* chainlen is decremented once beforehand so that the function can */ |
| 174 | /* use the sign flag instead of the zero flag for the exit test. */ |
| 175 | /* It is then shifted into the high word, to make room for the wmask */ |
| 176 | /* value, which it will always accompany. */ |
| 177 | |
| 178 | decl %chainlenwmask |
| 179 | shll $16, %chainlenwmask |
| 180 | orl %eax, %chainlenwmask |
| 181 | |
| 182 | /* if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; */ |
| 183 | |
| 184 | movl dsNiceMatch, %eax |
| 185 | movl dsLookahead, %ebx |
| 186 | cmpl %eax, %ebx |
| 187 | jl LookaheadLess |
| 188 | movl %eax, %ebx |
| 189 | LookaheadLess: movl %ebx, %nicematch |
| 190 | |
| 191 | /* register Bytef *scan = s->window + s->strstart; */ |
| 192 | |
| 193 | mov dsWindow, %window |
| 194 | movl dsStrStart, %limitd |
| 195 | lea (%limit, %window), %scan |
| 196 | |
| 197 | /* Determine how many bytes the scan ptr is off from being */ |
| 198 | /* dword-aligned. */ |
| 199 | |
| 200 | mov %scan, %scanalign |
| 201 | negl %scanalignd |
| 202 | andl $3, %scanalignd |
| 203 | |
| 204 | /* IPos limit = s->strstart > (IPos)MAX_DIST(s) ? */ |
| 205 | /* s->strstart - (IPos)MAX_DIST(s) : NIL; */ |
| 206 | |
| 207 | movl dsWSize, %eax |
| 208 | subl $MIN_LOOKAHEAD, %eax |
| 209 | xorl %ecx, %ecx |
| 210 | subl %eax, %limitd |
| 211 | cmovng %ecx, %limitd |
| 212 | |
| 213 | /* int best_len = s->prev_length; */ |
| 214 | |
| 215 | movl dsPrevLen, %bestlend |
| 216 | |
| 217 | /* Store the sum of s->window + best_len in %windowbestlen locally, and in memory. */ |
| 218 | |
| 219 | lea (%window, %bestlen), %windowbestlen |
| 220 | mov %windowbestlen, _windowbestlen |
| 221 | |
| 222 | /* register ush scan_start = *(ushf*)scan; */ |
| 223 | /* register ush scan_end = *(ushf*)(scan+best_len-1); */ |
| 224 | /* Posf *prev = s->prev; */ |
| 225 | |
| 226 | movzwl (%scan), %scanstart |
| 227 | movzwl -1(%scan, %bestlen), %scanend |
| 228 | mov dsPrev, %prev |
| 229 | |
| 230 | /* Jump into the main loop. */ |
| 231 | |
| 232 | movl %chainlenwmask, _chainlenwmask |
| 233 | jmp LoopEntry |
| 234 | |
| 235 | .balign 16 |
| 236 | |
| 237 | /* do { |
| 238 | * match = s->window + cur_match; |
| 239 | * if (*(ushf*)(match+best_len-1) != scan_end || |
| 240 | * *(ushf*)match != scan_start) continue; |
| 241 | * [...] |
| 242 | * } while ((cur_match = prev[cur_match & wmask]) > limit |
| 243 | * && --chain_length != 0); |
| 244 | * |
| 245 | * Here is the inner loop of the function. The function will spend the |
| 246 | * majority of its time in this loop, and majority of that time will |
| 247 | * be spent in the first ten instructions. |
| 248 | */ |
| 249 | LookupLoop: |
| 250 | andl %chainlenwmask, %curmatchd |
| 251 | movzwl (%prev, %curmatch, 2), %curmatchd |
| 252 | cmpl %limitd, %curmatchd |
| 253 | jbe LeaveNow |
| 254 | subl $0x00010000, %chainlenwmask |
| 255 | js LeaveNow |
| 256 | LoopEntry: cmpw -1(%windowbestlen, %curmatch), %scanendw |
| 257 | jne LookupLoop |
| 258 | cmpw %scanstartw, (%window, %curmatch) |
| 259 | jne LookupLoop |
| 260 | |
| 261 | /* Store the current value of chainlen. */ |
| 262 | movl %chainlenwmask, _chainlenwmask |
| 263 | |
| 264 | /* %scan is the string under scrutiny, and %prev to the string we */ |
| 265 | /* are hoping to match it up with. In actuality, %esi and %edi are */ |
| 266 | /* both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and %edx is */ |
| 267 | /* initialized to -(MAX_MATCH_8 - scanalign). */ |
| 268 | |
| 269 | mov $(-MAX_MATCH_8), %rdx |
| 270 | lea (%curmatch, %window), %windowbestlen |
| 271 | lea MAX_MATCH_8(%windowbestlen, %scanalign), %windowbestlen |
| 272 | lea MAX_MATCH_8(%scan, %scanalign), %prev |
| 273 | |
| 274 | /* the prefetching below makes very little difference... */ |
| 275 | prefetcht1 (%windowbestlen, %rdx) |
| 276 | prefetcht1 (%prev, %rdx) |
| 277 | |
| 278 | /* |
| 279 | * Test the strings for equality, 8 bytes at a time. At the end, |
| 280 | * adjust %rdx so that it is offset to the exact byte that mismatched. |
| 281 | * |
| 282 | * It should be confessed that this loop usually does not represent |
| 283 | * much of the total running time. Replacing it with a more |
| 284 | * straightforward "rep cmpsb" would not drastically degrade |
| 285 | * performance -- unrolling it, for example, makes no difference. |
| 286 | */ |
| 287 | |
| 288 | #undef USE_SSE /* works, but is 6-7% slower, than non-SSE... */ |
| 289 | |
| 290 | LoopCmps: |
| 291 | #ifdef USE_SSE |
| 292 | /* Preload the SSE registers */ |
| 293 | movdqu (%windowbestlen, %rdx), %xmm1 |
| 294 | movdqu (%prev, %rdx), %xmm2 |
| 295 | pcmpeqb %xmm2, %xmm1 |
| 296 | movdqu 16(%windowbestlen, %rdx), %xmm3 |
| 297 | movdqu 16(%prev, %rdx), %xmm4 |
| 298 | pcmpeqb %xmm4, %xmm3 |
| 299 | movdqu 32(%windowbestlen, %rdx), %xmm5 |
| 300 | movdqu 32(%prev, %rdx), %xmm6 |
| 301 | pcmpeqb %xmm6, %xmm5 |
| 302 | movdqu 48(%windowbestlen, %rdx), %xmm7 |
| 303 | movdqu 48(%prev, %rdx), %xmm8 |
| 304 | pcmpeqb %xmm8, %xmm7 |
| 305 | |
| 306 | /* Check the comparisions' results */ |
| 307 | pmovmskb %xmm1, %rax |
| 308 | notw %ax |
| 309 | bsfw %ax, %ax |
| 310 | jnz LeaveLoopCmps |
| 311 | |
| 312 | /* this is the only iteration of the loop with a possibility of having |
| 313 | incremented rdx by 0x108 (each loop iteration add 16*4 = 0x40 |
| 314 | and (0x40*4)+8=0x108 */ |
| 315 | add $8, %rdx |
| 316 | jz LenMaximum |
| 317 | add $8, %rdx |
| 318 | |
| 319 | |
| 320 | pmovmskb %xmm3, %rax |
| 321 | notw %ax |
| 322 | bsfw %ax, %ax |
| 323 | jnz LeaveLoopCmps |
| 324 | |
| 325 | |
| 326 | add $16, %rdx |
| 327 | |
| 328 | |
| 329 | pmovmskb %xmm5, %rax |
| 330 | notw %ax |
| 331 | bsfw %ax, %ax |
| 332 | jnz LeaveLoopCmps |
| 333 | |
| 334 | add $16, %rdx |
| 335 | |
| 336 | |
| 337 | pmovmskb %xmm7, %rax |
| 338 | notw %ax |
| 339 | bsfw %ax, %ax |
| 340 | jnz LeaveLoopCmps |
| 341 | |
| 342 | add $16, %rdx |
| 343 | |
| 344 | jmp LoopCmps |
| 345 | LeaveLoopCmps: add %rax, %rdx |
| 346 | #else |
| 347 | mov (%windowbestlen, %rdx), %rax |
| 348 | xor (%prev, %rdx), %rax |
| 349 | jnz LeaveLoopCmps |
| 350 | |
| 351 | mov 8(%windowbestlen, %rdx), %rax |
| 352 | xor 8(%prev, %rdx), %rax |
| 353 | jnz LeaveLoopCmps8 |
| 354 | |
| 355 | mov 16(%windowbestlen, %rdx), %rax |
| 356 | xor 16(%prev, %rdx), %rax |
| 357 | jnz LeaveLoopCmps16 |
| 358 | |
| 359 | add $24, %rdx |
| 360 | jnz LoopCmps |
| 361 | jmp LenMaximum |
| 362 | # if 0 |
| 363 | /* |
| 364 | * This three-liner is tantalizingly simple, but bsf is a slow instruction, |
| 365 | * and the complicated alternative down below is quite a bit faster. Sad... |
| 366 | */ |
| 367 | |
| 368 | LeaveLoopCmps: bsf %rax, %rax /* find the first non-zero bit */ |
| 369 | shrl $3, %eax /* divide by 8 to get the byte */ |
| 370 | add %rax, %rdx |
| 371 | # else |
| 372 | LeaveLoopCmps16: |
| 373 | add $8, %rdx |
| 374 | LeaveLoopCmps8: |
| 375 | add $8, %rdx |
| 376 | LeaveLoopCmps: testl $0xFFFFFFFF, %eax /* Check the first 4 bytes */ |
| 377 | jnz Check16 |
| 378 | add $4, %rdx |
| 379 | shr $32, %rax |
| 380 | Check16: testw $0xFFFF, %ax |
| 381 | jnz LenLower |
| 382 | add $2, %rdx |
| 383 | shrl $16, %eax |
| 384 | LenLower: subb $1, %al |
| 385 | adc $0, %rdx |
| 386 | # endif |
| 387 | #endif |
| 388 | |
| 389 | /* Calculate the length of the match. If it is longer than MAX_MATCH, */ |
| 390 | /* then automatically accept it as the best possible match and leave. */ |
| 391 | |
| 392 | lea (%prev, %rdx), %rax |
| 393 | sub %scan, %rax |
| 394 | cmpl $MAX_MATCH, %eax |
| 395 | jge LenMaximum |
| 396 | |
| 397 | /* If the length of the match is not longer than the best match we */ |
| 398 | /* have so far, then forget it and return to the lookup loop. */ |
| 399 | |
| 400 | cmpl %bestlend, %eax |
| 401 | jg LongerMatch |
| 402 | mov _windowbestlen, %windowbestlen |
| 403 | mov dsPrev, %prev |
| 404 | movl _chainlenwmask, %edx |
| 405 | jmp LookupLoop |
| 406 | |
| 407 | /* s->match_start = cur_match; */ |
| 408 | /* best_len = len; */ |
| 409 | /* if (len >= nice_match) break; */ |
| 410 | /* scan_end = *(ushf*)(scan+best_len-1); */ |
| 411 | |
| 412 | LongerMatch: |
| 413 | movl %eax, %bestlend |
| 414 | movl %curmatchd, dsMatchStart |
| 415 | cmpl %nicematch, %eax |
| 416 | jge LeaveNow |
| 417 | |
| 418 | lea (%window, %bestlen), %windowbestlen |
| 419 | mov %windowbestlen, _windowbestlen |
| 420 | |
| 421 | movzwl -1(%scan, %rax), %scanend |
| 422 | mov dsPrev, %prev |
| 423 | movl _chainlenwmask, %chainlenwmask |
| 424 | jmp LookupLoop |
| 425 | |
| 426 | /* Accept the current string, with the maximum possible length. */ |
| 427 | |
| 428 | LenMaximum: |
| 429 | movl $MAX_MATCH, %bestlend |
| 430 | movl %curmatchd, dsMatchStart |
| 431 | |
| 432 | /* if ((uInt)best_len <= s->lookahead) return (uInt)best_len; */ |
| 433 | /* return s->lookahead; */ |
| 434 | |
| 435 | LeaveNow: |
| 436 | movl dsLookahead, %eax |
| 437 | cmpl %eax, %bestlend |
| 438 | cmovngl %bestlend, %eax |
| 439 | LookaheadRet: |
| 440 | |
| 441 | /* Restore the registers and return from whence we came. */ |
| 442 | |
| 443 | mov save_rsi, %rsi |
| 444 | mov save_rbx, %rbx |
| 445 | mov save_r12, %r12 |
| 446 | mov save_r13, %r13 |
| 447 | mov save_r14, %r14 |
| 448 | mov save_r15, %r15 |
| 449 | |
| 450 | ret |
| 451 | |
| 452 | match_init: ret |
| --- a/compat/zlib/contrib/amd64/amd64-match.S | |
| +++ b/compat/zlib/contrib/amd64/amd64-match.S | |
| @@ -1,452 +0,0 @@ | |
D
compat/zlib/contrib/asm686/README.686
-51
| --- a/compat/zlib/contrib/asm686/README.686 | ||
| +++ b/compat/zlib/contrib/asm686/README.686 | ||
| @@ -1,51 +0,0 @@ | ||
| 1 | -This is a patched version of zlib, modified to use | |
| 2 | -Pentium-Pro-optimized assembly code in the deflation algorithm. The | |
| 3 | -files changed/added by this patch are: | |
| 4 | - | |
| 5 | -README.686 | |
| 6 | -match.S | |
| 7 | - | |
| 8 | -The speedup that this patch provides varies, depending on whether the | |
| 9 | -compiler used to build the original version of zlib falls afoul of the | |
| 10 | -PPro's speed traps. My own tests show a speedup of around 10-20% at | |
| 11 | -the default compression level, and 20-30% using -9, against a version | |
| 12 | -compiled using gcc 2.7.2.3. Your mileage may vary. | |
| 13 | - | |
| 14 | -Note that this code has been tailored for the PPro/PII in particular, | |
| 15 | -and will not perform particuarly well on a Pentium. | |
| 16 | - | |
| 17 | -If you are using an assembler other than GNU as, you will have to | |
| 18 | -translate match.S to use your assembler's syntax. (Have fun.) | |
| 19 | - | |
| 20 | -Brian Raiter | |
| 21 | -[email protected] | |
| 22 | -April, 1998 | |
| 23 | - | |
| 24 | - | |
| 25 | -Added for zlib 1.1.3: | |
| 26 | - | |
| 27 | -The patches come from | |
| 28 | -http://www.muppetlabs.com/~breadbox/software/assembly.html | |
| 29 | - | |
| 30 | -To compile zlib with this asm file, copy match.S to the zlib directory | |
| 31 | -then do: | |
| 32 | - | |
| 33 | -CFLAGS="-O3 -DASMV" ./configure | |
| 34 | -make OBJA=match.o | |
| 35 | - | |
| 36 | - | |
| 37 | -Update: | |
| 38 | - | |
| 39 | -I've been ignoring these assembly routines for years, believing that | |
| 40 | -gcc's generated code had caught up with it sometime around gcc 2.95 | |
| 41 | -and the major rearchitecting of the Pentium 4. However, I recently | |
| 42 | -learned that, despite what I believed, this code still has some life | |
| 43 | -in it. On the Pentium 4 and AMD64 chips, it continues to run about 8% | |
| 44 | -faster than the code produced by gcc 4.1. | |
| 45 | - | |
| 46 | -In acknowledgement of its continuing usefulness, I've altered the | |
| 47 | -license to match that of the rest of zlib. Share and Enjoy! | |
| 48 | - | |
| 49 | -Brian Raiter | |
| 50 | -[email protected] | |
| 51 | -April, 2007 |
| --- a/compat/zlib/contrib/asm686/README.686 | |
| +++ b/compat/zlib/contrib/asm686/README.686 | |
| @@ -1,51 +0,0 @@ | |
| 1 | This is a patched version of zlib, modified to use |
| 2 | Pentium-Pro-optimized assembly code in the deflation algorithm. The |
| 3 | files changed/added by this patch are: |
| 4 | |
| 5 | README.686 |
| 6 | match.S |
| 7 | |
| 8 | The speedup that this patch provides varies, depending on whether the |
| 9 | compiler used to build the original version of zlib falls afoul of the |
| 10 | PPro's speed traps. My own tests show a speedup of around 10-20% at |
| 11 | the default compression level, and 20-30% using -9, against a version |
| 12 | compiled using gcc 2.7.2.3. Your mileage may vary. |
| 13 | |
| 14 | Note that this code has been tailored for the PPro/PII in particular, |
| 15 | and will not perform particuarly well on a Pentium. |
| 16 | |
| 17 | If you are using an assembler other than GNU as, you will have to |
| 18 | translate match.S to use your assembler's syntax. (Have fun.) |
| 19 | |
| 20 | Brian Raiter |
| 21 | [email protected] |
| 22 | April, 1998 |
| 23 | |
| 24 | |
| 25 | Added for zlib 1.1.3: |
| 26 | |
| 27 | The patches come from |
| 28 | http://www.muppetlabs.com/~breadbox/software/assembly.html |
| 29 | |
| 30 | To compile zlib with this asm file, copy match.S to the zlib directory |
| 31 | then do: |
| 32 | |
| 33 | CFLAGS="-O3 -DASMV" ./configure |
| 34 | make OBJA=match.o |
| 35 | |
| 36 | |
| 37 | Update: |
| 38 | |
| 39 | I've been ignoring these assembly routines for years, believing that |
| 40 | gcc's generated code had caught up with it sometime around gcc 2.95 |
| 41 | and the major rearchitecting of the Pentium 4. However, I recently |
| 42 | learned that, despite what I believed, this code still has some life |
| 43 | in it. On the Pentium 4 and AMD64 chips, it continues to run about 8% |
| 44 | faster than the code produced by gcc 4.1. |
| 45 | |
| 46 | In acknowledgement of its continuing usefulness, I've altered the |
| 47 | license to match that of the rest of zlib. Share and Enjoy! |
| 48 | |
| 49 | Brian Raiter |
| 50 | [email protected] |
| 51 | April, 2007 |
| --- a/compat/zlib/contrib/asm686/README.686 | |
| +++ b/compat/zlib/contrib/asm686/README.686 | |
| @@ -1,51 +0,0 @@ | |
D
compat/zlib/contrib/asm686/match.S
-357
| --- a/compat/zlib/contrib/asm686/match.S | ||
| +++ b/compat/zlib/contrib/asm686/match.S | ||
| @@ -1,357 +0,0 @@ | ||
| 1 | -/* match.S -- x86 assembly version of the zlib longest_match() function. | |
| 2 | - * Optimized for the Intel 686 chips (PPro and later). | |
| 3 | - * | |
| 4 | - * Copyright (C) 1998, 2007 Brian Raiter <[email protected]> | |
| 5 | - * | |
| 6 | - * This software is provided 'as-is', without any express or implied | |
| 7 | - * warranty. In no event will the author be held liable for any damages | |
| 8 | - * arising from the use of this software. | |
| 9 | - * | |
| 10 | - * Permission is granted to anyone to use this software for any purpose, | |
| 11 | - * including commercial applications, and to alter it and redistribute it | |
| 12 | - * freely, subject to the following restrictions: | |
| 13 | - * | |
| 14 | - * 1. The origin of this software must not be misrepresented; you must not | |
| 15 | - * claim that you wrote the original software. If you use this software | |
| 16 | - * in a product, an acknowledgment in the product documentation would be | |
| 17 | - * appreciated but is not required. | |
| 18 | - * 2. Altered source versions must be plainly marked as such, and must not be | |
| 19 | - * misrepresented as being the original software. | |
| 20 | - * 3. This notice may not be removed or altered from any source distribution. | |
| 21 | - */ | |
| 22 | - | |
| 23 | -#ifndef NO_UNDERLINE | |
| 24 | -#define match_init _match_init | |
| 25 | -#define longest_match _longest_match | |
| 26 | -#endif | |
| 27 | - | |
| 28 | -#define MAX_MATCH (258) | |
| 29 | -#define MIN_MATCH (3) | |
| 30 | -#define MIN_LOOKAHEAD (MAX_MATCH + MIN_MATCH + 1) | |
| 31 | -#define MAX_MATCH_8 ((MAX_MATCH + 7) & ~7) | |
| 32 | - | |
| 33 | -/* stack frame offsets */ | |
| 34 | - | |
| 35 | -#define chainlenwmask 0 /* high word: current chain len */ | |
| 36 | - /* low word: s->wmask */ | |
| 37 | -#define window 4 /* local copy of s->window */ | |
| 38 | -#define windowbestlen 8 /* s->window + bestlen */ | |
| 39 | -#define scanstart 16 /* first two bytes of string */ | |
| 40 | -#define scanend 12 /* last two bytes of string */ | |
| 41 | -#define scanalign 20 /* dword-misalignment of string */ | |
| 42 | -#define nicematch 24 /* a good enough match size */ | |
| 43 | -#define bestlen 28 /* size of best match so far */ | |
| 44 | -#define scan 32 /* ptr to string wanting match */ | |
| 45 | - | |
| 46 | -#define LocalVarsSize (36) | |
| 47 | -/* saved ebx 36 */ | |
| 48 | -/* saved edi 40 */ | |
| 49 | -/* saved esi 44 */ | |
| 50 | -/* saved ebp 48 */ | |
| 51 | -/* return address 52 */ | |
| 52 | -#define deflatestate 56 /* the function arguments */ | |
| 53 | -#define curmatch 60 | |
| 54 | - | |
| 55 | -/* All the +zlib1222add offsets are due to the addition of fields | |
| 56 | - * in zlib in the deflate_state structure since the asm code was first written | |
| 57 | - * (if you compile with zlib 1.0.4 or older, use "zlib1222add equ (-4)"). | |
| 58 | - * (if you compile with zlib between 1.0.5 and 1.2.2.1, use "zlib1222add equ 0"). | |
| 59 | - * if you compile with zlib 1.2.2.2 or later , use "zlib1222add equ 8"). | |
| 60 | - */ | |
| 61 | - | |
| 62 | -#define zlib1222add (8) | |
| 63 | - | |
| 64 | -#define dsWSize (36+zlib1222add) | |
| 65 | -#define dsWMask (44+zlib1222add) | |
| 66 | -#define dsWindow (48+zlib1222add) | |
| 67 | -#define dsPrev (56+zlib1222add) | |
| 68 | -#define dsMatchLen (88+zlib1222add) | |
| 69 | -#define dsPrevMatch (92+zlib1222add) | |
| 70 | -#define dsStrStart (100+zlib1222add) | |
| 71 | -#define dsMatchStart (104+zlib1222add) | |
| 72 | -#define dsLookahead (108+zlib1222add) | |
| 73 | -#define dsPrevLen (112+zlib1222add) | |
| 74 | -#define dsMaxChainLen (116+zlib1222add) | |
| 75 | -#define dsGoodMatch (132+zlib1222add) | |
| 76 | -#define dsNiceMatch (136+zlib1222add) | |
| 77 | - | |
| 78 | - | |
| 79 | -.file "match.S" | |
| 80 | - | |
| 81 | -.globl match_init, longest_match | |
| 82 | - | |
| 83 | -.text | |
| 84 | - | |
| 85 | -/* uInt longest_match(deflate_state *deflatestate, IPos curmatch) */ | |
| 86 | -.cfi_sections .debug_frame | |
| 87 | - | |
| 88 | -longest_match: | |
| 89 | - | |
| 90 | -.cfi_startproc | |
| 91 | -/* Save registers that the compiler may be using, and adjust %esp to */ | |
| 92 | -/* make room for our stack frame. */ | |
| 93 | - | |
| 94 | - pushl %ebp | |
| 95 | - .cfi_def_cfa_offset 8 | |
| 96 | - .cfi_offset ebp, -8 | |
| 97 | - pushl %edi | |
| 98 | - .cfi_def_cfa_offset 12 | |
| 99 | - pushl %esi | |
| 100 | - .cfi_def_cfa_offset 16 | |
| 101 | - pushl %ebx | |
| 102 | - .cfi_def_cfa_offset 20 | |
| 103 | - subl $LocalVarsSize, %esp | |
| 104 | - .cfi_def_cfa_offset LocalVarsSize+20 | |
| 105 | - | |
| 106 | -/* Retrieve the function arguments. %ecx will hold cur_match */ | |
| 107 | -/* throughout the entire function. %edx will hold the pointer to the */ | |
| 108 | -/* deflate_state structure during the function's setup (before */ | |
| 109 | -/* entering the main loop). */ | |
| 110 | - | |
| 111 | - movl deflatestate(%esp), %edx | |
| 112 | - movl curmatch(%esp), %ecx | |
| 113 | - | |
| 114 | -/* uInt wmask = s->w_mask; */ | |
| 115 | -/* unsigned chain_length = s->max_chain_length; */ | |
| 116 | -/* if (s->prev_length >= s->good_match) { */ | |
| 117 | -/* chain_length >>= 2; */ | |
| 118 | -/* } */ | |
| 119 | - | |
| 120 | - movl dsPrevLen(%edx), %eax | |
| 121 | - movl dsGoodMatch(%edx), %ebx | |
| 122 | - cmpl %ebx, %eax | |
| 123 | - movl dsWMask(%edx), %eax | |
| 124 | - movl dsMaxChainLen(%edx), %ebx | |
| 125 | - jl LastMatchGood | |
| 126 | - shrl $2, %ebx | |
| 127 | -LastMatchGood: | |
| 128 | - | |
| 129 | -/* chainlen is decremented once beforehand so that the function can */ | |
| 130 | -/* use the sign flag instead of the zero flag for the exit test. */ | |
| 131 | -/* It is then shifted into the high word, to make room for the wmask */ | |
| 132 | -/* value, which it will always accompany. */ | |
| 133 | - | |
| 134 | - decl %ebx | |
| 135 | - shll $16, %ebx | |
| 136 | - orl %eax, %ebx | |
| 137 | - movl %ebx, chainlenwmask(%esp) | |
| 138 | - | |
| 139 | -/* if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; */ | |
| 140 | - | |
| 141 | - movl dsNiceMatch(%edx), %eax | |
| 142 | - movl dsLookahead(%edx), %ebx | |
| 143 | - cmpl %eax, %ebx | |
| 144 | - jl LookaheadLess | |
| 145 | - movl %eax, %ebx | |
| 146 | -LookaheadLess: movl %ebx, nicematch(%esp) | |
| 147 | - | |
| 148 | -/* register Bytef *scan = s->window + s->strstart; */ | |
| 149 | - | |
| 150 | - movl dsWindow(%edx), %esi | |
| 151 | - movl %esi, window(%esp) | |
| 152 | - movl dsStrStart(%edx), %ebp | |
| 153 | - lea (%esi,%ebp), %edi | |
| 154 | - movl %edi, scan(%esp) | |
| 155 | - | |
| 156 | -/* Determine how many bytes the scan ptr is off from being */ | |
| 157 | -/* dword-aligned. */ | |
| 158 | - | |
| 159 | - movl %edi, %eax | |
| 160 | - negl %eax | |
| 161 | - andl $3, %eax | |
| 162 | - movl %eax, scanalign(%esp) | |
| 163 | - | |
| 164 | -/* IPos limit = s->strstart > (IPos)MAX_DIST(s) ? */ | |
| 165 | -/* s->strstart - (IPos)MAX_DIST(s) : NIL; */ | |
| 166 | - | |
| 167 | - movl dsWSize(%edx), %eax | |
| 168 | - subl $MIN_LOOKAHEAD, %eax | |
| 169 | - subl %eax, %ebp | |
| 170 | - jg LimitPositive | |
| 171 | - xorl %ebp, %ebp | |
| 172 | -LimitPositive: | |
| 173 | - | |
| 174 | -/* int best_len = s->prev_length; */ | |
| 175 | - | |
| 176 | - movl dsPrevLen(%edx), %eax | |
| 177 | - movl %eax, bestlen(%esp) | |
| 178 | - | |
| 179 | -/* Store the sum of s->window + best_len in %esi locally, and in %esi. */ | |
| 180 | - | |
| 181 | - addl %eax, %esi | |
| 182 | - movl %esi, windowbestlen(%esp) | |
| 183 | - | |
| 184 | -/* register ush scan_start = *(ushf*)scan; */ | |
| 185 | -/* register ush scan_end = *(ushf*)(scan+best_len-1); */ | |
| 186 | -/* Posf *prev = s->prev; */ | |
| 187 | - | |
| 188 | - movzwl (%edi), %ebx | |
| 189 | - movl %ebx, scanstart(%esp) | |
| 190 | - movzwl -1(%edi,%eax), %ebx | |
| 191 | - movl %ebx, scanend(%esp) | |
| 192 | - movl dsPrev(%edx), %edi | |
| 193 | - | |
| 194 | -/* Jump into the main loop. */ | |
| 195 | - | |
| 196 | - movl chainlenwmask(%esp), %edx | |
| 197 | - jmp LoopEntry | |
| 198 | - | |
| 199 | -.balign 16 | |
| 200 | - | |
| 201 | -/* do { | |
| 202 | - * match = s->window + cur_match; | |
| 203 | - * if (*(ushf*)(match+best_len-1) != scan_end || | |
| 204 | - * *(ushf*)match != scan_start) continue; | |
| 205 | - * [...] | |
| 206 | - * } while ((cur_match = prev[cur_match & wmask]) > limit | |
| 207 | - * && --chain_length != 0); | |
| 208 | - * | |
| 209 | - * Here is the inner loop of the function. The function will spend the | |
| 210 | - * majority of its time in this loop, and majority of that time will | |
| 211 | - * be spent in the first ten instructions. | |
| 212 | - * | |
| 213 | - * Within this loop: | |
| 214 | - * %ebx = scanend | |
| 215 | - * %ecx = curmatch | |
| 216 | - * %edx = chainlenwmask - i.e., ((chainlen << 16) | wmask) | |
| 217 | - * %esi = windowbestlen - i.e., (window + bestlen) | |
| 218 | - * %edi = prev | |
| 219 | - * %ebp = limit | |
| 220 | - */ | |
| 221 | -LookupLoop: | |
| 222 | - andl %edx, %ecx | |
| 223 | - movzwl (%edi,%ecx,2), %ecx | |
| 224 | - cmpl %ebp, %ecx | |
| 225 | - jbe LeaveNow | |
| 226 | - subl $0x00010000, %edx | |
| 227 | - js LeaveNow | |
| 228 | -LoopEntry: movzwl -1(%esi,%ecx), %eax | |
| 229 | - cmpl %ebx, %eax | |
| 230 | - jnz LookupLoop | |
| 231 | - movl window(%esp), %eax | |
| 232 | - movzwl (%eax,%ecx), %eax | |
| 233 | - cmpl scanstart(%esp), %eax | |
| 234 | - jnz LookupLoop | |
| 235 | - | |
| 236 | -/* Store the current value of chainlen. */ | |
| 237 | - | |
| 238 | - movl %edx, chainlenwmask(%esp) | |
| 239 | - | |
| 240 | -/* Point %edi to the string under scrutiny, and %esi to the string we */ | |
| 241 | -/* are hoping to match it up with. In actuality, %esi and %edi are */ | |
| 242 | -/* both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and %edx is */ | |
| 243 | -/* initialized to -(MAX_MATCH_8 - scanalign). */ | |
| 244 | - | |
| 245 | - movl window(%esp), %esi | |
| 246 | - movl scan(%esp), %edi | |
| 247 | - addl %ecx, %esi | |
| 248 | - movl scanalign(%esp), %eax | |
| 249 | - movl $(-MAX_MATCH_8), %edx | |
| 250 | - lea MAX_MATCH_8(%edi,%eax), %edi | |
| 251 | - lea MAX_MATCH_8(%esi,%eax), %esi | |
| 252 | - | |
| 253 | -/* Test the strings for equality, 8 bytes at a time. At the end, | |
| 254 | - * adjust %edx so that it is offset to the exact byte that mismatched. | |
| 255 | - * | |
| 256 | - * We already know at this point that the first three bytes of the | |
| 257 | - * strings match each other, and they can be safely passed over before | |
| 258 | - * starting the compare loop. So what this code does is skip over 0-3 | |
| 259 | - * bytes, as much as necessary in order to dword-align the %edi | |
| 260 | - * pointer. (%esi will still be misaligned three times out of four.) | |
| 261 | - * | |
| 262 | - * It should be confessed that this loop usually does not represent | |
| 263 | - * much of the total running time. Replacing it with a more | |
| 264 | - * straightforward "rep cmpsb" would not drastically degrade | |
| 265 | - * performance. | |
| 266 | - */ | |
| 267 | -LoopCmps: | |
| 268 | - movl (%esi,%edx), %eax | |
| 269 | - xorl (%edi,%edx), %eax | |
| 270 | - jnz LeaveLoopCmps | |
| 271 | - movl 4(%esi,%edx), %eax | |
| 272 | - xorl 4(%edi,%edx), %eax | |
| 273 | - jnz LeaveLoopCmps4 | |
| 274 | - addl $8, %edx | |
| 275 | - jnz LoopCmps | |
| 276 | - jmp LenMaximum | |
| 277 | -LeaveLoopCmps4: addl $4, %edx | |
| 278 | -LeaveLoopCmps: testl $0x0000FFFF, %eax | |
| 279 | - jnz LenLower | |
| 280 | - addl $2, %edx | |
| 281 | - shrl $16, %eax | |
| 282 | -LenLower: subb $1, %al | |
| 283 | - adcl $0, %edx | |
| 284 | - | |
| 285 | -/* Calculate the length of the match. If it is longer than MAX_MATCH, */ | |
| 286 | -/* then automatically accept it as the best possible match and leave. */ | |
| 287 | - | |
| 288 | - lea (%edi,%edx), %eax | |
| 289 | - movl scan(%esp), %edi | |
| 290 | - subl %edi, %eax | |
| 291 | - cmpl $MAX_MATCH, %eax | |
| 292 | - jge LenMaximum | |
| 293 | - | |
| 294 | -/* If the length of the match is not longer than the best match we */ | |
| 295 | -/* have so far, then forget it and return to the lookup loop. */ | |
| 296 | - | |
| 297 | - movl deflatestate(%esp), %edx | |
| 298 | - movl bestlen(%esp), %ebx | |
| 299 | - cmpl %ebx, %eax | |
| 300 | - jg LongerMatch | |
| 301 | - movl windowbestlen(%esp), %esi | |
| 302 | - movl dsPrev(%edx), %edi | |
| 303 | - movl scanend(%esp), %ebx | |
| 304 | - movl chainlenwmask(%esp), %edx | |
| 305 | - jmp LookupLoop | |
| 306 | - | |
| 307 | -/* s->match_start = cur_match; */ | |
| 308 | -/* best_len = len; */ | |
| 309 | -/* if (len >= nice_match) break; */ | |
| 310 | -/* scan_end = *(ushf*)(scan+best_len-1); */ | |
| 311 | - | |
| 312 | -LongerMatch: movl nicematch(%esp), %ebx | |
| 313 | - movl %eax, bestlen(%esp) | |
| 314 | - movl %ecx, dsMatchStart(%edx) | |
| 315 | - cmpl %ebx, %eax | |
| 316 | - jge LeaveNow | |
| 317 | - movl window(%esp), %esi | |
| 318 | - addl %eax, %esi | |
| 319 | - movl %esi, windowbestlen(%esp) | |
| 320 | - movzwl -1(%edi,%eax), %ebx | |
| 321 | - movl dsPrev(%edx), %edi | |
| 322 | - movl %ebx, scanend(%esp) | |
| 323 | - movl chainlenwmask(%esp), %edx | |
| 324 | - jmp LookupLoop | |
| 325 | - | |
| 326 | -/* Accept the current string, with the maximum possible length. */ | |
| 327 | - | |
| 328 | -LenMaximum: movl deflatestate(%esp), %edx | |
| 329 | - movl $MAX_MATCH, bestlen(%esp) | |
| 330 | - movl %ecx, dsMatchStart(%edx) | |
| 331 | - | |
| 332 | -/* if ((uInt)best_len <= s->lookahead) return (uInt)best_len; */ | |
| 333 | -/* return s->lookahead; */ | |
| 334 | - | |
| 335 | -LeaveNow: | |
| 336 | - movl deflatestate(%esp), %edx | |
| 337 | - movl bestlen(%esp), %ebx | |
| 338 | - movl dsLookahead(%edx), %eax | |
| 339 | - cmpl %eax, %ebx | |
| 340 | - jg LookaheadRet | |
| 341 | - movl %ebx, %eax | |
| 342 | -LookaheadRet: | |
| 343 | - | |
| 344 | -/* Restore the stack and return from whence we came. */ | |
| 345 | - | |
| 346 | - addl $LocalVarsSize, %esp | |
| 347 | - .cfi_def_cfa_offset 20 | |
| 348 | - popl %ebx | |
| 349 | - .cfi_def_cfa_offset 16 | |
| 350 | - popl %esi | |
| 351 | - .cfi_def_cfa_offset 12 | |
| 352 | - popl %edi | |
| 353 | - .cfi_def_cfa_offset 8 | |
| 354 | - popl %ebp | |
| 355 | - .cfi_def_cfa_offset 4 | |
| 356 | -.cfi_endproc | |
| 357 | -match_init: ret |
| --- a/compat/zlib/contrib/asm686/match.S | |
| +++ b/compat/zlib/contrib/asm686/match.S | |
| @@ -1,357 +0,0 @@ | |
| 1 | /* match.S -- x86 assembly version of the zlib longest_match() function. |
| 2 | * Optimized for the Intel 686 chips (PPro and later). |
| 3 | * |
| 4 | * Copyright (C) 1998, 2007 Brian Raiter <[email protected]> |
| 5 | * |
| 6 | * This software is provided 'as-is', without any express or implied |
| 7 | * warranty. In no event will the author be held liable for any damages |
| 8 | * arising from the use of this software. |
| 9 | * |
| 10 | * Permission is granted to anyone to use this software for any purpose, |
| 11 | * including commercial applications, and to alter it and redistribute it |
| 12 | * freely, subject to the following restrictions: |
| 13 | * |
| 14 | * 1. The origin of this software must not be misrepresented; you must not |
| 15 | * claim that you wrote the original software. If you use this software |
| 16 | * in a product, an acknowledgment in the product documentation would be |
| 17 | * appreciated but is not required. |
| 18 | * 2. Altered source versions must be plainly marked as such, and must not be |
| 19 | * misrepresented as being the original software. |
| 20 | * 3. This notice may not be removed or altered from any source distribution. |
| 21 | */ |
| 22 | |
| 23 | #ifndef NO_UNDERLINE |
| 24 | #define match_init _match_init |
| 25 | #define longest_match _longest_match |
| 26 | #endif |
| 27 | |
| 28 | #define MAX_MATCH (258) |
| 29 | #define MIN_MATCH (3) |
| 30 | #define MIN_LOOKAHEAD (MAX_MATCH + MIN_MATCH + 1) |
| 31 | #define MAX_MATCH_8 ((MAX_MATCH + 7) & ~7) |
| 32 | |
| 33 | /* stack frame offsets */ |
| 34 | |
| 35 | #define chainlenwmask 0 /* high word: current chain len */ |
| 36 | /* low word: s->wmask */ |
| 37 | #define window 4 /* local copy of s->window */ |
| 38 | #define windowbestlen 8 /* s->window + bestlen */ |
| 39 | #define scanstart 16 /* first two bytes of string */ |
| 40 | #define scanend 12 /* last two bytes of string */ |
| 41 | #define scanalign 20 /* dword-misalignment of string */ |
| 42 | #define nicematch 24 /* a good enough match size */ |
| 43 | #define bestlen 28 /* size of best match so far */ |
| 44 | #define scan 32 /* ptr to string wanting match */ |
| 45 | |
| 46 | #define LocalVarsSize (36) |
| 47 | /* saved ebx 36 */ |
| 48 | /* saved edi 40 */ |
| 49 | /* saved esi 44 */ |
| 50 | /* saved ebp 48 */ |
| 51 | /* return address 52 */ |
| 52 | #define deflatestate 56 /* the function arguments */ |
| 53 | #define curmatch 60 |
| 54 | |
| 55 | /* All the +zlib1222add offsets are due to the addition of fields |
| 56 | * in zlib in the deflate_state structure since the asm code was first written |
| 57 | * (if you compile with zlib 1.0.4 or older, use "zlib1222add equ (-4)"). |
| 58 | * (if you compile with zlib between 1.0.5 and 1.2.2.1, use "zlib1222add equ 0"). |
| 59 | * if you compile with zlib 1.2.2.2 or later , use "zlib1222add equ 8"). |
| 60 | */ |
| 61 | |
| 62 | #define zlib1222add (8) |
| 63 | |
| 64 | #define dsWSize (36+zlib1222add) |
| 65 | #define dsWMask (44+zlib1222add) |
| 66 | #define dsWindow (48+zlib1222add) |
| 67 | #define dsPrev (56+zlib1222add) |
| 68 | #define dsMatchLen (88+zlib1222add) |
| 69 | #define dsPrevMatch (92+zlib1222add) |
| 70 | #define dsStrStart (100+zlib1222add) |
| 71 | #define dsMatchStart (104+zlib1222add) |
| 72 | #define dsLookahead (108+zlib1222add) |
| 73 | #define dsPrevLen (112+zlib1222add) |
| 74 | #define dsMaxChainLen (116+zlib1222add) |
| 75 | #define dsGoodMatch (132+zlib1222add) |
| 76 | #define dsNiceMatch (136+zlib1222add) |
| 77 | |
| 78 | |
| 79 | .file "match.S" |
| 80 | |
| 81 | .globl match_init, longest_match |
| 82 | |
| 83 | .text |
| 84 | |
| 85 | /* uInt longest_match(deflate_state *deflatestate, IPos curmatch) */ |
| 86 | .cfi_sections .debug_frame |
| 87 | |
| 88 | longest_match: |
| 89 | |
| 90 | .cfi_startproc |
| 91 | /* Save registers that the compiler may be using, and adjust %esp to */ |
| 92 | /* make room for our stack frame. */ |
| 93 | |
| 94 | pushl %ebp |
| 95 | .cfi_def_cfa_offset 8 |
| 96 | .cfi_offset ebp, -8 |
| 97 | pushl %edi |
| 98 | .cfi_def_cfa_offset 12 |
| 99 | pushl %esi |
| 100 | .cfi_def_cfa_offset 16 |
| 101 | pushl %ebx |
| 102 | .cfi_def_cfa_offset 20 |
| 103 | subl $LocalVarsSize, %esp |
| 104 | .cfi_def_cfa_offset LocalVarsSize+20 |
| 105 | |
| 106 | /* Retrieve the function arguments. %ecx will hold cur_match */ |
| 107 | /* throughout the entire function. %edx will hold the pointer to the */ |
| 108 | /* deflate_state structure during the function's setup (before */ |
| 109 | /* entering the main loop). */ |
| 110 | |
| 111 | movl deflatestate(%esp), %edx |
| 112 | movl curmatch(%esp), %ecx |
| 113 | |
| 114 | /* uInt wmask = s->w_mask; */ |
| 115 | /* unsigned chain_length = s->max_chain_length; */ |
| 116 | /* if (s->prev_length >= s->good_match) { */ |
| 117 | /* chain_length >>= 2; */ |
| 118 | /* } */ |
| 119 | |
| 120 | movl dsPrevLen(%edx), %eax |
| 121 | movl dsGoodMatch(%edx), %ebx |
| 122 | cmpl %ebx, %eax |
| 123 | movl dsWMask(%edx), %eax |
| 124 | movl dsMaxChainLen(%edx), %ebx |
| 125 | jl LastMatchGood |
| 126 | shrl $2, %ebx |
| 127 | LastMatchGood: |
| 128 | |
| 129 | /* chainlen is decremented once beforehand so that the function can */ |
| 130 | /* use the sign flag instead of the zero flag for the exit test. */ |
| 131 | /* It is then shifted into the high word, to make room for the wmask */ |
| 132 | /* value, which it will always accompany. */ |
| 133 | |
| 134 | decl %ebx |
| 135 | shll $16, %ebx |
| 136 | orl %eax, %ebx |
| 137 | movl %ebx, chainlenwmask(%esp) |
| 138 | |
| 139 | /* if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; */ |
| 140 | |
| 141 | movl dsNiceMatch(%edx), %eax |
| 142 | movl dsLookahead(%edx), %ebx |
| 143 | cmpl %eax, %ebx |
| 144 | jl LookaheadLess |
| 145 | movl %eax, %ebx |
| 146 | LookaheadLess: movl %ebx, nicematch(%esp) |
| 147 | |
| 148 | /* register Bytef *scan = s->window + s->strstart; */ |
| 149 | |
| 150 | movl dsWindow(%edx), %esi |
| 151 | movl %esi, window(%esp) |
| 152 | movl dsStrStart(%edx), %ebp |
| 153 | lea (%esi,%ebp), %edi |
| 154 | movl %edi, scan(%esp) |
| 155 | |
| 156 | /* Determine how many bytes the scan ptr is off from being */ |
| 157 | /* dword-aligned. */ |
| 158 | |
| 159 | movl %edi, %eax |
| 160 | negl %eax |
| 161 | andl $3, %eax |
| 162 | movl %eax, scanalign(%esp) |
| 163 | |
| 164 | /* IPos limit = s->strstart > (IPos)MAX_DIST(s) ? */ |
| 165 | /* s->strstart - (IPos)MAX_DIST(s) : NIL; */ |
| 166 | |
| 167 | movl dsWSize(%edx), %eax |
| 168 | subl $MIN_LOOKAHEAD, %eax |
| 169 | subl %eax, %ebp |
| 170 | jg LimitPositive |
| 171 | xorl %ebp, %ebp |
| 172 | LimitPositive: |
| 173 | |
| 174 | /* int best_len = s->prev_length; */ |
| 175 | |
| 176 | movl dsPrevLen(%edx), %eax |
| 177 | movl %eax, bestlen(%esp) |
| 178 | |
| 179 | /* Store the sum of s->window + best_len in %esi locally, and in %esi. */ |
| 180 | |
| 181 | addl %eax, %esi |
| 182 | movl %esi, windowbestlen(%esp) |
| 183 | |
| 184 | /* register ush scan_start = *(ushf*)scan; */ |
| 185 | /* register ush scan_end = *(ushf*)(scan+best_len-1); */ |
| 186 | /* Posf *prev = s->prev; */ |
| 187 | |
| 188 | movzwl (%edi), %ebx |
| 189 | movl %ebx, scanstart(%esp) |
| 190 | movzwl -1(%edi,%eax), %ebx |
| 191 | movl %ebx, scanend(%esp) |
| 192 | movl dsPrev(%edx), %edi |
| 193 | |
| 194 | /* Jump into the main loop. */ |
| 195 | |
| 196 | movl chainlenwmask(%esp), %edx |
| 197 | jmp LoopEntry |
| 198 | |
| 199 | .balign 16 |
| 200 | |
| 201 | /* do { |
| 202 | * match = s->window + cur_match; |
| 203 | * if (*(ushf*)(match+best_len-1) != scan_end || |
| 204 | * *(ushf*)match != scan_start) continue; |
| 205 | * [...] |
| 206 | * } while ((cur_match = prev[cur_match & wmask]) > limit |
| 207 | * && --chain_length != 0); |
| 208 | * |
| 209 | * Here is the inner loop of the function. The function will spend the |
| 210 | * majority of its time in this loop, and majority of that time will |
| 211 | * be spent in the first ten instructions. |
| 212 | * |
| 213 | * Within this loop: |
| 214 | * %ebx = scanend |
| 215 | * %ecx = curmatch |
| 216 | * %edx = chainlenwmask - i.e., ((chainlen << 16) | wmask) |
| 217 | * %esi = windowbestlen - i.e., (window + bestlen) |
| 218 | * %edi = prev |
| 219 | * %ebp = limit |
| 220 | */ |
| 221 | LookupLoop: |
| 222 | andl %edx, %ecx |
| 223 | movzwl (%edi,%ecx,2), %ecx |
| 224 | cmpl %ebp, %ecx |
| 225 | jbe LeaveNow |
| 226 | subl $0x00010000, %edx |
| 227 | js LeaveNow |
| 228 | LoopEntry: movzwl -1(%esi,%ecx), %eax |
| 229 | cmpl %ebx, %eax |
| 230 | jnz LookupLoop |
| 231 | movl window(%esp), %eax |
| 232 | movzwl (%eax,%ecx), %eax |
| 233 | cmpl scanstart(%esp), %eax |
| 234 | jnz LookupLoop |
| 235 | |
| 236 | /* Store the current value of chainlen. */ |
| 237 | |
| 238 | movl %edx, chainlenwmask(%esp) |
| 239 | |
| 240 | /* Point %edi to the string under scrutiny, and %esi to the string we */ |
| 241 | /* are hoping to match it up with. In actuality, %esi and %edi are */ |
| 242 | /* both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and %edx is */ |
| 243 | /* initialized to -(MAX_MATCH_8 - scanalign). */ |
| 244 | |
| 245 | movl window(%esp), %esi |
| 246 | movl scan(%esp), %edi |
| 247 | addl %ecx, %esi |
| 248 | movl scanalign(%esp), %eax |
| 249 | movl $(-MAX_MATCH_8), %edx |
| 250 | lea MAX_MATCH_8(%edi,%eax), %edi |
| 251 | lea MAX_MATCH_8(%esi,%eax), %esi |
| 252 | |
| 253 | /* Test the strings for equality, 8 bytes at a time. At the end, |
| 254 | * adjust %edx so that it is offset to the exact byte that mismatched. |
| 255 | * |
| 256 | * We already know at this point that the first three bytes of the |
| 257 | * strings match each other, and they can be safely passed over before |
| 258 | * starting the compare loop. So what this code does is skip over 0-3 |
| 259 | * bytes, as much as necessary in order to dword-align the %edi |
| 260 | * pointer. (%esi will still be misaligned three times out of four.) |
| 261 | * |
| 262 | * It should be confessed that this loop usually does not represent |
| 263 | * much of the total running time. Replacing it with a more |
| 264 | * straightforward "rep cmpsb" would not drastically degrade |
| 265 | * performance. |
| 266 | */ |
| 267 | LoopCmps: |
| 268 | movl (%esi,%edx), %eax |
| 269 | xorl (%edi,%edx), %eax |
| 270 | jnz LeaveLoopCmps |
| 271 | movl 4(%esi,%edx), %eax |
| 272 | xorl 4(%edi,%edx), %eax |
| 273 | jnz LeaveLoopCmps4 |
| 274 | addl $8, %edx |
| 275 | jnz LoopCmps |
| 276 | jmp LenMaximum |
| 277 | LeaveLoopCmps4: addl $4, %edx |
| 278 | LeaveLoopCmps: testl $0x0000FFFF, %eax |
| 279 | jnz LenLower |
| 280 | addl $2, %edx |
| 281 | shrl $16, %eax |
| 282 | LenLower: subb $1, %al |
| 283 | adcl $0, %edx |
| 284 | |
| 285 | /* Calculate the length of the match. If it is longer than MAX_MATCH, */ |
| 286 | /* then automatically accept it as the best possible match and leave. */ |
| 287 | |
| 288 | lea (%edi,%edx), %eax |
| 289 | movl scan(%esp), %edi |
| 290 | subl %edi, %eax |
| 291 | cmpl $MAX_MATCH, %eax |
| 292 | jge LenMaximum |
| 293 | |
| 294 | /* If the length of the match is not longer than the best match we */ |
| 295 | /* have so far, then forget it and return to the lookup loop. */ |
| 296 | |
| 297 | movl deflatestate(%esp), %edx |
| 298 | movl bestlen(%esp), %ebx |
| 299 | cmpl %ebx, %eax |
| 300 | jg LongerMatch |
| 301 | movl windowbestlen(%esp), %esi |
| 302 | movl dsPrev(%edx), %edi |
| 303 | movl scanend(%esp), %ebx |
| 304 | movl chainlenwmask(%esp), %edx |
| 305 | jmp LookupLoop |
| 306 | |
| 307 | /* s->match_start = cur_match; */ |
| 308 | /* best_len = len; */ |
| 309 | /* if (len >= nice_match) break; */ |
| 310 | /* scan_end = *(ushf*)(scan+best_len-1); */ |
| 311 | |
| 312 | LongerMatch: movl nicematch(%esp), %ebx |
| 313 | movl %eax, bestlen(%esp) |
| 314 | movl %ecx, dsMatchStart(%edx) |
| 315 | cmpl %ebx, %eax |
| 316 | jge LeaveNow |
| 317 | movl window(%esp), %esi |
| 318 | addl %eax, %esi |
| 319 | movl %esi, windowbestlen(%esp) |
| 320 | movzwl -1(%edi,%eax), %ebx |
| 321 | movl dsPrev(%edx), %edi |
| 322 | movl %ebx, scanend(%esp) |
| 323 | movl chainlenwmask(%esp), %edx |
| 324 | jmp LookupLoop |
| 325 | |
| 326 | /* Accept the current string, with the maximum possible length. */ |
| 327 | |
| 328 | LenMaximum: movl deflatestate(%esp), %edx |
| 329 | movl $MAX_MATCH, bestlen(%esp) |
| 330 | movl %ecx, dsMatchStart(%edx) |
| 331 | |
| 332 | /* if ((uInt)best_len <= s->lookahead) return (uInt)best_len; */ |
| 333 | /* return s->lookahead; */ |
| 334 | |
| 335 | LeaveNow: |
| 336 | movl deflatestate(%esp), %edx |
| 337 | movl bestlen(%esp), %ebx |
| 338 | movl dsLookahead(%edx), %eax |
| 339 | cmpl %eax, %ebx |
| 340 | jg LookaheadRet |
| 341 | movl %ebx, %eax |
| 342 | LookaheadRet: |
| 343 | |
| 344 | /* Restore the stack and return from whence we came. */ |
| 345 | |
| 346 | addl $LocalVarsSize, %esp |
| 347 | .cfi_def_cfa_offset 20 |
| 348 | popl %ebx |
| 349 | .cfi_def_cfa_offset 16 |
| 350 | popl %esi |
| 351 | .cfi_def_cfa_offset 12 |
| 352 | popl %edi |
| 353 | .cfi_def_cfa_offset 8 |
| 354 | popl %ebp |
| 355 | .cfi_def_cfa_offset 4 |
| 356 | .cfi_endproc |
| 357 | match_init: ret |
| --- a/compat/zlib/contrib/asm686/match.S | |
| +++ b/compat/zlib/contrib/asm686/match.S | |
| @@ -1,357 +0,0 @@ | |
| --- compat/zlib/contrib/delphi/ZLib.pas | ||
| +++ compat/zlib/contrib/delphi/ZLib.pas | ||
| @@ -150,11 +150,11 @@ | ||
| 150 | 150 | BufSize = number of bytes in OutBuf } |
| 151 | 151 | procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; |
| 152 | 152 | const OutBuf: Pointer; BufSize: Integer); |
| 153 | 153 | |
| 154 | 154 | const |
| 155 | - zlib_version = '1.2.12'; | |
| 155 | + zlib_version = '1.2.13'; | |
| 156 | 156 | |
| 157 | 157 | type |
| 158 | 158 | EZlibError = class(Exception); |
| 159 | 159 | ECompressionError = class(EZlibError); |
| 160 | 160 | EDecompressionError = class(EZlibError); |
| 161 | 161 |
| --- compat/zlib/contrib/delphi/ZLib.pas | |
| +++ compat/zlib/contrib/delphi/ZLib.pas | |
| @@ -150,11 +150,11 @@ | |
| 150 | BufSize = number of bytes in OutBuf } |
| 151 | procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; |
| 152 | const OutBuf: Pointer; BufSize: Integer); |
| 153 | |
| 154 | const |
| 155 | zlib_version = '1.2.12'; |
| 156 | |
| 157 | type |
| 158 | EZlibError = class(Exception); |
| 159 | ECompressionError = class(EZlibError); |
| 160 | EDecompressionError = class(EZlibError); |
| 161 |
| --- compat/zlib/contrib/delphi/ZLib.pas | |
| +++ compat/zlib/contrib/delphi/ZLib.pas | |
| @@ -150,11 +150,11 @@ | |
| 150 | BufSize = number of bytes in OutBuf } |
| 151 | procedure DecompressToUserBuf(const InBuf: Pointer; InBytes: Integer; |
| 152 | const OutBuf: Pointer; BufSize: Integer); |
| 153 | |
| 154 | const |
| 155 | zlib_version = '1.2.13'; |
| 156 | |
| 157 | type |
| 158 | EZlibError = class(Exception); |
| 159 | ECompressionError = class(EZlibError); |
| 160 | EDecompressionError = class(EZlibError); |
| 161 |
| --- compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs | ||
| +++ compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs | ||
| @@ -154,11 +154,11 @@ | ||
| 154 | 154 | #region Info tests |
| 155 | 155 | [Test] |
| 156 | 156 | public void Info_Version() |
| 157 | 157 | { |
| 158 | 158 | Info info = new Info(); |
| 159 | - Assert.AreEqual("1.2.12", Info.Version); | |
| 159 | + Assert.AreEqual("1.2.13", Info.Version); | |
| 160 | 160 | Assert.AreEqual(32, info.SizeOfUInt); |
| 161 | 161 | Assert.AreEqual(32, info.SizeOfULong); |
| 162 | 162 | Assert.AreEqual(32, info.SizeOfPointer); |
| 163 | 163 | Assert.AreEqual(32, info.SizeOfOffset); |
| 164 | 164 | } |
| 165 | 165 |
| --- compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs | |
| +++ compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs | |
| @@ -154,11 +154,11 @@ | |
| 154 | #region Info tests |
| 155 | [Test] |
| 156 | public void Info_Version() |
| 157 | { |
| 158 | Info info = new Info(); |
| 159 | Assert.AreEqual("1.2.12", Info.Version); |
| 160 | Assert.AreEqual(32, info.SizeOfUInt); |
| 161 | Assert.AreEqual(32, info.SizeOfULong); |
| 162 | Assert.AreEqual(32, info.SizeOfPointer); |
| 163 | Assert.AreEqual(32, info.SizeOfOffset); |
| 164 | } |
| 165 |
| --- compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs | |
| +++ compat/zlib/contrib/dotzlib/DotZLib/UnitTests.cs | |
| @@ -154,11 +154,11 @@ | |
| 154 | #region Info tests |
| 155 | [Test] |
| 156 | public void Info_Version() |
| 157 | { |
| 158 | Info info = new Info(); |
| 159 | Assert.AreEqual("1.2.13", Info.Version); |
| 160 | Assert.AreEqual(32, info.SizeOfUInt); |
| 161 | Assert.AreEqual(32, info.SizeOfULong); |
| 162 | Assert.AreEqual(32, info.SizeOfPointer); |
| 163 | Assert.AreEqual(32, info.SizeOfOffset); |
| 164 | } |
| 165 |
| --- compat/zlib/contrib/infback9/inftree9.c | ||
| +++ compat/zlib/contrib/infback9/inftree9.c | ||
| @@ -7,11 +7,11 @@ | ||
| 7 | 7 | #include "inftree9.h" |
| 8 | 8 | |
| 9 | 9 | #define MAXBITS 15 |
| 10 | 10 | |
| 11 | 11 | const char inflate9_copyright[] = |
| 12 | - " inflate9 1.2.12 Copyright 1995-2022 Mark Adler "; | |
| 12 | + " inflate9 1.2.13 Copyright 1995-2022 Mark Adler "; | |
| 13 | 13 | /* |
| 14 | 14 | If you use the zlib library in a product, an acknowledgment is welcome |
| 15 | 15 | in the documentation of your product. If for some reason you cannot |
| 16 | 16 | include such an acknowledgment, I would appreciate that you keep this |
| 17 | 17 | copyright string in the executable of your product. |
| @@ -62,11 +62,11 @@ | ||
| 62 | 62 | 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, |
| 63 | 63 | 131, 163, 195, 227, 3, 0, 0}; |
| 64 | 64 | static const unsigned short lext[31] = { /* Length codes 257..285 extra */ |
| 65 | 65 | 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, |
| 66 | 66 | 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132, |
| 67 | - 133, 133, 133, 133, 144, 199, 202}; | |
| 67 | + 133, 133, 133, 133, 144, 194, 65}; | |
| 68 | 68 | static const unsigned short dbase[32] = { /* Distance codes 0..31 base */ |
| 69 | 69 | 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, |
| 70 | 70 | 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, |
| 71 | 71 | 4097, 6145, 8193, 12289, 16385, 24577, 32769, 49153}; |
| 72 | 72 | static const unsigned short dext[32] = { /* Distance codes 0..31 extra */ |
| 73 | 73 |
| --- compat/zlib/contrib/infback9/inftree9.c | |
| +++ compat/zlib/contrib/infback9/inftree9.c | |
| @@ -7,11 +7,11 @@ | |
| 7 | #include "inftree9.h" |
| 8 | |
| 9 | #define MAXBITS 15 |
| 10 | |
| 11 | const char inflate9_copyright[] = |
| 12 | " inflate9 1.2.12 Copyright 1995-2022 Mark Adler "; |
| 13 | /* |
| 14 | If you use the zlib library in a product, an acknowledgment is welcome |
| 15 | in the documentation of your product. If for some reason you cannot |
| 16 | include such an acknowledgment, I would appreciate that you keep this |
| 17 | copyright string in the executable of your product. |
| @@ -62,11 +62,11 @@ | |
| 62 | 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, |
| 63 | 131, 163, 195, 227, 3, 0, 0}; |
| 64 | static const unsigned short lext[31] = { /* Length codes 257..285 extra */ |
| 65 | 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, |
| 66 | 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132, |
| 67 | 133, 133, 133, 133, 144, 199, 202}; |
| 68 | static const unsigned short dbase[32] = { /* Distance codes 0..31 base */ |
| 69 | 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, |
| 70 | 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, |
| 71 | 4097, 6145, 8193, 12289, 16385, 24577, 32769, 49153}; |
| 72 | static const unsigned short dext[32] = { /* Distance codes 0..31 extra */ |
| 73 |
| --- compat/zlib/contrib/infback9/inftree9.c | |
| +++ compat/zlib/contrib/infback9/inftree9.c | |
| @@ -7,11 +7,11 @@ | |
| 7 | #include "inftree9.h" |
| 8 | |
| 9 | #define MAXBITS 15 |
| 10 | |
| 11 | const char inflate9_copyright[] = |
| 12 | " inflate9 1.2.13 Copyright 1995-2022 Mark Adler "; |
| 13 | /* |
| 14 | If you use the zlib library in a product, an acknowledgment is welcome |
| 15 | in the documentation of your product. If for some reason you cannot |
| 16 | include such an acknowledgment, I would appreciate that you keep this |
| 17 | copyright string in the executable of your product. |
| @@ -62,11 +62,11 @@ | |
| 62 | 19, 23, 27, 31, 35, 43, 51, 59, 67, 83, 99, 115, |
| 63 | 131, 163, 195, 227, 3, 0, 0}; |
| 64 | static const unsigned short lext[31] = { /* Length codes 257..285 extra */ |
| 65 | 128, 128, 128, 128, 128, 128, 128, 128, 129, 129, 129, 129, |
| 66 | 130, 130, 130, 130, 131, 131, 131, 131, 132, 132, 132, 132, |
| 67 | 133, 133, 133, 133, 144, 194, 65}; |
| 68 | static const unsigned short dbase[32] = { /* Distance codes 0..31 base */ |
| 69 | 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, |
| 70 | 65, 97, 129, 193, 257, 385, 513, 769, 1025, 1537, 2049, 3073, |
| 71 | 4097, 6145, 8193, 12289, 16385, 24577, 32769, 49153}; |
| 72 | static const unsigned short dext[32] = { /* Distance codes 0..31 extra */ |
| 73 |
| --- compat/zlib/contrib/infback9/inftree9.h | ||
| +++ compat/zlib/contrib/infback9/inftree9.h | ||
| @@ -36,11 +36,11 @@ | ||
| 36 | 36 | */ |
| 37 | 37 | |
| 38 | 38 | /* Maximum size of the dynamic table. The maximum number of code structures is |
| 39 | 39 | 1446, which is the sum of 852 for literal/length codes and 594 for distance |
| 40 | 40 | codes. These values were found by exhaustive searches using the program |
| 41 | - examples/enough.c found in the zlib distribtution. The arguments to that | |
| 41 | + examples/enough.c found in the zlib distribution. The arguments to that | |
| 42 | 42 | program are the number of symbols, the initial root table size, and the |
| 43 | 43 | maximum bit length of a code. "enough 286 9 15" for literal/length codes |
| 44 | 44 | returns returns 852, and "enough 32 6 15" for distance codes returns 594. |
| 45 | 45 | The initial root table size (9 or 6) is found in the fifth argument of the |
| 46 | 46 | inflate_table() calls in infback9.c. If the root table size is changed, |
| 47 | 47 | |
| 48 | 48 | DELETED compat/zlib/contrib/inflate86/inffas86.c |
| 49 | 49 | DELETED compat/zlib/contrib/inflate86/inffast.S |
| 50 | 50 | DELETED compat/zlib/contrib/masmx64/bld_ml64.bat |
| 51 | 51 | DELETED compat/zlib/contrib/masmx64/gvmat64.asm |
| 52 | 52 | DELETED compat/zlib/contrib/masmx64/inffas8664.c |
| 53 | 53 | DELETED compat/zlib/contrib/masmx64/inffasx64.asm |
| 54 | 54 | DELETED compat/zlib/contrib/masmx64/readme.txt |
| 55 | 55 | DELETED compat/zlib/contrib/masmx86/bld_ml32.bat |
| 56 | 56 | DELETED compat/zlib/contrib/masmx86/inffas32.asm |
| 57 | 57 | DELETED compat/zlib/contrib/masmx86/match686.asm |
| 58 | 58 | DELETED compat/zlib/contrib/masmx86/readme.txt |
| --- compat/zlib/contrib/infback9/inftree9.h | |
| +++ compat/zlib/contrib/infback9/inftree9.h | |
| @@ -36,11 +36,11 @@ | |
| 36 | */ |
| 37 | |
| 38 | /* Maximum size of the dynamic table. The maximum number of code structures is |
| 39 | 1446, which is the sum of 852 for literal/length codes and 594 for distance |
| 40 | codes. These values were found by exhaustive searches using the program |
| 41 | examples/enough.c found in the zlib distribtution. The arguments to that |
| 42 | program are the number of symbols, the initial root table size, and the |
| 43 | maximum bit length of a code. "enough 286 9 15" for literal/length codes |
| 44 | returns returns 852, and "enough 32 6 15" for distance codes returns 594. |
| 45 | The initial root table size (9 or 6) is found in the fifth argument of the |
| 46 | inflate_table() calls in infback9.c. If the root table size is changed, |
| 47 | |
| 48 | ELETED compat/zlib/contrib/inflate86/inffas86.c |
| 49 | ELETED compat/zlib/contrib/inflate86/inffast.S |
| 50 | ELETED compat/zlib/contrib/masmx64/bld_ml64.bat |
| 51 | ELETED compat/zlib/contrib/masmx64/gvmat64.asm |
| 52 | ELETED compat/zlib/contrib/masmx64/inffas8664.c |
| 53 | ELETED compat/zlib/contrib/masmx64/inffasx64.asm |
| 54 | ELETED compat/zlib/contrib/masmx64/readme.txt |
| 55 | ELETED compat/zlib/contrib/masmx86/bld_ml32.bat |
| 56 | ELETED compat/zlib/contrib/masmx86/inffas32.asm |
| 57 | ELETED compat/zlib/contrib/masmx86/match686.asm |
| 58 | ELETED compat/zlib/contrib/masmx86/readme.txt |
| --- compat/zlib/contrib/infback9/inftree9.h | |
| +++ compat/zlib/contrib/infback9/inftree9.h | |
| @@ -36,11 +36,11 @@ | |
| 36 | */ |
| 37 | |
| 38 | /* Maximum size of the dynamic table. The maximum number of code structures is |
| 39 | 1446, which is the sum of 852 for literal/length codes and 594 for distance |
| 40 | codes. These values were found by exhaustive searches using the program |
| 41 | examples/enough.c found in the zlib distribution. The arguments to that |
| 42 | program are the number of symbols, the initial root table size, and the |
| 43 | maximum bit length of a code. "enough 286 9 15" for literal/length codes |
| 44 | returns returns 852, and "enough 32 6 15" for distance codes returns 594. |
| 45 | The initial root table size (9 or 6) is found in the fifth argument of the |
| 46 | inflate_table() calls in infback9.c. If the root table size is changed, |
| 47 | |
| 48 | ELETED compat/zlib/contrib/inflate86/inffas86.c |
| 49 | ELETED compat/zlib/contrib/inflate86/inffast.S |
| 50 | ELETED compat/zlib/contrib/masmx64/bld_ml64.bat |
| 51 | ELETED compat/zlib/contrib/masmx64/gvmat64.asm |
| 52 | ELETED compat/zlib/contrib/masmx64/inffas8664.c |
| 53 | ELETED compat/zlib/contrib/masmx64/inffasx64.asm |
| 54 | ELETED compat/zlib/contrib/masmx64/readme.txt |
| 55 | ELETED compat/zlib/contrib/masmx86/bld_ml32.bat |
| 56 | ELETED compat/zlib/contrib/masmx86/inffas32.asm |
| 57 | ELETED compat/zlib/contrib/masmx86/match686.asm |
| 58 | ELETED compat/zlib/contrib/masmx86/readme.txt |
D
compat/zlib/contrib/inflate86/inffas86.c
-1157
| --- a/compat/zlib/contrib/inflate86/inffas86.c | ||
| +++ b/compat/zlib/contrib/inflate86/inffas86.c | ||
| @@ -1,1157 +0,0 @@ | ||
| 1 | -/* inffas86.c is a hand tuned assembler version of | |
| 2 | - * | |
| 3 | - * inffast.c -- fast decoding | |
| 4 | - * Copyright (C) 1995-2003 Mark Adler | |
| 5 | - * For conditions of distribution and use, see copyright notice in zlib.h | |
| 6 | - * | |
| 7 | - * Copyright (C) 2003 Chris Anderson <[email protected]> | |
| 8 | - * Please use the copyright conditions above. | |
| 9 | - * | |
| 10 | - * Dec-29-2003 -- I added AMD64 inflate asm support. This version is also | |
| 11 | - * slightly quicker on x86 systems because, instead of using rep movsb to copy | |
| 12 | - * data, it uses rep movsw, which moves data in 2-byte chunks instead of single | |
| 13 | - * bytes. I've tested the AMD64 code on a Fedora Core 1 + the x86_64 updates | |
| 14 | - * from http://fedora.linux.duke.edu/fc1_x86_64 | |
| 15 | - * which is running on an Athlon 64 3000+ / Gigabyte GA-K8VT800M system with | |
| 16 | - * 1GB ram. The 64-bit version is about 4% faster than the 32-bit version, | |
| 17 | - * when decompressing mozilla-source-1.3.tar.gz. | |
| 18 | - * | |
| 19 | - * Mar-13-2003 -- Most of this is derived from inffast.S which is derived from | |
| 20 | - * the gcc -S output of zlib-1.2.0/inffast.c. Zlib-1.2.0 is in beta release at | |
| 21 | - * the moment. I have successfully compiled and tested this code with gcc2.96, | |
| 22 | - * gcc3.2, icc5.0, msvc6.0. It is very close to the speed of inffast.S | |
| 23 | - * compiled with gcc -DNO_MMX, but inffast.S is still faster on the P3 with MMX | |
| 24 | - * enabled. I will attempt to merge the MMX code into this version. Newer | |
| 25 | - * versions of this and inffast.S can be found at | |
| 26 | - * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ | |
| 27 | - */ | |
| 28 | - | |
| 29 | -#include "zutil.h" | |
| 30 | -#include "inftrees.h" | |
| 31 | -#include "inflate.h" | |
| 32 | -#include "inffast.h" | |
| 33 | - | |
| 34 | -/* Mark Adler's comments from inffast.c: */ | |
| 35 | - | |
| 36 | -/* | |
| 37 | - Decode literal, length, and distance codes and write out the resulting | |
| 38 | - literal and match bytes until either not enough input or output is | |
| 39 | - available, an end-of-block is encountered, or a data error is encountered. | |
| 40 | - When large enough input and output buffers are supplied to inflate(), for | |
| 41 | - example, a 16K input buffer and a 64K output buffer, more than 95% of the | |
| 42 | - inflate execution time is spent in this routine. | |
| 43 | - | |
| 44 | - Entry assumptions: | |
| 45 | - | |
| 46 | - state->mode == LEN | |
| 47 | - strm->avail_in >= 6 | |
| 48 | - strm->avail_out >= 258 | |
| 49 | - start >= strm->avail_out | |
| 50 | - state->bits < 8 | |
| 51 | - | |
| 52 | - On return, state->mode is one of: | |
| 53 | - | |
| 54 | - LEN -- ran out of enough output space or enough available input | |
| 55 | - TYPE -- reached end of block code, inflate() to interpret next block | |
| 56 | - BAD -- error in block data | |
| 57 | - | |
| 58 | - Notes: | |
| 59 | - | |
| 60 | - - The maximum input bits used by a length/distance pair is 15 bits for the | |
| 61 | - length code, 5 bits for the length extra, 15 bits for the distance code, | |
| 62 | - and 13 bits for the distance extra. This totals 48 bits, or six bytes. | |
| 63 | - Therefore if strm->avail_in >= 6, then there is enough input to avoid | |
| 64 | - checking for available input while decoding. | |
| 65 | - | |
| 66 | - - The maximum bytes that a single length/distance pair can output is 258 | |
| 67 | - bytes, which is the maximum length that can be coded. inflate_fast() | |
| 68 | - requires strm->avail_out >= 258 for each loop to avoid checking for | |
| 69 | - output space. | |
| 70 | - */ | |
| 71 | -void inflate_fast(strm, start) | |
| 72 | -z_streamp strm; | |
| 73 | -unsigned start; /* inflate()'s starting value for strm->avail_out */ | |
| 74 | -{ | |
| 75 | - struct inflate_state FAR *state; | |
| 76 | - struct inffast_ar { | |
| 77 | -/* 64 32 x86 x86_64 */ | |
| 78 | -/* ar offset register */ | |
| 79 | -/* 0 0 */ void *esp; /* esp save */ | |
| 80 | -/* 8 4 */ void *ebp; /* ebp save */ | |
| 81 | -/* 16 8 */ unsigned char FAR *in; /* esi rsi local strm->next_in */ | |
| 82 | -/* 24 12 */ unsigned char FAR *last; /* r9 while in < last */ | |
| 83 | -/* 32 16 */ unsigned char FAR *out; /* edi rdi local strm->next_out */ | |
| 84 | -/* 40 20 */ unsigned char FAR *beg; /* inflate()'s init next_out */ | |
| 85 | -/* 48 24 */ unsigned char FAR *end; /* r10 while out < end */ | |
| 86 | -/* 56 28 */ unsigned char FAR *window;/* size of window, wsize!=0 */ | |
| 87 | -/* 64 32 */ code const FAR *lcode; /* ebp rbp local strm->lencode */ | |
| 88 | -/* 72 36 */ code const FAR *dcode; /* r11 local strm->distcode */ | |
| 89 | -/* 80 40 */ unsigned long hold; /* edx rdx local strm->hold */ | |
| 90 | -/* 88 44 */ unsigned bits; /* ebx rbx local strm->bits */ | |
| 91 | -/* 92 48 */ unsigned wsize; /* window size */ | |
| 92 | -/* 96 52 */ unsigned write; /* window write index */ | |
| 93 | -/*100 56 */ unsigned lmask; /* r12 mask for lcode */ | |
| 94 | -/*104 60 */ unsigned dmask; /* r13 mask for dcode */ | |
| 95 | -/*108 64 */ unsigned len; /* r14 match length */ | |
| 96 | -/*112 68 */ unsigned dist; /* r15 match distance */ | |
| 97 | -/*116 72 */ unsigned status; /* set when state chng*/ | |
| 98 | - } ar; | |
| 99 | - | |
| 100 | -#if defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 ) | |
| 101 | -#define PAD_AVAIL_IN 6 | |
| 102 | -#define PAD_AVAIL_OUT 258 | |
| 103 | -#else | |
| 104 | -#define PAD_AVAIL_IN 5 | |
| 105 | -#define PAD_AVAIL_OUT 257 | |
| 106 | -#endif | |
| 107 | - | |
| 108 | - /* copy state to local variables */ | |
| 109 | - state = (struct inflate_state FAR *)strm->state; | |
| 110 | - ar.in = strm->next_in; | |
| 111 | - ar.last = ar.in + (strm->avail_in - PAD_AVAIL_IN); | |
| 112 | - ar.out = strm->next_out; | |
| 113 | - ar.beg = ar.out - (start - strm->avail_out); | |
| 114 | - ar.end = ar.out + (strm->avail_out - PAD_AVAIL_OUT); | |
| 115 | - ar.wsize = state->wsize; | |
| 116 | - ar.write = state->wnext; | |
| 117 | - ar.window = state->window; | |
| 118 | - ar.hold = state->hold; | |
| 119 | - ar.bits = state->bits; | |
| 120 | - ar.lcode = state->lencode; | |
| 121 | - ar.dcode = state->distcode; | |
| 122 | - ar.lmask = (1U << state->lenbits) - 1; | |
| 123 | - ar.dmask = (1U << state->distbits) - 1; | |
| 124 | - | |
| 125 | - /* decode literals and length/distances until end-of-block or not enough | |
| 126 | - input data or output space */ | |
| 127 | - | |
| 128 | - /* align in on 1/2 hold size boundary */ | |
| 129 | - while (((unsigned long)(void *)ar.in & (sizeof(ar.hold) / 2 - 1)) != 0) { | |
| 130 | - ar.hold += (unsigned long)*ar.in++ << ar.bits; | |
| 131 | - ar.bits += 8; | |
| 132 | - } | |
| 133 | - | |
| 134 | -#if defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 ) | |
| 135 | - __asm__ __volatile__ ( | |
| 136 | -" leaq %0, %%rax\n" | |
| 137 | -" movq %%rbp, 8(%%rax)\n" /* save regs rbp and rsp */ | |
| 138 | -" movq %%rsp, (%%rax)\n" | |
| 139 | -" movq %%rax, %%rsp\n" /* make rsp point to &ar */ | |
| 140 | -" movq 16(%%rsp), %%rsi\n" /* rsi = in */ | |
| 141 | -" movq 32(%%rsp), %%rdi\n" /* rdi = out */ | |
| 142 | -" movq 24(%%rsp), %%r9\n" /* r9 = last */ | |
| 143 | -" movq 48(%%rsp), %%r10\n" /* r10 = end */ | |
| 144 | -" movq 64(%%rsp), %%rbp\n" /* rbp = lcode */ | |
| 145 | -" movq 72(%%rsp), %%r11\n" /* r11 = dcode */ | |
| 146 | -" movq 80(%%rsp), %%rdx\n" /* rdx = hold */ | |
| 147 | -" movl 88(%%rsp), %%ebx\n" /* ebx = bits */ | |
| 148 | -" movl 100(%%rsp), %%r12d\n" /* r12d = lmask */ | |
| 149 | -" movl 104(%%rsp), %%r13d\n" /* r13d = dmask */ | |
| 150 | - /* r14d = len */ | |
| 151 | - /* r15d = dist */ | |
| 152 | -" cld\n" | |
| 153 | -" cmpq %%rdi, %%r10\n" | |
| 154 | -" je .L_one_time\n" /* if only one decode left */ | |
| 155 | -" cmpq %%rsi, %%r9\n" | |
| 156 | -" je .L_one_time\n" | |
| 157 | -" jmp .L_do_loop\n" | |
| 158 | - | |
| 159 | -".L_one_time:\n" | |
| 160 | -" movq %%r12, %%r8\n" /* r8 = lmask */ | |
| 161 | -" cmpb $32, %%bl\n" | |
| 162 | -" ja .L_get_length_code_one_time\n" | |
| 163 | - | |
| 164 | -" lodsl\n" /* eax = *(uint *)in++ */ | |
| 165 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 166 | -" addb $32, %%bl\n" /* bits += 32 */ | |
| 167 | -" shlq %%cl, %%rax\n" | |
| 168 | -" orq %%rax, %%rdx\n" /* hold |= *((uint *)in)++ << bits */ | |
| 169 | -" jmp .L_get_length_code_one_time\n" | |
| 170 | - | |
| 171 | -".align 32,0x90\n" | |
| 172 | -".L_while_test:\n" | |
| 173 | -" cmpq %%rdi, %%r10\n" | |
| 174 | -" jbe .L_break_loop\n" | |
| 175 | -" cmpq %%rsi, %%r9\n" | |
| 176 | -" jbe .L_break_loop\n" | |
| 177 | - | |
| 178 | -".L_do_loop:\n" | |
| 179 | -" movq %%r12, %%r8\n" /* r8 = lmask */ | |
| 180 | -" cmpb $32, %%bl\n" | |
| 181 | -" ja .L_get_length_code\n" /* if (32 < bits) */ | |
| 182 | - | |
| 183 | -" lodsl\n" /* eax = *(uint *)in++ */ | |
| 184 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 185 | -" addb $32, %%bl\n" /* bits += 32 */ | |
| 186 | -" shlq %%cl, %%rax\n" | |
| 187 | -" orq %%rax, %%rdx\n" /* hold |= *((uint *)in)++ << bits */ | |
| 188 | - | |
| 189 | -".L_get_length_code:\n" | |
| 190 | -" andq %%rdx, %%r8\n" /* r8 &= hold */ | |
| 191 | -" movl (%%rbp,%%r8,4), %%eax\n" /* eax = lcode[hold & lmask] */ | |
| 192 | - | |
| 193 | -" movb %%ah, %%cl\n" /* cl = this.bits */ | |
| 194 | -" subb %%ah, %%bl\n" /* bits -= this.bits */ | |
| 195 | -" shrq %%cl, %%rdx\n" /* hold >>= this.bits */ | |
| 196 | - | |
| 197 | -" testb %%al, %%al\n" | |
| 198 | -" jnz .L_test_for_length_base\n" /* if (op != 0) 45.7% */ | |
| 199 | - | |
| 200 | -" movq %%r12, %%r8\n" /* r8 = lmask */ | |
| 201 | -" shrl $16, %%eax\n" /* output this.val char */ | |
| 202 | -" stosb\n" | |
| 203 | - | |
| 204 | -".L_get_length_code_one_time:\n" | |
| 205 | -" andq %%rdx, %%r8\n" /* r8 &= hold */ | |
| 206 | -" movl (%%rbp,%%r8,4), %%eax\n" /* eax = lcode[hold & lmask] */ | |
| 207 | - | |
| 208 | -".L_dolen:\n" | |
| 209 | -" movb %%ah, %%cl\n" /* cl = this.bits */ | |
| 210 | -" subb %%ah, %%bl\n" /* bits -= this.bits */ | |
| 211 | -" shrq %%cl, %%rdx\n" /* hold >>= this.bits */ | |
| 212 | - | |
| 213 | -" testb %%al, %%al\n" | |
| 214 | -" jnz .L_test_for_length_base\n" /* if (op != 0) 45.7% */ | |
| 215 | - | |
| 216 | -" shrl $16, %%eax\n" /* output this.val char */ | |
| 217 | -" stosb\n" | |
| 218 | -" jmp .L_while_test\n" | |
| 219 | - | |
| 220 | -".align 32,0x90\n" | |
| 221 | -".L_test_for_length_base:\n" | |
| 222 | -" movl %%eax, %%r14d\n" /* len = this */ | |
| 223 | -" shrl $16, %%r14d\n" /* len = this.val */ | |
| 224 | -" movb %%al, %%cl\n" | |
| 225 | - | |
| 226 | -" testb $16, %%al\n" | |
| 227 | -" jz .L_test_for_second_level_length\n" /* if ((op & 16) == 0) 8% */ | |
| 228 | -" andb $15, %%cl\n" /* op &= 15 */ | |
| 229 | -" jz .L_decode_distance\n" /* if (!op) */ | |
| 230 | - | |
| 231 | -".L_add_bits_to_len:\n" | |
| 232 | -" subb %%cl, %%bl\n" | |
| 233 | -" xorl %%eax, %%eax\n" | |
| 234 | -" incl %%eax\n" | |
| 235 | -" shll %%cl, %%eax\n" | |
| 236 | -" decl %%eax\n" | |
| 237 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 238 | -" shrq %%cl, %%rdx\n" | |
| 239 | -" addl %%eax, %%r14d\n" /* len += hold & mask[op] */ | |
| 240 | - | |
| 241 | -".L_decode_distance:\n" | |
| 242 | -" movq %%r13, %%r8\n" /* r8 = dmask */ | |
| 243 | -" cmpb $32, %%bl\n" | |
| 244 | -" ja .L_get_distance_code\n" /* if (32 < bits) */ | |
| 245 | - | |
| 246 | -" lodsl\n" /* eax = *(uint *)in++ */ | |
| 247 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 248 | -" addb $32, %%bl\n" /* bits += 32 */ | |
| 249 | -" shlq %%cl, %%rax\n" | |
| 250 | -" orq %%rax, %%rdx\n" /* hold |= *((uint *)in)++ << bits */ | |
| 251 | - | |
| 252 | -".L_get_distance_code:\n" | |
| 253 | -" andq %%rdx, %%r8\n" /* r8 &= hold */ | |
| 254 | -" movl (%%r11,%%r8,4), %%eax\n" /* eax = dcode[hold & dmask] */ | |
| 255 | - | |
| 256 | -".L_dodist:\n" | |
| 257 | -" movl %%eax, %%r15d\n" /* dist = this */ | |
| 258 | -" shrl $16, %%r15d\n" /* dist = this.val */ | |
| 259 | -" movb %%ah, %%cl\n" | |
| 260 | -" subb %%ah, %%bl\n" /* bits -= this.bits */ | |
| 261 | -" shrq %%cl, %%rdx\n" /* hold >>= this.bits */ | |
| 262 | -" movb %%al, %%cl\n" /* cl = this.op */ | |
| 263 | - | |
| 264 | -" testb $16, %%al\n" /* if ((op & 16) == 0) */ | |
| 265 | -" jz .L_test_for_second_level_dist\n" | |
| 266 | -" andb $15, %%cl\n" /* op &= 15 */ | |
| 267 | -" jz .L_check_dist_one\n" | |
| 268 | - | |
| 269 | -".L_add_bits_to_dist:\n" | |
| 270 | -" subb %%cl, %%bl\n" | |
| 271 | -" xorl %%eax, %%eax\n" | |
| 272 | -" incl %%eax\n" | |
| 273 | -" shll %%cl, %%eax\n" | |
| 274 | -" decl %%eax\n" /* (1 << op) - 1 */ | |
| 275 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 276 | -" shrq %%cl, %%rdx\n" | |
| 277 | -" addl %%eax, %%r15d\n" /* dist += hold & ((1 << op) - 1) */ | |
| 278 | - | |
| 279 | -".L_check_window:\n" | |
| 280 | -" movq %%rsi, %%r8\n" /* save in so from can use it's reg */ | |
| 281 | -" movq %%rdi, %%rax\n" | |
| 282 | -" subq 40(%%rsp), %%rax\n" /* nbytes = out - beg */ | |
| 283 | - | |
| 284 | -" cmpl %%r15d, %%eax\n" | |
| 285 | -" jb .L_clip_window\n" /* if (dist > nbytes) 4.2% */ | |
| 286 | - | |
| 287 | -" movl %%r14d, %%ecx\n" /* ecx = len */ | |
| 288 | -" movq %%rdi, %%rsi\n" | |
| 289 | -" subq %%r15, %%rsi\n" /* from = out - dist */ | |
| 290 | - | |
| 291 | -" sarl %%ecx\n" | |
| 292 | -" jnc .L_copy_two\n" /* if len % 2 == 0 */ | |
| 293 | - | |
| 294 | -" rep movsw\n" | |
| 295 | -" movb (%%rsi), %%al\n" | |
| 296 | -" movb %%al, (%%rdi)\n" | |
| 297 | -" incq %%rdi\n" | |
| 298 | - | |
| 299 | -" movq %%r8, %%rsi\n" /* move in back to %rsi, toss from */ | |
| 300 | -" jmp .L_while_test\n" | |
| 301 | - | |
| 302 | -".L_copy_two:\n" | |
| 303 | -" rep movsw\n" | |
| 304 | -" movq %%r8, %%rsi\n" /* move in back to %rsi, toss from */ | |
| 305 | -" jmp .L_while_test\n" | |
| 306 | - | |
| 307 | -".align 32,0x90\n" | |
| 308 | -".L_check_dist_one:\n" | |
| 309 | -" cmpl $1, %%r15d\n" /* if dist 1, is a memset */ | |
| 310 | -" jne .L_check_window\n" | |
| 311 | -" cmpq %%rdi, 40(%%rsp)\n" /* if out == beg, outside window */ | |
| 312 | -" je .L_check_window\n" | |
| 313 | - | |
| 314 | -" movl %%r14d, %%ecx\n" /* ecx = len */ | |
| 315 | -" movb -1(%%rdi), %%al\n" | |
| 316 | -" movb %%al, %%ah\n" | |
| 317 | - | |
| 318 | -" sarl %%ecx\n" | |
| 319 | -" jnc .L_set_two\n" | |
| 320 | -" movb %%al, (%%rdi)\n" | |
| 321 | -" incq %%rdi\n" | |
| 322 | - | |
| 323 | -".L_set_two:\n" | |
| 324 | -" rep stosw\n" | |
| 325 | -" jmp .L_while_test\n" | |
| 326 | - | |
| 327 | -".align 32,0x90\n" | |
| 328 | -".L_test_for_second_level_length:\n" | |
| 329 | -" testb $64, %%al\n" | |
| 330 | -" jnz .L_test_for_end_of_block\n" /* if ((op & 64) != 0) */ | |
| 331 | - | |
| 332 | -" xorl %%eax, %%eax\n" | |
| 333 | -" incl %%eax\n" | |
| 334 | -" shll %%cl, %%eax\n" | |
| 335 | -" decl %%eax\n" | |
| 336 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 337 | -" addl %%r14d, %%eax\n" /* eax += len */ | |
| 338 | -" movl (%%rbp,%%rax,4), %%eax\n" /* eax = lcode[val+(hold&mask[op])]*/ | |
| 339 | -" jmp .L_dolen\n" | |
| 340 | - | |
| 341 | -".align 32,0x90\n" | |
| 342 | -".L_test_for_second_level_dist:\n" | |
| 343 | -" testb $64, %%al\n" | |
| 344 | -" jnz .L_invalid_distance_code\n" /* if ((op & 64) != 0) */ | |
| 345 | - | |
| 346 | -" xorl %%eax, %%eax\n" | |
| 347 | -" incl %%eax\n" | |
| 348 | -" shll %%cl, %%eax\n" | |
| 349 | -" decl %%eax\n" | |
| 350 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 351 | -" addl %%r15d, %%eax\n" /* eax += dist */ | |
| 352 | -" movl (%%r11,%%rax,4), %%eax\n" /* eax = dcode[val+(hold&mask[op])]*/ | |
| 353 | -" jmp .L_dodist\n" | |
| 354 | - | |
| 355 | -".align 32,0x90\n" | |
| 356 | -".L_clip_window:\n" | |
| 357 | -" movl %%eax, %%ecx\n" /* ecx = nbytes */ | |
| 358 | -" movl 92(%%rsp), %%eax\n" /* eax = wsize, prepare for dist cmp */ | |
| 359 | -" negl %%ecx\n" /* nbytes = -nbytes */ | |
| 360 | - | |
| 361 | -" cmpl %%r15d, %%eax\n" | |
| 362 | -" jb .L_invalid_distance_too_far\n" /* if (dist > wsize) */ | |
| 363 | - | |
| 364 | -" addl %%r15d, %%ecx\n" /* nbytes = dist - nbytes */ | |
| 365 | -" cmpl $0, 96(%%rsp)\n" | |
| 366 | -" jne .L_wrap_around_window\n" /* if (write != 0) */ | |
| 367 | - | |
| 368 | -" movq 56(%%rsp), %%rsi\n" /* from = window */ | |
| 369 | -" subl %%ecx, %%eax\n" /* eax -= nbytes */ | |
| 370 | -" addq %%rax, %%rsi\n" /* from += wsize - nbytes */ | |
| 371 | - | |
| 372 | -" movl %%r14d, %%eax\n" /* eax = len */ | |
| 373 | -" cmpl %%ecx, %%r14d\n" | |
| 374 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 375 | - | |
| 376 | -" subl %%ecx, %%eax\n" /* eax -= nbytes */ | |
| 377 | -" rep movsb\n" | |
| 378 | -" movq %%rdi, %%rsi\n" | |
| 379 | -" subq %%r15, %%rsi\n" /* from = &out[ -dist ] */ | |
| 380 | -" jmp .L_do_copy\n" | |
| 381 | - | |
| 382 | -".align 32,0x90\n" | |
| 383 | -".L_wrap_around_window:\n" | |
| 384 | -" movl 96(%%rsp), %%eax\n" /* eax = write */ | |
| 385 | -" cmpl %%eax, %%ecx\n" | |
| 386 | -" jbe .L_contiguous_in_window\n" /* if (write >= nbytes) */ | |
| 387 | - | |
| 388 | -" movl 92(%%rsp), %%esi\n" /* from = wsize */ | |
| 389 | -" addq 56(%%rsp), %%rsi\n" /* from += window */ | |
| 390 | -" addq %%rax, %%rsi\n" /* from += write */ | |
| 391 | -" subq %%rcx, %%rsi\n" /* from -= nbytes */ | |
| 392 | -" subl %%eax, %%ecx\n" /* nbytes -= write */ | |
| 393 | - | |
| 394 | -" movl %%r14d, %%eax\n" /* eax = len */ | |
| 395 | -" cmpl %%ecx, %%eax\n" | |
| 396 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 397 | - | |
| 398 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 399 | -" rep movsb\n" | |
| 400 | -" movq 56(%%rsp), %%rsi\n" /* from = window */ | |
| 401 | -" movl 96(%%rsp), %%ecx\n" /* nbytes = write */ | |
| 402 | -" cmpl %%ecx, %%eax\n" | |
| 403 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 404 | - | |
| 405 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 406 | -" rep movsb\n" | |
| 407 | -" movq %%rdi, %%rsi\n" | |
| 408 | -" subq %%r15, %%rsi\n" /* from = out - dist */ | |
| 409 | -" jmp .L_do_copy\n" | |
| 410 | - | |
| 411 | -".align 32,0x90\n" | |
| 412 | -".L_contiguous_in_window:\n" | |
| 413 | -" movq 56(%%rsp), %%rsi\n" /* rsi = window */ | |
| 414 | -" addq %%rax, %%rsi\n" | |
| 415 | -" subq %%rcx, %%rsi\n" /* from += write - nbytes */ | |
| 416 | - | |
| 417 | -" movl %%r14d, %%eax\n" /* eax = len */ | |
| 418 | -" cmpl %%ecx, %%eax\n" | |
| 419 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 420 | - | |
| 421 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 422 | -" rep movsb\n" | |
| 423 | -" movq %%rdi, %%rsi\n" | |
| 424 | -" subq %%r15, %%rsi\n" /* from = out - dist */ | |
| 425 | -" jmp .L_do_copy\n" /* if (nbytes >= len) */ | |
| 426 | - | |
| 427 | -".align 32,0x90\n" | |
| 428 | -".L_do_copy:\n" | |
| 429 | -" movl %%eax, %%ecx\n" /* ecx = len */ | |
| 430 | -" rep movsb\n" | |
| 431 | - | |
| 432 | -" movq %%r8, %%rsi\n" /* move in back to %esi, toss from */ | |
| 433 | -" jmp .L_while_test\n" | |
| 434 | - | |
| 435 | -".L_test_for_end_of_block:\n" | |
| 436 | -" testb $32, %%al\n" | |
| 437 | -" jz .L_invalid_literal_length_code\n" | |
| 438 | -" movl $1, 116(%%rsp)\n" | |
| 439 | -" jmp .L_break_loop_with_status\n" | |
| 440 | - | |
| 441 | -".L_invalid_literal_length_code:\n" | |
| 442 | -" movl $2, 116(%%rsp)\n" | |
| 443 | -" jmp .L_break_loop_with_status\n" | |
| 444 | - | |
| 445 | -".L_invalid_distance_code:\n" | |
| 446 | -" movl $3, 116(%%rsp)\n" | |
| 447 | -" jmp .L_break_loop_with_status\n" | |
| 448 | - | |
| 449 | -".L_invalid_distance_too_far:\n" | |
| 450 | -" movl $4, 116(%%rsp)\n" | |
| 451 | -" jmp .L_break_loop_with_status\n" | |
| 452 | - | |
| 453 | -".L_break_loop:\n" | |
| 454 | -" movl $0, 116(%%rsp)\n" | |
| 455 | - | |
| 456 | -".L_break_loop_with_status:\n" | |
| 457 | -/* put in, out, bits, and hold back into ar and pop esp */ | |
| 458 | -" movq %%rsi, 16(%%rsp)\n" /* in */ | |
| 459 | -" movq %%rdi, 32(%%rsp)\n" /* out */ | |
| 460 | -" movl %%ebx, 88(%%rsp)\n" /* bits */ | |
| 461 | -" movq %%rdx, 80(%%rsp)\n" /* hold */ | |
| 462 | -" movq (%%rsp), %%rax\n" /* restore rbp and rsp */ | |
| 463 | -" movq 8(%%rsp), %%rbp\n" | |
| 464 | -" movq %%rax, %%rsp\n" | |
| 465 | - : | |
| 466 | - : "m" (ar) | |
| 467 | - : "memory", "%rax", "%rbx", "%rcx", "%rdx", "%rsi", "%rdi", | |
| 468 | - "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15" | |
| 469 | - ); | |
| 470 | -#elif ( defined( __GNUC__ ) || defined( __ICC ) ) && defined( __i386 ) | |
| 471 | - __asm__ __volatile__ ( | |
| 472 | -" leal %0, %%eax\n" | |
| 473 | -" movl %%esp, (%%eax)\n" /* save esp, ebp */ | |
| 474 | -" movl %%ebp, 4(%%eax)\n" | |
| 475 | -" movl %%eax, %%esp\n" | |
| 476 | -" movl 8(%%esp), %%esi\n" /* esi = in */ | |
| 477 | -" movl 16(%%esp), %%edi\n" /* edi = out */ | |
| 478 | -" movl 40(%%esp), %%edx\n" /* edx = hold */ | |
| 479 | -" movl 44(%%esp), %%ebx\n" /* ebx = bits */ | |
| 480 | -" movl 32(%%esp), %%ebp\n" /* ebp = lcode */ | |
| 481 | - | |
| 482 | -" cld\n" | |
| 483 | -" jmp .L_do_loop\n" | |
| 484 | - | |
| 485 | -".align 32,0x90\n" | |
| 486 | -".L_while_test:\n" | |
| 487 | -" cmpl %%edi, 24(%%esp)\n" /* out < end */ | |
| 488 | -" jbe .L_break_loop\n" | |
| 489 | -" cmpl %%esi, 12(%%esp)\n" /* in < last */ | |
| 490 | -" jbe .L_break_loop\n" | |
| 491 | - | |
| 492 | -".L_do_loop:\n" | |
| 493 | -" cmpb $15, %%bl\n" | |
| 494 | -" ja .L_get_length_code\n" /* if (15 < bits) */ | |
| 495 | - | |
| 496 | -" xorl %%eax, %%eax\n" | |
| 497 | -" lodsw\n" /* al = *(ushort *)in++ */ | |
| 498 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 499 | -" addb $16, %%bl\n" /* bits += 16 */ | |
| 500 | -" shll %%cl, %%eax\n" | |
| 501 | -" orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ | |
| 502 | - | |
| 503 | -".L_get_length_code:\n" | |
| 504 | -" movl 56(%%esp), %%eax\n" /* eax = lmask */ | |
| 505 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 506 | -" movl (%%ebp,%%eax,4), %%eax\n" /* eax = lcode[hold & lmask] */ | |
| 507 | - | |
| 508 | -".L_dolen:\n" | |
| 509 | -" movb %%ah, %%cl\n" /* cl = this.bits */ | |
| 510 | -" subb %%ah, %%bl\n" /* bits -= this.bits */ | |
| 511 | -" shrl %%cl, %%edx\n" /* hold >>= this.bits */ | |
| 512 | - | |
| 513 | -" testb %%al, %%al\n" | |
| 514 | -" jnz .L_test_for_length_base\n" /* if (op != 0) 45.7% */ | |
| 515 | - | |
| 516 | -" shrl $16, %%eax\n" /* output this.val char */ | |
| 517 | -" stosb\n" | |
| 518 | -" jmp .L_while_test\n" | |
| 519 | - | |
| 520 | -".align 32,0x90\n" | |
| 521 | -".L_test_for_length_base:\n" | |
| 522 | -" movl %%eax, %%ecx\n" /* len = this */ | |
| 523 | -" shrl $16, %%ecx\n" /* len = this.val */ | |
| 524 | -" movl %%ecx, 64(%%esp)\n" /* save len */ | |
| 525 | -" movb %%al, %%cl\n" | |
| 526 | - | |
| 527 | -" testb $16, %%al\n" | |
| 528 | -" jz .L_test_for_second_level_length\n" /* if ((op & 16) == 0) 8% */ | |
| 529 | -" andb $15, %%cl\n" /* op &= 15 */ | |
| 530 | -" jz .L_decode_distance\n" /* if (!op) */ | |
| 531 | -" cmpb %%cl, %%bl\n" | |
| 532 | -" jae .L_add_bits_to_len\n" /* if (op <= bits) */ | |
| 533 | - | |
| 534 | -" movb %%cl, %%ch\n" /* stash op in ch, freeing cl */ | |
| 535 | -" xorl %%eax, %%eax\n" | |
| 536 | -" lodsw\n" /* al = *(ushort *)in++ */ | |
| 537 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 538 | -" addb $16, %%bl\n" /* bits += 16 */ | |
| 539 | -" shll %%cl, %%eax\n" | |
| 540 | -" orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ | |
| 541 | -" movb %%ch, %%cl\n" /* move op back to ecx */ | |
| 542 | - | |
| 543 | -".L_add_bits_to_len:\n" | |
| 544 | -" subb %%cl, %%bl\n" | |
| 545 | -" xorl %%eax, %%eax\n" | |
| 546 | -" incl %%eax\n" | |
| 547 | -" shll %%cl, %%eax\n" | |
| 548 | -" decl %%eax\n" | |
| 549 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 550 | -" shrl %%cl, %%edx\n" | |
| 551 | -" addl %%eax, 64(%%esp)\n" /* len += hold & mask[op] */ | |
| 552 | - | |
| 553 | -".L_decode_distance:\n" | |
| 554 | -" cmpb $15, %%bl\n" | |
| 555 | -" ja .L_get_distance_code\n" /* if (15 < bits) */ | |
| 556 | - | |
| 557 | -" xorl %%eax, %%eax\n" | |
| 558 | -" lodsw\n" /* al = *(ushort *)in++ */ | |
| 559 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 560 | -" addb $16, %%bl\n" /* bits += 16 */ | |
| 561 | -" shll %%cl, %%eax\n" | |
| 562 | -" orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ | |
| 563 | - | |
| 564 | -".L_get_distance_code:\n" | |
| 565 | -" movl 60(%%esp), %%eax\n" /* eax = dmask */ | |
| 566 | -" movl 36(%%esp), %%ecx\n" /* ecx = dcode */ | |
| 567 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 568 | -" movl (%%ecx,%%eax,4), %%eax\n"/* eax = dcode[hold & dmask] */ | |
| 569 | - | |
| 570 | -".L_dodist:\n" | |
| 571 | -" movl %%eax, %%ebp\n" /* dist = this */ | |
| 572 | -" shrl $16, %%ebp\n" /* dist = this.val */ | |
| 573 | -" movb %%ah, %%cl\n" | |
| 574 | -" subb %%ah, %%bl\n" /* bits -= this.bits */ | |
| 575 | -" shrl %%cl, %%edx\n" /* hold >>= this.bits */ | |
| 576 | -" movb %%al, %%cl\n" /* cl = this.op */ | |
| 577 | - | |
| 578 | -" testb $16, %%al\n" /* if ((op & 16) == 0) */ | |
| 579 | -" jz .L_test_for_second_level_dist\n" | |
| 580 | -" andb $15, %%cl\n" /* op &= 15 */ | |
| 581 | -" jz .L_check_dist_one\n" | |
| 582 | -" cmpb %%cl, %%bl\n" | |
| 583 | -" jae .L_add_bits_to_dist\n" /* if (op <= bits) 97.6% */ | |
| 584 | - | |
| 585 | -" movb %%cl, %%ch\n" /* stash op in ch, freeing cl */ | |
| 586 | -" xorl %%eax, %%eax\n" | |
| 587 | -" lodsw\n" /* al = *(ushort *)in++ */ | |
| 588 | -" movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ | |
| 589 | -" addb $16, %%bl\n" /* bits += 16 */ | |
| 590 | -" shll %%cl, %%eax\n" | |
| 591 | -" orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ | |
| 592 | -" movb %%ch, %%cl\n" /* move op back to ecx */ | |
| 593 | - | |
| 594 | -".L_add_bits_to_dist:\n" | |
| 595 | -" subb %%cl, %%bl\n" | |
| 596 | -" xorl %%eax, %%eax\n" | |
| 597 | -" incl %%eax\n" | |
| 598 | -" shll %%cl, %%eax\n" | |
| 599 | -" decl %%eax\n" /* (1 << op) - 1 */ | |
| 600 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 601 | -" shrl %%cl, %%edx\n" | |
| 602 | -" addl %%eax, %%ebp\n" /* dist += hold & ((1 << op) - 1) */ | |
| 603 | - | |
| 604 | -".L_check_window:\n" | |
| 605 | -" movl %%esi, 8(%%esp)\n" /* save in so from can use it's reg */ | |
| 606 | -" movl %%edi, %%eax\n" | |
| 607 | -" subl 20(%%esp), %%eax\n" /* nbytes = out - beg */ | |
| 608 | - | |
| 609 | -" cmpl %%ebp, %%eax\n" | |
| 610 | -" jb .L_clip_window\n" /* if (dist > nbytes) 4.2% */ | |
| 611 | - | |
| 612 | -" movl 64(%%esp), %%ecx\n" /* ecx = len */ | |
| 613 | -" movl %%edi, %%esi\n" | |
| 614 | -" subl %%ebp, %%esi\n" /* from = out - dist */ | |
| 615 | - | |
| 616 | -" sarl %%ecx\n" | |
| 617 | -" jnc .L_copy_two\n" /* if len % 2 == 0 */ | |
| 618 | - | |
| 619 | -" rep movsw\n" | |
| 620 | -" movb (%%esi), %%al\n" | |
| 621 | -" movb %%al, (%%edi)\n" | |
| 622 | -" incl %%edi\n" | |
| 623 | - | |
| 624 | -" movl 8(%%esp), %%esi\n" /* move in back to %esi, toss from */ | |
| 625 | -" movl 32(%%esp), %%ebp\n" /* ebp = lcode */ | |
| 626 | -" jmp .L_while_test\n" | |
| 627 | - | |
| 628 | -".L_copy_two:\n" | |
| 629 | -" rep movsw\n" | |
| 630 | -" movl 8(%%esp), %%esi\n" /* move in back to %esi, toss from */ | |
| 631 | -" movl 32(%%esp), %%ebp\n" /* ebp = lcode */ | |
| 632 | -" jmp .L_while_test\n" | |
| 633 | - | |
| 634 | -".align 32,0x90\n" | |
| 635 | -".L_check_dist_one:\n" | |
| 636 | -" cmpl $1, %%ebp\n" /* if dist 1, is a memset */ | |
| 637 | -" jne .L_check_window\n" | |
| 638 | -" cmpl %%edi, 20(%%esp)\n" | |
| 639 | -" je .L_check_window\n" /* out == beg, if outside window */ | |
| 640 | - | |
| 641 | -" movl 64(%%esp), %%ecx\n" /* ecx = len */ | |
| 642 | -" movb -1(%%edi), %%al\n" | |
| 643 | -" movb %%al, %%ah\n" | |
| 644 | - | |
| 645 | -" sarl %%ecx\n" | |
| 646 | -" jnc .L_set_two\n" | |
| 647 | -" movb %%al, (%%edi)\n" | |
| 648 | -" incl %%edi\n" | |
| 649 | - | |
| 650 | -".L_set_two:\n" | |
| 651 | -" rep stosw\n" | |
| 652 | -" movl 32(%%esp), %%ebp\n" /* ebp = lcode */ | |
| 653 | -" jmp .L_while_test\n" | |
| 654 | - | |
| 655 | -".align 32,0x90\n" | |
| 656 | -".L_test_for_second_level_length:\n" | |
| 657 | -" testb $64, %%al\n" | |
| 658 | -" jnz .L_test_for_end_of_block\n" /* if ((op & 64) != 0) */ | |
| 659 | - | |
| 660 | -" xorl %%eax, %%eax\n" | |
| 661 | -" incl %%eax\n" | |
| 662 | -" shll %%cl, %%eax\n" | |
| 663 | -" decl %%eax\n" | |
| 664 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 665 | -" addl 64(%%esp), %%eax\n" /* eax += len */ | |
| 666 | -" movl (%%ebp,%%eax,4), %%eax\n" /* eax = lcode[val+(hold&mask[op])]*/ | |
| 667 | -" jmp .L_dolen\n" | |
| 668 | - | |
| 669 | -".align 32,0x90\n" | |
| 670 | -".L_test_for_second_level_dist:\n" | |
| 671 | -" testb $64, %%al\n" | |
| 672 | -" jnz .L_invalid_distance_code\n" /* if ((op & 64) != 0) */ | |
| 673 | - | |
| 674 | -" xorl %%eax, %%eax\n" | |
| 675 | -" incl %%eax\n" | |
| 676 | -" shll %%cl, %%eax\n" | |
| 677 | -" decl %%eax\n" | |
| 678 | -" andl %%edx, %%eax\n" /* eax &= hold */ | |
| 679 | -" addl %%ebp, %%eax\n" /* eax += dist */ | |
| 680 | -" movl 36(%%esp), %%ecx\n" /* ecx = dcode */ | |
| 681 | -" movl (%%ecx,%%eax,4), %%eax\n" /* eax = dcode[val+(hold&mask[op])]*/ | |
| 682 | -" jmp .L_dodist\n" | |
| 683 | - | |
| 684 | -".align 32,0x90\n" | |
| 685 | -".L_clip_window:\n" | |
| 686 | -" movl %%eax, %%ecx\n" | |
| 687 | -" movl 48(%%esp), %%eax\n" /* eax = wsize */ | |
| 688 | -" negl %%ecx\n" /* nbytes = -nbytes */ | |
| 689 | -" movl 28(%%esp), %%esi\n" /* from = window */ | |
| 690 | - | |
| 691 | -" cmpl %%ebp, %%eax\n" | |
| 692 | -" jb .L_invalid_distance_too_far\n" /* if (dist > wsize) */ | |
| 693 | - | |
| 694 | -" addl %%ebp, %%ecx\n" /* nbytes = dist - nbytes */ | |
| 695 | -" cmpl $0, 52(%%esp)\n" | |
| 696 | -" jne .L_wrap_around_window\n" /* if (write != 0) */ | |
| 697 | - | |
| 698 | -" subl %%ecx, %%eax\n" | |
| 699 | -" addl %%eax, %%esi\n" /* from += wsize - nbytes */ | |
| 700 | - | |
| 701 | -" movl 64(%%esp), %%eax\n" /* eax = len */ | |
| 702 | -" cmpl %%ecx, %%eax\n" | |
| 703 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 704 | - | |
| 705 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 706 | -" rep movsb\n" | |
| 707 | -" movl %%edi, %%esi\n" | |
| 708 | -" subl %%ebp, %%esi\n" /* from = out - dist */ | |
| 709 | -" jmp .L_do_copy\n" | |
| 710 | - | |
| 711 | -".align 32,0x90\n" | |
| 712 | -".L_wrap_around_window:\n" | |
| 713 | -" movl 52(%%esp), %%eax\n" /* eax = write */ | |
| 714 | -" cmpl %%eax, %%ecx\n" | |
| 715 | -" jbe .L_contiguous_in_window\n" /* if (write >= nbytes) */ | |
| 716 | - | |
| 717 | -" addl 48(%%esp), %%esi\n" /* from += wsize */ | |
| 718 | -" addl %%eax, %%esi\n" /* from += write */ | |
| 719 | -" subl %%ecx, %%esi\n" /* from -= nbytes */ | |
| 720 | -" subl %%eax, %%ecx\n" /* nbytes -= write */ | |
| 721 | - | |
| 722 | -" movl 64(%%esp), %%eax\n" /* eax = len */ | |
| 723 | -" cmpl %%ecx, %%eax\n" | |
| 724 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 725 | - | |
| 726 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 727 | -" rep movsb\n" | |
| 728 | -" movl 28(%%esp), %%esi\n" /* from = window */ | |
| 729 | -" movl 52(%%esp), %%ecx\n" /* nbytes = write */ | |
| 730 | -" cmpl %%ecx, %%eax\n" | |
| 731 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 732 | - | |
| 733 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 734 | -" rep movsb\n" | |
| 735 | -" movl %%edi, %%esi\n" | |
| 736 | -" subl %%ebp, %%esi\n" /* from = out - dist */ | |
| 737 | -" jmp .L_do_copy\n" | |
| 738 | - | |
| 739 | -".align 32,0x90\n" | |
| 740 | -".L_contiguous_in_window:\n" | |
| 741 | -" addl %%eax, %%esi\n" | |
| 742 | -" subl %%ecx, %%esi\n" /* from += write - nbytes */ | |
| 743 | - | |
| 744 | -" movl 64(%%esp), %%eax\n" /* eax = len */ | |
| 745 | -" cmpl %%ecx, %%eax\n" | |
| 746 | -" jbe .L_do_copy\n" /* if (nbytes >= len) */ | |
| 747 | - | |
| 748 | -" subl %%ecx, %%eax\n" /* len -= nbytes */ | |
| 749 | -" rep movsb\n" | |
| 750 | -" movl %%edi, %%esi\n" | |
| 751 | -" subl %%ebp, %%esi\n" /* from = out - dist */ | |
| 752 | -" jmp .L_do_copy\n" /* if (nbytes >= len) */ | |
| 753 | - | |
| 754 | -".align 32,0x90\n" | |
| 755 | -".L_do_copy:\n" | |
| 756 | -" movl %%eax, %%ecx\n" | |
| 757 | -" rep movsb\n" | |
| 758 | - | |
| 759 | -" movl 8(%%esp), %%esi\n" /* move in back to %esi, toss from */ | |
| 760 | -" movl 32(%%esp), %%ebp\n" /* ebp = lcode */ | |
| 761 | -" jmp .L_while_test\n" | |
| 762 | - | |
| 763 | -".L_test_for_end_of_block:\n" | |
| 764 | -" testb $32, %%al\n" | |
| 765 | -" jz .L_invalid_literal_length_code\n" | |
| 766 | -" movl $1, 72(%%esp)\n" | |
| 767 | -" jmp .L_break_loop_with_status\n" | |
| 768 | - | |
| 769 | -".L_invalid_literal_length_code:\n" | |
| 770 | -" movl $2, 72(%%esp)\n" | |
| 771 | -" jmp .L_break_loop_with_status\n" | |
| 772 | - | |
| 773 | -".L_invalid_distance_code:\n" | |
| 774 | -" movl $3, 72(%%esp)\n" | |
| 775 | -" jmp .L_break_loop_with_status\n" | |
| 776 | - | |
| 777 | -".L_invalid_distance_too_far:\n" | |
| 778 | -" movl 8(%%esp), %%esi\n" | |
| 779 | -" movl $4, 72(%%esp)\n" | |
| 780 | -" jmp .L_break_loop_with_status\n" | |
| 781 | - | |
| 782 | -".L_break_loop:\n" | |
| 783 | -" movl $0, 72(%%esp)\n" | |
| 784 | - | |
| 785 | -".L_break_loop_with_status:\n" | |
| 786 | -/* put in, out, bits, and hold back into ar and pop esp */ | |
| 787 | -" movl %%esi, 8(%%esp)\n" /* save in */ | |
| 788 | -" movl %%edi, 16(%%esp)\n" /* save out */ | |
| 789 | -" movl %%ebx, 44(%%esp)\n" /* save bits */ | |
| 790 | -" movl %%edx, 40(%%esp)\n" /* save hold */ | |
| 791 | -" movl 4(%%esp), %%ebp\n" /* restore esp, ebp */ | |
| 792 | -" movl (%%esp), %%esp\n" | |
| 793 | - : | |
| 794 | - : "m" (ar) | |
| 795 | - : "memory", "%eax", "%ebx", "%ecx", "%edx", "%esi", "%edi" | |
| 796 | - ); | |
| 797 | -#elif defined( _MSC_VER ) && ! defined( _M_AMD64 ) | |
| 798 | - __asm { | |
| 799 | - lea eax, ar | |
| 800 | - mov [eax], esp /* save esp, ebp */ | |
| 801 | - mov [eax+4], ebp | |
| 802 | - mov esp, eax | |
| 803 | - mov esi, [esp+8] /* esi = in */ | |
| 804 | - mov edi, [esp+16] /* edi = out */ | |
| 805 | - mov edx, [esp+40] /* edx = hold */ | |
| 806 | - mov ebx, [esp+44] /* ebx = bits */ | |
| 807 | - mov ebp, [esp+32] /* ebp = lcode */ | |
| 808 | - | |
| 809 | - cld | |
| 810 | - jmp L_do_loop | |
| 811 | - | |
| 812 | -ALIGN 4 | |
| 813 | -L_while_test: | |
| 814 | - cmp [esp+24], edi | |
| 815 | - jbe L_break_loop | |
| 816 | - cmp [esp+12], esi | |
| 817 | - jbe L_break_loop | |
| 818 | - | |
| 819 | -L_do_loop: | |
| 820 | - cmp bl, 15 | |
| 821 | - ja L_get_length_code /* if (15 < bits) */ | |
| 822 | - | |
| 823 | - xor eax, eax | |
| 824 | - lodsw /* al = *(ushort *)in++ */ | |
| 825 | - mov cl, bl /* cl = bits, needs it for shifting */ | |
| 826 | - add bl, 16 /* bits += 16 */ | |
| 827 | - shl eax, cl | |
| 828 | - or edx, eax /* hold |= *((ushort *)in)++ << bits */ | |
| 829 | - | |
| 830 | -L_get_length_code: | |
| 831 | - mov eax, [esp+56] /* eax = lmask */ | |
| 832 | - and eax, edx /* eax &= hold */ | |
| 833 | - mov eax, [ebp+eax*4] /* eax = lcode[hold & lmask] */ | |
| 834 | - | |
| 835 | -L_dolen: | |
| 836 | - mov cl, ah /* cl = this.bits */ | |
| 837 | - sub bl, ah /* bits -= this.bits */ | |
| 838 | - shr edx, cl /* hold >>= this.bits */ | |
| 839 | - | |
| 840 | - test al, al | |
| 841 | - jnz L_test_for_length_base /* if (op != 0) 45.7% */ | |
| 842 | - | |
| 843 | - shr eax, 16 /* output this.val char */ | |
| 844 | - stosb | |
| 845 | - jmp L_while_test | |
| 846 | - | |
| 847 | -ALIGN 4 | |
| 848 | -L_test_for_length_base: | |
| 849 | - mov ecx, eax /* len = this */ | |
| 850 | - shr ecx, 16 /* len = this.val */ | |
| 851 | - mov [esp+64], ecx /* save len */ | |
| 852 | - mov cl, al | |
| 853 | - | |
| 854 | - test al, 16 | |
| 855 | - jz L_test_for_second_level_length /* if ((op & 16) == 0) 8% */ | |
| 856 | - and cl, 15 /* op &= 15 */ | |
| 857 | - jz L_decode_distance /* if (!op) */ | |
| 858 | - cmp bl, cl | |
| 859 | - jae L_add_bits_to_len /* if (op <= bits) */ | |
| 860 | - | |
| 861 | - mov ch, cl /* stash op in ch, freeing cl */ | |
| 862 | - xor eax, eax | |
| 863 | - lodsw /* al = *(ushort *)in++ */ | |
| 864 | - mov cl, bl /* cl = bits, needs it for shifting */ | |
| 865 | - add bl, 16 /* bits += 16 */ | |
| 866 | - shl eax, cl | |
| 867 | - or edx, eax /* hold |= *((ushort *)in)++ << bits */ | |
| 868 | - mov cl, ch /* move op back to ecx */ | |
| 869 | - | |
| 870 | -L_add_bits_to_len: | |
| 871 | - sub bl, cl | |
| 872 | - xor eax, eax | |
| 873 | - inc eax | |
| 874 | - shl eax, cl | |
| 875 | - dec eax | |
| 876 | - and eax, edx /* eax &= hold */ | |
| 877 | - shr edx, cl | |
| 878 | - add [esp+64], eax /* len += hold & mask[op] */ | |
| 879 | - | |
| 880 | -L_decode_distance: | |
| 881 | - cmp bl, 15 | |
| 882 | - ja L_get_distance_code /* if (15 < bits) */ | |
| 883 | - | |
| 884 | - xor eax, eax | |
| 885 | - lodsw /* al = *(ushort *)in++ */ | |
| 886 | - mov cl, bl /* cl = bits, needs it for shifting */ | |
| 887 | - add bl, 16 /* bits += 16 */ | |
| 888 | - shl eax, cl | |
| 889 | - or edx, eax /* hold |= *((ushort *)in)++ << bits */ | |
| 890 | - | |
| 891 | -L_get_distance_code: | |
| 892 | - mov eax, [esp+60] /* eax = dmask */ | |
| 893 | - mov ecx, [esp+36] /* ecx = dcode */ | |
| 894 | - and eax, edx /* eax &= hold */ | |
| 895 | - mov eax, [ecx+eax*4]/* eax = dcode[hold & dmask] */ | |
| 896 | - | |
| 897 | -L_dodist: | |
| 898 | - mov ebp, eax /* dist = this */ | |
| 899 | - shr ebp, 16 /* dist = this.val */ | |
| 900 | - mov cl, ah | |
| 901 | - sub bl, ah /* bits -= this.bits */ | |
| 902 | - shr edx, cl /* hold >>= this.bits */ | |
| 903 | - mov cl, al /* cl = this.op */ | |
| 904 | - | |
| 905 | - test al, 16 /* if ((op & 16) == 0) */ | |
| 906 | - jz L_test_for_second_level_dist | |
| 907 | - and cl, 15 /* op &= 15 */ | |
| 908 | - jz L_check_dist_one | |
| 909 | - cmp bl, cl | |
| 910 | - jae L_add_bits_to_dist /* if (op <= bits) 97.6% */ | |
| 911 | - | |
| 912 | - mov ch, cl /* stash op in ch, freeing cl */ | |
| 913 | - xor eax, eax | |
| 914 | - lodsw /* al = *(ushort *)in++ */ | |
| 915 | - mov cl, bl /* cl = bits, needs it for shifting */ | |
| 916 | - add bl, 16 /* bits += 16 */ | |
| 917 | - shl eax, cl | |
| 918 | - or edx, eax /* hold |= *((ushort *)in)++ << bits */ | |
| 919 | - mov cl, ch /* move op back to ecx */ | |
| 920 | - | |
| 921 | -L_add_bits_to_dist: | |
| 922 | - sub bl, cl | |
| 923 | - xor eax, eax | |
| 924 | - inc eax | |
| 925 | - shl eax, cl | |
| 926 | - dec eax /* (1 << op) - 1 */ | |
| 927 | - and eax, edx /* eax &= hold */ | |
| 928 | - shr edx, cl | |
| 929 | - add ebp, eax /* dist += hold & ((1 << op) - 1) */ | |
| 930 | - | |
| 931 | -L_check_window: | |
| 932 | - mov [esp+8], esi /* save in so from can use it's reg */ | |
| 933 | - mov eax, edi | |
| 934 | - sub eax, [esp+20] /* nbytes = out - beg */ | |
| 935 | - | |
| 936 | - cmp eax, ebp | |
| 937 | - jb L_clip_window /* if (dist > nbytes) 4.2% */ | |
| 938 | - | |
| 939 | - mov ecx, [esp+64] /* ecx = len */ | |
| 940 | - mov esi, edi | |
| 941 | - sub esi, ebp /* from = out - dist */ | |
| 942 | - | |
| 943 | - sar ecx, 1 | |
| 944 | - jnc L_copy_two | |
| 945 | - | |
| 946 | - rep movsw | |
| 947 | - mov al, [esi] | |
| 948 | - mov [edi], al | |
| 949 | - inc edi | |
| 950 | - | |
| 951 | - mov esi, [esp+8] /* move in back to %esi, toss from */ | |
| 952 | - mov ebp, [esp+32] /* ebp = lcode */ | |
| 953 | - jmp L_while_test | |
| 954 | - | |
| 955 | -L_copy_two: | |
| 956 | - rep movsw | |
| 957 | - mov esi, [esp+8] /* move in back to %esi, toss from */ | |
| 958 | - mov ebp, [esp+32] /* ebp = lcode */ | |
| 959 | - jmp L_while_test | |
| 960 | - | |
| 961 | -ALIGN 4 | |
| 962 | -L_check_dist_one: | |
| 963 | - cmp ebp, 1 /* if dist 1, is a memset */ | |
| 964 | - jne L_check_window | |
| 965 | - cmp [esp+20], edi | |
| 966 | - je L_check_window /* out == beg, if outside window */ | |
| 967 | - | |
| 968 | - mov ecx, [esp+64] /* ecx = len */ | |
| 969 | - mov al, [edi-1] | |
| 970 | - mov ah, al | |
| 971 | - | |
| 972 | - sar ecx, 1 | |
| 973 | - jnc L_set_two | |
| 974 | - mov [edi], al /* memset out with from[-1] */ | |
| 975 | - inc edi | |
| 976 | - | |
| 977 | -L_set_two: | |
| 978 | - rep stosw | |
| 979 | - mov ebp, [esp+32] /* ebp = lcode */ | |
| 980 | - jmp L_while_test | |
| 981 | - | |
| 982 | -ALIGN 4 | |
| 983 | -L_test_for_second_level_length: | |
| 984 | - test al, 64 | |
| 985 | - jnz L_test_for_end_of_block /* if ((op & 64) != 0) */ | |
| 986 | - | |
| 987 | - xor eax, eax | |
| 988 | - inc eax | |
| 989 | - shl eax, cl | |
| 990 | - dec eax | |
| 991 | - and eax, edx /* eax &= hold */ | |
| 992 | - add eax, [esp+64] /* eax += len */ | |
| 993 | - mov eax, [ebp+eax*4] /* eax = lcode[val+(hold&mask[op])]*/ | |
| 994 | - jmp L_dolen | |
| 995 | - | |
| 996 | -ALIGN 4 | |
| 997 | -L_test_for_second_level_dist: | |
| 998 | - test al, 64 | |
| 999 | - jnz L_invalid_distance_code /* if ((op & 64) != 0) */ | |
| 1000 | - | |
| 1001 | - xor eax, eax | |
| 1002 | - inc eax | |
| 1003 | - shl eax, cl | |
| 1004 | - dec eax | |
| 1005 | - and eax, edx /* eax &= hold */ | |
| 1006 | - add eax, ebp /* eax += dist */ | |
| 1007 | - mov ecx, [esp+36] /* ecx = dcode */ | |
| 1008 | - mov eax, [ecx+eax*4] /* eax = dcode[val+(hold&mask[op])]*/ | |
| 1009 | - jmp L_dodist | |
| 1010 | - | |
| 1011 | -ALIGN 4 | |
| 1012 | -L_clip_window: | |
| 1013 | - mov ecx, eax | |
| 1014 | - mov eax, [esp+48] /* eax = wsize */ | |
| 1015 | - neg ecx /* nbytes = -nbytes */ | |
| 1016 | - mov esi, [esp+28] /* from = window */ | |
| 1017 | - | |
| 1018 | - cmp eax, ebp | |
| 1019 | - jb L_invalid_distance_too_far /* if (dist > wsize) */ | |
| 1020 | - | |
| 1021 | - add ecx, ebp /* nbytes = dist - nbytes */ | |
| 1022 | - cmp dword ptr [esp+52], 0 | |
| 1023 | - jne L_wrap_around_window /* if (write != 0) */ | |
| 1024 | - | |
| 1025 | - sub eax, ecx | |
| 1026 | - add esi, eax /* from += wsize - nbytes */ | |
| 1027 | - | |
| 1028 | - mov eax, [esp+64] /* eax = len */ | |
| 1029 | - cmp eax, ecx | |
| 1030 | - jbe L_do_copy /* if (nbytes >= len) */ | |
| 1031 | - | |
| 1032 | - sub eax, ecx /* len -= nbytes */ | |
| 1033 | - rep movsb | |
| 1034 | - mov esi, edi | |
| 1035 | - sub esi, ebp /* from = out - dist */ | |
| 1036 | - jmp L_do_copy | |
| 1037 | - | |
| 1038 | -ALIGN 4 | |
| 1039 | -L_wrap_around_window: | |
| 1040 | - mov eax, [esp+52] /* eax = write */ | |
| 1041 | - cmp ecx, eax | |
| 1042 | - jbe L_contiguous_in_window /* if (write >= nbytes) */ | |
| 1043 | - | |
| 1044 | - add esi, [esp+48] /* from += wsize */ | |
| 1045 | - add esi, eax /* from += write */ | |
| 1046 | - sub esi, ecx /* from -= nbytes */ | |
| 1047 | - sub ecx, eax /* nbytes -= write */ | |
| 1048 | - | |
| 1049 | - mov eax, [esp+64] /* eax = len */ | |
| 1050 | - cmp eax, ecx | |
| 1051 | - jbe L_do_copy /* if (nbytes >= len) */ | |
| 1052 | - | |
| 1053 | - sub eax, ecx /* len -= nbytes */ | |
| 1054 | - rep movsb | |
| 1055 | - mov esi, [esp+28] /* from = window */ | |
| 1056 | - mov ecx, [esp+52] /* nbytes = write */ | |
| 1057 | - cmp eax, ecx | |
| 1058 | - jbe L_do_copy /* if (nbytes >= len) */ | |
| 1059 | - | |
| 1060 | - sub eax, ecx /* len -= nbytes */ | |
| 1061 | - rep movsb | |
| 1062 | - mov esi, edi | |
| 1063 | - sub esi, ebp /* from = out - dist */ | |
| 1064 | - jmp L_do_copy | |
| 1065 | - | |
| 1066 | -ALIGN 4 | |
| 1067 | -L_contiguous_in_window: | |
| 1068 | - add esi, eax | |
| 1069 | - sub esi, ecx /* from += write - nbytes */ | |
| 1070 | - | |
| 1071 | - mov eax, [esp+64] /* eax = len */ | |
| 1072 | - cmp eax, ecx | |
| 1073 | - jbe L_do_copy /* if (nbytes >= len) */ | |
| 1074 | - | |
| 1075 | - sub eax, ecx /* len -= nbytes */ | |
| 1076 | - rep movsb | |
| 1077 | - mov esi, edi | |
| 1078 | - sub esi, ebp /* from = out - dist */ | |
| 1079 | - jmp L_do_copy | |
| 1080 | - | |
| 1081 | -ALIGN 4 | |
| 1082 | -L_do_copy: | |
| 1083 | - mov ecx, eax | |
| 1084 | - rep movsb | |
| 1085 | - | |
| 1086 | - mov esi, [esp+8] /* move in back to %esi, toss from */ | |
| 1087 | - mov ebp, [esp+32] /* ebp = lcode */ | |
| 1088 | - jmp L_while_test | |
| 1089 | - | |
| 1090 | -L_test_for_end_of_block: | |
| 1091 | - test al, 32 | |
| 1092 | - jz L_invalid_literal_length_code | |
| 1093 | - mov dword ptr [esp+72], 1 | |
| 1094 | - jmp L_break_loop_with_status | |
| 1095 | - | |
| 1096 | -L_invalid_literal_length_code: | |
| 1097 | - mov dword ptr [esp+72], 2 | |
| 1098 | - jmp L_break_loop_with_status | |
| 1099 | - | |
| 1100 | -L_invalid_distance_code: | |
| 1101 | - mov dword ptr [esp+72], 3 | |
| 1102 | - jmp L_break_loop_with_status | |
| 1103 | - | |
| 1104 | -L_invalid_distance_too_far: | |
| 1105 | - mov esi, [esp+4] | |
| 1106 | - mov dword ptr [esp+72], 4 | |
| 1107 | - jmp L_break_loop_with_status | |
| 1108 | - | |
| 1109 | -L_break_loop: | |
| 1110 | - mov dword ptr [esp+72], 0 | |
| 1111 | - | |
| 1112 | -L_break_loop_with_status: | |
| 1113 | -/* put in, out, bits, and hold back into ar and pop esp */ | |
| 1114 | - mov [esp+8], esi /* save in */ | |
| 1115 | - mov [esp+16], edi /* save out */ | |
| 1116 | - mov [esp+44], ebx /* save bits */ | |
| 1117 | - mov [esp+40], edx /* save hold */ | |
| 1118 | - mov ebp, [esp+4] /* restore esp, ebp */ | |
| 1119 | - mov esp, [esp] | |
| 1120 | - } | |
| 1121 | -#else | |
| 1122 | -#error "x86 architecture not defined" | |
| 1123 | -#endif | |
| 1124 | - | |
| 1125 | - if (ar.status > 1) { | |
| 1126 | - if (ar.status == 2) | |
| 1127 | - strm->msg = "invalid literal/length code"; | |
| 1128 | - else if (ar.status == 3) | |
| 1129 | - strm->msg = "invalid distance code"; | |
| 1130 | - else | |
| 1131 | - strm->msg = "invalid distance too far back"; | |
| 1132 | - state->mode = BAD; | |
| 1133 | - } | |
| 1134 | - else if ( ar.status == 1 ) { | |
| 1135 | - state->mode = TYPE; | |
| 1136 | - } | |
| 1137 | - | |
| 1138 | - /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ | |
| 1139 | - ar.len = ar.bits >> 3; | |
| 1140 | - ar.in -= ar.len; | |
| 1141 | - ar.bits -= ar.len << 3; | |
| 1142 | - ar.hold &= (1U << ar.bits) - 1; | |
| 1143 | - | |
| 1144 | - /* update state and return */ | |
| 1145 | - strm->next_in = ar.in; | |
| 1146 | - strm->next_out = ar.out; | |
| 1147 | - strm->avail_in = (unsigned)(ar.in < ar.last ? | |
| 1148 | - PAD_AVAIL_IN + (ar.last - ar.in) : | |
| 1149 | - PAD_AVAIL_IN - (ar.in - ar.last)); | |
| 1150 | - strm->avail_out = (unsigned)(ar.out < ar.end ? | |
| 1151 | - PAD_AVAIL_OUT + (ar.end - ar.out) : | |
| 1152 | - PAD_AVAIL_OUT - (ar.out - ar.end)); | |
| 1153 | - state->hold = ar.hold; | |
| 1154 | - state->bits = ar.bits; | |
| 1155 | - return; | |
| 1156 | -} | |
| 1157 | - |
| --- a/compat/zlib/contrib/inflate86/inffas86.c | |
| +++ b/compat/zlib/contrib/inflate86/inffas86.c | |
| @@ -1,1157 +0,0 @@ | |
| 1 | /* inffas86.c is a hand tuned assembler version of |
| 2 | * |
| 3 | * inffast.c -- fast decoding |
| 4 | * Copyright (C) 1995-2003 Mark Adler |
| 5 | * For conditions of distribution and use, see copyright notice in zlib.h |
| 6 | * |
| 7 | * Copyright (C) 2003 Chris Anderson <[email protected]> |
| 8 | * Please use the copyright conditions above. |
| 9 | * |
| 10 | * Dec-29-2003 -- I added AMD64 inflate asm support. This version is also |
| 11 | * slightly quicker on x86 systems because, instead of using rep movsb to copy |
| 12 | * data, it uses rep movsw, which moves data in 2-byte chunks instead of single |
| 13 | * bytes. I've tested the AMD64 code on a Fedora Core 1 + the x86_64 updates |
| 14 | * from http://fedora.linux.duke.edu/fc1_x86_64 |
| 15 | * which is running on an Athlon 64 3000+ / Gigabyte GA-K8VT800M system with |
| 16 | * 1GB ram. The 64-bit version is about 4% faster than the 32-bit version, |
| 17 | * when decompressing mozilla-source-1.3.tar.gz. |
| 18 | * |
| 19 | * Mar-13-2003 -- Most of this is derived from inffast.S which is derived from |
| 20 | * the gcc -S output of zlib-1.2.0/inffast.c. Zlib-1.2.0 is in beta release at |
| 21 | * the moment. I have successfully compiled and tested this code with gcc2.96, |
| 22 | * gcc3.2, icc5.0, msvc6.0. It is very close to the speed of inffast.S |
| 23 | * compiled with gcc -DNO_MMX, but inffast.S is still faster on the P3 with MMX |
| 24 | * enabled. I will attempt to merge the MMX code into this version. Newer |
| 25 | * versions of this and inffast.S can be found at |
| 26 | * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ |
| 27 | */ |
| 28 | |
| 29 | #include "zutil.h" |
| 30 | #include "inftrees.h" |
| 31 | #include "inflate.h" |
| 32 | #include "inffast.h" |
| 33 | |
| 34 | /* Mark Adler's comments from inffast.c: */ |
| 35 | |
| 36 | /* |
| 37 | Decode literal, length, and distance codes and write out the resulting |
| 38 | literal and match bytes until either not enough input or output is |
| 39 | available, an end-of-block is encountered, or a data error is encountered. |
| 40 | When large enough input and output buffers are supplied to inflate(), for |
| 41 | example, a 16K input buffer and a 64K output buffer, more than 95% of the |
| 42 | inflate execution time is spent in this routine. |
| 43 | |
| 44 | Entry assumptions: |
| 45 | |
| 46 | state->mode == LEN |
| 47 | strm->avail_in >= 6 |
| 48 | strm->avail_out >= 258 |
| 49 | start >= strm->avail_out |
| 50 | state->bits < 8 |
| 51 | |
| 52 | On return, state->mode is one of: |
| 53 | |
| 54 | LEN -- ran out of enough output space or enough available input |
| 55 | TYPE -- reached end of block code, inflate() to interpret next block |
| 56 | BAD -- error in block data |
| 57 | |
| 58 | Notes: |
| 59 | |
| 60 | - The maximum input bits used by a length/distance pair is 15 bits for the |
| 61 | length code, 5 bits for the length extra, 15 bits for the distance code, |
| 62 | and 13 bits for the distance extra. This totals 48 bits, or six bytes. |
| 63 | Therefore if strm->avail_in >= 6, then there is enough input to avoid |
| 64 | checking for available input while decoding. |
| 65 | |
| 66 | - The maximum bytes that a single length/distance pair can output is 258 |
| 67 | bytes, which is the maximum length that can be coded. inflate_fast() |
| 68 | requires strm->avail_out >= 258 for each loop to avoid checking for |
| 69 | output space. |
| 70 | */ |
| 71 | void inflate_fast(strm, start) |
| 72 | z_streamp strm; |
| 73 | unsigned start; /* inflate()'s starting value for strm->avail_out */ |
| 74 | { |
| 75 | struct inflate_state FAR *state; |
| 76 | struct inffast_ar { |
| 77 | /* 64 32 x86 x86_64 */ |
| 78 | /* ar offset register */ |
| 79 | /* 0 0 */ void *esp; /* esp save */ |
| 80 | /* 8 4 */ void *ebp; /* ebp save */ |
| 81 | /* 16 8 */ unsigned char FAR *in; /* esi rsi local strm->next_in */ |
| 82 | /* 24 12 */ unsigned char FAR *last; /* r9 while in < last */ |
| 83 | /* 32 16 */ unsigned char FAR *out; /* edi rdi local strm->next_out */ |
| 84 | /* 40 20 */ unsigned char FAR *beg; /* inflate()'s init next_out */ |
| 85 | /* 48 24 */ unsigned char FAR *end; /* r10 while out < end */ |
| 86 | /* 56 28 */ unsigned char FAR *window;/* size of window, wsize!=0 */ |
| 87 | /* 64 32 */ code const FAR *lcode; /* ebp rbp local strm->lencode */ |
| 88 | /* 72 36 */ code const FAR *dcode; /* r11 local strm->distcode */ |
| 89 | /* 80 40 */ unsigned long hold; /* edx rdx local strm->hold */ |
| 90 | /* 88 44 */ unsigned bits; /* ebx rbx local strm->bits */ |
| 91 | /* 92 48 */ unsigned wsize; /* window size */ |
| 92 | /* 96 52 */ unsigned write; /* window write index */ |
| 93 | /*100 56 */ unsigned lmask; /* r12 mask for lcode */ |
| 94 | /*104 60 */ unsigned dmask; /* r13 mask for dcode */ |
| 95 | /*108 64 */ unsigned len; /* r14 match length */ |
| 96 | /*112 68 */ unsigned dist; /* r15 match distance */ |
| 97 | /*116 72 */ unsigned status; /* set when state chng*/ |
| 98 | } ar; |
| 99 | |
| 100 | #if defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 ) |
| 101 | #define PAD_AVAIL_IN 6 |
| 102 | #define PAD_AVAIL_OUT 258 |
| 103 | #else |
| 104 | #define PAD_AVAIL_IN 5 |
| 105 | #define PAD_AVAIL_OUT 257 |
| 106 | #endif |
| 107 | |
| 108 | /* copy state to local variables */ |
| 109 | state = (struct inflate_state FAR *)strm->state; |
| 110 | ar.in = strm->next_in; |
| 111 | ar.last = ar.in + (strm->avail_in - PAD_AVAIL_IN); |
| 112 | ar.out = strm->next_out; |
| 113 | ar.beg = ar.out - (start - strm->avail_out); |
| 114 | ar.end = ar.out + (strm->avail_out - PAD_AVAIL_OUT); |
| 115 | ar.wsize = state->wsize; |
| 116 | ar.write = state->wnext; |
| 117 | ar.window = state->window; |
| 118 | ar.hold = state->hold; |
| 119 | ar.bits = state->bits; |
| 120 | ar.lcode = state->lencode; |
| 121 | ar.dcode = state->distcode; |
| 122 | ar.lmask = (1U << state->lenbits) - 1; |
| 123 | ar.dmask = (1U << state->distbits) - 1; |
| 124 | |
| 125 | /* decode literals and length/distances until end-of-block or not enough |
| 126 | input data or output space */ |
| 127 | |
| 128 | /* align in on 1/2 hold size boundary */ |
| 129 | while (((unsigned long)(void *)ar.in & (sizeof(ar.hold) / 2 - 1)) != 0) { |
| 130 | ar.hold += (unsigned long)*ar.in++ << ar.bits; |
| 131 | ar.bits += 8; |
| 132 | } |
| 133 | |
| 134 | #if defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 ) |
| 135 | __asm__ __volatile__ ( |
| 136 | " leaq %0, %%rax\n" |
| 137 | " movq %%rbp, 8(%%rax)\n" /* save regs rbp and rsp */ |
| 138 | " movq %%rsp, (%%rax)\n" |
| 139 | " movq %%rax, %%rsp\n" /* make rsp point to &ar */ |
| 140 | " movq 16(%%rsp), %%rsi\n" /* rsi = in */ |
| 141 | " movq 32(%%rsp), %%rdi\n" /* rdi = out */ |
| 142 | " movq 24(%%rsp), %%r9\n" /* r9 = last */ |
| 143 | " movq 48(%%rsp), %%r10\n" /* r10 = end */ |
| 144 | " movq 64(%%rsp), %%rbp\n" /* rbp = lcode */ |
| 145 | " movq 72(%%rsp), %%r11\n" /* r11 = dcode */ |
| 146 | " movq 80(%%rsp), %%rdx\n" /* rdx = hold */ |
| 147 | " movl 88(%%rsp), %%ebx\n" /* ebx = bits */ |
| 148 | " movl 100(%%rsp), %%r12d\n" /* r12d = lmask */ |
| 149 | " movl 104(%%rsp), %%r13d\n" /* r13d = dmask */ |
| 150 | /* r14d = len */ |
| 151 | /* r15d = dist */ |
| 152 | " cld\n" |
| 153 | " cmpq %%rdi, %%r10\n" |
| 154 | " je .L_one_time\n" /* if only one decode left */ |
| 155 | " cmpq %%rsi, %%r9\n" |
| 156 | " je .L_one_time\n" |
| 157 | " jmp .L_do_loop\n" |
| 158 | |
| 159 | ".L_one_time:\n" |
| 160 | " movq %%r12, %%r8\n" /* r8 = lmask */ |
| 161 | " cmpb $32, %%bl\n" |
| 162 | " ja .L_get_length_code_one_time\n" |
| 163 | |
| 164 | " lodsl\n" /* eax = *(uint *)in++ */ |
| 165 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 166 | " addb $32, %%bl\n" /* bits += 32 */ |
| 167 | " shlq %%cl, %%rax\n" |
| 168 | " orq %%rax, %%rdx\n" /* hold |= *((uint *)in)++ << bits */ |
| 169 | " jmp .L_get_length_code_one_time\n" |
| 170 | |
| 171 | ".align 32,0x90\n" |
| 172 | ".L_while_test:\n" |
| 173 | " cmpq %%rdi, %%r10\n" |
| 174 | " jbe .L_break_loop\n" |
| 175 | " cmpq %%rsi, %%r9\n" |
| 176 | " jbe .L_break_loop\n" |
| 177 | |
| 178 | ".L_do_loop:\n" |
| 179 | " movq %%r12, %%r8\n" /* r8 = lmask */ |
| 180 | " cmpb $32, %%bl\n" |
| 181 | " ja .L_get_length_code\n" /* if (32 < bits) */ |
| 182 | |
| 183 | " lodsl\n" /* eax = *(uint *)in++ */ |
| 184 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 185 | " addb $32, %%bl\n" /* bits += 32 */ |
| 186 | " shlq %%cl, %%rax\n" |
| 187 | " orq %%rax, %%rdx\n" /* hold |= *((uint *)in)++ << bits */ |
| 188 | |
| 189 | ".L_get_length_code:\n" |
| 190 | " andq %%rdx, %%r8\n" /* r8 &= hold */ |
| 191 | " movl (%%rbp,%%r8,4), %%eax\n" /* eax = lcode[hold & lmask] */ |
| 192 | |
| 193 | " movb %%ah, %%cl\n" /* cl = this.bits */ |
| 194 | " subb %%ah, %%bl\n" /* bits -= this.bits */ |
| 195 | " shrq %%cl, %%rdx\n" /* hold >>= this.bits */ |
| 196 | |
| 197 | " testb %%al, %%al\n" |
| 198 | " jnz .L_test_for_length_base\n" /* if (op != 0) 45.7% */ |
| 199 | |
| 200 | " movq %%r12, %%r8\n" /* r8 = lmask */ |
| 201 | " shrl $16, %%eax\n" /* output this.val char */ |
| 202 | " stosb\n" |
| 203 | |
| 204 | ".L_get_length_code_one_time:\n" |
| 205 | " andq %%rdx, %%r8\n" /* r8 &= hold */ |
| 206 | " movl (%%rbp,%%r8,4), %%eax\n" /* eax = lcode[hold & lmask] */ |
| 207 | |
| 208 | ".L_dolen:\n" |
| 209 | " movb %%ah, %%cl\n" /* cl = this.bits */ |
| 210 | " subb %%ah, %%bl\n" /* bits -= this.bits */ |
| 211 | " shrq %%cl, %%rdx\n" /* hold >>= this.bits */ |
| 212 | |
| 213 | " testb %%al, %%al\n" |
| 214 | " jnz .L_test_for_length_base\n" /* if (op != 0) 45.7% */ |
| 215 | |
| 216 | " shrl $16, %%eax\n" /* output this.val char */ |
| 217 | " stosb\n" |
| 218 | " jmp .L_while_test\n" |
| 219 | |
| 220 | ".align 32,0x90\n" |
| 221 | ".L_test_for_length_base:\n" |
| 222 | " movl %%eax, %%r14d\n" /* len = this */ |
| 223 | " shrl $16, %%r14d\n" /* len = this.val */ |
| 224 | " movb %%al, %%cl\n" |
| 225 | |
| 226 | " testb $16, %%al\n" |
| 227 | " jz .L_test_for_second_level_length\n" /* if ((op & 16) == 0) 8% */ |
| 228 | " andb $15, %%cl\n" /* op &= 15 */ |
| 229 | " jz .L_decode_distance\n" /* if (!op) */ |
| 230 | |
| 231 | ".L_add_bits_to_len:\n" |
| 232 | " subb %%cl, %%bl\n" |
| 233 | " xorl %%eax, %%eax\n" |
| 234 | " incl %%eax\n" |
| 235 | " shll %%cl, %%eax\n" |
| 236 | " decl %%eax\n" |
| 237 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 238 | " shrq %%cl, %%rdx\n" |
| 239 | " addl %%eax, %%r14d\n" /* len += hold & mask[op] */ |
| 240 | |
| 241 | ".L_decode_distance:\n" |
| 242 | " movq %%r13, %%r8\n" /* r8 = dmask */ |
| 243 | " cmpb $32, %%bl\n" |
| 244 | " ja .L_get_distance_code\n" /* if (32 < bits) */ |
| 245 | |
| 246 | " lodsl\n" /* eax = *(uint *)in++ */ |
| 247 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 248 | " addb $32, %%bl\n" /* bits += 32 */ |
| 249 | " shlq %%cl, %%rax\n" |
| 250 | " orq %%rax, %%rdx\n" /* hold |= *((uint *)in)++ << bits */ |
| 251 | |
| 252 | ".L_get_distance_code:\n" |
| 253 | " andq %%rdx, %%r8\n" /* r8 &= hold */ |
| 254 | " movl (%%r11,%%r8,4), %%eax\n" /* eax = dcode[hold & dmask] */ |
| 255 | |
| 256 | ".L_dodist:\n" |
| 257 | " movl %%eax, %%r15d\n" /* dist = this */ |
| 258 | " shrl $16, %%r15d\n" /* dist = this.val */ |
| 259 | " movb %%ah, %%cl\n" |
| 260 | " subb %%ah, %%bl\n" /* bits -= this.bits */ |
| 261 | " shrq %%cl, %%rdx\n" /* hold >>= this.bits */ |
| 262 | " movb %%al, %%cl\n" /* cl = this.op */ |
| 263 | |
| 264 | " testb $16, %%al\n" /* if ((op & 16) == 0) */ |
| 265 | " jz .L_test_for_second_level_dist\n" |
| 266 | " andb $15, %%cl\n" /* op &= 15 */ |
| 267 | " jz .L_check_dist_one\n" |
| 268 | |
| 269 | ".L_add_bits_to_dist:\n" |
| 270 | " subb %%cl, %%bl\n" |
| 271 | " xorl %%eax, %%eax\n" |
| 272 | " incl %%eax\n" |
| 273 | " shll %%cl, %%eax\n" |
| 274 | " decl %%eax\n" /* (1 << op) - 1 */ |
| 275 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 276 | " shrq %%cl, %%rdx\n" |
| 277 | " addl %%eax, %%r15d\n" /* dist += hold & ((1 << op) - 1) */ |
| 278 | |
| 279 | ".L_check_window:\n" |
| 280 | " movq %%rsi, %%r8\n" /* save in so from can use it's reg */ |
| 281 | " movq %%rdi, %%rax\n" |
| 282 | " subq 40(%%rsp), %%rax\n" /* nbytes = out - beg */ |
| 283 | |
| 284 | " cmpl %%r15d, %%eax\n" |
| 285 | " jb .L_clip_window\n" /* if (dist > nbytes) 4.2% */ |
| 286 | |
| 287 | " movl %%r14d, %%ecx\n" /* ecx = len */ |
| 288 | " movq %%rdi, %%rsi\n" |
| 289 | " subq %%r15, %%rsi\n" /* from = out - dist */ |
| 290 | |
| 291 | " sarl %%ecx\n" |
| 292 | " jnc .L_copy_two\n" /* if len % 2 == 0 */ |
| 293 | |
| 294 | " rep movsw\n" |
| 295 | " movb (%%rsi), %%al\n" |
| 296 | " movb %%al, (%%rdi)\n" |
| 297 | " incq %%rdi\n" |
| 298 | |
| 299 | " movq %%r8, %%rsi\n" /* move in back to %rsi, toss from */ |
| 300 | " jmp .L_while_test\n" |
| 301 | |
| 302 | ".L_copy_two:\n" |
| 303 | " rep movsw\n" |
| 304 | " movq %%r8, %%rsi\n" /* move in back to %rsi, toss from */ |
| 305 | " jmp .L_while_test\n" |
| 306 | |
| 307 | ".align 32,0x90\n" |
| 308 | ".L_check_dist_one:\n" |
| 309 | " cmpl $1, %%r15d\n" /* if dist 1, is a memset */ |
| 310 | " jne .L_check_window\n" |
| 311 | " cmpq %%rdi, 40(%%rsp)\n" /* if out == beg, outside window */ |
| 312 | " je .L_check_window\n" |
| 313 | |
| 314 | " movl %%r14d, %%ecx\n" /* ecx = len */ |
| 315 | " movb -1(%%rdi), %%al\n" |
| 316 | " movb %%al, %%ah\n" |
| 317 | |
| 318 | " sarl %%ecx\n" |
| 319 | " jnc .L_set_two\n" |
| 320 | " movb %%al, (%%rdi)\n" |
| 321 | " incq %%rdi\n" |
| 322 | |
| 323 | ".L_set_two:\n" |
| 324 | " rep stosw\n" |
| 325 | " jmp .L_while_test\n" |
| 326 | |
| 327 | ".align 32,0x90\n" |
| 328 | ".L_test_for_second_level_length:\n" |
| 329 | " testb $64, %%al\n" |
| 330 | " jnz .L_test_for_end_of_block\n" /* if ((op & 64) != 0) */ |
| 331 | |
| 332 | " xorl %%eax, %%eax\n" |
| 333 | " incl %%eax\n" |
| 334 | " shll %%cl, %%eax\n" |
| 335 | " decl %%eax\n" |
| 336 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 337 | " addl %%r14d, %%eax\n" /* eax += len */ |
| 338 | " movl (%%rbp,%%rax,4), %%eax\n" /* eax = lcode[val+(hold&mask[op])]*/ |
| 339 | " jmp .L_dolen\n" |
| 340 | |
| 341 | ".align 32,0x90\n" |
| 342 | ".L_test_for_second_level_dist:\n" |
| 343 | " testb $64, %%al\n" |
| 344 | " jnz .L_invalid_distance_code\n" /* if ((op & 64) != 0) */ |
| 345 | |
| 346 | " xorl %%eax, %%eax\n" |
| 347 | " incl %%eax\n" |
| 348 | " shll %%cl, %%eax\n" |
| 349 | " decl %%eax\n" |
| 350 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 351 | " addl %%r15d, %%eax\n" /* eax += dist */ |
| 352 | " movl (%%r11,%%rax,4), %%eax\n" /* eax = dcode[val+(hold&mask[op])]*/ |
| 353 | " jmp .L_dodist\n" |
| 354 | |
| 355 | ".align 32,0x90\n" |
| 356 | ".L_clip_window:\n" |
| 357 | " movl %%eax, %%ecx\n" /* ecx = nbytes */ |
| 358 | " movl 92(%%rsp), %%eax\n" /* eax = wsize, prepare for dist cmp */ |
| 359 | " negl %%ecx\n" /* nbytes = -nbytes */ |
| 360 | |
| 361 | " cmpl %%r15d, %%eax\n" |
| 362 | " jb .L_invalid_distance_too_far\n" /* if (dist > wsize) */ |
| 363 | |
| 364 | " addl %%r15d, %%ecx\n" /* nbytes = dist - nbytes */ |
| 365 | " cmpl $0, 96(%%rsp)\n" |
| 366 | " jne .L_wrap_around_window\n" /* if (write != 0) */ |
| 367 | |
| 368 | " movq 56(%%rsp), %%rsi\n" /* from = window */ |
| 369 | " subl %%ecx, %%eax\n" /* eax -= nbytes */ |
| 370 | " addq %%rax, %%rsi\n" /* from += wsize - nbytes */ |
| 371 | |
| 372 | " movl %%r14d, %%eax\n" /* eax = len */ |
| 373 | " cmpl %%ecx, %%r14d\n" |
| 374 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 375 | |
| 376 | " subl %%ecx, %%eax\n" /* eax -= nbytes */ |
| 377 | " rep movsb\n" |
| 378 | " movq %%rdi, %%rsi\n" |
| 379 | " subq %%r15, %%rsi\n" /* from = &out[ -dist ] */ |
| 380 | " jmp .L_do_copy\n" |
| 381 | |
| 382 | ".align 32,0x90\n" |
| 383 | ".L_wrap_around_window:\n" |
| 384 | " movl 96(%%rsp), %%eax\n" /* eax = write */ |
| 385 | " cmpl %%eax, %%ecx\n" |
| 386 | " jbe .L_contiguous_in_window\n" /* if (write >= nbytes) */ |
| 387 | |
| 388 | " movl 92(%%rsp), %%esi\n" /* from = wsize */ |
| 389 | " addq 56(%%rsp), %%rsi\n" /* from += window */ |
| 390 | " addq %%rax, %%rsi\n" /* from += write */ |
| 391 | " subq %%rcx, %%rsi\n" /* from -= nbytes */ |
| 392 | " subl %%eax, %%ecx\n" /* nbytes -= write */ |
| 393 | |
| 394 | " movl %%r14d, %%eax\n" /* eax = len */ |
| 395 | " cmpl %%ecx, %%eax\n" |
| 396 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 397 | |
| 398 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 399 | " rep movsb\n" |
| 400 | " movq 56(%%rsp), %%rsi\n" /* from = window */ |
| 401 | " movl 96(%%rsp), %%ecx\n" /* nbytes = write */ |
| 402 | " cmpl %%ecx, %%eax\n" |
| 403 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 404 | |
| 405 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 406 | " rep movsb\n" |
| 407 | " movq %%rdi, %%rsi\n" |
| 408 | " subq %%r15, %%rsi\n" /* from = out - dist */ |
| 409 | " jmp .L_do_copy\n" |
| 410 | |
| 411 | ".align 32,0x90\n" |
| 412 | ".L_contiguous_in_window:\n" |
| 413 | " movq 56(%%rsp), %%rsi\n" /* rsi = window */ |
| 414 | " addq %%rax, %%rsi\n" |
| 415 | " subq %%rcx, %%rsi\n" /* from += write - nbytes */ |
| 416 | |
| 417 | " movl %%r14d, %%eax\n" /* eax = len */ |
| 418 | " cmpl %%ecx, %%eax\n" |
| 419 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 420 | |
| 421 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 422 | " rep movsb\n" |
| 423 | " movq %%rdi, %%rsi\n" |
| 424 | " subq %%r15, %%rsi\n" /* from = out - dist */ |
| 425 | " jmp .L_do_copy\n" /* if (nbytes >= len) */ |
| 426 | |
| 427 | ".align 32,0x90\n" |
| 428 | ".L_do_copy:\n" |
| 429 | " movl %%eax, %%ecx\n" /* ecx = len */ |
| 430 | " rep movsb\n" |
| 431 | |
| 432 | " movq %%r8, %%rsi\n" /* move in back to %esi, toss from */ |
| 433 | " jmp .L_while_test\n" |
| 434 | |
| 435 | ".L_test_for_end_of_block:\n" |
| 436 | " testb $32, %%al\n" |
| 437 | " jz .L_invalid_literal_length_code\n" |
| 438 | " movl $1, 116(%%rsp)\n" |
| 439 | " jmp .L_break_loop_with_status\n" |
| 440 | |
| 441 | ".L_invalid_literal_length_code:\n" |
| 442 | " movl $2, 116(%%rsp)\n" |
| 443 | " jmp .L_break_loop_with_status\n" |
| 444 | |
| 445 | ".L_invalid_distance_code:\n" |
| 446 | " movl $3, 116(%%rsp)\n" |
| 447 | " jmp .L_break_loop_with_status\n" |
| 448 | |
| 449 | ".L_invalid_distance_too_far:\n" |
| 450 | " movl $4, 116(%%rsp)\n" |
| 451 | " jmp .L_break_loop_with_status\n" |
| 452 | |
| 453 | ".L_break_loop:\n" |
| 454 | " movl $0, 116(%%rsp)\n" |
| 455 | |
| 456 | ".L_break_loop_with_status:\n" |
| 457 | /* put in, out, bits, and hold back into ar and pop esp */ |
| 458 | " movq %%rsi, 16(%%rsp)\n" /* in */ |
| 459 | " movq %%rdi, 32(%%rsp)\n" /* out */ |
| 460 | " movl %%ebx, 88(%%rsp)\n" /* bits */ |
| 461 | " movq %%rdx, 80(%%rsp)\n" /* hold */ |
| 462 | " movq (%%rsp), %%rax\n" /* restore rbp and rsp */ |
| 463 | " movq 8(%%rsp), %%rbp\n" |
| 464 | " movq %%rax, %%rsp\n" |
| 465 | : |
| 466 | : "m" (ar) |
| 467 | : "memory", "%rax", "%rbx", "%rcx", "%rdx", "%rsi", "%rdi", |
| 468 | "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15" |
| 469 | ); |
| 470 | #elif ( defined( __GNUC__ ) || defined( __ICC ) ) && defined( __i386 ) |
| 471 | __asm__ __volatile__ ( |
| 472 | " leal %0, %%eax\n" |
| 473 | " movl %%esp, (%%eax)\n" /* save esp, ebp */ |
| 474 | " movl %%ebp, 4(%%eax)\n" |
| 475 | " movl %%eax, %%esp\n" |
| 476 | " movl 8(%%esp), %%esi\n" /* esi = in */ |
| 477 | " movl 16(%%esp), %%edi\n" /* edi = out */ |
| 478 | " movl 40(%%esp), %%edx\n" /* edx = hold */ |
| 479 | " movl 44(%%esp), %%ebx\n" /* ebx = bits */ |
| 480 | " movl 32(%%esp), %%ebp\n" /* ebp = lcode */ |
| 481 | |
| 482 | " cld\n" |
| 483 | " jmp .L_do_loop\n" |
| 484 | |
| 485 | ".align 32,0x90\n" |
| 486 | ".L_while_test:\n" |
| 487 | " cmpl %%edi, 24(%%esp)\n" /* out < end */ |
| 488 | " jbe .L_break_loop\n" |
| 489 | " cmpl %%esi, 12(%%esp)\n" /* in < last */ |
| 490 | " jbe .L_break_loop\n" |
| 491 | |
| 492 | ".L_do_loop:\n" |
| 493 | " cmpb $15, %%bl\n" |
| 494 | " ja .L_get_length_code\n" /* if (15 < bits) */ |
| 495 | |
| 496 | " xorl %%eax, %%eax\n" |
| 497 | " lodsw\n" /* al = *(ushort *)in++ */ |
| 498 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 499 | " addb $16, %%bl\n" /* bits += 16 */ |
| 500 | " shll %%cl, %%eax\n" |
| 501 | " orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ |
| 502 | |
| 503 | ".L_get_length_code:\n" |
| 504 | " movl 56(%%esp), %%eax\n" /* eax = lmask */ |
| 505 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 506 | " movl (%%ebp,%%eax,4), %%eax\n" /* eax = lcode[hold & lmask] */ |
| 507 | |
| 508 | ".L_dolen:\n" |
| 509 | " movb %%ah, %%cl\n" /* cl = this.bits */ |
| 510 | " subb %%ah, %%bl\n" /* bits -= this.bits */ |
| 511 | " shrl %%cl, %%edx\n" /* hold >>= this.bits */ |
| 512 | |
| 513 | " testb %%al, %%al\n" |
| 514 | " jnz .L_test_for_length_base\n" /* if (op != 0) 45.7% */ |
| 515 | |
| 516 | " shrl $16, %%eax\n" /* output this.val char */ |
| 517 | " stosb\n" |
| 518 | " jmp .L_while_test\n" |
| 519 | |
| 520 | ".align 32,0x90\n" |
| 521 | ".L_test_for_length_base:\n" |
| 522 | " movl %%eax, %%ecx\n" /* len = this */ |
| 523 | " shrl $16, %%ecx\n" /* len = this.val */ |
| 524 | " movl %%ecx, 64(%%esp)\n" /* save len */ |
| 525 | " movb %%al, %%cl\n" |
| 526 | |
| 527 | " testb $16, %%al\n" |
| 528 | " jz .L_test_for_second_level_length\n" /* if ((op & 16) == 0) 8% */ |
| 529 | " andb $15, %%cl\n" /* op &= 15 */ |
| 530 | " jz .L_decode_distance\n" /* if (!op) */ |
| 531 | " cmpb %%cl, %%bl\n" |
| 532 | " jae .L_add_bits_to_len\n" /* if (op <= bits) */ |
| 533 | |
| 534 | " movb %%cl, %%ch\n" /* stash op in ch, freeing cl */ |
| 535 | " xorl %%eax, %%eax\n" |
| 536 | " lodsw\n" /* al = *(ushort *)in++ */ |
| 537 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 538 | " addb $16, %%bl\n" /* bits += 16 */ |
| 539 | " shll %%cl, %%eax\n" |
| 540 | " orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ |
| 541 | " movb %%ch, %%cl\n" /* move op back to ecx */ |
| 542 | |
| 543 | ".L_add_bits_to_len:\n" |
| 544 | " subb %%cl, %%bl\n" |
| 545 | " xorl %%eax, %%eax\n" |
| 546 | " incl %%eax\n" |
| 547 | " shll %%cl, %%eax\n" |
| 548 | " decl %%eax\n" |
| 549 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 550 | " shrl %%cl, %%edx\n" |
| 551 | " addl %%eax, 64(%%esp)\n" /* len += hold & mask[op] */ |
| 552 | |
| 553 | ".L_decode_distance:\n" |
| 554 | " cmpb $15, %%bl\n" |
| 555 | " ja .L_get_distance_code\n" /* if (15 < bits) */ |
| 556 | |
| 557 | " xorl %%eax, %%eax\n" |
| 558 | " lodsw\n" /* al = *(ushort *)in++ */ |
| 559 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 560 | " addb $16, %%bl\n" /* bits += 16 */ |
| 561 | " shll %%cl, %%eax\n" |
| 562 | " orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ |
| 563 | |
| 564 | ".L_get_distance_code:\n" |
| 565 | " movl 60(%%esp), %%eax\n" /* eax = dmask */ |
| 566 | " movl 36(%%esp), %%ecx\n" /* ecx = dcode */ |
| 567 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 568 | " movl (%%ecx,%%eax,4), %%eax\n"/* eax = dcode[hold & dmask] */ |
| 569 | |
| 570 | ".L_dodist:\n" |
| 571 | " movl %%eax, %%ebp\n" /* dist = this */ |
| 572 | " shrl $16, %%ebp\n" /* dist = this.val */ |
| 573 | " movb %%ah, %%cl\n" |
| 574 | " subb %%ah, %%bl\n" /* bits -= this.bits */ |
| 575 | " shrl %%cl, %%edx\n" /* hold >>= this.bits */ |
| 576 | " movb %%al, %%cl\n" /* cl = this.op */ |
| 577 | |
| 578 | " testb $16, %%al\n" /* if ((op & 16) == 0) */ |
| 579 | " jz .L_test_for_second_level_dist\n" |
| 580 | " andb $15, %%cl\n" /* op &= 15 */ |
| 581 | " jz .L_check_dist_one\n" |
| 582 | " cmpb %%cl, %%bl\n" |
| 583 | " jae .L_add_bits_to_dist\n" /* if (op <= bits) 97.6% */ |
| 584 | |
| 585 | " movb %%cl, %%ch\n" /* stash op in ch, freeing cl */ |
| 586 | " xorl %%eax, %%eax\n" |
| 587 | " lodsw\n" /* al = *(ushort *)in++ */ |
| 588 | " movb %%bl, %%cl\n" /* cl = bits, needs it for shifting */ |
| 589 | " addb $16, %%bl\n" /* bits += 16 */ |
| 590 | " shll %%cl, %%eax\n" |
| 591 | " orl %%eax, %%edx\n" /* hold |= *((ushort *)in)++ << bits */ |
| 592 | " movb %%ch, %%cl\n" /* move op back to ecx */ |
| 593 | |
| 594 | ".L_add_bits_to_dist:\n" |
| 595 | " subb %%cl, %%bl\n" |
| 596 | " xorl %%eax, %%eax\n" |
| 597 | " incl %%eax\n" |
| 598 | " shll %%cl, %%eax\n" |
| 599 | " decl %%eax\n" /* (1 << op) - 1 */ |
| 600 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 601 | " shrl %%cl, %%edx\n" |
| 602 | " addl %%eax, %%ebp\n" /* dist += hold & ((1 << op) - 1) */ |
| 603 | |
| 604 | ".L_check_window:\n" |
| 605 | " movl %%esi, 8(%%esp)\n" /* save in so from can use it's reg */ |
| 606 | " movl %%edi, %%eax\n" |
| 607 | " subl 20(%%esp), %%eax\n" /* nbytes = out - beg */ |
| 608 | |
| 609 | " cmpl %%ebp, %%eax\n" |
| 610 | " jb .L_clip_window\n" /* if (dist > nbytes) 4.2% */ |
| 611 | |
| 612 | " movl 64(%%esp), %%ecx\n" /* ecx = len */ |
| 613 | " movl %%edi, %%esi\n" |
| 614 | " subl %%ebp, %%esi\n" /* from = out - dist */ |
| 615 | |
| 616 | " sarl %%ecx\n" |
| 617 | " jnc .L_copy_two\n" /* if len % 2 == 0 */ |
| 618 | |
| 619 | " rep movsw\n" |
| 620 | " movb (%%esi), %%al\n" |
| 621 | " movb %%al, (%%edi)\n" |
| 622 | " incl %%edi\n" |
| 623 | |
| 624 | " movl 8(%%esp), %%esi\n" /* move in back to %esi, toss from */ |
| 625 | " movl 32(%%esp), %%ebp\n" /* ebp = lcode */ |
| 626 | " jmp .L_while_test\n" |
| 627 | |
| 628 | ".L_copy_two:\n" |
| 629 | " rep movsw\n" |
| 630 | " movl 8(%%esp), %%esi\n" /* move in back to %esi, toss from */ |
| 631 | " movl 32(%%esp), %%ebp\n" /* ebp = lcode */ |
| 632 | " jmp .L_while_test\n" |
| 633 | |
| 634 | ".align 32,0x90\n" |
| 635 | ".L_check_dist_one:\n" |
| 636 | " cmpl $1, %%ebp\n" /* if dist 1, is a memset */ |
| 637 | " jne .L_check_window\n" |
| 638 | " cmpl %%edi, 20(%%esp)\n" |
| 639 | " je .L_check_window\n" /* out == beg, if outside window */ |
| 640 | |
| 641 | " movl 64(%%esp), %%ecx\n" /* ecx = len */ |
| 642 | " movb -1(%%edi), %%al\n" |
| 643 | " movb %%al, %%ah\n" |
| 644 | |
| 645 | " sarl %%ecx\n" |
| 646 | " jnc .L_set_two\n" |
| 647 | " movb %%al, (%%edi)\n" |
| 648 | " incl %%edi\n" |
| 649 | |
| 650 | ".L_set_two:\n" |
| 651 | " rep stosw\n" |
| 652 | " movl 32(%%esp), %%ebp\n" /* ebp = lcode */ |
| 653 | " jmp .L_while_test\n" |
| 654 | |
| 655 | ".align 32,0x90\n" |
| 656 | ".L_test_for_second_level_length:\n" |
| 657 | " testb $64, %%al\n" |
| 658 | " jnz .L_test_for_end_of_block\n" /* if ((op & 64) != 0) */ |
| 659 | |
| 660 | " xorl %%eax, %%eax\n" |
| 661 | " incl %%eax\n" |
| 662 | " shll %%cl, %%eax\n" |
| 663 | " decl %%eax\n" |
| 664 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 665 | " addl 64(%%esp), %%eax\n" /* eax += len */ |
| 666 | " movl (%%ebp,%%eax,4), %%eax\n" /* eax = lcode[val+(hold&mask[op])]*/ |
| 667 | " jmp .L_dolen\n" |
| 668 | |
| 669 | ".align 32,0x90\n" |
| 670 | ".L_test_for_second_level_dist:\n" |
| 671 | " testb $64, %%al\n" |
| 672 | " jnz .L_invalid_distance_code\n" /* if ((op & 64) != 0) */ |
| 673 | |
| 674 | " xorl %%eax, %%eax\n" |
| 675 | " incl %%eax\n" |
| 676 | " shll %%cl, %%eax\n" |
| 677 | " decl %%eax\n" |
| 678 | " andl %%edx, %%eax\n" /* eax &= hold */ |
| 679 | " addl %%ebp, %%eax\n" /* eax += dist */ |
| 680 | " movl 36(%%esp), %%ecx\n" /* ecx = dcode */ |
| 681 | " movl (%%ecx,%%eax,4), %%eax\n" /* eax = dcode[val+(hold&mask[op])]*/ |
| 682 | " jmp .L_dodist\n" |
| 683 | |
| 684 | ".align 32,0x90\n" |
| 685 | ".L_clip_window:\n" |
| 686 | " movl %%eax, %%ecx\n" |
| 687 | " movl 48(%%esp), %%eax\n" /* eax = wsize */ |
| 688 | " negl %%ecx\n" /* nbytes = -nbytes */ |
| 689 | " movl 28(%%esp), %%esi\n" /* from = window */ |
| 690 | |
| 691 | " cmpl %%ebp, %%eax\n" |
| 692 | " jb .L_invalid_distance_too_far\n" /* if (dist > wsize) */ |
| 693 | |
| 694 | " addl %%ebp, %%ecx\n" /* nbytes = dist - nbytes */ |
| 695 | " cmpl $0, 52(%%esp)\n" |
| 696 | " jne .L_wrap_around_window\n" /* if (write != 0) */ |
| 697 | |
| 698 | " subl %%ecx, %%eax\n" |
| 699 | " addl %%eax, %%esi\n" /* from += wsize - nbytes */ |
| 700 | |
| 701 | " movl 64(%%esp), %%eax\n" /* eax = len */ |
| 702 | " cmpl %%ecx, %%eax\n" |
| 703 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 704 | |
| 705 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 706 | " rep movsb\n" |
| 707 | " movl %%edi, %%esi\n" |
| 708 | " subl %%ebp, %%esi\n" /* from = out - dist */ |
| 709 | " jmp .L_do_copy\n" |
| 710 | |
| 711 | ".align 32,0x90\n" |
| 712 | ".L_wrap_around_window:\n" |
| 713 | " movl 52(%%esp), %%eax\n" /* eax = write */ |
| 714 | " cmpl %%eax, %%ecx\n" |
| 715 | " jbe .L_contiguous_in_window\n" /* if (write >= nbytes) */ |
| 716 | |
| 717 | " addl 48(%%esp), %%esi\n" /* from += wsize */ |
| 718 | " addl %%eax, %%esi\n" /* from += write */ |
| 719 | " subl %%ecx, %%esi\n" /* from -= nbytes */ |
| 720 | " subl %%eax, %%ecx\n" /* nbytes -= write */ |
| 721 | |
| 722 | " movl 64(%%esp), %%eax\n" /* eax = len */ |
| 723 | " cmpl %%ecx, %%eax\n" |
| 724 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 725 | |
| 726 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 727 | " rep movsb\n" |
| 728 | " movl 28(%%esp), %%esi\n" /* from = window */ |
| 729 | " movl 52(%%esp), %%ecx\n" /* nbytes = write */ |
| 730 | " cmpl %%ecx, %%eax\n" |
| 731 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 732 | |
| 733 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 734 | " rep movsb\n" |
| 735 | " movl %%edi, %%esi\n" |
| 736 | " subl %%ebp, %%esi\n" /* from = out - dist */ |
| 737 | " jmp .L_do_copy\n" |
| 738 | |
| 739 | ".align 32,0x90\n" |
| 740 | ".L_contiguous_in_window:\n" |
| 741 | " addl %%eax, %%esi\n" |
| 742 | " subl %%ecx, %%esi\n" /* from += write - nbytes */ |
| 743 | |
| 744 | " movl 64(%%esp), %%eax\n" /* eax = len */ |
| 745 | " cmpl %%ecx, %%eax\n" |
| 746 | " jbe .L_do_copy\n" /* if (nbytes >= len) */ |
| 747 | |
| 748 | " subl %%ecx, %%eax\n" /* len -= nbytes */ |
| 749 | " rep movsb\n" |
| 750 | " movl %%edi, %%esi\n" |
| 751 | " subl %%ebp, %%esi\n" /* from = out - dist */ |
| 752 | " jmp .L_do_copy\n" /* if (nbytes >= len) */ |
| 753 | |
| 754 | ".align 32,0x90\n" |
| 755 | ".L_do_copy:\n" |
| 756 | " movl %%eax, %%ecx\n" |
| 757 | " rep movsb\n" |
| 758 | |
| 759 | " movl 8(%%esp), %%esi\n" /* move in back to %esi, toss from */ |
| 760 | " movl 32(%%esp), %%ebp\n" /* ebp = lcode */ |
| 761 | " jmp .L_while_test\n" |
| 762 | |
| 763 | ".L_test_for_end_of_block:\n" |
| 764 | " testb $32, %%al\n" |
| 765 | " jz .L_invalid_literal_length_code\n" |
| 766 | " movl $1, 72(%%esp)\n" |
| 767 | " jmp .L_break_loop_with_status\n" |
| 768 | |
| 769 | ".L_invalid_literal_length_code:\n" |
| 770 | " movl $2, 72(%%esp)\n" |
| 771 | " jmp .L_break_loop_with_status\n" |
| 772 | |
| 773 | ".L_invalid_distance_code:\n" |
| 774 | " movl $3, 72(%%esp)\n" |
| 775 | " jmp .L_break_loop_with_status\n" |
| 776 | |
| 777 | ".L_invalid_distance_too_far:\n" |
| 778 | " movl 8(%%esp), %%esi\n" |
| 779 | " movl $4, 72(%%esp)\n" |
| 780 | " jmp .L_break_loop_with_status\n" |
| 781 | |
| 782 | ".L_break_loop:\n" |
| 783 | " movl $0, 72(%%esp)\n" |
| 784 | |
| 785 | ".L_break_loop_with_status:\n" |
| 786 | /* put in, out, bits, and hold back into ar and pop esp */ |
| 787 | " movl %%esi, 8(%%esp)\n" /* save in */ |
| 788 | " movl %%edi, 16(%%esp)\n" /* save out */ |
| 789 | " movl %%ebx, 44(%%esp)\n" /* save bits */ |
| 790 | " movl %%edx, 40(%%esp)\n" /* save hold */ |
| 791 | " movl 4(%%esp), %%ebp\n" /* restore esp, ebp */ |
| 792 | " movl (%%esp), %%esp\n" |
| 793 | : |
| 794 | : "m" (ar) |
| 795 | : "memory", "%eax", "%ebx", "%ecx", "%edx", "%esi", "%edi" |
| 796 | ); |
| 797 | #elif defined( _MSC_VER ) && ! defined( _M_AMD64 ) |
| 798 | __asm { |
| 799 | lea eax, ar |
| 800 | mov [eax], esp /* save esp, ebp */ |
| 801 | mov [eax+4], ebp |
| 802 | mov esp, eax |
| 803 | mov esi, [esp+8] /* esi = in */ |
| 804 | mov edi, [esp+16] /* edi = out */ |
| 805 | mov edx, [esp+40] /* edx = hold */ |
| 806 | mov ebx, [esp+44] /* ebx = bits */ |
| 807 | mov ebp, [esp+32] /* ebp = lcode */ |
| 808 | |
| 809 | cld |
| 810 | jmp L_do_loop |
| 811 | |
| 812 | ALIGN 4 |
| 813 | L_while_test: |
| 814 | cmp [esp+24], edi |
| 815 | jbe L_break_loop |
| 816 | cmp [esp+12], esi |
| 817 | jbe L_break_loop |
| 818 | |
| 819 | L_do_loop: |
| 820 | cmp bl, 15 |
| 821 | ja L_get_length_code /* if (15 < bits) */ |
| 822 | |
| 823 | xor eax, eax |
| 824 | lodsw /* al = *(ushort *)in++ */ |
| 825 | mov cl, bl /* cl = bits, needs it for shifting */ |
| 826 | add bl, 16 /* bits += 16 */ |
| 827 | shl eax, cl |
| 828 | or edx, eax /* hold |= *((ushort *)in)++ << bits */ |
| 829 | |
| 830 | L_get_length_code: |
| 831 | mov eax, [esp+56] /* eax = lmask */ |
| 832 | and eax, edx /* eax &= hold */ |
| 833 | mov eax, [ebp+eax*4] /* eax = lcode[hold & lmask] */ |
| 834 | |
| 835 | L_dolen: |
| 836 | mov cl, ah /* cl = this.bits */ |
| 837 | sub bl, ah /* bits -= this.bits */ |
| 838 | shr edx, cl /* hold >>= this.bits */ |
| 839 | |
| 840 | test al, al |
| 841 | jnz L_test_for_length_base /* if (op != 0) 45.7% */ |
| 842 | |
| 843 | shr eax, 16 /* output this.val char */ |
| 844 | stosb |
| 845 | jmp L_while_test |
| 846 | |
| 847 | ALIGN 4 |
| 848 | L_test_for_length_base: |
| 849 | mov ecx, eax /* len = this */ |
| 850 | shr ecx, 16 /* len = this.val */ |
| 851 | mov [esp+64], ecx /* save len */ |
| 852 | mov cl, al |
| 853 | |
| 854 | test al, 16 |
| 855 | jz L_test_for_second_level_length /* if ((op & 16) == 0) 8% */ |
| 856 | and cl, 15 /* op &= 15 */ |
| 857 | jz L_decode_distance /* if (!op) */ |
| 858 | cmp bl, cl |
| 859 | jae L_add_bits_to_len /* if (op <= bits) */ |
| 860 | |
| 861 | mov ch, cl /* stash op in ch, freeing cl */ |
| 862 | xor eax, eax |
| 863 | lodsw /* al = *(ushort *)in++ */ |
| 864 | mov cl, bl /* cl = bits, needs it for shifting */ |
| 865 | add bl, 16 /* bits += 16 */ |
| 866 | shl eax, cl |
| 867 | or edx, eax /* hold |= *((ushort *)in)++ << bits */ |
| 868 | mov cl, ch /* move op back to ecx */ |
| 869 | |
| 870 | L_add_bits_to_len: |
| 871 | sub bl, cl |
| 872 | xor eax, eax |
| 873 | inc eax |
| 874 | shl eax, cl |
| 875 | dec eax |
| 876 | and eax, edx /* eax &= hold */ |
| 877 | shr edx, cl |
| 878 | add [esp+64], eax /* len += hold & mask[op] */ |
| 879 | |
| 880 | L_decode_distance: |
| 881 | cmp bl, 15 |
| 882 | ja L_get_distance_code /* if (15 < bits) */ |
| 883 | |
| 884 | xor eax, eax |
| 885 | lodsw /* al = *(ushort *)in++ */ |
| 886 | mov cl, bl /* cl = bits, needs it for shifting */ |
| 887 | add bl, 16 /* bits += 16 */ |
| 888 | shl eax, cl |
| 889 | or edx, eax /* hold |= *((ushort *)in)++ << bits */ |
| 890 | |
| 891 | L_get_distance_code: |
| 892 | mov eax, [esp+60] /* eax = dmask */ |
| 893 | mov ecx, [esp+36] /* ecx = dcode */ |
| 894 | and eax, edx /* eax &= hold */ |
| 895 | mov eax, [ecx+eax*4]/* eax = dcode[hold & dmask] */ |
| 896 | |
| 897 | L_dodist: |
| 898 | mov ebp, eax /* dist = this */ |
| 899 | shr ebp, 16 /* dist = this.val */ |
| 900 | mov cl, ah |
| 901 | sub bl, ah /* bits -= this.bits */ |
| 902 | shr edx, cl /* hold >>= this.bits */ |
| 903 | mov cl, al /* cl = this.op */ |
| 904 | |
| 905 | test al, 16 /* if ((op & 16) == 0) */ |
| 906 | jz L_test_for_second_level_dist |
| 907 | and cl, 15 /* op &= 15 */ |
| 908 | jz L_check_dist_one |
| 909 | cmp bl, cl |
| 910 | jae L_add_bits_to_dist /* if (op <= bits) 97.6% */ |
| 911 | |
| 912 | mov ch, cl /* stash op in ch, freeing cl */ |
| 913 | xor eax, eax |
| 914 | lodsw /* al = *(ushort *)in++ */ |
| 915 | mov cl, bl /* cl = bits, needs it for shifting */ |
| 916 | add bl, 16 /* bits += 16 */ |
| 917 | shl eax, cl |
| 918 | or edx, eax /* hold |= *((ushort *)in)++ << bits */ |
| 919 | mov cl, ch /* move op back to ecx */ |
| 920 | |
| 921 | L_add_bits_to_dist: |
| 922 | sub bl, cl |
| 923 | xor eax, eax |
| 924 | inc eax |
| 925 | shl eax, cl |
| 926 | dec eax /* (1 << op) - 1 */ |
| 927 | and eax, edx /* eax &= hold */ |
| 928 | shr edx, cl |
| 929 | add ebp, eax /* dist += hold & ((1 << op) - 1) */ |
| 930 | |
| 931 | L_check_window: |
| 932 | mov [esp+8], esi /* save in so from can use it's reg */ |
| 933 | mov eax, edi |
| 934 | sub eax, [esp+20] /* nbytes = out - beg */ |
| 935 | |
| 936 | cmp eax, ebp |
| 937 | jb L_clip_window /* if (dist > nbytes) 4.2% */ |
| 938 | |
| 939 | mov ecx, [esp+64] /* ecx = len */ |
| 940 | mov esi, edi |
| 941 | sub esi, ebp /* from = out - dist */ |
| 942 | |
| 943 | sar ecx, 1 |
| 944 | jnc L_copy_two |
| 945 | |
| 946 | rep movsw |
| 947 | mov al, [esi] |
| 948 | mov [edi], al |
| 949 | inc edi |
| 950 | |
| 951 | mov esi, [esp+8] /* move in back to %esi, toss from */ |
| 952 | mov ebp, [esp+32] /* ebp = lcode */ |
| 953 | jmp L_while_test |
| 954 | |
| 955 | L_copy_two: |
| 956 | rep movsw |
| 957 | mov esi, [esp+8] /* move in back to %esi, toss from */ |
| 958 | mov ebp, [esp+32] /* ebp = lcode */ |
| 959 | jmp L_while_test |
| 960 | |
| 961 | ALIGN 4 |
| 962 | L_check_dist_one: |
| 963 | cmp ebp, 1 /* if dist 1, is a memset */ |
| 964 | jne L_check_window |
| 965 | cmp [esp+20], edi |
| 966 | je L_check_window /* out == beg, if outside window */ |
| 967 | |
| 968 | mov ecx, [esp+64] /* ecx = len */ |
| 969 | mov al, [edi-1] |
| 970 | mov ah, al |
| 971 | |
| 972 | sar ecx, 1 |
| 973 | jnc L_set_two |
| 974 | mov [edi], al /* memset out with from[-1] */ |
| 975 | inc edi |
| 976 | |
| 977 | L_set_two: |
| 978 | rep stosw |
| 979 | mov ebp, [esp+32] /* ebp = lcode */ |
| 980 | jmp L_while_test |
| 981 | |
| 982 | ALIGN 4 |
| 983 | L_test_for_second_level_length: |
| 984 | test al, 64 |
| 985 | jnz L_test_for_end_of_block /* if ((op & 64) != 0) */ |
| 986 | |
| 987 | xor eax, eax |
| 988 | inc eax |
| 989 | shl eax, cl |
| 990 | dec eax |
| 991 | and eax, edx /* eax &= hold */ |
| 992 | add eax, [esp+64] /* eax += len */ |
| 993 | mov eax, [ebp+eax*4] /* eax = lcode[val+(hold&mask[op])]*/ |
| 994 | jmp L_dolen |
| 995 | |
| 996 | ALIGN 4 |
| 997 | L_test_for_second_level_dist: |
| 998 | test al, 64 |
| 999 | jnz L_invalid_distance_code /* if ((op & 64) != 0) */ |
| 1000 | |
| 1001 | xor eax, eax |
| 1002 | inc eax |
| 1003 | shl eax, cl |
| 1004 | dec eax |
| 1005 | and eax, edx /* eax &= hold */ |
| 1006 | add eax, ebp /* eax += dist */ |
| 1007 | mov ecx, [esp+36] /* ecx = dcode */ |
| 1008 | mov eax, [ecx+eax*4] /* eax = dcode[val+(hold&mask[op])]*/ |
| 1009 | jmp L_dodist |
| 1010 | |
| 1011 | ALIGN 4 |
| 1012 | L_clip_window: |
| 1013 | mov ecx, eax |
| 1014 | mov eax, [esp+48] /* eax = wsize */ |
| 1015 | neg ecx /* nbytes = -nbytes */ |
| 1016 | mov esi, [esp+28] /* from = window */ |
| 1017 | |
| 1018 | cmp eax, ebp |
| 1019 | jb L_invalid_distance_too_far /* if (dist > wsize) */ |
| 1020 | |
| 1021 | add ecx, ebp /* nbytes = dist - nbytes */ |
| 1022 | cmp dword ptr [esp+52], 0 |
| 1023 | jne L_wrap_around_window /* if (write != 0) */ |
| 1024 | |
| 1025 | sub eax, ecx |
| 1026 | add esi, eax /* from += wsize - nbytes */ |
| 1027 | |
| 1028 | mov eax, [esp+64] /* eax = len */ |
| 1029 | cmp eax, ecx |
| 1030 | jbe L_do_copy /* if (nbytes >= len) */ |
| 1031 | |
| 1032 | sub eax, ecx /* len -= nbytes */ |
| 1033 | rep movsb |
| 1034 | mov esi, edi |
| 1035 | sub esi, ebp /* from = out - dist */ |
| 1036 | jmp L_do_copy |
| 1037 | |
| 1038 | ALIGN 4 |
| 1039 | L_wrap_around_window: |
| 1040 | mov eax, [esp+52] /* eax = write */ |
| 1041 | cmp ecx, eax |
| 1042 | jbe L_contiguous_in_window /* if (write >= nbytes) */ |
| 1043 | |
| 1044 | add esi, [esp+48] /* from += wsize */ |
| 1045 | add esi, eax /* from += write */ |
| 1046 | sub esi, ecx /* from -= nbytes */ |
| 1047 | sub ecx, eax /* nbytes -= write */ |
| 1048 | |
| 1049 | mov eax, [esp+64] /* eax = len */ |
| 1050 | cmp eax, ecx |
| 1051 | jbe L_do_copy /* if (nbytes >= len) */ |
| 1052 | |
| 1053 | sub eax, ecx /* len -= nbytes */ |
| 1054 | rep movsb |
| 1055 | mov esi, [esp+28] /* from = window */ |
| 1056 | mov ecx, [esp+52] /* nbytes = write */ |
| 1057 | cmp eax, ecx |
| 1058 | jbe L_do_copy /* if (nbytes >= len) */ |
| 1059 | |
| 1060 | sub eax, ecx /* len -= nbytes */ |
| 1061 | rep movsb |
| 1062 | mov esi, edi |
| 1063 | sub esi, ebp /* from = out - dist */ |
| 1064 | jmp L_do_copy |
| 1065 | |
| 1066 | ALIGN 4 |
| 1067 | L_contiguous_in_window: |
| 1068 | add esi, eax |
| 1069 | sub esi, ecx /* from += write - nbytes */ |
| 1070 | |
| 1071 | mov eax, [esp+64] /* eax = len */ |
| 1072 | cmp eax, ecx |
| 1073 | jbe L_do_copy /* if (nbytes >= len) */ |
| 1074 | |
| 1075 | sub eax, ecx /* len -= nbytes */ |
| 1076 | rep movsb |
| 1077 | mov esi, edi |
| 1078 | sub esi, ebp /* from = out - dist */ |
| 1079 | jmp L_do_copy |
| 1080 | |
| 1081 | ALIGN 4 |
| 1082 | L_do_copy: |
| 1083 | mov ecx, eax |
| 1084 | rep movsb |
| 1085 | |
| 1086 | mov esi, [esp+8] /* move in back to %esi, toss from */ |
| 1087 | mov ebp, [esp+32] /* ebp = lcode */ |
| 1088 | jmp L_while_test |
| 1089 | |
| 1090 | L_test_for_end_of_block: |
| 1091 | test al, 32 |
| 1092 | jz L_invalid_literal_length_code |
| 1093 | mov dword ptr [esp+72], 1 |
| 1094 | jmp L_break_loop_with_status |
| 1095 | |
| 1096 | L_invalid_literal_length_code: |
| 1097 | mov dword ptr [esp+72], 2 |
| 1098 | jmp L_break_loop_with_status |
| 1099 | |
| 1100 | L_invalid_distance_code: |
| 1101 | mov dword ptr [esp+72], 3 |
| 1102 | jmp L_break_loop_with_status |
| 1103 | |
| 1104 | L_invalid_distance_too_far: |
| 1105 | mov esi, [esp+4] |
| 1106 | mov dword ptr [esp+72], 4 |
| 1107 | jmp L_break_loop_with_status |
| 1108 | |
| 1109 | L_break_loop: |
| 1110 | mov dword ptr [esp+72], 0 |
| 1111 | |
| 1112 | L_break_loop_with_status: |
| 1113 | /* put in, out, bits, and hold back into ar and pop esp */ |
| 1114 | mov [esp+8], esi /* save in */ |
| 1115 | mov [esp+16], edi /* save out */ |
| 1116 | mov [esp+44], ebx /* save bits */ |
| 1117 | mov [esp+40], edx /* save hold */ |
| 1118 | mov ebp, [esp+4] /* restore esp, ebp */ |
| 1119 | mov esp, [esp] |
| 1120 | } |
| 1121 | #else |
| 1122 | #error "x86 architecture not defined" |
| 1123 | #endif |
| 1124 | |
| 1125 | if (ar.status > 1) { |
| 1126 | if (ar.status == 2) |
| 1127 | strm->msg = "invalid literal/length code"; |
| 1128 | else if (ar.status == 3) |
| 1129 | strm->msg = "invalid distance code"; |
| 1130 | else |
| 1131 | strm->msg = "invalid distance too far back"; |
| 1132 | state->mode = BAD; |
| 1133 | } |
| 1134 | else if ( ar.status == 1 ) { |
| 1135 | state->mode = TYPE; |
| 1136 | } |
| 1137 | |
| 1138 | /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ |
| 1139 | ar.len = ar.bits >> 3; |
| 1140 | ar.in -= ar.len; |
| 1141 | ar.bits -= ar.len << 3; |
| 1142 | ar.hold &= (1U << ar.bits) - 1; |
| 1143 | |
| 1144 | /* update state and return */ |
| 1145 | strm->next_in = ar.in; |
| 1146 | strm->next_out = ar.out; |
| 1147 | strm->avail_in = (unsigned)(ar.in < ar.last ? |
| 1148 | PAD_AVAIL_IN + (ar.last - ar.in) : |
| 1149 | PAD_AVAIL_IN - (ar.in - ar.last)); |
| 1150 | strm->avail_out = (unsigned)(ar.out < ar.end ? |
| 1151 | PAD_AVAIL_OUT + (ar.end - ar.out) : |
| 1152 | PAD_AVAIL_OUT - (ar.out - ar.end)); |
| 1153 | state->hold = ar.hold; |
| 1154 | state->bits = ar.bits; |
| 1155 | return; |
| 1156 | } |
| 1157 |
| --- a/compat/zlib/contrib/inflate86/inffas86.c | |
| +++ b/compat/zlib/contrib/inflate86/inffas86.c | |
| @@ -1,1157 +0,0 @@ | |
D
compat/zlib/contrib/inflate86/inffast.S
-1368
| --- a/compat/zlib/contrib/inflate86/inffast.S | ||
| +++ b/compat/zlib/contrib/inflate86/inffast.S | ||
| @@ -1,1368 +0,0 @@ | ||
| 1 | -/* | |
| 2 | - * inffast.S is a hand tuned assembler version of: | |
| 3 | - * | |
| 4 | - * inffast.c -- fast decoding | |
| 5 | - * Copyright (C) 1995-2003 Mark Adler | |
| 6 | - * For conditions of distribution and use, see copyright notice in zlib.h | |
| 7 | - * | |
| 8 | - * Copyright (C) 2003 Chris Anderson <[email protected]> | |
| 9 | - * Please use the copyright conditions above. | |
| 10 | - * | |
| 11 | - * This version (Jan-23-2003) of inflate_fast was coded and tested under | |
| 12 | - * GNU/Linux on a pentium 3, using the gcc-3.2 compiler distribution. On that | |
| 13 | - * machine, I found that gzip style archives decompressed about 20% faster than | |
| 14 | - * the gcc-3.2 -O3 -fomit-frame-pointer compiled version. Your results will | |
| 15 | - * depend on how large of a buffer is used for z_stream.next_in & next_out | |
| 16 | - * (8K-32K worked best for my 256K cpu cache) and how much overhead there is in | |
| 17 | - * stream processing I/O and crc32/addler32. In my case, this routine used | |
| 18 | - * 70% of the cpu time and crc32 used 20%. | |
| 19 | - * | |
| 20 | - * I am confident that this version will work in the general case, but I have | |
| 21 | - * not tested a wide variety of datasets or a wide variety of platforms. | |
| 22 | - * | |
| 23 | - * Jan-24-2003 -- Added -DUSE_MMX define for slightly faster inflating. | |
| 24 | - * It should be a runtime flag instead of compile time flag... | |
| 25 | - * | |
| 26 | - * Jan-26-2003 -- Added runtime check for MMX support with cpuid instruction. | |
| 27 | - * With -DUSE_MMX, only MMX code is compiled. With -DNO_MMX, only non-MMX code | |
| 28 | - * is compiled. Without either option, runtime detection is enabled. Runtime | |
| 29 | - * detection should work on all modern cpus and the recomended algorithm (flip | |
| 30 | - * ID bit on eflags and then use the cpuid instruction) is used in many | |
| 31 | - * multimedia applications. Tested under win2k with gcc-2.95 and gas-2.12 | |
| 32 | - * distributed with cygwin3. Compiling with gcc-2.95 -c inffast.S -o | |
| 33 | - * inffast.obj generates a COFF object which can then be linked with MSVC++ | |
| 34 | - * compiled code. Tested under FreeBSD 4.7 with gcc-2.95. | |
| 35 | - * | |
| 36 | - * Jan-28-2003 -- Tested Athlon XP... MMX mode is slower than no MMX (and | |
| 37 | - * slower than compiler generated code). Adjusted cpuid check to use the MMX | |
| 38 | - * code only for Pentiums < P4 until I have more data on the P4. Speed | |
| 39 | - * improvment is only about 15% on the Athlon when compared with code generated | |
| 40 | - * with MSVC++. Not sure yet, but I think the P4 will also be slower using the | |
| 41 | - * MMX mode because many of it's x86 ALU instructions execute in .5 cycles and | |
| 42 | - * have less latency than MMX ops. Added code to buffer the last 11 bytes of | |
| 43 | - * the input stream since the MMX code grabs bits in chunks of 32, which | |
| 44 | - * differs from the inffast.c algorithm. I don't think there would have been | |
| 45 | - * read overruns where a page boundary was crossed (a segfault), but there | |
| 46 | - * could have been overruns when next_in ends on unaligned memory (uninitialized | |
| 47 | - * memory read). | |
| 48 | - * | |
| 49 | - * Mar-13-2003 -- P4 MMX is slightly slower than P4 NO_MMX. I created a C | |
| 50 | - * version of the non-MMX code so that it doesn't depend on zstrm and zstate | |
| 51 | - * structure offsets which are hard coded in this file. This was last tested | |
| 52 | - * with zlib-1.2.0 which is currently in beta testing, newer versions of this | |
| 53 | - * and inffas86.c can be found at http://www.eetbeetee.com/zlib/ and | |
| 54 | - * http://www.charm.net/~christop/zlib/ | |
| 55 | - */ | |
| 56 | - | |
| 57 | - | |
| 58 | -/* | |
| 59 | - * if you have underscore linking problems (_inflate_fast undefined), try | |
| 60 | - * using -DGAS_COFF | |
| 61 | - */ | |
| 62 | -#if ! defined( GAS_COFF ) && ! defined( GAS_ELF ) | |
| 63 | - | |
| 64 | -#if defined( WIN32 ) || defined( __CYGWIN__ ) | |
| 65 | -#define GAS_COFF /* windows object format */ | |
| 66 | -#else | |
| 67 | -#define GAS_ELF | |
| 68 | -#endif | |
| 69 | - | |
| 70 | -#endif /* ! GAS_COFF && ! GAS_ELF */ | |
| 71 | - | |
| 72 | - | |
| 73 | -#if defined( GAS_COFF ) | |
| 74 | - | |
| 75 | -/* coff externals have underscores */ | |
| 76 | -#define inflate_fast _inflate_fast | |
| 77 | -#define inflate_fast_use_mmx _inflate_fast_use_mmx | |
| 78 | - | |
| 79 | -#endif /* GAS_COFF */ | |
| 80 | - | |
| 81 | - | |
| 82 | -.file "inffast.S" | |
| 83 | - | |
| 84 | -.globl inflate_fast | |
| 85 | - | |
| 86 | -.text | |
| 87 | -.align 4,0 | |
| 88 | -.L_invalid_literal_length_code_msg: | |
| 89 | -.string "invalid literal/length code" | |
| 90 | - | |
| 91 | -.align 4,0 | |
| 92 | -.L_invalid_distance_code_msg: | |
| 93 | -.string "invalid distance code" | |
| 94 | - | |
| 95 | -.align 4,0 | |
| 96 | -.L_invalid_distance_too_far_msg: | |
| 97 | -.string "invalid distance too far back" | |
| 98 | - | |
| 99 | -#if ! defined( NO_MMX ) | |
| 100 | -.align 4,0 | |
| 101 | -.L_mask: /* mask[N] = ( 1 << N ) - 1 */ | |
| 102 | -.long 0 | |
| 103 | -.long 1 | |
| 104 | -.long 3 | |
| 105 | -.long 7 | |
| 106 | -.long 15 | |
| 107 | -.long 31 | |
| 108 | -.long 63 | |
| 109 | -.long 127 | |
| 110 | -.long 255 | |
| 111 | -.long 511 | |
| 112 | -.long 1023 | |
| 113 | -.long 2047 | |
| 114 | -.long 4095 | |
| 115 | -.long 8191 | |
| 116 | -.long 16383 | |
| 117 | -.long 32767 | |
| 118 | -.long 65535 | |
| 119 | -.long 131071 | |
| 120 | -.long 262143 | |
| 121 | -.long 524287 | |
| 122 | -.long 1048575 | |
| 123 | -.long 2097151 | |
| 124 | -.long 4194303 | |
| 125 | -.long 8388607 | |
| 126 | -.long 16777215 | |
| 127 | -.long 33554431 | |
| 128 | -.long 67108863 | |
| 129 | -.long 134217727 | |
| 130 | -.long 268435455 | |
| 131 | -.long 536870911 | |
| 132 | -.long 1073741823 | |
| 133 | -.long 2147483647 | |
| 134 | -.long 4294967295 | |
| 135 | -#endif /* NO_MMX */ | |
| 136 | - | |
| 137 | -.text | |
| 138 | - | |
| 139 | -/* | |
| 140 | - * struct z_stream offsets, in zlib.h | |
| 141 | - */ | |
| 142 | -#define next_in_strm 0 /* strm->next_in */ | |
| 143 | -#define avail_in_strm 4 /* strm->avail_in */ | |
| 144 | -#define next_out_strm 12 /* strm->next_out */ | |
| 145 | -#define avail_out_strm 16 /* strm->avail_out */ | |
| 146 | -#define msg_strm 24 /* strm->msg */ | |
| 147 | -#define state_strm 28 /* strm->state */ | |
| 148 | - | |
| 149 | -/* | |
| 150 | - * struct inflate_state offsets, in inflate.h | |
| 151 | - */ | |
| 152 | -#define mode_state 0 /* state->mode */ | |
| 153 | -#define wsize_state 32 /* state->wsize */ | |
| 154 | -#define write_state 40 /* state->write */ | |
| 155 | -#define window_state 44 /* state->window */ | |
| 156 | -#define hold_state 48 /* state->hold */ | |
| 157 | -#define bits_state 52 /* state->bits */ | |
| 158 | -#define lencode_state 68 /* state->lencode */ | |
| 159 | -#define distcode_state 72 /* state->distcode */ | |
| 160 | -#define lenbits_state 76 /* state->lenbits */ | |
| 161 | -#define distbits_state 80 /* state->distbits */ | |
| 162 | - | |
| 163 | -/* | |
| 164 | - * inflate_fast's activation record | |
| 165 | - */ | |
| 166 | -#define local_var_size 64 /* how much local space for vars */ | |
| 167 | -#define strm_sp 88 /* first arg: z_stream * (local_var_size + 24) */ | |
| 168 | -#define start_sp 92 /* second arg: unsigned int (local_var_size + 28) */ | |
| 169 | - | |
| 170 | -/* | |
| 171 | - * offsets for local vars on stack | |
| 172 | - */ | |
| 173 | -#define out 60 /* unsigned char* */ | |
| 174 | -#define window 56 /* unsigned char* */ | |
| 175 | -#define wsize 52 /* unsigned int */ | |
| 176 | -#define write 48 /* unsigned int */ | |
| 177 | -#define in 44 /* unsigned char* */ | |
| 178 | -#define beg 40 /* unsigned char* */ | |
| 179 | -#define buf 28 /* char[ 12 ] */ | |
| 180 | -#define len 24 /* unsigned int */ | |
| 181 | -#define last 20 /* unsigned char* */ | |
| 182 | -#define end 16 /* unsigned char* */ | |
| 183 | -#define dcode 12 /* code* */ | |
| 184 | -#define lcode 8 /* code* */ | |
| 185 | -#define dmask 4 /* unsigned int */ | |
| 186 | -#define lmask 0 /* unsigned int */ | |
| 187 | - | |
| 188 | -/* | |
| 189 | - * typedef enum inflate_mode consts, in inflate.h | |
| 190 | - */ | |
| 191 | -#define INFLATE_MODE_TYPE 11 /* state->mode flags enum-ed in inflate.h */ | |
| 192 | -#define INFLATE_MODE_BAD 26 | |
| 193 | - | |
| 194 | - | |
| 195 | -#if ! defined( USE_MMX ) && ! defined( NO_MMX ) | |
| 196 | - | |
| 197 | -#define RUN_TIME_MMX | |
| 198 | - | |
| 199 | -#define CHECK_MMX 1 | |
| 200 | -#define DO_USE_MMX 2 | |
| 201 | -#define DONT_USE_MMX 3 | |
| 202 | - | |
| 203 | -.globl inflate_fast_use_mmx | |
| 204 | - | |
| 205 | -.data | |
| 206 | - | |
| 207 | -.align 4,0 | |
| 208 | -inflate_fast_use_mmx: /* integer flag for run time control 1=check,2=mmx,3=no */ | |
| 209 | -.long CHECK_MMX | |
| 210 | - | |
| 211 | -#if defined( GAS_ELF ) | |
| 212 | -/* elf info */ | |
| 213 | -.type inflate_fast_use_mmx,@object | |
| 214 | -.size inflate_fast_use_mmx,4 | |
| 215 | -#endif | |
| 216 | - | |
| 217 | -#endif /* RUN_TIME_MMX */ | |
| 218 | - | |
| 219 | -#if defined( GAS_COFF ) | |
| 220 | -/* coff info: scl 2 = extern, type 32 = function */ | |
| 221 | -.def inflate_fast; .scl 2; .type 32; .endef | |
| 222 | -#endif | |
| 223 | - | |
| 224 | -.text | |
| 225 | - | |
| 226 | -.align 32,0x90 | |
| 227 | -inflate_fast: | |
| 228 | - pushl %edi | |
| 229 | - pushl %esi | |
| 230 | - pushl %ebp | |
| 231 | - pushl %ebx | |
| 232 | - pushf /* save eflags (strm_sp, state_sp assumes this is 32 bits) */ | |
| 233 | - subl $local_var_size, %esp | |
| 234 | - cld | |
| 235 | - | |
| 236 | -#define strm_r %esi | |
| 237 | -#define state_r %edi | |
| 238 | - | |
| 239 | - movl strm_sp(%esp), strm_r | |
| 240 | - movl state_strm(strm_r), state_r | |
| 241 | - | |
| 242 | - /* in = strm->next_in; | |
| 243 | - * out = strm->next_out; | |
| 244 | - * last = in + strm->avail_in - 11; | |
| 245 | - * beg = out - (start - strm->avail_out); | |
| 246 | - * end = out + (strm->avail_out - 257); | |
| 247 | - */ | |
| 248 | - movl avail_in_strm(strm_r), %edx | |
| 249 | - movl next_in_strm(strm_r), %eax | |
| 250 | - | |
| 251 | - addl %eax, %edx /* avail_in += next_in */ | |
| 252 | - subl $11, %edx /* avail_in -= 11 */ | |
| 253 | - | |
| 254 | - movl %eax, in(%esp) | |
| 255 | - movl %edx, last(%esp) | |
| 256 | - | |
| 257 | - movl start_sp(%esp), %ebp | |
| 258 | - movl avail_out_strm(strm_r), %ecx | |
| 259 | - movl next_out_strm(strm_r), %ebx | |
| 260 | - | |
| 261 | - subl %ecx, %ebp /* start -= avail_out */ | |
| 262 | - negl %ebp /* start = -start */ | |
| 263 | - addl %ebx, %ebp /* start += next_out */ | |
| 264 | - | |
| 265 | - subl $257, %ecx /* avail_out -= 257 */ | |
| 266 | - addl %ebx, %ecx /* avail_out += out */ | |
| 267 | - | |
| 268 | - movl %ebx, out(%esp) | |
| 269 | - movl %ebp, beg(%esp) | |
| 270 | - movl %ecx, end(%esp) | |
| 271 | - | |
| 272 | - /* wsize = state->wsize; | |
| 273 | - * write = state->write; | |
| 274 | - * window = state->window; | |
| 275 | - * hold = state->hold; | |
| 276 | - * bits = state->bits; | |
| 277 | - * lcode = state->lencode; | |
| 278 | - * dcode = state->distcode; | |
| 279 | - * lmask = ( 1 << state->lenbits ) - 1; | |
| 280 | - * dmask = ( 1 << state->distbits ) - 1; | |
| 281 | - */ | |
| 282 | - | |
| 283 | - movl lencode_state(state_r), %eax | |
| 284 | - movl distcode_state(state_r), %ecx | |
| 285 | - | |
| 286 | - movl %eax, lcode(%esp) | |
| 287 | - movl %ecx, dcode(%esp) | |
| 288 | - | |
| 289 | - movl $1, %eax | |
| 290 | - movl lenbits_state(state_r), %ecx | |
| 291 | - shll %cl, %eax | |
| 292 | - decl %eax | |
| 293 | - movl %eax, lmask(%esp) | |
| 294 | - | |
| 295 | - movl $1, %eax | |
| 296 | - movl distbits_state(state_r), %ecx | |
| 297 | - shll %cl, %eax | |
| 298 | - decl %eax | |
| 299 | - movl %eax, dmask(%esp) | |
| 300 | - | |
| 301 | - movl wsize_state(state_r), %eax | |
| 302 | - movl write_state(state_r), %ecx | |
| 303 | - movl window_state(state_r), %edx | |
| 304 | - | |
| 305 | - movl %eax, wsize(%esp) | |
| 306 | - movl %ecx, write(%esp) | |
| 307 | - movl %edx, window(%esp) | |
| 308 | - | |
| 309 | - movl hold_state(state_r), %ebp | |
| 310 | - movl bits_state(state_r), %ebx | |
| 311 | - | |
| 312 | -#undef strm_r | |
| 313 | -#undef state_r | |
| 314 | - | |
| 315 | -#define in_r %esi | |
| 316 | -#define from_r %esi | |
| 317 | -#define out_r %edi | |
| 318 | - | |
| 319 | - movl in(%esp), in_r | |
| 320 | - movl last(%esp), %ecx | |
| 321 | - cmpl in_r, %ecx | |
| 322 | - ja .L_align_long /* if in < last */ | |
| 323 | - | |
| 324 | - addl $11, %ecx /* ecx = &in[ avail_in ] */ | |
| 325 | - subl in_r, %ecx /* ecx = avail_in */ | |
| 326 | - movl $12, %eax | |
| 327 | - subl %ecx, %eax /* eax = 12 - avail_in */ | |
| 328 | - leal buf(%esp), %edi | |
| 329 | - rep movsb /* memcpy( buf, in, avail_in ) */ | |
| 330 | - movl %eax, %ecx | |
| 331 | - xorl %eax, %eax | |
| 332 | - rep stosb /* memset( &buf[ avail_in ], 0, 12 - avail_in ) */ | |
| 333 | - leal buf(%esp), in_r /* in = buf */ | |
| 334 | - movl in_r, last(%esp) /* last = in, do just one iteration */ | |
| 335 | - jmp .L_is_aligned | |
| 336 | - | |
| 337 | - /* align in_r on long boundary */ | |
| 338 | -.L_align_long: | |
| 339 | - testl $3, in_r | |
| 340 | - jz .L_is_aligned | |
| 341 | - xorl %eax, %eax | |
| 342 | - movb (in_r), %al | |
| 343 | - incl in_r | |
| 344 | - movl %ebx, %ecx | |
| 345 | - addl $8, %ebx | |
| 346 | - shll %cl, %eax | |
| 347 | - orl %eax, %ebp | |
| 348 | - jmp .L_align_long | |
| 349 | - | |
| 350 | -.L_is_aligned: | |
| 351 | - movl out(%esp), out_r | |
| 352 | - | |
| 353 | -#if defined( NO_MMX ) | |
| 354 | - jmp .L_do_loop | |
| 355 | -#endif | |
| 356 | - | |
| 357 | -#if defined( USE_MMX ) | |
| 358 | - jmp .L_init_mmx | |
| 359 | -#endif | |
| 360 | - | |
| 361 | -/*** Runtime MMX check ***/ | |
| 362 | - | |
| 363 | -#if defined( RUN_TIME_MMX ) | |
| 364 | -.L_check_mmx: | |
| 365 | - cmpl $DO_USE_MMX, inflate_fast_use_mmx | |
| 366 | - je .L_init_mmx | |
| 367 | - ja .L_do_loop /* > 2 */ | |
| 368 | - | |
| 369 | - pushl %eax | |
| 370 | - pushl %ebx | |
| 371 | - pushl %ecx | |
| 372 | - pushl %edx | |
| 373 | - pushf | |
| 374 | - movl (%esp), %eax /* copy eflags to eax */ | |
| 375 | - xorl $0x200000, (%esp) /* try toggling ID bit of eflags (bit 21) | |
| 376 | - * to see if cpu supports cpuid... | |
| 377 | - * ID bit method not supported by NexGen but | |
| 378 | - * bios may load a cpuid instruction and | |
| 379 | - * cpuid may be disabled on Cyrix 5-6x86 */ | |
| 380 | - popf | |
| 381 | - pushf | |
| 382 | - popl %edx /* copy new eflags to edx */ | |
| 383 | - xorl %eax, %edx /* test if ID bit is flipped */ | |
| 384 | - jz .L_dont_use_mmx /* not flipped if zero */ | |
| 385 | - xorl %eax, %eax | |
| 386 | - cpuid | |
| 387 | - cmpl $0x756e6547, %ebx /* check for GenuineIntel in ebx,ecx,edx */ | |
| 388 | - jne .L_dont_use_mmx | |
| 389 | - cmpl $0x6c65746e, %ecx | |
| 390 | - jne .L_dont_use_mmx | |
| 391 | - cmpl $0x49656e69, %edx | |
| 392 | - jne .L_dont_use_mmx | |
| 393 | - movl $1, %eax | |
| 394 | - cpuid /* get cpu features */ | |
| 395 | - shrl $8, %eax | |
| 396 | - andl $15, %eax | |
| 397 | - cmpl $6, %eax /* check for Pentium family, is 0xf for P4 */ | |
| 398 | - jne .L_dont_use_mmx | |
| 399 | - testl $0x800000, %edx /* test if MMX feature is set (bit 23) */ | |
| 400 | - jnz .L_use_mmx | |
| 401 | - jmp .L_dont_use_mmx | |
| 402 | -.L_use_mmx: | |
| 403 | - movl $DO_USE_MMX, inflate_fast_use_mmx | |
| 404 | - jmp .L_check_mmx_pop | |
| 405 | -.L_dont_use_mmx: | |
| 406 | - movl $DONT_USE_MMX, inflate_fast_use_mmx | |
| 407 | -.L_check_mmx_pop: | |
| 408 | - popl %edx | |
| 409 | - popl %ecx | |
| 410 | - popl %ebx | |
| 411 | - popl %eax | |
| 412 | - jmp .L_check_mmx | |
| 413 | -#endif | |
| 414 | - | |
| 415 | - | |
| 416 | -/*** Non-MMX code ***/ | |
| 417 | - | |
| 418 | -#if defined ( NO_MMX ) || defined( RUN_TIME_MMX ) | |
| 419 | - | |
| 420 | -#define hold_r %ebp | |
| 421 | -#define bits_r %bl | |
| 422 | -#define bitslong_r %ebx | |
| 423 | - | |
| 424 | -.align 32,0x90 | |
| 425 | -.L_while_test: | |
| 426 | - /* while (in < last && out < end) | |
| 427 | - */ | |
| 428 | - cmpl out_r, end(%esp) | |
| 429 | - jbe .L_break_loop /* if (out >= end) */ | |
| 430 | - | |
| 431 | - cmpl in_r, last(%esp) | |
| 432 | - jbe .L_break_loop | |
| 433 | - | |
| 434 | -.L_do_loop: | |
| 435 | - /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out | |
| 436 | - * | |
| 437 | - * do { | |
| 438 | - * if (bits < 15) { | |
| 439 | - * hold |= *((unsigned short *)in)++ << bits; | |
| 440 | - * bits += 16 | |
| 441 | - * } | |
| 442 | - * this = lcode[hold & lmask] | |
| 443 | - */ | |
| 444 | - cmpb $15, bits_r | |
| 445 | - ja .L_get_length_code /* if (15 < bits) */ | |
| 446 | - | |
| 447 | - xorl %eax, %eax | |
| 448 | - lodsw /* al = *(ushort *)in++ */ | |
| 449 | - movb bits_r, %cl /* cl = bits, needs it for shifting */ | |
| 450 | - addb $16, bits_r /* bits += 16 */ | |
| 451 | - shll %cl, %eax | |
| 452 | - orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ | |
| 453 | - | |
| 454 | -.L_get_length_code: | |
| 455 | - movl lmask(%esp), %edx /* edx = lmask */ | |
| 456 | - movl lcode(%esp), %ecx /* ecx = lcode */ | |
| 457 | - andl hold_r, %edx /* edx &= hold */ | |
| 458 | - movl (%ecx,%edx,4), %eax /* eax = lcode[hold & lmask] */ | |
| 459 | - | |
| 460 | -.L_dolen: | |
| 461 | - /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out | |
| 462 | - * | |
| 463 | - * dolen: | |
| 464 | - * bits -= this.bits; | |
| 465 | - * hold >>= this.bits | |
| 466 | - */ | |
| 467 | - movb %ah, %cl /* cl = this.bits */ | |
| 468 | - subb %ah, bits_r /* bits -= this.bits */ | |
| 469 | - shrl %cl, hold_r /* hold >>= this.bits */ | |
| 470 | - | |
| 471 | - /* check if op is a literal | |
| 472 | - * if (op == 0) { | |
| 473 | - * PUP(out) = this.val; | |
| 474 | - * } | |
| 475 | - */ | |
| 476 | - testb %al, %al | |
| 477 | - jnz .L_test_for_length_base /* if (op != 0) 45.7% */ | |
| 478 | - | |
| 479 | - shrl $16, %eax /* output this.val char */ | |
| 480 | - stosb | |
| 481 | - jmp .L_while_test | |
| 482 | - | |
| 483 | -.L_test_for_length_base: | |
| 484 | - /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out, %edx = len | |
| 485 | - * | |
| 486 | - * else if (op & 16) { | |
| 487 | - * len = this.val | |
| 488 | - * op &= 15 | |
| 489 | - * if (op) { | |
| 490 | - * if (op > bits) { | |
| 491 | - * hold |= *((unsigned short *)in)++ << bits; | |
| 492 | - * bits += 16 | |
| 493 | - * } | |
| 494 | - * len += hold & mask[op]; | |
| 495 | - * bits -= op; | |
| 496 | - * hold >>= op; | |
| 497 | - * } | |
| 498 | - */ | |
| 499 | -#define len_r %edx | |
| 500 | - movl %eax, len_r /* len = this */ | |
| 501 | - shrl $16, len_r /* len = this.val */ | |
| 502 | - movb %al, %cl | |
| 503 | - | |
| 504 | - testb $16, %al | |
| 505 | - jz .L_test_for_second_level_length /* if ((op & 16) == 0) 8% */ | |
| 506 | - andb $15, %cl /* op &= 15 */ | |
| 507 | - jz .L_save_len /* if (!op) */ | |
| 508 | - cmpb %cl, bits_r | |
| 509 | - jae .L_add_bits_to_len /* if (op <= bits) */ | |
| 510 | - | |
| 511 | - movb %cl, %ch /* stash op in ch, freeing cl */ | |
| 512 | - xorl %eax, %eax | |
| 513 | - lodsw /* al = *(ushort *)in++ */ | |
| 514 | - movb bits_r, %cl /* cl = bits, needs it for shifting */ | |
| 515 | - addb $16, bits_r /* bits += 16 */ | |
| 516 | - shll %cl, %eax | |
| 517 | - orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ | |
| 518 | - movb %ch, %cl /* move op back to ecx */ | |
| 519 | - | |
| 520 | -.L_add_bits_to_len: | |
| 521 | - movl $1, %eax | |
| 522 | - shll %cl, %eax | |
| 523 | - decl %eax | |
| 524 | - subb %cl, bits_r | |
| 525 | - andl hold_r, %eax /* eax &= hold */ | |
| 526 | - shrl %cl, hold_r | |
| 527 | - addl %eax, len_r /* len += hold & mask[op] */ | |
| 528 | - | |
| 529 | -.L_save_len: | |
| 530 | - movl len_r, len(%esp) /* save len */ | |
| 531 | -#undef len_r | |
| 532 | - | |
| 533 | -.L_decode_distance: | |
| 534 | - /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out, %edx = dist | |
| 535 | - * | |
| 536 | - * if (bits < 15) { | |
| 537 | - * hold |= *((unsigned short *)in)++ << bits; | |
| 538 | - * bits += 16 | |
| 539 | - * } | |
| 540 | - * this = dcode[hold & dmask]; | |
| 541 | - * dodist: | |
| 542 | - * bits -= this.bits; | |
| 543 | - * hold >>= this.bits; | |
| 544 | - * op = this.op; | |
| 545 | - */ | |
| 546 | - | |
| 547 | - cmpb $15, bits_r | |
| 548 | - ja .L_get_distance_code /* if (15 < bits) */ | |
| 549 | - | |
| 550 | - xorl %eax, %eax | |
| 551 | - lodsw /* al = *(ushort *)in++ */ | |
| 552 | - movb bits_r, %cl /* cl = bits, needs it for shifting */ | |
| 553 | - addb $16, bits_r /* bits += 16 */ | |
| 554 | - shll %cl, %eax | |
| 555 | - orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ | |
| 556 | - | |
| 557 | -.L_get_distance_code: | |
| 558 | - movl dmask(%esp), %edx /* edx = dmask */ | |
| 559 | - movl dcode(%esp), %ecx /* ecx = dcode */ | |
| 560 | - andl hold_r, %edx /* edx &= hold */ | |
| 561 | - movl (%ecx,%edx,4), %eax /* eax = dcode[hold & dmask] */ | |
| 562 | - | |
| 563 | -#define dist_r %edx | |
| 564 | -.L_dodist: | |
| 565 | - movl %eax, dist_r /* dist = this */ | |
| 566 | - shrl $16, dist_r /* dist = this.val */ | |
| 567 | - movb %ah, %cl | |
| 568 | - subb %ah, bits_r /* bits -= this.bits */ | |
| 569 | - shrl %cl, hold_r /* hold >>= this.bits */ | |
| 570 | - | |
| 571 | - /* if (op & 16) { | |
| 572 | - * dist = this.val | |
| 573 | - * op &= 15 | |
| 574 | - * if (op > bits) { | |
| 575 | - * hold |= *((unsigned short *)in)++ << bits; | |
| 576 | - * bits += 16 | |
| 577 | - * } | |
| 578 | - * dist += hold & mask[op]; | |
| 579 | - * bits -= op; | |
| 580 | - * hold >>= op; | |
| 581 | - */ | |
| 582 | - movb %al, %cl /* cl = this.op */ | |
| 583 | - | |
| 584 | - testb $16, %al /* if ((op & 16) == 0) */ | |
| 585 | - jz .L_test_for_second_level_dist | |
| 586 | - andb $15, %cl /* op &= 15 */ | |
| 587 | - jz .L_check_dist_one | |
| 588 | - cmpb %cl, bits_r | |
| 589 | - jae .L_add_bits_to_dist /* if (op <= bits) 97.6% */ | |
| 590 | - | |
| 591 | - movb %cl, %ch /* stash op in ch, freeing cl */ | |
| 592 | - xorl %eax, %eax | |
| 593 | - lodsw /* al = *(ushort *)in++ */ | |
| 594 | - movb bits_r, %cl /* cl = bits, needs it for shifting */ | |
| 595 | - addb $16, bits_r /* bits += 16 */ | |
| 596 | - shll %cl, %eax | |
| 597 | - orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ | |
| 598 | - movb %ch, %cl /* move op back to ecx */ | |
| 599 | - | |
| 600 | -.L_add_bits_to_dist: | |
| 601 | - movl $1, %eax | |
| 602 | - shll %cl, %eax | |
| 603 | - decl %eax /* (1 << op) - 1 */ | |
| 604 | - subb %cl, bits_r | |
| 605 | - andl hold_r, %eax /* eax &= hold */ | |
| 606 | - shrl %cl, hold_r | |
| 607 | - addl %eax, dist_r /* dist += hold & ((1 << op) - 1) */ | |
| 608 | - jmp .L_check_window | |
| 609 | - | |
| 610 | -.L_check_window: | |
| 611 | - /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist | |
| 612 | - * %ecx = nbytes | |
| 613 | - * | |
| 614 | - * nbytes = out - beg; | |
| 615 | - * if (dist <= nbytes) { | |
| 616 | - * from = out - dist; | |
| 617 | - * do { | |
| 618 | - * PUP(out) = PUP(from); | |
| 619 | - * } while (--len > 0) { | |
| 620 | - * } | |
| 621 | - */ | |
| 622 | - | |
| 623 | - movl in_r, in(%esp) /* save in so from can use it's reg */ | |
| 624 | - movl out_r, %eax | |
| 625 | - subl beg(%esp), %eax /* nbytes = out - beg */ | |
| 626 | - | |
| 627 | - cmpl dist_r, %eax | |
| 628 | - jb .L_clip_window /* if (dist > nbytes) 4.2% */ | |
| 629 | - | |
| 630 | - movl len(%esp), %ecx | |
| 631 | - movl out_r, from_r | |
| 632 | - subl dist_r, from_r /* from = out - dist */ | |
| 633 | - | |
| 634 | - subl $3, %ecx | |
| 635 | - movb (from_r), %al | |
| 636 | - movb %al, (out_r) | |
| 637 | - movb 1(from_r), %al | |
| 638 | - movb 2(from_r), %dl | |
| 639 | - addl $3, from_r | |
| 640 | - movb %al, 1(out_r) | |
| 641 | - movb %dl, 2(out_r) | |
| 642 | - addl $3, out_r | |
| 643 | - rep movsb | |
| 644 | - | |
| 645 | - movl in(%esp), in_r /* move in back to %esi, toss from */ | |
| 646 | - jmp .L_while_test | |
| 647 | - | |
| 648 | -.align 16,0x90 | |
| 649 | -.L_check_dist_one: | |
| 650 | - cmpl $1, dist_r | |
| 651 | - jne .L_check_window | |
| 652 | - cmpl out_r, beg(%esp) | |
| 653 | - je .L_check_window | |
| 654 | - | |
| 655 | - decl out_r | |
| 656 | - movl len(%esp), %ecx | |
| 657 | - movb (out_r), %al | |
| 658 | - subl $3, %ecx | |
| 659 | - | |
| 660 | - movb %al, 1(out_r) | |
| 661 | - movb %al, 2(out_r) | |
| 662 | - movb %al, 3(out_r) | |
| 663 | - addl $4, out_r | |
| 664 | - rep stosb | |
| 665 | - | |
| 666 | - jmp .L_while_test | |
| 667 | - | |
| 668 | -.align 16,0x90 | |
| 669 | -.L_test_for_second_level_length: | |
| 670 | - /* else if ((op & 64) == 0) { | |
| 671 | - * this = lcode[this.val + (hold & mask[op])]; | |
| 672 | - * } | |
| 673 | - */ | |
| 674 | - testb $64, %al | |
| 675 | - jnz .L_test_for_end_of_block /* if ((op & 64) != 0) */ | |
| 676 | - | |
| 677 | - movl $1, %eax | |
| 678 | - shll %cl, %eax | |
| 679 | - decl %eax | |
| 680 | - andl hold_r, %eax /* eax &= hold */ | |
| 681 | - addl %edx, %eax /* eax += this.val */ | |
| 682 | - movl lcode(%esp), %edx /* edx = lcode */ | |
| 683 | - movl (%edx,%eax,4), %eax /* eax = lcode[val + (hold&mask[op])] */ | |
| 684 | - jmp .L_dolen | |
| 685 | - | |
| 686 | -.align 16,0x90 | |
| 687 | -.L_test_for_second_level_dist: | |
| 688 | - /* else if ((op & 64) == 0) { | |
| 689 | - * this = dcode[this.val + (hold & mask[op])]; | |
| 690 | - * } | |
| 691 | - */ | |
| 692 | - testb $64, %al | |
| 693 | - jnz .L_invalid_distance_code /* if ((op & 64) != 0) */ | |
| 694 | - | |
| 695 | - movl $1, %eax | |
| 696 | - shll %cl, %eax | |
| 697 | - decl %eax | |
| 698 | - andl hold_r, %eax /* eax &= hold */ | |
| 699 | - addl %edx, %eax /* eax += this.val */ | |
| 700 | - movl dcode(%esp), %edx /* edx = dcode */ | |
| 701 | - movl (%edx,%eax,4), %eax /* eax = dcode[val + (hold&mask[op])] */ | |
| 702 | - jmp .L_dodist | |
| 703 | - | |
| 704 | -.align 16,0x90 | |
| 705 | -.L_clip_window: | |
| 706 | - /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist | |
| 707 | - * %ecx = nbytes | |
| 708 | - * | |
| 709 | - * else { | |
| 710 | - * if (dist > wsize) { | |
| 711 | - * invalid distance | |
| 712 | - * } | |
| 713 | - * from = window; | |
| 714 | - * nbytes = dist - nbytes; | |
| 715 | - * if (write == 0) { | |
| 716 | - * from += wsize - nbytes; | |
| 717 | - */ | |
| 718 | -#define nbytes_r %ecx | |
| 719 | - movl %eax, nbytes_r | |
| 720 | - movl wsize(%esp), %eax /* prepare for dist compare */ | |
| 721 | - negl nbytes_r /* nbytes = -nbytes */ | |
| 722 | - movl window(%esp), from_r /* from = window */ | |
| 723 | - | |
| 724 | - cmpl dist_r, %eax | |
| 725 | - jb .L_invalid_distance_too_far /* if (dist > wsize) */ | |
| 726 | - | |
| 727 | - addl dist_r, nbytes_r /* nbytes = dist - nbytes */ | |
| 728 | - cmpl $0, write(%esp) | |
| 729 | - jne .L_wrap_around_window /* if (write != 0) */ | |
| 730 | - | |
| 731 | - subl nbytes_r, %eax | |
| 732 | - addl %eax, from_r /* from += wsize - nbytes */ | |
| 733 | - | |
| 734 | - /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist | |
| 735 | - * %ecx = nbytes, %eax = len | |
| 736 | - * | |
| 737 | - * if (nbytes < len) { | |
| 738 | - * len -= nbytes; | |
| 739 | - * do { | |
| 740 | - * PUP(out) = PUP(from); | |
| 741 | - * } while (--nbytes); | |
| 742 | - * from = out - dist; | |
| 743 | - * } | |
| 744 | - * } | |
| 745 | - */ | |
| 746 | -#define len_r %eax | |
| 747 | - movl len(%esp), len_r | |
| 748 | - cmpl nbytes_r, len_r | |
| 749 | - jbe .L_do_copy1 /* if (nbytes >= len) */ | |
| 750 | - | |
| 751 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 752 | - rep movsb | |
| 753 | - movl out_r, from_r | |
| 754 | - subl dist_r, from_r /* from = out - dist */ | |
| 755 | - jmp .L_do_copy1 | |
| 756 | - | |
| 757 | - cmpl nbytes_r, len_r | |
| 758 | - jbe .L_do_copy1 /* if (nbytes >= len) */ | |
| 759 | - | |
| 760 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 761 | - rep movsb | |
| 762 | - movl out_r, from_r | |
| 763 | - subl dist_r, from_r /* from = out - dist */ | |
| 764 | - jmp .L_do_copy1 | |
| 765 | - | |
| 766 | -.L_wrap_around_window: | |
| 767 | - /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist | |
| 768 | - * %ecx = nbytes, %eax = write, %eax = len | |
| 769 | - * | |
| 770 | - * else if (write < nbytes) { | |
| 771 | - * from += wsize + write - nbytes; | |
| 772 | - * nbytes -= write; | |
| 773 | - * if (nbytes < len) { | |
| 774 | - * len -= nbytes; | |
| 775 | - * do { | |
| 776 | - * PUP(out) = PUP(from); | |
| 777 | - * } while (--nbytes); | |
| 778 | - * from = window; | |
| 779 | - * nbytes = write; | |
| 780 | - * if (nbytes < len) { | |
| 781 | - * len -= nbytes; | |
| 782 | - * do { | |
| 783 | - * PUP(out) = PUP(from); | |
| 784 | - * } while(--nbytes); | |
| 785 | - * from = out - dist; | |
| 786 | - * } | |
| 787 | - * } | |
| 788 | - * } | |
| 789 | - */ | |
| 790 | -#define write_r %eax | |
| 791 | - movl write(%esp), write_r | |
| 792 | - cmpl write_r, nbytes_r | |
| 793 | - jbe .L_contiguous_in_window /* if (write >= nbytes) */ | |
| 794 | - | |
| 795 | - addl wsize(%esp), from_r | |
| 796 | - addl write_r, from_r | |
| 797 | - subl nbytes_r, from_r /* from += wsize + write - nbytes */ | |
| 798 | - subl write_r, nbytes_r /* nbytes -= write */ | |
| 799 | -#undef write_r | |
| 800 | - | |
| 801 | - movl len(%esp), len_r | |
| 802 | - cmpl nbytes_r, len_r | |
| 803 | - jbe .L_do_copy1 /* if (nbytes >= len) */ | |
| 804 | - | |
| 805 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 806 | - rep movsb | |
| 807 | - movl window(%esp), from_r /* from = window */ | |
| 808 | - movl write(%esp), nbytes_r /* nbytes = write */ | |
| 809 | - cmpl nbytes_r, len_r | |
| 810 | - jbe .L_do_copy1 /* if (nbytes >= len) */ | |
| 811 | - | |
| 812 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 813 | - rep movsb | |
| 814 | - movl out_r, from_r | |
| 815 | - subl dist_r, from_r /* from = out - dist */ | |
| 816 | - jmp .L_do_copy1 | |
| 817 | - | |
| 818 | -.L_contiguous_in_window: | |
| 819 | - /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist | |
| 820 | - * %ecx = nbytes, %eax = write, %eax = len | |
| 821 | - * | |
| 822 | - * else { | |
| 823 | - * from += write - nbytes; | |
| 824 | - * if (nbytes < len) { | |
| 825 | - * len -= nbytes; | |
| 826 | - * do { | |
| 827 | - * PUP(out) = PUP(from); | |
| 828 | - * } while (--nbytes); | |
| 829 | - * from = out - dist; | |
| 830 | - * } | |
| 831 | - * } | |
| 832 | - */ | |
| 833 | -#define write_r %eax | |
| 834 | - addl write_r, from_r | |
| 835 | - subl nbytes_r, from_r /* from += write - nbytes */ | |
| 836 | -#undef write_r | |
| 837 | - | |
| 838 | - movl len(%esp), len_r | |
| 839 | - cmpl nbytes_r, len_r | |
| 840 | - jbe .L_do_copy1 /* if (nbytes >= len) */ | |
| 841 | - | |
| 842 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 843 | - rep movsb | |
| 844 | - movl out_r, from_r | |
| 845 | - subl dist_r, from_r /* from = out - dist */ | |
| 846 | - | |
| 847 | -.L_do_copy1: | |
| 848 | - /* regs: %esi = from, %esi = in, %ebp = hold, %bl = bits, %edi = out | |
| 849 | - * %eax = len | |
| 850 | - * | |
| 851 | - * while (len > 0) { | |
| 852 | - * PUP(out) = PUP(from); | |
| 853 | - * len--; | |
| 854 | - * } | |
| 855 | - * } | |
| 856 | - * } while (in < last && out < end); | |
| 857 | - */ | |
| 858 | -#undef nbytes_r | |
| 859 | -#define in_r %esi | |
| 860 | - movl len_r, %ecx | |
| 861 | - rep movsb | |
| 862 | - | |
| 863 | - movl in(%esp), in_r /* move in back to %esi, toss from */ | |
| 864 | - jmp .L_while_test | |
| 865 | - | |
| 866 | -#undef len_r | |
| 867 | -#undef dist_r | |
| 868 | - | |
| 869 | -#endif /* NO_MMX || RUN_TIME_MMX */ | |
| 870 | - | |
| 871 | - | |
| 872 | -/*** MMX code ***/ | |
| 873 | - | |
| 874 | -#if defined( USE_MMX ) || defined( RUN_TIME_MMX ) | |
| 875 | - | |
| 876 | -.align 32,0x90 | |
| 877 | -.L_init_mmx: | |
| 878 | - emms | |
| 879 | - | |
| 880 | -#undef bits_r | |
| 881 | -#undef bitslong_r | |
| 882 | -#define bitslong_r %ebp | |
| 883 | -#define hold_mm %mm0 | |
| 884 | - movd %ebp, hold_mm | |
| 885 | - movl %ebx, bitslong_r | |
| 886 | - | |
| 887 | -#define used_mm %mm1 | |
| 888 | -#define dmask2_mm %mm2 | |
| 889 | -#define lmask2_mm %mm3 | |
| 890 | -#define lmask_mm %mm4 | |
| 891 | -#define dmask_mm %mm5 | |
| 892 | -#define tmp_mm %mm6 | |
| 893 | - | |
| 894 | - movd lmask(%esp), lmask_mm | |
| 895 | - movq lmask_mm, lmask2_mm | |
| 896 | - movd dmask(%esp), dmask_mm | |
| 897 | - movq dmask_mm, dmask2_mm | |
| 898 | - pxor used_mm, used_mm | |
| 899 | - movl lcode(%esp), %ebx /* ebx = lcode */ | |
| 900 | - jmp .L_do_loop_mmx | |
| 901 | - | |
| 902 | -.align 32,0x90 | |
| 903 | -.L_while_test_mmx: | |
| 904 | - /* while (in < last && out < end) | |
| 905 | - */ | |
| 906 | - cmpl out_r, end(%esp) | |
| 907 | - jbe .L_break_loop /* if (out >= end) */ | |
| 908 | - | |
| 909 | - cmpl in_r, last(%esp) | |
| 910 | - jbe .L_break_loop | |
| 911 | - | |
| 912 | -.L_do_loop_mmx: | |
| 913 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 914 | - | |
| 915 | - cmpl $32, bitslong_r | |
| 916 | - ja .L_get_length_code_mmx /* if (32 < bits) */ | |
| 917 | - | |
| 918 | - movd bitslong_r, tmp_mm | |
| 919 | - movd (in_r), %mm7 | |
| 920 | - addl $4, in_r | |
| 921 | - psllq tmp_mm, %mm7 | |
| 922 | - addl $32, bitslong_r | |
| 923 | - por %mm7, hold_mm /* hold_mm |= *((uint *)in)++ << bits */ | |
| 924 | - | |
| 925 | -.L_get_length_code_mmx: | |
| 926 | - pand hold_mm, lmask_mm | |
| 927 | - movd lmask_mm, %eax | |
| 928 | - movq lmask2_mm, lmask_mm | |
| 929 | - movl (%ebx,%eax,4), %eax /* eax = lcode[hold & lmask] */ | |
| 930 | - | |
| 931 | -.L_dolen_mmx: | |
| 932 | - movzbl %ah, %ecx /* ecx = this.bits */ | |
| 933 | - movd %ecx, used_mm | |
| 934 | - subl %ecx, bitslong_r /* bits -= this.bits */ | |
| 935 | - | |
| 936 | - testb %al, %al | |
| 937 | - jnz .L_test_for_length_base_mmx /* if (op != 0) 45.7% */ | |
| 938 | - | |
| 939 | - shrl $16, %eax /* output this.val char */ | |
| 940 | - stosb | |
| 941 | - jmp .L_while_test_mmx | |
| 942 | - | |
| 943 | -.L_test_for_length_base_mmx: | |
| 944 | -#define len_r %edx | |
| 945 | - movl %eax, len_r /* len = this */ | |
| 946 | - shrl $16, len_r /* len = this.val */ | |
| 947 | - | |
| 948 | - testb $16, %al | |
| 949 | - jz .L_test_for_second_level_length_mmx /* if ((op & 16) == 0) 8% */ | |
| 950 | - andl $15, %eax /* op &= 15 */ | |
| 951 | - jz .L_decode_distance_mmx /* if (!op) */ | |
| 952 | - | |
| 953 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 954 | - movd %eax, used_mm | |
| 955 | - movd hold_mm, %ecx | |
| 956 | - subl %eax, bitslong_r | |
| 957 | - andl .L_mask(,%eax,4), %ecx | |
| 958 | - addl %ecx, len_r /* len += hold & mask[op] */ | |
| 959 | - | |
| 960 | -.L_decode_distance_mmx: | |
| 961 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 962 | - | |
| 963 | - cmpl $32, bitslong_r | |
| 964 | - ja .L_get_dist_code_mmx /* if (32 < bits) */ | |
| 965 | - | |
| 966 | - movd bitslong_r, tmp_mm | |
| 967 | - movd (in_r), %mm7 | |
| 968 | - addl $4, in_r | |
| 969 | - psllq tmp_mm, %mm7 | |
| 970 | - addl $32, bitslong_r | |
| 971 | - por %mm7, hold_mm /* hold_mm |= *((uint *)in)++ << bits */ | |
| 972 | - | |
| 973 | -.L_get_dist_code_mmx: | |
| 974 | - movl dcode(%esp), %ebx /* ebx = dcode */ | |
| 975 | - pand hold_mm, dmask_mm | |
| 976 | - movd dmask_mm, %eax | |
| 977 | - movq dmask2_mm, dmask_mm | |
| 978 | - movl (%ebx,%eax,4), %eax /* eax = dcode[hold & lmask] */ | |
| 979 | - | |
| 980 | -.L_dodist_mmx: | |
| 981 | -#define dist_r %ebx | |
| 982 | - movzbl %ah, %ecx /* ecx = this.bits */ | |
| 983 | - movl %eax, dist_r | |
| 984 | - shrl $16, dist_r /* dist = this.val */ | |
| 985 | - subl %ecx, bitslong_r /* bits -= this.bits */ | |
| 986 | - movd %ecx, used_mm | |
| 987 | - | |
| 988 | - testb $16, %al /* if ((op & 16) == 0) */ | |
| 989 | - jz .L_test_for_second_level_dist_mmx | |
| 990 | - andl $15, %eax /* op &= 15 */ | |
| 991 | - jz .L_check_dist_one_mmx | |
| 992 | - | |
| 993 | -.L_add_bits_to_dist_mmx: | |
| 994 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 995 | - movd %eax, used_mm /* save bit length of current op */ | |
| 996 | - movd hold_mm, %ecx /* get the next bits on input stream */ | |
| 997 | - subl %eax, bitslong_r /* bits -= op bits */ | |
| 998 | - andl .L_mask(,%eax,4), %ecx /* ecx = hold & mask[op] */ | |
| 999 | - addl %ecx, dist_r /* dist += hold & mask[op] */ | |
| 1000 | - | |
| 1001 | -.L_check_window_mmx: | |
| 1002 | - movl in_r, in(%esp) /* save in so from can use it's reg */ | |
| 1003 | - movl out_r, %eax | |
| 1004 | - subl beg(%esp), %eax /* nbytes = out - beg */ | |
| 1005 | - | |
| 1006 | - cmpl dist_r, %eax | |
| 1007 | - jb .L_clip_window_mmx /* if (dist > nbytes) 4.2% */ | |
| 1008 | - | |
| 1009 | - movl len_r, %ecx | |
| 1010 | - movl out_r, from_r | |
| 1011 | - subl dist_r, from_r /* from = out - dist */ | |
| 1012 | - | |
| 1013 | - subl $3, %ecx | |
| 1014 | - movb (from_r), %al | |
| 1015 | - movb %al, (out_r) | |
| 1016 | - movb 1(from_r), %al | |
| 1017 | - movb 2(from_r), %dl | |
| 1018 | - addl $3, from_r | |
| 1019 | - movb %al, 1(out_r) | |
| 1020 | - movb %dl, 2(out_r) | |
| 1021 | - addl $3, out_r | |
| 1022 | - rep movsb | |
| 1023 | - | |
| 1024 | - movl in(%esp), in_r /* move in back to %esi, toss from */ | |
| 1025 | - movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */ | |
| 1026 | - jmp .L_while_test_mmx | |
| 1027 | - | |
| 1028 | -.align 16,0x90 | |
| 1029 | -.L_check_dist_one_mmx: | |
| 1030 | - cmpl $1, dist_r | |
| 1031 | - jne .L_check_window_mmx | |
| 1032 | - cmpl out_r, beg(%esp) | |
| 1033 | - je .L_check_window_mmx | |
| 1034 | - | |
| 1035 | - decl out_r | |
| 1036 | - movl len_r, %ecx | |
| 1037 | - movb (out_r), %al | |
| 1038 | - subl $3, %ecx | |
| 1039 | - | |
| 1040 | - movb %al, 1(out_r) | |
| 1041 | - movb %al, 2(out_r) | |
| 1042 | - movb %al, 3(out_r) | |
| 1043 | - addl $4, out_r | |
| 1044 | - rep stosb | |
| 1045 | - | |
| 1046 | - movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */ | |
| 1047 | - jmp .L_while_test_mmx | |
| 1048 | - | |
| 1049 | -.align 16,0x90 | |
| 1050 | -.L_test_for_second_level_length_mmx: | |
| 1051 | - testb $64, %al | |
| 1052 | - jnz .L_test_for_end_of_block /* if ((op & 64) != 0) */ | |
| 1053 | - | |
| 1054 | - andl $15, %eax | |
| 1055 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 1056 | - movd hold_mm, %ecx | |
| 1057 | - andl .L_mask(,%eax,4), %ecx | |
| 1058 | - addl len_r, %ecx | |
| 1059 | - movl (%ebx,%ecx,4), %eax /* eax = lcode[hold & lmask] */ | |
| 1060 | - jmp .L_dolen_mmx | |
| 1061 | - | |
| 1062 | -.align 16,0x90 | |
| 1063 | -.L_test_for_second_level_dist_mmx: | |
| 1064 | - testb $64, %al | |
| 1065 | - jnz .L_invalid_distance_code /* if ((op & 64) != 0) */ | |
| 1066 | - | |
| 1067 | - andl $15, %eax | |
| 1068 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 1069 | - movd hold_mm, %ecx | |
| 1070 | - andl .L_mask(,%eax,4), %ecx | |
| 1071 | - movl dcode(%esp), %eax /* ecx = dcode */ | |
| 1072 | - addl dist_r, %ecx | |
| 1073 | - movl (%eax,%ecx,4), %eax /* eax = lcode[hold & lmask] */ | |
| 1074 | - jmp .L_dodist_mmx | |
| 1075 | - | |
| 1076 | -.align 16,0x90 | |
| 1077 | -.L_clip_window_mmx: | |
| 1078 | -#define nbytes_r %ecx | |
| 1079 | - movl %eax, nbytes_r | |
| 1080 | - movl wsize(%esp), %eax /* prepare for dist compare */ | |
| 1081 | - negl nbytes_r /* nbytes = -nbytes */ | |
| 1082 | - movl window(%esp), from_r /* from = window */ | |
| 1083 | - | |
| 1084 | - cmpl dist_r, %eax | |
| 1085 | - jb .L_invalid_distance_too_far /* if (dist > wsize) */ | |
| 1086 | - | |
| 1087 | - addl dist_r, nbytes_r /* nbytes = dist - nbytes */ | |
| 1088 | - cmpl $0, write(%esp) | |
| 1089 | - jne .L_wrap_around_window_mmx /* if (write != 0) */ | |
| 1090 | - | |
| 1091 | - subl nbytes_r, %eax | |
| 1092 | - addl %eax, from_r /* from += wsize - nbytes */ | |
| 1093 | - | |
| 1094 | - cmpl nbytes_r, len_r | |
| 1095 | - jbe .L_do_copy1_mmx /* if (nbytes >= len) */ | |
| 1096 | - | |
| 1097 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 1098 | - rep movsb | |
| 1099 | - movl out_r, from_r | |
| 1100 | - subl dist_r, from_r /* from = out - dist */ | |
| 1101 | - jmp .L_do_copy1_mmx | |
| 1102 | - | |
| 1103 | - cmpl nbytes_r, len_r | |
| 1104 | - jbe .L_do_copy1_mmx /* if (nbytes >= len) */ | |
| 1105 | - | |
| 1106 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 1107 | - rep movsb | |
| 1108 | - movl out_r, from_r | |
| 1109 | - subl dist_r, from_r /* from = out - dist */ | |
| 1110 | - jmp .L_do_copy1_mmx | |
| 1111 | - | |
| 1112 | -.L_wrap_around_window_mmx: | |
| 1113 | -#define write_r %eax | |
| 1114 | - movl write(%esp), write_r | |
| 1115 | - cmpl write_r, nbytes_r | |
| 1116 | - jbe .L_contiguous_in_window_mmx /* if (write >= nbytes) */ | |
| 1117 | - | |
| 1118 | - addl wsize(%esp), from_r | |
| 1119 | - addl write_r, from_r | |
| 1120 | - subl nbytes_r, from_r /* from += wsize + write - nbytes */ | |
| 1121 | - subl write_r, nbytes_r /* nbytes -= write */ | |
| 1122 | -#undef write_r | |
| 1123 | - | |
| 1124 | - cmpl nbytes_r, len_r | |
| 1125 | - jbe .L_do_copy1_mmx /* if (nbytes >= len) */ | |
| 1126 | - | |
| 1127 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 1128 | - rep movsb | |
| 1129 | - movl window(%esp), from_r /* from = window */ | |
| 1130 | - movl write(%esp), nbytes_r /* nbytes = write */ | |
| 1131 | - cmpl nbytes_r, len_r | |
| 1132 | - jbe .L_do_copy1_mmx /* if (nbytes >= len) */ | |
| 1133 | - | |
| 1134 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 1135 | - rep movsb | |
| 1136 | - movl out_r, from_r | |
| 1137 | - subl dist_r, from_r /* from = out - dist */ | |
| 1138 | - jmp .L_do_copy1_mmx | |
| 1139 | - | |
| 1140 | -.L_contiguous_in_window_mmx: | |
| 1141 | -#define write_r %eax | |
| 1142 | - addl write_r, from_r | |
| 1143 | - subl nbytes_r, from_r /* from += write - nbytes */ | |
| 1144 | -#undef write_r | |
| 1145 | - | |
| 1146 | - cmpl nbytes_r, len_r | |
| 1147 | - jbe .L_do_copy1_mmx /* if (nbytes >= len) */ | |
| 1148 | - | |
| 1149 | - subl nbytes_r, len_r /* len -= nbytes */ | |
| 1150 | - rep movsb | |
| 1151 | - movl out_r, from_r | |
| 1152 | - subl dist_r, from_r /* from = out - dist */ | |
| 1153 | - | |
| 1154 | -.L_do_copy1_mmx: | |
| 1155 | -#undef nbytes_r | |
| 1156 | -#define in_r %esi | |
| 1157 | - movl len_r, %ecx | |
| 1158 | - rep movsb | |
| 1159 | - | |
| 1160 | - movl in(%esp), in_r /* move in back to %esi, toss from */ | |
| 1161 | - movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */ | |
| 1162 | - jmp .L_while_test_mmx | |
| 1163 | - | |
| 1164 | -#undef hold_r | |
| 1165 | -#undef bitslong_r | |
| 1166 | - | |
| 1167 | -#endif /* USE_MMX || RUN_TIME_MMX */ | |
| 1168 | - | |
| 1169 | - | |
| 1170 | -/*** USE_MMX, NO_MMX, and RUNTIME_MMX from here on ***/ | |
| 1171 | - | |
| 1172 | -.L_invalid_distance_code: | |
| 1173 | - /* else { | |
| 1174 | - * strm->msg = "invalid distance code"; | |
| 1175 | - * state->mode = BAD; | |
| 1176 | - * } | |
| 1177 | - */ | |
| 1178 | - movl $.L_invalid_distance_code_msg, %ecx | |
| 1179 | - movl $INFLATE_MODE_BAD, %edx | |
| 1180 | - jmp .L_update_stream_state | |
| 1181 | - | |
| 1182 | -.L_test_for_end_of_block: | |
| 1183 | - /* else if (op & 32) { | |
| 1184 | - * state->mode = TYPE; | |
| 1185 | - * break; | |
| 1186 | - * } | |
| 1187 | - */ | |
| 1188 | - testb $32, %al | |
| 1189 | - jz .L_invalid_literal_length_code /* if ((op & 32) == 0) */ | |
| 1190 | - | |
| 1191 | - movl $0, %ecx | |
| 1192 | - movl $INFLATE_MODE_TYPE, %edx | |
| 1193 | - jmp .L_update_stream_state | |
| 1194 | - | |
| 1195 | -.L_invalid_literal_length_code: | |
| 1196 | - /* else { | |
| 1197 | - * strm->msg = "invalid literal/length code"; | |
| 1198 | - * state->mode = BAD; | |
| 1199 | - * } | |
| 1200 | - */ | |
| 1201 | - movl $.L_invalid_literal_length_code_msg, %ecx | |
| 1202 | - movl $INFLATE_MODE_BAD, %edx | |
| 1203 | - jmp .L_update_stream_state | |
| 1204 | - | |
| 1205 | -.L_invalid_distance_too_far: | |
| 1206 | - /* strm->msg = "invalid distance too far back"; | |
| 1207 | - * state->mode = BAD; | |
| 1208 | - */ | |
| 1209 | - movl in(%esp), in_r /* from_r has in's reg, put in back */ | |
| 1210 | - movl $.L_invalid_distance_too_far_msg, %ecx | |
| 1211 | - movl $INFLATE_MODE_BAD, %edx | |
| 1212 | - jmp .L_update_stream_state | |
| 1213 | - | |
| 1214 | -.L_update_stream_state: | |
| 1215 | - /* set strm->msg = %ecx, strm->state->mode = %edx */ | |
| 1216 | - movl strm_sp(%esp), %eax | |
| 1217 | - testl %ecx, %ecx /* if (msg != NULL) */ | |
| 1218 | - jz .L_skip_msg | |
| 1219 | - movl %ecx, msg_strm(%eax) /* strm->msg = msg */ | |
| 1220 | -.L_skip_msg: | |
| 1221 | - movl state_strm(%eax), %eax /* state = strm->state */ | |
| 1222 | - movl %edx, mode_state(%eax) /* state->mode = edx (BAD | TYPE) */ | |
| 1223 | - jmp .L_break_loop | |
| 1224 | - | |
| 1225 | -.align 32,0x90 | |
| 1226 | -.L_break_loop: | |
| 1227 | - | |
| 1228 | -/* | |
| 1229 | - * Regs: | |
| 1230 | - * | |
| 1231 | - * bits = %ebp when mmx, and in %ebx when non-mmx | |
| 1232 | - * hold = %hold_mm when mmx, and in %ebp when non-mmx | |
| 1233 | - * in = %esi | |
| 1234 | - * out = %edi | |
| 1235 | - */ | |
| 1236 | - | |
| 1237 | -#if defined( USE_MMX ) || defined( RUN_TIME_MMX ) | |
| 1238 | - | |
| 1239 | -#if defined( RUN_TIME_MMX ) | |
| 1240 | - | |
| 1241 | - cmpl $DO_USE_MMX, inflate_fast_use_mmx | |
| 1242 | - jne .L_update_next_in | |
| 1243 | - | |
| 1244 | -#endif /* RUN_TIME_MMX */ | |
| 1245 | - | |
| 1246 | - movl %ebp, %ebx | |
| 1247 | - | |
| 1248 | -.L_update_next_in: | |
| 1249 | - | |
| 1250 | -#endif | |
| 1251 | - | |
| 1252 | -#define strm_r %eax | |
| 1253 | -#define state_r %edx | |
| 1254 | - | |
| 1255 | - /* len = bits >> 3; | |
| 1256 | - * in -= len; | |
| 1257 | - * bits -= len << 3; | |
| 1258 | - * hold &= (1U << bits) - 1; | |
| 1259 | - * state->hold = hold; | |
| 1260 | - * state->bits = bits; | |
| 1261 | - * strm->next_in = in; | |
| 1262 | - * strm->next_out = out; | |
| 1263 | - */ | |
| 1264 | - movl strm_sp(%esp), strm_r | |
| 1265 | - movl %ebx, %ecx | |
| 1266 | - movl state_strm(strm_r), state_r | |
| 1267 | - shrl $3, %ecx | |
| 1268 | - subl %ecx, in_r | |
| 1269 | - shll $3, %ecx | |
| 1270 | - subl %ecx, %ebx | |
| 1271 | - movl out_r, next_out_strm(strm_r) | |
| 1272 | - movl %ebx, bits_state(state_r) | |
| 1273 | - movl %ebx, %ecx | |
| 1274 | - | |
| 1275 | - leal buf(%esp), %ebx | |
| 1276 | - cmpl %ebx, last(%esp) | |
| 1277 | - jne .L_buf_not_used /* if buf != last */ | |
| 1278 | - | |
| 1279 | - subl %ebx, in_r /* in -= buf */ | |
| 1280 | - movl next_in_strm(strm_r), %ebx | |
| 1281 | - movl %ebx, last(%esp) /* last = strm->next_in */ | |
| 1282 | - addl %ebx, in_r /* in += strm->next_in */ | |
| 1283 | - movl avail_in_strm(strm_r), %ebx | |
| 1284 | - subl $11, %ebx | |
| 1285 | - addl %ebx, last(%esp) /* last = &strm->next_in[ avail_in - 11 ] */ | |
| 1286 | - | |
| 1287 | -.L_buf_not_used: | |
| 1288 | - movl in_r, next_in_strm(strm_r) | |
| 1289 | - | |
| 1290 | - movl $1, %ebx | |
| 1291 | - shll %cl, %ebx | |
| 1292 | - decl %ebx | |
| 1293 | - | |
| 1294 | -#if defined( USE_MMX ) || defined( RUN_TIME_MMX ) | |
| 1295 | - | |
| 1296 | -#if defined( RUN_TIME_MMX ) | |
| 1297 | - | |
| 1298 | - cmpl $DO_USE_MMX, inflate_fast_use_mmx | |
| 1299 | - jne .L_update_hold | |
| 1300 | - | |
| 1301 | -#endif /* RUN_TIME_MMX */ | |
| 1302 | - | |
| 1303 | - psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ | |
| 1304 | - movd hold_mm, %ebp | |
| 1305 | - | |
| 1306 | - emms | |
| 1307 | - | |
| 1308 | -.L_update_hold: | |
| 1309 | - | |
| 1310 | -#endif /* USE_MMX || RUN_TIME_MMX */ | |
| 1311 | - | |
| 1312 | - andl %ebx, %ebp | |
| 1313 | - movl %ebp, hold_state(state_r) | |
| 1314 | - | |
| 1315 | -#define last_r %ebx | |
| 1316 | - | |
| 1317 | - /* strm->avail_in = in < last ? 11 + (last - in) : 11 - (in - last) */ | |
| 1318 | - movl last(%esp), last_r | |
| 1319 | - cmpl in_r, last_r | |
| 1320 | - jbe .L_last_is_smaller /* if (in >= last) */ | |
| 1321 | - | |
| 1322 | - subl in_r, last_r /* last -= in */ | |
| 1323 | - addl $11, last_r /* last += 11 */ | |
| 1324 | - movl last_r, avail_in_strm(strm_r) | |
| 1325 | - jmp .L_fixup_out | |
| 1326 | -.L_last_is_smaller: | |
| 1327 | - subl last_r, in_r /* in -= last */ | |
| 1328 | - negl in_r /* in = -in */ | |
| 1329 | - addl $11, in_r /* in += 11 */ | |
| 1330 | - movl in_r, avail_in_strm(strm_r) | |
| 1331 | - | |
| 1332 | -#undef last_r | |
| 1333 | -#define end_r %ebx | |
| 1334 | - | |
| 1335 | -.L_fixup_out: | |
| 1336 | - /* strm->avail_out = out < end ? 257 + (end - out) : 257 - (out - end)*/ | |
| 1337 | - movl end(%esp), end_r | |
| 1338 | - cmpl out_r, end_r | |
| 1339 | - jbe .L_end_is_smaller /* if (out >= end) */ | |
| 1340 | - | |
| 1341 | - subl out_r, end_r /* end -= out */ | |
| 1342 | - addl $257, end_r /* end += 257 */ | |
| 1343 | - movl end_r, avail_out_strm(strm_r) | |
| 1344 | - jmp .L_done | |
| 1345 | -.L_end_is_smaller: | |
| 1346 | - subl end_r, out_r /* out -= end */ | |
| 1347 | - negl out_r /* out = -out */ | |
| 1348 | - addl $257, out_r /* out += 257 */ | |
| 1349 | - movl out_r, avail_out_strm(strm_r) | |
| 1350 | - | |
| 1351 | -#undef end_r | |
| 1352 | -#undef strm_r | |
| 1353 | -#undef state_r | |
| 1354 | - | |
| 1355 | -.L_done: | |
| 1356 | - addl $local_var_size, %esp | |
| 1357 | - popf | |
| 1358 | - popl %ebx | |
| 1359 | - popl %ebp | |
| 1360 | - popl %esi | |
| 1361 | - popl %edi | |
| 1362 | - ret | |
| 1363 | - | |
| 1364 | -#if defined( GAS_ELF ) | |
| 1365 | -/* elf info */ | |
| 1366 | -.type inflate_fast,@function | |
| 1367 | -.size inflate_fast,.-inflate_fast | |
| 1368 | -#endif |
| --- a/compat/zlib/contrib/inflate86/inffast.S | |
| +++ b/compat/zlib/contrib/inflate86/inffast.S | |
| @@ -1,1368 +0,0 @@ | |
| 1 | /* |
| 2 | * inffast.S is a hand tuned assembler version of: |
| 3 | * |
| 4 | * inffast.c -- fast decoding |
| 5 | * Copyright (C) 1995-2003 Mark Adler |
| 6 | * For conditions of distribution and use, see copyright notice in zlib.h |
| 7 | * |
| 8 | * Copyright (C) 2003 Chris Anderson <[email protected]> |
| 9 | * Please use the copyright conditions above. |
| 10 | * |
| 11 | * This version (Jan-23-2003) of inflate_fast was coded and tested under |
| 12 | * GNU/Linux on a pentium 3, using the gcc-3.2 compiler distribution. On that |
| 13 | * machine, I found that gzip style archives decompressed about 20% faster than |
| 14 | * the gcc-3.2 -O3 -fomit-frame-pointer compiled version. Your results will |
| 15 | * depend on how large of a buffer is used for z_stream.next_in & next_out |
| 16 | * (8K-32K worked best for my 256K cpu cache) and how much overhead there is in |
| 17 | * stream processing I/O and crc32/addler32. In my case, this routine used |
| 18 | * 70% of the cpu time and crc32 used 20%. |
| 19 | * |
| 20 | * I am confident that this version will work in the general case, but I have |
| 21 | * not tested a wide variety of datasets or a wide variety of platforms. |
| 22 | * |
| 23 | * Jan-24-2003 -- Added -DUSE_MMX define for slightly faster inflating. |
| 24 | * It should be a runtime flag instead of compile time flag... |
| 25 | * |
| 26 | * Jan-26-2003 -- Added runtime check for MMX support with cpuid instruction. |
| 27 | * With -DUSE_MMX, only MMX code is compiled. With -DNO_MMX, only non-MMX code |
| 28 | * is compiled. Without either option, runtime detection is enabled. Runtime |
| 29 | * detection should work on all modern cpus and the recomended algorithm (flip |
| 30 | * ID bit on eflags and then use the cpuid instruction) is used in many |
| 31 | * multimedia applications. Tested under win2k with gcc-2.95 and gas-2.12 |
| 32 | * distributed with cygwin3. Compiling with gcc-2.95 -c inffast.S -o |
| 33 | * inffast.obj generates a COFF object which can then be linked with MSVC++ |
| 34 | * compiled code. Tested under FreeBSD 4.7 with gcc-2.95. |
| 35 | * |
| 36 | * Jan-28-2003 -- Tested Athlon XP... MMX mode is slower than no MMX (and |
| 37 | * slower than compiler generated code). Adjusted cpuid check to use the MMX |
| 38 | * code only for Pentiums < P4 until I have more data on the P4. Speed |
| 39 | * improvment is only about 15% on the Athlon when compared with code generated |
| 40 | * with MSVC++. Not sure yet, but I think the P4 will also be slower using the |
| 41 | * MMX mode because many of it's x86 ALU instructions execute in .5 cycles and |
| 42 | * have less latency than MMX ops. Added code to buffer the last 11 bytes of |
| 43 | * the input stream since the MMX code grabs bits in chunks of 32, which |
| 44 | * differs from the inffast.c algorithm. I don't think there would have been |
| 45 | * read overruns where a page boundary was crossed (a segfault), but there |
| 46 | * could have been overruns when next_in ends on unaligned memory (uninitialized |
| 47 | * memory read). |
| 48 | * |
| 49 | * Mar-13-2003 -- P4 MMX is slightly slower than P4 NO_MMX. I created a C |
| 50 | * version of the non-MMX code so that it doesn't depend on zstrm and zstate |
| 51 | * structure offsets which are hard coded in this file. This was last tested |
| 52 | * with zlib-1.2.0 which is currently in beta testing, newer versions of this |
| 53 | * and inffas86.c can be found at http://www.eetbeetee.com/zlib/ and |
| 54 | * http://www.charm.net/~christop/zlib/ |
| 55 | */ |
| 56 | |
| 57 | |
| 58 | /* |
| 59 | * if you have underscore linking problems (_inflate_fast undefined), try |
| 60 | * using -DGAS_COFF |
| 61 | */ |
| 62 | #if ! defined( GAS_COFF ) && ! defined( GAS_ELF ) |
| 63 | |
| 64 | #if defined( WIN32 ) || defined( __CYGWIN__ ) |
| 65 | #define GAS_COFF /* windows object format */ |
| 66 | #else |
| 67 | #define GAS_ELF |
| 68 | #endif |
| 69 | |
| 70 | #endif /* ! GAS_COFF && ! GAS_ELF */ |
| 71 | |
| 72 | |
| 73 | #if defined( GAS_COFF ) |
| 74 | |
| 75 | /* coff externals have underscores */ |
| 76 | #define inflate_fast _inflate_fast |
| 77 | #define inflate_fast_use_mmx _inflate_fast_use_mmx |
| 78 | |
| 79 | #endif /* GAS_COFF */ |
| 80 | |
| 81 | |
| 82 | .file "inffast.S" |
| 83 | |
| 84 | .globl inflate_fast |
| 85 | |
| 86 | .text |
| 87 | .align 4,0 |
| 88 | .L_invalid_literal_length_code_msg: |
| 89 | .string "invalid literal/length code" |
| 90 | |
| 91 | .align 4,0 |
| 92 | .L_invalid_distance_code_msg: |
| 93 | .string "invalid distance code" |
| 94 | |
| 95 | .align 4,0 |
| 96 | .L_invalid_distance_too_far_msg: |
| 97 | .string "invalid distance too far back" |
| 98 | |
| 99 | #if ! defined( NO_MMX ) |
| 100 | .align 4,0 |
| 101 | .L_mask: /* mask[N] = ( 1 << N ) - 1 */ |
| 102 | .long 0 |
| 103 | .long 1 |
| 104 | .long 3 |
| 105 | .long 7 |
| 106 | .long 15 |
| 107 | .long 31 |
| 108 | .long 63 |
| 109 | .long 127 |
| 110 | .long 255 |
| 111 | .long 511 |
| 112 | .long 1023 |
| 113 | .long 2047 |
| 114 | .long 4095 |
| 115 | .long 8191 |
| 116 | .long 16383 |
| 117 | .long 32767 |
| 118 | .long 65535 |
| 119 | .long 131071 |
| 120 | .long 262143 |
| 121 | .long 524287 |
| 122 | .long 1048575 |
| 123 | .long 2097151 |
| 124 | .long 4194303 |
| 125 | .long 8388607 |
| 126 | .long 16777215 |
| 127 | .long 33554431 |
| 128 | .long 67108863 |
| 129 | .long 134217727 |
| 130 | .long 268435455 |
| 131 | .long 536870911 |
| 132 | .long 1073741823 |
| 133 | .long 2147483647 |
| 134 | .long 4294967295 |
| 135 | #endif /* NO_MMX */ |
| 136 | |
| 137 | .text |
| 138 | |
| 139 | /* |
| 140 | * struct z_stream offsets, in zlib.h |
| 141 | */ |
| 142 | #define next_in_strm 0 /* strm->next_in */ |
| 143 | #define avail_in_strm 4 /* strm->avail_in */ |
| 144 | #define next_out_strm 12 /* strm->next_out */ |
| 145 | #define avail_out_strm 16 /* strm->avail_out */ |
| 146 | #define msg_strm 24 /* strm->msg */ |
| 147 | #define state_strm 28 /* strm->state */ |
| 148 | |
| 149 | /* |
| 150 | * struct inflate_state offsets, in inflate.h |
| 151 | */ |
| 152 | #define mode_state 0 /* state->mode */ |
| 153 | #define wsize_state 32 /* state->wsize */ |
| 154 | #define write_state 40 /* state->write */ |
| 155 | #define window_state 44 /* state->window */ |
| 156 | #define hold_state 48 /* state->hold */ |
| 157 | #define bits_state 52 /* state->bits */ |
| 158 | #define lencode_state 68 /* state->lencode */ |
| 159 | #define distcode_state 72 /* state->distcode */ |
| 160 | #define lenbits_state 76 /* state->lenbits */ |
| 161 | #define distbits_state 80 /* state->distbits */ |
| 162 | |
| 163 | /* |
| 164 | * inflate_fast's activation record |
| 165 | */ |
| 166 | #define local_var_size 64 /* how much local space for vars */ |
| 167 | #define strm_sp 88 /* first arg: z_stream * (local_var_size + 24) */ |
| 168 | #define start_sp 92 /* second arg: unsigned int (local_var_size + 28) */ |
| 169 | |
| 170 | /* |
| 171 | * offsets for local vars on stack |
| 172 | */ |
| 173 | #define out 60 /* unsigned char* */ |
| 174 | #define window 56 /* unsigned char* */ |
| 175 | #define wsize 52 /* unsigned int */ |
| 176 | #define write 48 /* unsigned int */ |
| 177 | #define in 44 /* unsigned char* */ |
| 178 | #define beg 40 /* unsigned char* */ |
| 179 | #define buf 28 /* char[ 12 ] */ |
| 180 | #define len 24 /* unsigned int */ |
| 181 | #define last 20 /* unsigned char* */ |
| 182 | #define end 16 /* unsigned char* */ |
| 183 | #define dcode 12 /* code* */ |
| 184 | #define lcode 8 /* code* */ |
| 185 | #define dmask 4 /* unsigned int */ |
| 186 | #define lmask 0 /* unsigned int */ |
| 187 | |
| 188 | /* |
| 189 | * typedef enum inflate_mode consts, in inflate.h |
| 190 | */ |
| 191 | #define INFLATE_MODE_TYPE 11 /* state->mode flags enum-ed in inflate.h */ |
| 192 | #define INFLATE_MODE_BAD 26 |
| 193 | |
| 194 | |
| 195 | #if ! defined( USE_MMX ) && ! defined( NO_MMX ) |
| 196 | |
| 197 | #define RUN_TIME_MMX |
| 198 | |
| 199 | #define CHECK_MMX 1 |
| 200 | #define DO_USE_MMX 2 |
| 201 | #define DONT_USE_MMX 3 |
| 202 | |
| 203 | .globl inflate_fast_use_mmx |
| 204 | |
| 205 | .data |
| 206 | |
| 207 | .align 4,0 |
| 208 | inflate_fast_use_mmx: /* integer flag for run time control 1=check,2=mmx,3=no */ |
| 209 | .long CHECK_MMX |
| 210 | |
| 211 | #if defined( GAS_ELF ) |
| 212 | /* elf info */ |
| 213 | .type inflate_fast_use_mmx,@object |
| 214 | .size inflate_fast_use_mmx,4 |
| 215 | #endif |
| 216 | |
| 217 | #endif /* RUN_TIME_MMX */ |
| 218 | |
| 219 | #if defined( GAS_COFF ) |
| 220 | /* coff info: scl 2 = extern, type 32 = function */ |
| 221 | .def inflate_fast; .scl 2; .type 32; .endef |
| 222 | #endif |
| 223 | |
| 224 | .text |
| 225 | |
| 226 | .align 32,0x90 |
| 227 | inflate_fast: |
| 228 | pushl %edi |
| 229 | pushl %esi |
| 230 | pushl %ebp |
| 231 | pushl %ebx |
| 232 | pushf /* save eflags (strm_sp, state_sp assumes this is 32 bits) */ |
| 233 | subl $local_var_size, %esp |
| 234 | cld |
| 235 | |
| 236 | #define strm_r %esi |
| 237 | #define state_r %edi |
| 238 | |
| 239 | movl strm_sp(%esp), strm_r |
| 240 | movl state_strm(strm_r), state_r |
| 241 | |
| 242 | /* in = strm->next_in; |
| 243 | * out = strm->next_out; |
| 244 | * last = in + strm->avail_in - 11; |
| 245 | * beg = out - (start - strm->avail_out); |
| 246 | * end = out + (strm->avail_out - 257); |
| 247 | */ |
| 248 | movl avail_in_strm(strm_r), %edx |
| 249 | movl next_in_strm(strm_r), %eax |
| 250 | |
| 251 | addl %eax, %edx /* avail_in += next_in */ |
| 252 | subl $11, %edx /* avail_in -= 11 */ |
| 253 | |
| 254 | movl %eax, in(%esp) |
| 255 | movl %edx, last(%esp) |
| 256 | |
| 257 | movl start_sp(%esp), %ebp |
| 258 | movl avail_out_strm(strm_r), %ecx |
| 259 | movl next_out_strm(strm_r), %ebx |
| 260 | |
| 261 | subl %ecx, %ebp /* start -= avail_out */ |
| 262 | negl %ebp /* start = -start */ |
| 263 | addl %ebx, %ebp /* start += next_out */ |
| 264 | |
| 265 | subl $257, %ecx /* avail_out -= 257 */ |
| 266 | addl %ebx, %ecx /* avail_out += out */ |
| 267 | |
| 268 | movl %ebx, out(%esp) |
| 269 | movl %ebp, beg(%esp) |
| 270 | movl %ecx, end(%esp) |
| 271 | |
| 272 | /* wsize = state->wsize; |
| 273 | * write = state->write; |
| 274 | * window = state->window; |
| 275 | * hold = state->hold; |
| 276 | * bits = state->bits; |
| 277 | * lcode = state->lencode; |
| 278 | * dcode = state->distcode; |
| 279 | * lmask = ( 1 << state->lenbits ) - 1; |
| 280 | * dmask = ( 1 << state->distbits ) - 1; |
| 281 | */ |
| 282 | |
| 283 | movl lencode_state(state_r), %eax |
| 284 | movl distcode_state(state_r), %ecx |
| 285 | |
| 286 | movl %eax, lcode(%esp) |
| 287 | movl %ecx, dcode(%esp) |
| 288 | |
| 289 | movl $1, %eax |
| 290 | movl lenbits_state(state_r), %ecx |
| 291 | shll %cl, %eax |
| 292 | decl %eax |
| 293 | movl %eax, lmask(%esp) |
| 294 | |
| 295 | movl $1, %eax |
| 296 | movl distbits_state(state_r), %ecx |
| 297 | shll %cl, %eax |
| 298 | decl %eax |
| 299 | movl %eax, dmask(%esp) |
| 300 | |
| 301 | movl wsize_state(state_r), %eax |
| 302 | movl write_state(state_r), %ecx |
| 303 | movl window_state(state_r), %edx |
| 304 | |
| 305 | movl %eax, wsize(%esp) |
| 306 | movl %ecx, write(%esp) |
| 307 | movl %edx, window(%esp) |
| 308 | |
| 309 | movl hold_state(state_r), %ebp |
| 310 | movl bits_state(state_r), %ebx |
| 311 | |
| 312 | #undef strm_r |
| 313 | #undef state_r |
| 314 | |
| 315 | #define in_r %esi |
| 316 | #define from_r %esi |
| 317 | #define out_r %edi |
| 318 | |
| 319 | movl in(%esp), in_r |
| 320 | movl last(%esp), %ecx |
| 321 | cmpl in_r, %ecx |
| 322 | ja .L_align_long /* if in < last */ |
| 323 | |
| 324 | addl $11, %ecx /* ecx = &in[ avail_in ] */ |
| 325 | subl in_r, %ecx /* ecx = avail_in */ |
| 326 | movl $12, %eax |
| 327 | subl %ecx, %eax /* eax = 12 - avail_in */ |
| 328 | leal buf(%esp), %edi |
| 329 | rep movsb /* memcpy( buf, in, avail_in ) */ |
| 330 | movl %eax, %ecx |
| 331 | xorl %eax, %eax |
| 332 | rep stosb /* memset( &buf[ avail_in ], 0, 12 - avail_in ) */ |
| 333 | leal buf(%esp), in_r /* in = buf */ |
| 334 | movl in_r, last(%esp) /* last = in, do just one iteration */ |
| 335 | jmp .L_is_aligned |
| 336 | |
| 337 | /* align in_r on long boundary */ |
| 338 | .L_align_long: |
| 339 | testl $3, in_r |
| 340 | jz .L_is_aligned |
| 341 | xorl %eax, %eax |
| 342 | movb (in_r), %al |
| 343 | incl in_r |
| 344 | movl %ebx, %ecx |
| 345 | addl $8, %ebx |
| 346 | shll %cl, %eax |
| 347 | orl %eax, %ebp |
| 348 | jmp .L_align_long |
| 349 | |
| 350 | .L_is_aligned: |
| 351 | movl out(%esp), out_r |
| 352 | |
| 353 | #if defined( NO_MMX ) |
| 354 | jmp .L_do_loop |
| 355 | #endif |
| 356 | |
| 357 | #if defined( USE_MMX ) |
| 358 | jmp .L_init_mmx |
| 359 | #endif |
| 360 | |
| 361 | /*** Runtime MMX check ***/ |
| 362 | |
| 363 | #if defined( RUN_TIME_MMX ) |
| 364 | .L_check_mmx: |
| 365 | cmpl $DO_USE_MMX, inflate_fast_use_mmx |
| 366 | je .L_init_mmx |
| 367 | ja .L_do_loop /* > 2 */ |
| 368 | |
| 369 | pushl %eax |
| 370 | pushl %ebx |
| 371 | pushl %ecx |
| 372 | pushl %edx |
| 373 | pushf |
| 374 | movl (%esp), %eax /* copy eflags to eax */ |
| 375 | xorl $0x200000, (%esp) /* try toggling ID bit of eflags (bit 21) |
| 376 | * to see if cpu supports cpuid... |
| 377 | * ID bit method not supported by NexGen but |
| 378 | * bios may load a cpuid instruction and |
| 379 | * cpuid may be disabled on Cyrix 5-6x86 */ |
| 380 | popf |
| 381 | pushf |
| 382 | popl %edx /* copy new eflags to edx */ |
| 383 | xorl %eax, %edx /* test if ID bit is flipped */ |
| 384 | jz .L_dont_use_mmx /* not flipped if zero */ |
| 385 | xorl %eax, %eax |
| 386 | cpuid |
| 387 | cmpl $0x756e6547, %ebx /* check for GenuineIntel in ebx,ecx,edx */ |
| 388 | jne .L_dont_use_mmx |
| 389 | cmpl $0x6c65746e, %ecx |
| 390 | jne .L_dont_use_mmx |
| 391 | cmpl $0x49656e69, %edx |
| 392 | jne .L_dont_use_mmx |
| 393 | movl $1, %eax |
| 394 | cpuid /* get cpu features */ |
| 395 | shrl $8, %eax |
| 396 | andl $15, %eax |
| 397 | cmpl $6, %eax /* check for Pentium family, is 0xf for P4 */ |
| 398 | jne .L_dont_use_mmx |
| 399 | testl $0x800000, %edx /* test if MMX feature is set (bit 23) */ |
| 400 | jnz .L_use_mmx |
| 401 | jmp .L_dont_use_mmx |
| 402 | .L_use_mmx: |
| 403 | movl $DO_USE_MMX, inflate_fast_use_mmx |
| 404 | jmp .L_check_mmx_pop |
| 405 | .L_dont_use_mmx: |
| 406 | movl $DONT_USE_MMX, inflate_fast_use_mmx |
| 407 | .L_check_mmx_pop: |
| 408 | popl %edx |
| 409 | popl %ecx |
| 410 | popl %ebx |
| 411 | popl %eax |
| 412 | jmp .L_check_mmx |
| 413 | #endif |
| 414 | |
| 415 | |
| 416 | /*** Non-MMX code ***/ |
| 417 | |
| 418 | #if defined ( NO_MMX ) || defined( RUN_TIME_MMX ) |
| 419 | |
| 420 | #define hold_r %ebp |
| 421 | #define bits_r %bl |
| 422 | #define bitslong_r %ebx |
| 423 | |
| 424 | .align 32,0x90 |
| 425 | .L_while_test: |
| 426 | /* while (in < last && out < end) |
| 427 | */ |
| 428 | cmpl out_r, end(%esp) |
| 429 | jbe .L_break_loop /* if (out >= end) */ |
| 430 | |
| 431 | cmpl in_r, last(%esp) |
| 432 | jbe .L_break_loop |
| 433 | |
| 434 | .L_do_loop: |
| 435 | /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out |
| 436 | * |
| 437 | * do { |
| 438 | * if (bits < 15) { |
| 439 | * hold |= *((unsigned short *)in)++ << bits; |
| 440 | * bits += 16 |
| 441 | * } |
| 442 | * this = lcode[hold & lmask] |
| 443 | */ |
| 444 | cmpb $15, bits_r |
| 445 | ja .L_get_length_code /* if (15 < bits) */ |
| 446 | |
| 447 | xorl %eax, %eax |
| 448 | lodsw /* al = *(ushort *)in++ */ |
| 449 | movb bits_r, %cl /* cl = bits, needs it for shifting */ |
| 450 | addb $16, bits_r /* bits += 16 */ |
| 451 | shll %cl, %eax |
| 452 | orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ |
| 453 | |
| 454 | .L_get_length_code: |
| 455 | movl lmask(%esp), %edx /* edx = lmask */ |
| 456 | movl lcode(%esp), %ecx /* ecx = lcode */ |
| 457 | andl hold_r, %edx /* edx &= hold */ |
| 458 | movl (%ecx,%edx,4), %eax /* eax = lcode[hold & lmask] */ |
| 459 | |
| 460 | .L_dolen: |
| 461 | /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out |
| 462 | * |
| 463 | * dolen: |
| 464 | * bits -= this.bits; |
| 465 | * hold >>= this.bits |
| 466 | */ |
| 467 | movb %ah, %cl /* cl = this.bits */ |
| 468 | subb %ah, bits_r /* bits -= this.bits */ |
| 469 | shrl %cl, hold_r /* hold >>= this.bits */ |
| 470 | |
| 471 | /* check if op is a literal |
| 472 | * if (op == 0) { |
| 473 | * PUP(out) = this.val; |
| 474 | * } |
| 475 | */ |
| 476 | testb %al, %al |
| 477 | jnz .L_test_for_length_base /* if (op != 0) 45.7% */ |
| 478 | |
| 479 | shrl $16, %eax /* output this.val char */ |
| 480 | stosb |
| 481 | jmp .L_while_test |
| 482 | |
| 483 | .L_test_for_length_base: |
| 484 | /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out, %edx = len |
| 485 | * |
| 486 | * else if (op & 16) { |
| 487 | * len = this.val |
| 488 | * op &= 15 |
| 489 | * if (op) { |
| 490 | * if (op > bits) { |
| 491 | * hold |= *((unsigned short *)in)++ << bits; |
| 492 | * bits += 16 |
| 493 | * } |
| 494 | * len += hold & mask[op]; |
| 495 | * bits -= op; |
| 496 | * hold >>= op; |
| 497 | * } |
| 498 | */ |
| 499 | #define len_r %edx |
| 500 | movl %eax, len_r /* len = this */ |
| 501 | shrl $16, len_r /* len = this.val */ |
| 502 | movb %al, %cl |
| 503 | |
| 504 | testb $16, %al |
| 505 | jz .L_test_for_second_level_length /* if ((op & 16) == 0) 8% */ |
| 506 | andb $15, %cl /* op &= 15 */ |
| 507 | jz .L_save_len /* if (!op) */ |
| 508 | cmpb %cl, bits_r |
| 509 | jae .L_add_bits_to_len /* if (op <= bits) */ |
| 510 | |
| 511 | movb %cl, %ch /* stash op in ch, freeing cl */ |
| 512 | xorl %eax, %eax |
| 513 | lodsw /* al = *(ushort *)in++ */ |
| 514 | movb bits_r, %cl /* cl = bits, needs it for shifting */ |
| 515 | addb $16, bits_r /* bits += 16 */ |
| 516 | shll %cl, %eax |
| 517 | orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ |
| 518 | movb %ch, %cl /* move op back to ecx */ |
| 519 | |
| 520 | .L_add_bits_to_len: |
| 521 | movl $1, %eax |
| 522 | shll %cl, %eax |
| 523 | decl %eax |
| 524 | subb %cl, bits_r |
| 525 | andl hold_r, %eax /* eax &= hold */ |
| 526 | shrl %cl, hold_r |
| 527 | addl %eax, len_r /* len += hold & mask[op] */ |
| 528 | |
| 529 | .L_save_len: |
| 530 | movl len_r, len(%esp) /* save len */ |
| 531 | #undef len_r |
| 532 | |
| 533 | .L_decode_distance: |
| 534 | /* regs: %esi = in, %ebp = hold, %bl = bits, %edi = out, %edx = dist |
| 535 | * |
| 536 | * if (bits < 15) { |
| 537 | * hold |= *((unsigned short *)in)++ << bits; |
| 538 | * bits += 16 |
| 539 | * } |
| 540 | * this = dcode[hold & dmask]; |
| 541 | * dodist: |
| 542 | * bits -= this.bits; |
| 543 | * hold >>= this.bits; |
| 544 | * op = this.op; |
| 545 | */ |
| 546 | |
| 547 | cmpb $15, bits_r |
| 548 | ja .L_get_distance_code /* if (15 < bits) */ |
| 549 | |
| 550 | xorl %eax, %eax |
| 551 | lodsw /* al = *(ushort *)in++ */ |
| 552 | movb bits_r, %cl /* cl = bits, needs it for shifting */ |
| 553 | addb $16, bits_r /* bits += 16 */ |
| 554 | shll %cl, %eax |
| 555 | orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ |
| 556 | |
| 557 | .L_get_distance_code: |
| 558 | movl dmask(%esp), %edx /* edx = dmask */ |
| 559 | movl dcode(%esp), %ecx /* ecx = dcode */ |
| 560 | andl hold_r, %edx /* edx &= hold */ |
| 561 | movl (%ecx,%edx,4), %eax /* eax = dcode[hold & dmask] */ |
| 562 | |
| 563 | #define dist_r %edx |
| 564 | .L_dodist: |
| 565 | movl %eax, dist_r /* dist = this */ |
| 566 | shrl $16, dist_r /* dist = this.val */ |
| 567 | movb %ah, %cl |
| 568 | subb %ah, bits_r /* bits -= this.bits */ |
| 569 | shrl %cl, hold_r /* hold >>= this.bits */ |
| 570 | |
| 571 | /* if (op & 16) { |
| 572 | * dist = this.val |
| 573 | * op &= 15 |
| 574 | * if (op > bits) { |
| 575 | * hold |= *((unsigned short *)in)++ << bits; |
| 576 | * bits += 16 |
| 577 | * } |
| 578 | * dist += hold & mask[op]; |
| 579 | * bits -= op; |
| 580 | * hold >>= op; |
| 581 | */ |
| 582 | movb %al, %cl /* cl = this.op */ |
| 583 | |
| 584 | testb $16, %al /* if ((op & 16) == 0) */ |
| 585 | jz .L_test_for_second_level_dist |
| 586 | andb $15, %cl /* op &= 15 */ |
| 587 | jz .L_check_dist_one |
| 588 | cmpb %cl, bits_r |
| 589 | jae .L_add_bits_to_dist /* if (op <= bits) 97.6% */ |
| 590 | |
| 591 | movb %cl, %ch /* stash op in ch, freeing cl */ |
| 592 | xorl %eax, %eax |
| 593 | lodsw /* al = *(ushort *)in++ */ |
| 594 | movb bits_r, %cl /* cl = bits, needs it for shifting */ |
| 595 | addb $16, bits_r /* bits += 16 */ |
| 596 | shll %cl, %eax |
| 597 | orl %eax, hold_r /* hold |= *((ushort *)in)++ << bits */ |
| 598 | movb %ch, %cl /* move op back to ecx */ |
| 599 | |
| 600 | .L_add_bits_to_dist: |
| 601 | movl $1, %eax |
| 602 | shll %cl, %eax |
| 603 | decl %eax /* (1 << op) - 1 */ |
| 604 | subb %cl, bits_r |
| 605 | andl hold_r, %eax /* eax &= hold */ |
| 606 | shrl %cl, hold_r |
| 607 | addl %eax, dist_r /* dist += hold & ((1 << op) - 1) */ |
| 608 | jmp .L_check_window |
| 609 | |
| 610 | .L_check_window: |
| 611 | /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist |
| 612 | * %ecx = nbytes |
| 613 | * |
| 614 | * nbytes = out - beg; |
| 615 | * if (dist <= nbytes) { |
| 616 | * from = out - dist; |
| 617 | * do { |
| 618 | * PUP(out) = PUP(from); |
| 619 | * } while (--len > 0) { |
| 620 | * } |
| 621 | */ |
| 622 | |
| 623 | movl in_r, in(%esp) /* save in so from can use it's reg */ |
| 624 | movl out_r, %eax |
| 625 | subl beg(%esp), %eax /* nbytes = out - beg */ |
| 626 | |
| 627 | cmpl dist_r, %eax |
| 628 | jb .L_clip_window /* if (dist > nbytes) 4.2% */ |
| 629 | |
| 630 | movl len(%esp), %ecx |
| 631 | movl out_r, from_r |
| 632 | subl dist_r, from_r /* from = out - dist */ |
| 633 | |
| 634 | subl $3, %ecx |
| 635 | movb (from_r), %al |
| 636 | movb %al, (out_r) |
| 637 | movb 1(from_r), %al |
| 638 | movb 2(from_r), %dl |
| 639 | addl $3, from_r |
| 640 | movb %al, 1(out_r) |
| 641 | movb %dl, 2(out_r) |
| 642 | addl $3, out_r |
| 643 | rep movsb |
| 644 | |
| 645 | movl in(%esp), in_r /* move in back to %esi, toss from */ |
| 646 | jmp .L_while_test |
| 647 | |
| 648 | .align 16,0x90 |
| 649 | .L_check_dist_one: |
| 650 | cmpl $1, dist_r |
| 651 | jne .L_check_window |
| 652 | cmpl out_r, beg(%esp) |
| 653 | je .L_check_window |
| 654 | |
| 655 | decl out_r |
| 656 | movl len(%esp), %ecx |
| 657 | movb (out_r), %al |
| 658 | subl $3, %ecx |
| 659 | |
| 660 | movb %al, 1(out_r) |
| 661 | movb %al, 2(out_r) |
| 662 | movb %al, 3(out_r) |
| 663 | addl $4, out_r |
| 664 | rep stosb |
| 665 | |
| 666 | jmp .L_while_test |
| 667 | |
| 668 | .align 16,0x90 |
| 669 | .L_test_for_second_level_length: |
| 670 | /* else if ((op & 64) == 0) { |
| 671 | * this = lcode[this.val + (hold & mask[op])]; |
| 672 | * } |
| 673 | */ |
| 674 | testb $64, %al |
| 675 | jnz .L_test_for_end_of_block /* if ((op & 64) != 0) */ |
| 676 | |
| 677 | movl $1, %eax |
| 678 | shll %cl, %eax |
| 679 | decl %eax |
| 680 | andl hold_r, %eax /* eax &= hold */ |
| 681 | addl %edx, %eax /* eax += this.val */ |
| 682 | movl lcode(%esp), %edx /* edx = lcode */ |
| 683 | movl (%edx,%eax,4), %eax /* eax = lcode[val + (hold&mask[op])] */ |
| 684 | jmp .L_dolen |
| 685 | |
| 686 | .align 16,0x90 |
| 687 | .L_test_for_second_level_dist: |
| 688 | /* else if ((op & 64) == 0) { |
| 689 | * this = dcode[this.val + (hold & mask[op])]; |
| 690 | * } |
| 691 | */ |
| 692 | testb $64, %al |
| 693 | jnz .L_invalid_distance_code /* if ((op & 64) != 0) */ |
| 694 | |
| 695 | movl $1, %eax |
| 696 | shll %cl, %eax |
| 697 | decl %eax |
| 698 | andl hold_r, %eax /* eax &= hold */ |
| 699 | addl %edx, %eax /* eax += this.val */ |
| 700 | movl dcode(%esp), %edx /* edx = dcode */ |
| 701 | movl (%edx,%eax,4), %eax /* eax = dcode[val + (hold&mask[op])] */ |
| 702 | jmp .L_dodist |
| 703 | |
| 704 | .align 16,0x90 |
| 705 | .L_clip_window: |
| 706 | /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist |
| 707 | * %ecx = nbytes |
| 708 | * |
| 709 | * else { |
| 710 | * if (dist > wsize) { |
| 711 | * invalid distance |
| 712 | * } |
| 713 | * from = window; |
| 714 | * nbytes = dist - nbytes; |
| 715 | * if (write == 0) { |
| 716 | * from += wsize - nbytes; |
| 717 | */ |
| 718 | #define nbytes_r %ecx |
| 719 | movl %eax, nbytes_r |
| 720 | movl wsize(%esp), %eax /* prepare for dist compare */ |
| 721 | negl nbytes_r /* nbytes = -nbytes */ |
| 722 | movl window(%esp), from_r /* from = window */ |
| 723 | |
| 724 | cmpl dist_r, %eax |
| 725 | jb .L_invalid_distance_too_far /* if (dist > wsize) */ |
| 726 | |
| 727 | addl dist_r, nbytes_r /* nbytes = dist - nbytes */ |
| 728 | cmpl $0, write(%esp) |
| 729 | jne .L_wrap_around_window /* if (write != 0) */ |
| 730 | |
| 731 | subl nbytes_r, %eax |
| 732 | addl %eax, from_r /* from += wsize - nbytes */ |
| 733 | |
| 734 | /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist |
| 735 | * %ecx = nbytes, %eax = len |
| 736 | * |
| 737 | * if (nbytes < len) { |
| 738 | * len -= nbytes; |
| 739 | * do { |
| 740 | * PUP(out) = PUP(from); |
| 741 | * } while (--nbytes); |
| 742 | * from = out - dist; |
| 743 | * } |
| 744 | * } |
| 745 | */ |
| 746 | #define len_r %eax |
| 747 | movl len(%esp), len_r |
| 748 | cmpl nbytes_r, len_r |
| 749 | jbe .L_do_copy1 /* if (nbytes >= len) */ |
| 750 | |
| 751 | subl nbytes_r, len_r /* len -= nbytes */ |
| 752 | rep movsb |
| 753 | movl out_r, from_r |
| 754 | subl dist_r, from_r /* from = out - dist */ |
| 755 | jmp .L_do_copy1 |
| 756 | |
| 757 | cmpl nbytes_r, len_r |
| 758 | jbe .L_do_copy1 /* if (nbytes >= len) */ |
| 759 | |
| 760 | subl nbytes_r, len_r /* len -= nbytes */ |
| 761 | rep movsb |
| 762 | movl out_r, from_r |
| 763 | subl dist_r, from_r /* from = out - dist */ |
| 764 | jmp .L_do_copy1 |
| 765 | |
| 766 | .L_wrap_around_window: |
| 767 | /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist |
| 768 | * %ecx = nbytes, %eax = write, %eax = len |
| 769 | * |
| 770 | * else if (write < nbytes) { |
| 771 | * from += wsize + write - nbytes; |
| 772 | * nbytes -= write; |
| 773 | * if (nbytes < len) { |
| 774 | * len -= nbytes; |
| 775 | * do { |
| 776 | * PUP(out) = PUP(from); |
| 777 | * } while (--nbytes); |
| 778 | * from = window; |
| 779 | * nbytes = write; |
| 780 | * if (nbytes < len) { |
| 781 | * len -= nbytes; |
| 782 | * do { |
| 783 | * PUP(out) = PUP(from); |
| 784 | * } while(--nbytes); |
| 785 | * from = out - dist; |
| 786 | * } |
| 787 | * } |
| 788 | * } |
| 789 | */ |
| 790 | #define write_r %eax |
| 791 | movl write(%esp), write_r |
| 792 | cmpl write_r, nbytes_r |
| 793 | jbe .L_contiguous_in_window /* if (write >= nbytes) */ |
| 794 | |
| 795 | addl wsize(%esp), from_r |
| 796 | addl write_r, from_r |
| 797 | subl nbytes_r, from_r /* from += wsize + write - nbytes */ |
| 798 | subl write_r, nbytes_r /* nbytes -= write */ |
| 799 | #undef write_r |
| 800 | |
| 801 | movl len(%esp), len_r |
| 802 | cmpl nbytes_r, len_r |
| 803 | jbe .L_do_copy1 /* if (nbytes >= len) */ |
| 804 | |
| 805 | subl nbytes_r, len_r /* len -= nbytes */ |
| 806 | rep movsb |
| 807 | movl window(%esp), from_r /* from = window */ |
| 808 | movl write(%esp), nbytes_r /* nbytes = write */ |
| 809 | cmpl nbytes_r, len_r |
| 810 | jbe .L_do_copy1 /* if (nbytes >= len) */ |
| 811 | |
| 812 | subl nbytes_r, len_r /* len -= nbytes */ |
| 813 | rep movsb |
| 814 | movl out_r, from_r |
| 815 | subl dist_r, from_r /* from = out - dist */ |
| 816 | jmp .L_do_copy1 |
| 817 | |
| 818 | .L_contiguous_in_window: |
| 819 | /* regs: %esi = from, %ebp = hold, %bl = bits, %edi = out, %edx = dist |
| 820 | * %ecx = nbytes, %eax = write, %eax = len |
| 821 | * |
| 822 | * else { |
| 823 | * from += write - nbytes; |
| 824 | * if (nbytes < len) { |
| 825 | * len -= nbytes; |
| 826 | * do { |
| 827 | * PUP(out) = PUP(from); |
| 828 | * } while (--nbytes); |
| 829 | * from = out - dist; |
| 830 | * } |
| 831 | * } |
| 832 | */ |
| 833 | #define write_r %eax |
| 834 | addl write_r, from_r |
| 835 | subl nbytes_r, from_r /* from += write - nbytes */ |
| 836 | #undef write_r |
| 837 | |
| 838 | movl len(%esp), len_r |
| 839 | cmpl nbytes_r, len_r |
| 840 | jbe .L_do_copy1 /* if (nbytes >= len) */ |
| 841 | |
| 842 | subl nbytes_r, len_r /* len -= nbytes */ |
| 843 | rep movsb |
| 844 | movl out_r, from_r |
| 845 | subl dist_r, from_r /* from = out - dist */ |
| 846 | |
| 847 | .L_do_copy1: |
| 848 | /* regs: %esi = from, %esi = in, %ebp = hold, %bl = bits, %edi = out |
| 849 | * %eax = len |
| 850 | * |
| 851 | * while (len > 0) { |
| 852 | * PUP(out) = PUP(from); |
| 853 | * len--; |
| 854 | * } |
| 855 | * } |
| 856 | * } while (in < last && out < end); |
| 857 | */ |
| 858 | #undef nbytes_r |
| 859 | #define in_r %esi |
| 860 | movl len_r, %ecx |
| 861 | rep movsb |
| 862 | |
| 863 | movl in(%esp), in_r /* move in back to %esi, toss from */ |
| 864 | jmp .L_while_test |
| 865 | |
| 866 | #undef len_r |
| 867 | #undef dist_r |
| 868 | |
| 869 | #endif /* NO_MMX || RUN_TIME_MMX */ |
| 870 | |
| 871 | |
| 872 | /*** MMX code ***/ |
| 873 | |
| 874 | #if defined( USE_MMX ) || defined( RUN_TIME_MMX ) |
| 875 | |
| 876 | .align 32,0x90 |
| 877 | .L_init_mmx: |
| 878 | emms |
| 879 | |
| 880 | #undef bits_r |
| 881 | #undef bitslong_r |
| 882 | #define bitslong_r %ebp |
| 883 | #define hold_mm %mm0 |
| 884 | movd %ebp, hold_mm |
| 885 | movl %ebx, bitslong_r |
| 886 | |
| 887 | #define used_mm %mm1 |
| 888 | #define dmask2_mm %mm2 |
| 889 | #define lmask2_mm %mm3 |
| 890 | #define lmask_mm %mm4 |
| 891 | #define dmask_mm %mm5 |
| 892 | #define tmp_mm %mm6 |
| 893 | |
| 894 | movd lmask(%esp), lmask_mm |
| 895 | movq lmask_mm, lmask2_mm |
| 896 | movd dmask(%esp), dmask_mm |
| 897 | movq dmask_mm, dmask2_mm |
| 898 | pxor used_mm, used_mm |
| 899 | movl lcode(%esp), %ebx /* ebx = lcode */ |
| 900 | jmp .L_do_loop_mmx |
| 901 | |
| 902 | .align 32,0x90 |
| 903 | .L_while_test_mmx: |
| 904 | /* while (in < last && out < end) |
| 905 | */ |
| 906 | cmpl out_r, end(%esp) |
| 907 | jbe .L_break_loop /* if (out >= end) */ |
| 908 | |
| 909 | cmpl in_r, last(%esp) |
| 910 | jbe .L_break_loop |
| 911 | |
| 912 | .L_do_loop_mmx: |
| 913 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 914 | |
| 915 | cmpl $32, bitslong_r |
| 916 | ja .L_get_length_code_mmx /* if (32 < bits) */ |
| 917 | |
| 918 | movd bitslong_r, tmp_mm |
| 919 | movd (in_r), %mm7 |
| 920 | addl $4, in_r |
| 921 | psllq tmp_mm, %mm7 |
| 922 | addl $32, bitslong_r |
| 923 | por %mm7, hold_mm /* hold_mm |= *((uint *)in)++ << bits */ |
| 924 | |
| 925 | .L_get_length_code_mmx: |
| 926 | pand hold_mm, lmask_mm |
| 927 | movd lmask_mm, %eax |
| 928 | movq lmask2_mm, lmask_mm |
| 929 | movl (%ebx,%eax,4), %eax /* eax = lcode[hold & lmask] */ |
| 930 | |
| 931 | .L_dolen_mmx: |
| 932 | movzbl %ah, %ecx /* ecx = this.bits */ |
| 933 | movd %ecx, used_mm |
| 934 | subl %ecx, bitslong_r /* bits -= this.bits */ |
| 935 | |
| 936 | testb %al, %al |
| 937 | jnz .L_test_for_length_base_mmx /* if (op != 0) 45.7% */ |
| 938 | |
| 939 | shrl $16, %eax /* output this.val char */ |
| 940 | stosb |
| 941 | jmp .L_while_test_mmx |
| 942 | |
| 943 | .L_test_for_length_base_mmx: |
| 944 | #define len_r %edx |
| 945 | movl %eax, len_r /* len = this */ |
| 946 | shrl $16, len_r /* len = this.val */ |
| 947 | |
| 948 | testb $16, %al |
| 949 | jz .L_test_for_second_level_length_mmx /* if ((op & 16) == 0) 8% */ |
| 950 | andl $15, %eax /* op &= 15 */ |
| 951 | jz .L_decode_distance_mmx /* if (!op) */ |
| 952 | |
| 953 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 954 | movd %eax, used_mm |
| 955 | movd hold_mm, %ecx |
| 956 | subl %eax, bitslong_r |
| 957 | andl .L_mask(,%eax,4), %ecx |
| 958 | addl %ecx, len_r /* len += hold & mask[op] */ |
| 959 | |
| 960 | .L_decode_distance_mmx: |
| 961 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 962 | |
| 963 | cmpl $32, bitslong_r |
| 964 | ja .L_get_dist_code_mmx /* if (32 < bits) */ |
| 965 | |
| 966 | movd bitslong_r, tmp_mm |
| 967 | movd (in_r), %mm7 |
| 968 | addl $4, in_r |
| 969 | psllq tmp_mm, %mm7 |
| 970 | addl $32, bitslong_r |
| 971 | por %mm7, hold_mm /* hold_mm |= *((uint *)in)++ << bits */ |
| 972 | |
| 973 | .L_get_dist_code_mmx: |
| 974 | movl dcode(%esp), %ebx /* ebx = dcode */ |
| 975 | pand hold_mm, dmask_mm |
| 976 | movd dmask_mm, %eax |
| 977 | movq dmask2_mm, dmask_mm |
| 978 | movl (%ebx,%eax,4), %eax /* eax = dcode[hold & lmask] */ |
| 979 | |
| 980 | .L_dodist_mmx: |
| 981 | #define dist_r %ebx |
| 982 | movzbl %ah, %ecx /* ecx = this.bits */ |
| 983 | movl %eax, dist_r |
| 984 | shrl $16, dist_r /* dist = this.val */ |
| 985 | subl %ecx, bitslong_r /* bits -= this.bits */ |
| 986 | movd %ecx, used_mm |
| 987 | |
| 988 | testb $16, %al /* if ((op & 16) == 0) */ |
| 989 | jz .L_test_for_second_level_dist_mmx |
| 990 | andl $15, %eax /* op &= 15 */ |
| 991 | jz .L_check_dist_one_mmx |
| 992 | |
| 993 | .L_add_bits_to_dist_mmx: |
| 994 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 995 | movd %eax, used_mm /* save bit length of current op */ |
| 996 | movd hold_mm, %ecx /* get the next bits on input stream */ |
| 997 | subl %eax, bitslong_r /* bits -= op bits */ |
| 998 | andl .L_mask(,%eax,4), %ecx /* ecx = hold & mask[op] */ |
| 999 | addl %ecx, dist_r /* dist += hold & mask[op] */ |
| 1000 | |
| 1001 | .L_check_window_mmx: |
| 1002 | movl in_r, in(%esp) /* save in so from can use it's reg */ |
| 1003 | movl out_r, %eax |
| 1004 | subl beg(%esp), %eax /* nbytes = out - beg */ |
| 1005 | |
| 1006 | cmpl dist_r, %eax |
| 1007 | jb .L_clip_window_mmx /* if (dist > nbytes) 4.2% */ |
| 1008 | |
| 1009 | movl len_r, %ecx |
| 1010 | movl out_r, from_r |
| 1011 | subl dist_r, from_r /* from = out - dist */ |
| 1012 | |
| 1013 | subl $3, %ecx |
| 1014 | movb (from_r), %al |
| 1015 | movb %al, (out_r) |
| 1016 | movb 1(from_r), %al |
| 1017 | movb 2(from_r), %dl |
| 1018 | addl $3, from_r |
| 1019 | movb %al, 1(out_r) |
| 1020 | movb %dl, 2(out_r) |
| 1021 | addl $3, out_r |
| 1022 | rep movsb |
| 1023 | |
| 1024 | movl in(%esp), in_r /* move in back to %esi, toss from */ |
| 1025 | movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */ |
| 1026 | jmp .L_while_test_mmx |
| 1027 | |
| 1028 | .align 16,0x90 |
| 1029 | .L_check_dist_one_mmx: |
| 1030 | cmpl $1, dist_r |
| 1031 | jne .L_check_window_mmx |
| 1032 | cmpl out_r, beg(%esp) |
| 1033 | je .L_check_window_mmx |
| 1034 | |
| 1035 | decl out_r |
| 1036 | movl len_r, %ecx |
| 1037 | movb (out_r), %al |
| 1038 | subl $3, %ecx |
| 1039 | |
| 1040 | movb %al, 1(out_r) |
| 1041 | movb %al, 2(out_r) |
| 1042 | movb %al, 3(out_r) |
| 1043 | addl $4, out_r |
| 1044 | rep stosb |
| 1045 | |
| 1046 | movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */ |
| 1047 | jmp .L_while_test_mmx |
| 1048 | |
| 1049 | .align 16,0x90 |
| 1050 | .L_test_for_second_level_length_mmx: |
| 1051 | testb $64, %al |
| 1052 | jnz .L_test_for_end_of_block /* if ((op & 64) != 0) */ |
| 1053 | |
| 1054 | andl $15, %eax |
| 1055 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 1056 | movd hold_mm, %ecx |
| 1057 | andl .L_mask(,%eax,4), %ecx |
| 1058 | addl len_r, %ecx |
| 1059 | movl (%ebx,%ecx,4), %eax /* eax = lcode[hold & lmask] */ |
| 1060 | jmp .L_dolen_mmx |
| 1061 | |
| 1062 | .align 16,0x90 |
| 1063 | .L_test_for_second_level_dist_mmx: |
| 1064 | testb $64, %al |
| 1065 | jnz .L_invalid_distance_code /* if ((op & 64) != 0) */ |
| 1066 | |
| 1067 | andl $15, %eax |
| 1068 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 1069 | movd hold_mm, %ecx |
| 1070 | andl .L_mask(,%eax,4), %ecx |
| 1071 | movl dcode(%esp), %eax /* ecx = dcode */ |
| 1072 | addl dist_r, %ecx |
| 1073 | movl (%eax,%ecx,4), %eax /* eax = lcode[hold & lmask] */ |
| 1074 | jmp .L_dodist_mmx |
| 1075 | |
| 1076 | .align 16,0x90 |
| 1077 | .L_clip_window_mmx: |
| 1078 | #define nbytes_r %ecx |
| 1079 | movl %eax, nbytes_r |
| 1080 | movl wsize(%esp), %eax /* prepare for dist compare */ |
| 1081 | negl nbytes_r /* nbytes = -nbytes */ |
| 1082 | movl window(%esp), from_r /* from = window */ |
| 1083 | |
| 1084 | cmpl dist_r, %eax |
| 1085 | jb .L_invalid_distance_too_far /* if (dist > wsize) */ |
| 1086 | |
| 1087 | addl dist_r, nbytes_r /* nbytes = dist - nbytes */ |
| 1088 | cmpl $0, write(%esp) |
| 1089 | jne .L_wrap_around_window_mmx /* if (write != 0) */ |
| 1090 | |
| 1091 | subl nbytes_r, %eax |
| 1092 | addl %eax, from_r /* from += wsize - nbytes */ |
| 1093 | |
| 1094 | cmpl nbytes_r, len_r |
| 1095 | jbe .L_do_copy1_mmx /* if (nbytes >= len) */ |
| 1096 | |
| 1097 | subl nbytes_r, len_r /* len -= nbytes */ |
| 1098 | rep movsb |
| 1099 | movl out_r, from_r |
| 1100 | subl dist_r, from_r /* from = out - dist */ |
| 1101 | jmp .L_do_copy1_mmx |
| 1102 | |
| 1103 | cmpl nbytes_r, len_r |
| 1104 | jbe .L_do_copy1_mmx /* if (nbytes >= len) */ |
| 1105 | |
| 1106 | subl nbytes_r, len_r /* len -= nbytes */ |
| 1107 | rep movsb |
| 1108 | movl out_r, from_r |
| 1109 | subl dist_r, from_r /* from = out - dist */ |
| 1110 | jmp .L_do_copy1_mmx |
| 1111 | |
| 1112 | .L_wrap_around_window_mmx: |
| 1113 | #define write_r %eax |
| 1114 | movl write(%esp), write_r |
| 1115 | cmpl write_r, nbytes_r |
| 1116 | jbe .L_contiguous_in_window_mmx /* if (write >= nbytes) */ |
| 1117 | |
| 1118 | addl wsize(%esp), from_r |
| 1119 | addl write_r, from_r |
| 1120 | subl nbytes_r, from_r /* from += wsize + write - nbytes */ |
| 1121 | subl write_r, nbytes_r /* nbytes -= write */ |
| 1122 | #undef write_r |
| 1123 | |
| 1124 | cmpl nbytes_r, len_r |
| 1125 | jbe .L_do_copy1_mmx /* if (nbytes >= len) */ |
| 1126 | |
| 1127 | subl nbytes_r, len_r /* len -= nbytes */ |
| 1128 | rep movsb |
| 1129 | movl window(%esp), from_r /* from = window */ |
| 1130 | movl write(%esp), nbytes_r /* nbytes = write */ |
| 1131 | cmpl nbytes_r, len_r |
| 1132 | jbe .L_do_copy1_mmx /* if (nbytes >= len) */ |
| 1133 | |
| 1134 | subl nbytes_r, len_r /* len -= nbytes */ |
| 1135 | rep movsb |
| 1136 | movl out_r, from_r |
| 1137 | subl dist_r, from_r /* from = out - dist */ |
| 1138 | jmp .L_do_copy1_mmx |
| 1139 | |
| 1140 | .L_contiguous_in_window_mmx: |
| 1141 | #define write_r %eax |
| 1142 | addl write_r, from_r |
| 1143 | subl nbytes_r, from_r /* from += write - nbytes */ |
| 1144 | #undef write_r |
| 1145 | |
| 1146 | cmpl nbytes_r, len_r |
| 1147 | jbe .L_do_copy1_mmx /* if (nbytes >= len) */ |
| 1148 | |
| 1149 | subl nbytes_r, len_r /* len -= nbytes */ |
| 1150 | rep movsb |
| 1151 | movl out_r, from_r |
| 1152 | subl dist_r, from_r /* from = out - dist */ |
| 1153 | |
| 1154 | .L_do_copy1_mmx: |
| 1155 | #undef nbytes_r |
| 1156 | #define in_r %esi |
| 1157 | movl len_r, %ecx |
| 1158 | rep movsb |
| 1159 | |
| 1160 | movl in(%esp), in_r /* move in back to %esi, toss from */ |
| 1161 | movl lcode(%esp), %ebx /* move lcode back to %ebx, toss dist */ |
| 1162 | jmp .L_while_test_mmx |
| 1163 | |
| 1164 | #undef hold_r |
| 1165 | #undef bitslong_r |
| 1166 | |
| 1167 | #endif /* USE_MMX || RUN_TIME_MMX */ |
| 1168 | |
| 1169 | |
| 1170 | /*** USE_MMX, NO_MMX, and RUNTIME_MMX from here on ***/ |
| 1171 | |
| 1172 | .L_invalid_distance_code: |
| 1173 | /* else { |
| 1174 | * strm->msg = "invalid distance code"; |
| 1175 | * state->mode = BAD; |
| 1176 | * } |
| 1177 | */ |
| 1178 | movl $.L_invalid_distance_code_msg, %ecx |
| 1179 | movl $INFLATE_MODE_BAD, %edx |
| 1180 | jmp .L_update_stream_state |
| 1181 | |
| 1182 | .L_test_for_end_of_block: |
| 1183 | /* else if (op & 32) { |
| 1184 | * state->mode = TYPE; |
| 1185 | * break; |
| 1186 | * } |
| 1187 | */ |
| 1188 | testb $32, %al |
| 1189 | jz .L_invalid_literal_length_code /* if ((op & 32) == 0) */ |
| 1190 | |
| 1191 | movl $0, %ecx |
| 1192 | movl $INFLATE_MODE_TYPE, %edx |
| 1193 | jmp .L_update_stream_state |
| 1194 | |
| 1195 | .L_invalid_literal_length_code: |
| 1196 | /* else { |
| 1197 | * strm->msg = "invalid literal/length code"; |
| 1198 | * state->mode = BAD; |
| 1199 | * } |
| 1200 | */ |
| 1201 | movl $.L_invalid_literal_length_code_msg, %ecx |
| 1202 | movl $INFLATE_MODE_BAD, %edx |
| 1203 | jmp .L_update_stream_state |
| 1204 | |
| 1205 | .L_invalid_distance_too_far: |
| 1206 | /* strm->msg = "invalid distance too far back"; |
| 1207 | * state->mode = BAD; |
| 1208 | */ |
| 1209 | movl in(%esp), in_r /* from_r has in's reg, put in back */ |
| 1210 | movl $.L_invalid_distance_too_far_msg, %ecx |
| 1211 | movl $INFLATE_MODE_BAD, %edx |
| 1212 | jmp .L_update_stream_state |
| 1213 | |
| 1214 | .L_update_stream_state: |
| 1215 | /* set strm->msg = %ecx, strm->state->mode = %edx */ |
| 1216 | movl strm_sp(%esp), %eax |
| 1217 | testl %ecx, %ecx /* if (msg != NULL) */ |
| 1218 | jz .L_skip_msg |
| 1219 | movl %ecx, msg_strm(%eax) /* strm->msg = msg */ |
| 1220 | .L_skip_msg: |
| 1221 | movl state_strm(%eax), %eax /* state = strm->state */ |
| 1222 | movl %edx, mode_state(%eax) /* state->mode = edx (BAD | TYPE) */ |
| 1223 | jmp .L_break_loop |
| 1224 | |
| 1225 | .align 32,0x90 |
| 1226 | .L_break_loop: |
| 1227 | |
| 1228 | /* |
| 1229 | * Regs: |
| 1230 | * |
| 1231 | * bits = %ebp when mmx, and in %ebx when non-mmx |
| 1232 | * hold = %hold_mm when mmx, and in %ebp when non-mmx |
| 1233 | * in = %esi |
| 1234 | * out = %edi |
| 1235 | */ |
| 1236 | |
| 1237 | #if defined( USE_MMX ) || defined( RUN_TIME_MMX ) |
| 1238 | |
| 1239 | #if defined( RUN_TIME_MMX ) |
| 1240 | |
| 1241 | cmpl $DO_USE_MMX, inflate_fast_use_mmx |
| 1242 | jne .L_update_next_in |
| 1243 | |
| 1244 | #endif /* RUN_TIME_MMX */ |
| 1245 | |
| 1246 | movl %ebp, %ebx |
| 1247 | |
| 1248 | .L_update_next_in: |
| 1249 | |
| 1250 | #endif |
| 1251 | |
| 1252 | #define strm_r %eax |
| 1253 | #define state_r %edx |
| 1254 | |
| 1255 | /* len = bits >> 3; |
| 1256 | * in -= len; |
| 1257 | * bits -= len << 3; |
| 1258 | * hold &= (1U << bits) - 1; |
| 1259 | * state->hold = hold; |
| 1260 | * state->bits = bits; |
| 1261 | * strm->next_in = in; |
| 1262 | * strm->next_out = out; |
| 1263 | */ |
| 1264 | movl strm_sp(%esp), strm_r |
| 1265 | movl %ebx, %ecx |
| 1266 | movl state_strm(strm_r), state_r |
| 1267 | shrl $3, %ecx |
| 1268 | subl %ecx, in_r |
| 1269 | shll $3, %ecx |
| 1270 | subl %ecx, %ebx |
| 1271 | movl out_r, next_out_strm(strm_r) |
| 1272 | movl %ebx, bits_state(state_r) |
| 1273 | movl %ebx, %ecx |
| 1274 | |
| 1275 | leal buf(%esp), %ebx |
| 1276 | cmpl %ebx, last(%esp) |
| 1277 | jne .L_buf_not_used /* if buf != last */ |
| 1278 | |
| 1279 | subl %ebx, in_r /* in -= buf */ |
| 1280 | movl next_in_strm(strm_r), %ebx |
| 1281 | movl %ebx, last(%esp) /* last = strm->next_in */ |
| 1282 | addl %ebx, in_r /* in += strm->next_in */ |
| 1283 | movl avail_in_strm(strm_r), %ebx |
| 1284 | subl $11, %ebx |
| 1285 | addl %ebx, last(%esp) /* last = &strm->next_in[ avail_in - 11 ] */ |
| 1286 | |
| 1287 | .L_buf_not_used: |
| 1288 | movl in_r, next_in_strm(strm_r) |
| 1289 | |
| 1290 | movl $1, %ebx |
| 1291 | shll %cl, %ebx |
| 1292 | decl %ebx |
| 1293 | |
| 1294 | #if defined( USE_MMX ) || defined( RUN_TIME_MMX ) |
| 1295 | |
| 1296 | #if defined( RUN_TIME_MMX ) |
| 1297 | |
| 1298 | cmpl $DO_USE_MMX, inflate_fast_use_mmx |
| 1299 | jne .L_update_hold |
| 1300 | |
| 1301 | #endif /* RUN_TIME_MMX */ |
| 1302 | |
| 1303 | psrlq used_mm, hold_mm /* hold_mm >>= last bit length */ |
| 1304 | movd hold_mm, %ebp |
| 1305 | |
| 1306 | emms |
| 1307 | |
| 1308 | .L_update_hold: |
| 1309 | |
| 1310 | #endif /* USE_MMX || RUN_TIME_MMX */ |
| 1311 | |
| 1312 | andl %ebx, %ebp |
| 1313 | movl %ebp, hold_state(state_r) |
| 1314 | |
| 1315 | #define last_r %ebx |
| 1316 | |
| 1317 | /* strm->avail_in = in < last ? 11 + (last - in) : 11 - (in - last) */ |
| 1318 | movl last(%esp), last_r |
| 1319 | cmpl in_r, last_r |
| 1320 | jbe .L_last_is_smaller /* if (in >= last) */ |
| 1321 | |
| 1322 | subl in_r, last_r /* last -= in */ |
| 1323 | addl $11, last_r /* last += 11 */ |
| 1324 | movl last_r, avail_in_strm(strm_r) |
| 1325 | jmp .L_fixup_out |
| 1326 | .L_last_is_smaller: |
| 1327 | subl last_r, in_r /* in -= last */ |
| 1328 | negl in_r /* in = -in */ |
| 1329 | addl $11, in_r /* in += 11 */ |
| 1330 | movl in_r, avail_in_strm(strm_r) |
| 1331 | |
| 1332 | #undef last_r |
| 1333 | #define end_r %ebx |
| 1334 | |
| 1335 | .L_fixup_out: |
| 1336 | /* strm->avail_out = out < end ? 257 + (end - out) : 257 - (out - end)*/ |
| 1337 | movl end(%esp), end_r |
| 1338 | cmpl out_r, end_r |
| 1339 | jbe .L_end_is_smaller /* if (out >= end) */ |
| 1340 | |
| 1341 | subl out_r, end_r /* end -= out */ |
| 1342 | addl $257, end_r /* end += 257 */ |
| 1343 | movl end_r, avail_out_strm(strm_r) |
| 1344 | jmp .L_done |
| 1345 | .L_end_is_smaller: |
| 1346 | subl end_r, out_r /* out -= end */ |
| 1347 | negl out_r /* out = -out */ |
| 1348 | addl $257, out_r /* out += 257 */ |
| 1349 | movl out_r, avail_out_strm(strm_r) |
| 1350 | |
| 1351 | #undef end_r |
| 1352 | #undef strm_r |
| 1353 | #undef state_r |
| 1354 | |
| 1355 | .L_done: |
| 1356 | addl $local_var_size, %esp |
| 1357 | popf |
| 1358 | popl %ebx |
| 1359 | popl %ebp |
| 1360 | popl %esi |
| 1361 | popl %edi |
| 1362 | ret |
| 1363 | |
| 1364 | #if defined( GAS_ELF ) |
| 1365 | /* elf info */ |
| 1366 | .type inflate_fast,@function |
| 1367 | .size inflate_fast,.-inflate_fast |
| 1368 | #endif |
| --- a/compat/zlib/contrib/inflate86/inffast.S | |
| +++ b/compat/zlib/contrib/inflate86/inffast.S | |
| @@ -1,1368 +0,0 @@ | |
D
compat/zlib/contrib/masmx64/bld_ml64.bat
-2
| --- a/compat/zlib/contrib/masmx64/bld_ml64.bat | ||
| +++ b/compat/zlib/contrib/masmx64/bld_ml64.bat | ||
| @@ -1,2 +0,0 @@ | ||
| 1 | -ml64.exe /Flinffasx64 /c /Zi inffasx64.asm | |
| 2 | -ml64.exe /Flgvmat64 /c /Zi gvmat64.asm |
| --- a/compat/zlib/contrib/masmx64/bld_ml64.bat | |
| +++ b/compat/zlib/contrib/masmx64/bld_ml64.bat | |
| @@ -1,2 +0,0 @@ | |
| 1 | ml64.exe /Flinffasx64 /c /Zi inffasx64.asm |
| 2 | ml64.exe /Flgvmat64 /c /Zi gvmat64.asm |
| --- a/compat/zlib/contrib/masmx64/bld_ml64.bat | |
| +++ b/compat/zlib/contrib/masmx64/bld_ml64.bat | |
| @@ -1,2 +0,0 @@ | |
D
compat/zlib/contrib/masmx64/gvmat64.asm
-553
| --- a/compat/zlib/contrib/masmx64/gvmat64.asm | ||
| +++ b/compat/zlib/contrib/masmx64/gvmat64.asm | ||
| @@ -1,553 +0,0 @@ | ||
| 1 | -;uInt longest_match_x64( | |
| 2 | -; deflate_state *s, | |
| 3 | -; IPos cur_match); /* current match */ | |
| 4 | - | |
| 5 | -; gvmat64.asm -- Asm portion of the optimized longest_match for 32 bits x86_64 | |
| 6 | -; (AMD64 on Athlon 64, Opteron, Phenom | |
| 7 | -; and Intel EM64T on Pentium 4 with EM64T, Pentium D, Core 2 Duo, Core I5/I7) | |
| 8 | -; Copyright (C) 1995-2010 Jean-loup Gailly, Brian Raiter and Gilles Vollant. | |
| 9 | -; | |
| 10 | -; File written by Gilles Vollant, by converting to assembly the longest_match | |
| 11 | -; from Jean-loup Gailly in deflate.c of zLib and infoZip zip. | |
| 12 | -; | |
| 13 | -; and by taking inspiration on asm686 with masm, optimised assembly code | |
| 14 | -; from Brian Raiter, written 1998 | |
| 15 | -; | |
| 16 | -; This software is provided 'as-is', without any express or implied | |
| 17 | -; warranty. In no event will the authors be held liable for any damages | |
| 18 | -; arising from the use of this software. | |
| 19 | -; | |
| 20 | -; Permission is granted to anyone to use this software for any purpose, | |
| 21 | -; including commercial applications, and to alter it and redistribute it | |
| 22 | -; freely, subject to the following restrictions: | |
| 23 | -; | |
| 24 | -; 1. The origin of this software must not be misrepresented; you must not | |
| 25 | -; claim that you wrote the original software. If you use this software | |
| 26 | -; in a product, an acknowledgment in the product documentation would be | |
| 27 | -; appreciated but is not required. | |
| 28 | -; 2. Altered source versions must be plainly marked as such, and must not be | |
| 29 | -; misrepresented as being the original software | |
| 30 | -; 3. This notice may not be removed or altered from any source distribution. | |
| 31 | -; | |
| 32 | -; | |
| 33 | -; | |
| 34 | -; http://www.zlib.net | |
| 35 | -; http://www.winimage.com/zLibDll | |
| 36 | -; http://www.muppetlabs.com/~breadbox/software/assembly.html | |
| 37 | -; | |
| 38 | -; to compile this file for infozip Zip, I use option: | |
| 39 | -; ml64.exe /Flgvmat64 /c /Zi /DINFOZIP gvmat64.asm | |
| 40 | -; | |
| 41 | -; to compile this file for zLib, I use option: | |
| 42 | -; ml64.exe /Flgvmat64 /c /Zi gvmat64.asm | |
| 43 | -; Be carrefull to adapt zlib1222add below to your version of zLib | |
| 44 | -; (if you use a version of zLib before 1.0.4 or after 1.2.2.2, change | |
| 45 | -; value of zlib1222add later) | |
| 46 | -; | |
| 47 | -; This file compile with Microsoft Macro Assembler (x64) for AMD64 | |
| 48 | -; | |
| 49 | -; ml64.exe is given with Visual Studio 2005/2008/2010 and Windows WDK | |
| 50 | -; | |
| 51 | -; (you can get Windows WDK with ml64 for AMD64 from | |
| 52 | -; http://www.microsoft.com/whdc/Devtools/wdk/default.mspx for low price) | |
| 53 | -; | |
| 54 | - | |
| 55 | - | |
| 56 | -;uInt longest_match(s, cur_match) | |
| 57 | -; deflate_state *s; | |
| 58 | -; IPos cur_match; /* current match */ | |
| 59 | -.code | |
| 60 | -longest_match PROC | |
| 61 | - | |
| 62 | - | |
| 63 | -;LocalVarsSize equ 88 | |
| 64 | - LocalVarsSize equ 72 | |
| 65 | - | |
| 66 | -; register used : rax,rbx,rcx,rdx,rsi,rdi,r8,r9,r10,r11,r12 | |
| 67 | -; free register : r14,r15 | |
| 68 | -; register can be saved : rsp | |
| 69 | - | |
| 70 | - chainlenwmask equ rsp + 8 - LocalVarsSize ; high word: current chain len | |
| 71 | - ; low word: s->wmask | |
| 72 | -;window equ rsp + xx - LocalVarsSize ; local copy of s->window ; stored in r10 | |
| 73 | -;windowbestlen equ rsp + xx - LocalVarsSize ; s->window + bestlen , use r10+r11 | |
| 74 | -;scanstart equ rsp + xx - LocalVarsSize ; first two bytes of string ; stored in r12w | |
| 75 | -;scanend equ rsp + xx - LocalVarsSize ; last two bytes of string use ebx | |
| 76 | -;scanalign equ rsp + xx - LocalVarsSize ; dword-misalignment of string r13 | |
| 77 | -;bestlen equ rsp + xx - LocalVarsSize ; size of best match so far -> r11d | |
| 78 | -;scan equ rsp + xx - LocalVarsSize ; ptr to string wanting match -> r9 | |
| 79 | -IFDEF INFOZIP | |
| 80 | -ELSE | |
| 81 | - nicematch equ (rsp + 16 - LocalVarsSize) ; a good enough match size | |
| 82 | -ENDIF | |
| 83 | - | |
| 84 | -save_rdi equ rsp + 24 - LocalVarsSize | |
| 85 | -save_rsi equ rsp + 32 - LocalVarsSize | |
| 86 | -save_rbx equ rsp + 40 - LocalVarsSize | |
| 87 | -save_rbp equ rsp + 48 - LocalVarsSize | |
| 88 | -save_r12 equ rsp + 56 - LocalVarsSize | |
| 89 | -save_r13 equ rsp + 64 - LocalVarsSize | |
| 90 | -;save_r14 equ rsp + 72 - LocalVarsSize | |
| 91 | -;save_r15 equ rsp + 80 - LocalVarsSize | |
| 92 | - | |
| 93 | - | |
| 94 | -; summary of register usage | |
| 95 | -; scanend ebx | |
| 96 | -; scanendw bx | |
| 97 | -; chainlenwmask edx | |
| 98 | -; curmatch rsi | |
| 99 | -; curmatchd esi | |
| 100 | -; windowbestlen r8 | |
| 101 | -; scanalign r9 | |
| 102 | -; scanalignd r9d | |
| 103 | -; window r10 | |
| 104 | -; bestlen r11 | |
| 105 | -; bestlend r11d | |
| 106 | -; scanstart r12d | |
| 107 | -; scanstartw r12w | |
| 108 | -; scan r13 | |
| 109 | -; nicematch r14d | |
| 110 | -; limit r15 | |
| 111 | -; limitd r15d | |
| 112 | -; prev rcx | |
| 113 | - | |
| 114 | -; all the +4 offsets are due to the addition of pending_buf_size (in zlib | |
| 115 | -; in the deflate_state structure since the asm code was first written | |
| 116 | -; (if you compile with zlib 1.0.4 or older, remove the +4). | |
| 117 | -; Note : these value are good with a 8 bytes boundary pack structure | |
| 118 | - | |
| 119 | - | |
| 120 | - MAX_MATCH equ 258 | |
| 121 | - MIN_MATCH equ 3 | |
| 122 | - MIN_LOOKAHEAD equ (MAX_MATCH+MIN_MATCH+1) | |
| 123 | - | |
| 124 | - | |
| 125 | -;;; Offsets for fields in the deflate_state structure. These numbers | |
| 126 | -;;; are calculated from the definition of deflate_state, with the | |
| 127 | -;;; assumption that the compiler will dword-align the fields. (Thus, | |
| 128 | -;;; changing the definition of deflate_state could easily cause this | |
| 129 | -;;; program to crash horribly, without so much as a warning at | |
| 130 | -;;; compile time. Sigh.) | |
| 131 | - | |
| 132 | -; all the +zlib1222add offsets are due to the addition of fields | |
| 133 | -; in zlib in the deflate_state structure since the asm code was first written | |
| 134 | -; (if you compile with zlib 1.0.4 or older, use "zlib1222add equ (-4)"). | |
| 135 | -; (if you compile with zlib between 1.0.5 and 1.2.2.1, use "zlib1222add equ 0"). | |
| 136 | -; if you compile with zlib 1.2.2.2 or later , use "zlib1222add equ 8"). | |
| 137 | - | |
| 138 | - | |
| 139 | -IFDEF INFOZIP | |
| 140 | - | |
| 141 | -_DATA SEGMENT | |
| 142 | -COMM window_size:DWORD | |
| 143 | -; WMask ; 7fff | |
| 144 | -COMM window:BYTE:010040H | |
| 145 | -COMM prev:WORD:08000H | |
| 146 | -; MatchLen : unused | |
| 147 | -; PrevMatch : unused | |
| 148 | -COMM strstart:DWORD | |
| 149 | -COMM match_start:DWORD | |
| 150 | -; Lookahead : ignore | |
| 151 | -COMM prev_length:DWORD ; PrevLen | |
| 152 | -COMM max_chain_length:DWORD | |
| 153 | -COMM good_match:DWORD | |
| 154 | -COMM nice_match:DWORD | |
| 155 | -prev_ad equ OFFSET prev | |
| 156 | -window_ad equ OFFSET window | |
| 157 | -nicematch equ nice_match | |
| 158 | -_DATA ENDS | |
| 159 | -WMask equ 07fffh | |
| 160 | - | |
| 161 | -ELSE | |
| 162 | - | |
| 163 | - IFNDEF zlib1222add | |
| 164 | - zlib1222add equ 8 | |
| 165 | - ENDIF | |
| 166 | -dsWSize equ 56+zlib1222add+(zlib1222add/2) | |
| 167 | -dsWMask equ 64+zlib1222add+(zlib1222add/2) | |
| 168 | -dsWindow equ 72+zlib1222add | |
| 169 | -dsPrev equ 88+zlib1222add | |
| 170 | -dsMatchLen equ 128+zlib1222add | |
| 171 | -dsPrevMatch equ 132+zlib1222add | |
| 172 | -dsStrStart equ 140+zlib1222add | |
| 173 | -dsMatchStart equ 144+zlib1222add | |
| 174 | -dsLookahead equ 148+zlib1222add | |
| 175 | -dsPrevLen equ 152+zlib1222add | |
| 176 | -dsMaxChainLen equ 156+zlib1222add | |
| 177 | -dsGoodMatch equ 172+zlib1222add | |
| 178 | -dsNiceMatch equ 176+zlib1222add | |
| 179 | - | |
| 180 | -window_size equ [ rcx + dsWSize] | |
| 181 | -WMask equ [ rcx + dsWMask] | |
| 182 | -window_ad equ [ rcx + dsWindow] | |
| 183 | -prev_ad equ [ rcx + dsPrev] | |
| 184 | -strstart equ [ rcx + dsStrStart] | |
| 185 | -match_start equ [ rcx + dsMatchStart] | |
| 186 | -Lookahead equ [ rcx + dsLookahead] ; 0ffffffffh on infozip | |
| 187 | -prev_length equ [ rcx + dsPrevLen] | |
| 188 | -max_chain_length equ [ rcx + dsMaxChainLen] | |
| 189 | -good_match equ [ rcx + dsGoodMatch] | |
| 190 | -nice_match equ [ rcx + dsNiceMatch] | |
| 191 | -ENDIF | |
| 192 | - | |
| 193 | -; parameter 1 in r8(deflate state s), param 2 in rdx (cur match) | |
| 194 | - | |
| 195 | -; see http://weblogs.asp.net/oldnewthing/archive/2004/01/14/58579.aspx and | |
| 196 | -; http://msdn.microsoft.com/library/en-us/kmarch/hh/kmarch/64bitAMD_8e951dd2-ee77-4728-8702-55ce4b5dd24a.xml.asp | |
| 197 | -; | |
| 198 | -; All registers must be preserved across the call, except for | |
| 199 | -; rax, rcx, rdx, r8, r9, r10, and r11, which are scratch. | |
| 200 | - | |
| 201 | - | |
| 202 | - | |
| 203 | -;;; Save registers that the compiler may be using, and adjust esp to | |
| 204 | -;;; make room for our stack frame. | |
| 205 | - | |
| 206 | - | |
| 207 | -;;; Retrieve the function arguments. r8d will hold cur_match | |
| 208 | -;;; throughout the entire function. edx will hold the pointer to the | |
| 209 | -;;; deflate_state structure during the function's setup (before | |
| 210 | -;;; entering the main loop. | |
| 211 | - | |
| 212 | -; parameter 1 in rcx (deflate_state* s), param 2 in edx -> r8 (cur match) | |
| 213 | - | |
| 214 | -; this clear high 32 bits of r8, which can be garbage in both r8 and rdx | |
| 215 | - | |
| 216 | - mov [save_rdi],rdi | |
| 217 | - mov [save_rsi],rsi | |
| 218 | - mov [save_rbx],rbx | |
| 219 | - mov [save_rbp],rbp | |
| 220 | -IFDEF INFOZIP | |
| 221 | - mov r8d,ecx | |
| 222 | -ELSE | |
| 223 | - mov r8d,edx | |
| 224 | -ENDIF | |
| 225 | - mov [save_r12],r12 | |
| 226 | - mov [save_r13],r13 | |
| 227 | -; mov [save_r14],r14 | |
| 228 | -; mov [save_r15],r15 | |
| 229 | - | |
| 230 | - | |
| 231 | -;;; uInt wmask = s->w_mask; | |
| 232 | -;;; unsigned chain_length = s->max_chain_length; | |
| 233 | -;;; if (s->prev_length >= s->good_match) { | |
| 234 | -;;; chain_length >>= 2; | |
| 235 | -;;; } | |
| 236 | - | |
| 237 | - mov edi, prev_length | |
| 238 | - mov esi, good_match | |
| 239 | - mov eax, WMask | |
| 240 | - mov ebx, max_chain_length | |
| 241 | - cmp edi, esi | |
| 242 | - jl LastMatchGood | |
| 243 | - shr ebx, 2 | |
| 244 | -LastMatchGood: | |
| 245 | - | |
| 246 | -;;; chainlen is decremented once beforehand so that the function can | |
| 247 | -;;; use the sign flag instead of the zero flag for the exit test. | |
| 248 | -;;; It is then shifted into the high word, to make room for the wmask | |
| 249 | -;;; value, which it will always accompany. | |
| 250 | - | |
| 251 | - dec ebx | |
| 252 | - shl ebx, 16 | |
| 253 | - or ebx, eax | |
| 254 | - | |
| 255 | -;;; on zlib only | |
| 256 | -;;; if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; | |
| 257 | - | |
| 258 | -IFDEF INFOZIP | |
| 259 | - mov [chainlenwmask], ebx | |
| 260 | -; on infozip nice_match = [nice_match] | |
| 261 | -ELSE | |
| 262 | - mov eax, nice_match | |
| 263 | - mov [chainlenwmask], ebx | |
| 264 | - mov r10d, Lookahead | |
| 265 | - cmp r10d, eax | |
| 266 | - cmovnl r10d, eax | |
| 267 | - mov [nicematch],r10d | |
| 268 | -ENDIF | |
| 269 | - | |
| 270 | -;;; register Bytef *scan = s->window + s->strstart; | |
| 271 | - mov r10, window_ad | |
| 272 | - mov ebp, strstart | |
| 273 | - lea r13, [r10 + rbp] | |
| 274 | - | |
| 275 | -;;; Determine how many bytes the scan ptr is off from being | |
| 276 | -;;; dword-aligned. | |
| 277 | - | |
| 278 | - mov r9,r13 | |
| 279 | - neg r13 | |
| 280 | - and r13,3 | |
| 281 | - | |
| 282 | -;;; IPos limit = s->strstart > (IPos)MAX_DIST(s) ? | |
| 283 | -;;; s->strstart - (IPos)MAX_DIST(s) : NIL; | |
| 284 | -IFDEF INFOZIP | |
| 285 | - mov eax,07efah ; MAX_DIST = (WSIZE-MIN_LOOKAHEAD) (0x8000-(3+8+1)) | |
| 286 | -ELSE | |
| 287 | - mov eax, window_size | |
| 288 | - sub eax, MIN_LOOKAHEAD | |
| 289 | -ENDIF | |
| 290 | - xor edi,edi | |
| 291 | - sub ebp, eax | |
| 292 | - | |
| 293 | - mov r11d, prev_length | |
| 294 | - | |
| 295 | - cmovng ebp,edi | |
| 296 | - | |
| 297 | -;;; int best_len = s->prev_length; | |
| 298 | - | |
| 299 | - | |
| 300 | -;;; Store the sum of s->window + best_len in esi locally, and in esi. | |
| 301 | - | |
| 302 | - lea rsi,[r10+r11] | |
| 303 | - | |
| 304 | -;;; register ush scan_start = *(ushf*)scan; | |
| 305 | -;;; register ush scan_end = *(ushf*)(scan+best_len-1); | |
| 306 | -;;; Posf *prev = s->prev; | |
| 307 | - | |
| 308 | - movzx r12d,word ptr [r9] | |
| 309 | - movzx ebx, word ptr [r9 + r11 - 1] | |
| 310 | - | |
| 311 | - mov rdi, prev_ad | |
| 312 | - | |
| 313 | -;;; Jump into the main loop. | |
| 314 | - | |
| 315 | - mov edx, [chainlenwmask] | |
| 316 | - | |
| 317 | - cmp bx,word ptr [rsi + r8 - 1] | |
| 318 | - jz LookupLoopIsZero | |
| 319 | - | |
| 320 | -LookupLoop1: | |
| 321 | - and r8d, edx | |
| 322 | - | |
| 323 | - movzx r8d, word ptr [rdi + r8*2] | |
| 324 | - cmp r8d, ebp | |
| 325 | - jbe LeaveNow | |
| 326 | - sub edx, 00010000h | |
| 327 | - js LeaveNow | |
| 328 | - | |
| 329 | -LoopEntry1: | |
| 330 | - cmp bx,word ptr [rsi + r8 - 1] | |
| 331 | - jz LookupLoopIsZero | |
| 332 | - | |
| 333 | -LookupLoop2: | |
| 334 | - and r8d, edx | |
| 335 | - | |
| 336 | - movzx r8d, word ptr [rdi + r8*2] | |
| 337 | - cmp r8d, ebp | |
| 338 | - jbe LeaveNow | |
| 339 | - sub edx, 00010000h | |
| 340 | - js LeaveNow | |
| 341 | - | |
| 342 | -LoopEntry2: | |
| 343 | - cmp bx,word ptr [rsi + r8 - 1] | |
| 344 | - jz LookupLoopIsZero | |
| 345 | - | |
| 346 | -LookupLoop4: | |
| 347 | - and r8d, edx | |
| 348 | - | |
| 349 | - movzx r8d, word ptr [rdi + r8*2] | |
| 350 | - cmp r8d, ebp | |
| 351 | - jbe LeaveNow | |
| 352 | - sub edx, 00010000h | |
| 353 | - js LeaveNow | |
| 354 | - | |
| 355 | -LoopEntry4: | |
| 356 | - | |
| 357 | - cmp bx,word ptr [rsi + r8 - 1] | |
| 358 | - jnz LookupLoop1 | |
| 359 | - jmp LookupLoopIsZero | |
| 360 | - | |
| 361 | - | |
| 362 | -;;; do { | |
| 363 | -;;; match = s->window + cur_match; | |
| 364 | -;;; if (*(ushf*)(match+best_len-1) != scan_end || | |
| 365 | -;;; *(ushf*)match != scan_start) continue; | |
| 366 | -;;; [...] | |
| 367 | -;;; } while ((cur_match = prev[cur_match & wmask]) > limit | |
| 368 | -;;; && --chain_length != 0); | |
| 369 | -;;; | |
| 370 | -;;; Here is the inner loop of the function. The function will spend the | |
| 371 | -;;; majority of its time in this loop, and majority of that time will | |
| 372 | -;;; be spent in the first ten instructions. | |
| 373 | -;;; | |
| 374 | -;;; Within this loop: | |
| 375 | -;;; ebx = scanend | |
| 376 | -;;; r8d = curmatch | |
| 377 | -;;; edx = chainlenwmask - i.e., ((chainlen << 16) | wmask) | |
| 378 | -;;; esi = windowbestlen - i.e., (window + bestlen) | |
| 379 | -;;; edi = prev | |
| 380 | -;;; ebp = limit | |
| 381 | - | |
| 382 | -LookupLoop: | |
| 383 | - and r8d, edx | |
| 384 | - | |
| 385 | - movzx r8d, word ptr [rdi + r8*2] | |
| 386 | - cmp r8d, ebp | |
| 387 | - jbe LeaveNow | |
| 388 | - sub edx, 00010000h | |
| 389 | - js LeaveNow | |
| 390 | - | |
| 391 | -LoopEntry: | |
| 392 | - | |
| 393 | - cmp bx,word ptr [rsi + r8 - 1] | |
| 394 | - jnz LookupLoop1 | |
| 395 | -LookupLoopIsZero: | |
| 396 | - cmp r12w, word ptr [r10 + r8] | |
| 397 | - jnz LookupLoop1 | |
| 398 | - | |
| 399 | - | |
| 400 | -;;; Store the current value of chainlen. | |
| 401 | - mov [chainlenwmask], edx | |
| 402 | - | |
| 403 | -;;; Point edi to the string under scrutiny, and esi to the string we | |
| 404 | -;;; are hoping to match it up with. In actuality, esi and edi are | |
| 405 | -;;; both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and edx is | |
| 406 | -;;; initialized to -(MAX_MATCH_8 - scanalign). | |
| 407 | - | |
| 408 | - lea rsi,[r8+r10] | |
| 409 | - mov rdx, 0fffffffffffffef8h; -(MAX_MATCH_8) | |
| 410 | - lea rsi, [rsi + r13 + 0108h] ;MAX_MATCH_8] | |
| 411 | - lea rdi, [r9 + r13 + 0108h] ;MAX_MATCH_8] | |
| 412 | - | |
| 413 | - prefetcht1 [rsi+rdx] | |
| 414 | - prefetcht1 [rdi+rdx] | |
| 415 | - | |
| 416 | - | |
| 417 | -;;; Test the strings for equality, 8 bytes at a time. At the end, | |
| 418 | -;;; adjust rdx so that it is offset to the exact byte that mismatched. | |
| 419 | -;;; | |
| 420 | -;;; We already know at this point that the first three bytes of the | |
| 421 | -;;; strings match each other, and they can be safely passed over before | |
| 422 | -;;; starting the compare loop. So what this code does is skip over 0-3 | |
| 423 | -;;; bytes, as much as necessary in order to dword-align the edi | |
| 424 | -;;; pointer. (rsi will still be misaligned three times out of four.) | |
| 425 | -;;; | |
| 426 | -;;; It should be confessed that this loop usually does not represent | |
| 427 | -;;; much of the total running time. Replacing it with a more | |
| 428 | -;;; straightforward "rep cmpsb" would not drastically degrade | |
| 429 | -;;; performance. | |
| 430 | - | |
| 431 | - | |
| 432 | -LoopCmps: | |
| 433 | - mov rax, [rsi + rdx] | |
| 434 | - xor rax, [rdi + rdx] | |
| 435 | - jnz LeaveLoopCmps | |
| 436 | - | |
| 437 | - mov rax, [rsi + rdx + 8] | |
| 438 | - xor rax, [rdi + rdx + 8] | |
| 439 | - jnz LeaveLoopCmps8 | |
| 440 | - | |
| 441 | - | |
| 442 | - mov rax, [rsi + rdx + 8+8] | |
| 443 | - xor rax, [rdi + rdx + 8+8] | |
| 444 | - jnz LeaveLoopCmps16 | |
| 445 | - | |
| 446 | - add rdx,8+8+8 | |
| 447 | - | |
| 448 | - jnz short LoopCmps | |
| 449 | - jmp short LenMaximum | |
| 450 | -LeaveLoopCmps16: add rdx,8 | |
| 451 | -LeaveLoopCmps8: add rdx,8 | |
| 452 | -LeaveLoopCmps: | |
| 453 | - | |
| 454 | - test eax, 0000FFFFh | |
| 455 | - jnz LenLower | |
| 456 | - | |
| 457 | - test eax,0ffffffffh | |
| 458 | - | |
| 459 | - jnz LenLower32 | |
| 460 | - | |
| 461 | - add rdx,4 | |
| 462 | - shr rax,32 | |
| 463 | - or ax,ax | |
| 464 | - jnz LenLower | |
| 465 | - | |
| 466 | -LenLower32: | |
| 467 | - shr eax,16 | |
| 468 | - add rdx,2 | |
| 469 | -LenLower: sub al, 1 | |
| 470 | - adc rdx, 0 | |
| 471 | -;;; Calculate the length of the match. If it is longer than MAX_MATCH, | |
| 472 | -;;; then automatically accept it as the best possible match and leave. | |
| 473 | - | |
| 474 | - lea rax, [rdi + rdx] | |
| 475 | - sub rax, r9 | |
| 476 | - cmp eax, MAX_MATCH | |
| 477 | - jge LenMaximum | |
| 478 | - | |
| 479 | -;;; If the length of the match is not longer than the best match we | |
| 480 | -;;; have so far, then forget it and return to the lookup loop. | |
| 481 | -;/////////////////////////////////// | |
| 482 | - | |
| 483 | - cmp eax, r11d | |
| 484 | - jg LongerMatch | |
| 485 | - | |
| 486 | - lea rsi,[r10+r11] | |
| 487 | - | |
| 488 | - mov rdi, prev_ad | |
| 489 | - mov edx, [chainlenwmask] | |
| 490 | - jmp LookupLoop | |
| 491 | - | |
| 492 | -;;; s->match_start = cur_match; | |
| 493 | -;;; best_len = len; | |
| 494 | -;;; if (len >= nice_match) break; | |
| 495 | -;;; scan_end = *(ushf*)(scan+best_len-1); | |
| 496 | - | |
| 497 | -LongerMatch: | |
| 498 | - mov r11d, eax | |
| 499 | - mov match_start, r8d | |
| 500 | - cmp eax, [nicematch] | |
| 501 | - jge LeaveNow | |
| 502 | - | |
| 503 | - lea rsi,[r10+rax] | |
| 504 | - | |
| 505 | - movzx ebx, word ptr [r9 + rax - 1] | |
| 506 | - mov rdi, prev_ad | |
| 507 | - mov edx, [chainlenwmask] | |
| 508 | - jmp LookupLoop | |
| 509 | - | |
| 510 | -;;; Accept the current string, with the maximum possible length. | |
| 511 | - | |
| 512 | -LenMaximum: | |
| 513 | - mov r11d,MAX_MATCH | |
| 514 | - mov match_start, r8d | |
| 515 | - | |
| 516 | -;;; if ((uInt)best_len <= s->lookahead) return (uInt)best_len; | |
| 517 | -;;; return s->lookahead; | |
| 518 | - | |
| 519 | -LeaveNow: | |
| 520 | -IFDEF INFOZIP | |
| 521 | - mov eax,r11d | |
| 522 | -ELSE | |
| 523 | - mov eax, Lookahead | |
| 524 | - cmp r11d, eax | |
| 525 | - cmovng eax, r11d | |
| 526 | -ENDIF | |
| 527 | - | |
| 528 | -;;; Restore the stack and return from whence we came. | |
| 529 | - | |
| 530 | - | |
| 531 | - mov rsi,[save_rsi] | |
| 532 | - mov rdi,[save_rdi] | |
| 533 | - mov rbx,[save_rbx] | |
| 534 | - mov rbp,[save_rbp] | |
| 535 | - mov r12,[save_r12] | |
| 536 | - mov r13,[save_r13] | |
| 537 | -; mov r14,[save_r14] | |
| 538 | -; mov r15,[save_r15] | |
| 539 | - | |
| 540 | - | |
| 541 | - ret 0 | |
| 542 | -; please don't remove this string ! | |
| 543 | -; Your can freely use gvmat64 in any free or commercial app | |
| 544 | -; but it is far better don't remove the string in the binary! | |
| 545 | - db 0dh,0ah,"asm686 with masm, optimised assembly code from Brian Raiter, written 1998, converted to amd 64 by Gilles Vollant 2005",0dh,0ah,0 | |
| 546 | -longest_match ENDP | |
| 547 | - | |
| 548 | -match_init PROC | |
| 549 | - ret 0 | |
| 550 | -match_init ENDP | |
| 551 | - | |
| 552 | - | |
| 553 | -END |
| --- a/compat/zlib/contrib/masmx64/gvmat64.asm | |
| +++ b/compat/zlib/contrib/masmx64/gvmat64.asm | |
| @@ -1,553 +0,0 @@ | |
| 1 | ;uInt longest_match_x64( |
| 2 | ; deflate_state *s, |
| 3 | ; IPos cur_match); /* current match */ |
| 4 | |
| 5 | ; gvmat64.asm -- Asm portion of the optimized longest_match for 32 bits x86_64 |
| 6 | ; (AMD64 on Athlon 64, Opteron, Phenom |
| 7 | ; and Intel EM64T on Pentium 4 with EM64T, Pentium D, Core 2 Duo, Core I5/I7) |
| 8 | ; Copyright (C) 1995-2010 Jean-loup Gailly, Brian Raiter and Gilles Vollant. |
| 9 | ; |
| 10 | ; File written by Gilles Vollant, by converting to assembly the longest_match |
| 11 | ; from Jean-loup Gailly in deflate.c of zLib and infoZip zip. |
| 12 | ; |
| 13 | ; and by taking inspiration on asm686 with masm, optimised assembly code |
| 14 | ; from Brian Raiter, written 1998 |
| 15 | ; |
| 16 | ; This software is provided 'as-is', without any express or implied |
| 17 | ; warranty. In no event will the authors be held liable for any damages |
| 18 | ; arising from the use of this software. |
| 19 | ; |
| 20 | ; Permission is granted to anyone to use this software for any purpose, |
| 21 | ; including commercial applications, and to alter it and redistribute it |
| 22 | ; freely, subject to the following restrictions: |
| 23 | ; |
| 24 | ; 1. The origin of this software must not be misrepresented; you must not |
| 25 | ; claim that you wrote the original software. If you use this software |
| 26 | ; in a product, an acknowledgment in the product documentation would be |
| 27 | ; appreciated but is not required. |
| 28 | ; 2. Altered source versions must be plainly marked as such, and must not be |
| 29 | ; misrepresented as being the original software |
| 30 | ; 3. This notice may not be removed or altered from any source distribution. |
| 31 | ; |
| 32 | ; |
| 33 | ; |
| 34 | ; http://www.zlib.net |
| 35 | ; http://www.winimage.com/zLibDll |
| 36 | ; http://www.muppetlabs.com/~breadbox/software/assembly.html |
| 37 | ; |
| 38 | ; to compile this file for infozip Zip, I use option: |
| 39 | ; ml64.exe /Flgvmat64 /c /Zi /DINFOZIP gvmat64.asm |
| 40 | ; |
| 41 | ; to compile this file for zLib, I use option: |
| 42 | ; ml64.exe /Flgvmat64 /c /Zi gvmat64.asm |
| 43 | ; Be carrefull to adapt zlib1222add below to your version of zLib |
| 44 | ; (if you use a version of zLib before 1.0.4 or after 1.2.2.2, change |
| 45 | ; value of zlib1222add later) |
| 46 | ; |
| 47 | ; This file compile with Microsoft Macro Assembler (x64) for AMD64 |
| 48 | ; |
| 49 | ; ml64.exe is given with Visual Studio 2005/2008/2010 and Windows WDK |
| 50 | ; |
| 51 | ; (you can get Windows WDK with ml64 for AMD64 from |
| 52 | ; http://www.microsoft.com/whdc/Devtools/wdk/default.mspx for low price) |
| 53 | ; |
| 54 | |
| 55 | |
| 56 | ;uInt longest_match(s, cur_match) |
| 57 | ; deflate_state *s; |
| 58 | ; IPos cur_match; /* current match */ |
| 59 | .code |
| 60 | longest_match PROC |
| 61 | |
| 62 | |
| 63 | ;LocalVarsSize equ 88 |
| 64 | LocalVarsSize equ 72 |
| 65 | |
| 66 | ; register used : rax,rbx,rcx,rdx,rsi,rdi,r8,r9,r10,r11,r12 |
| 67 | ; free register : r14,r15 |
| 68 | ; register can be saved : rsp |
| 69 | |
| 70 | chainlenwmask equ rsp + 8 - LocalVarsSize ; high word: current chain len |
| 71 | ; low word: s->wmask |
| 72 | ;window equ rsp + xx - LocalVarsSize ; local copy of s->window ; stored in r10 |
| 73 | ;windowbestlen equ rsp + xx - LocalVarsSize ; s->window + bestlen , use r10+r11 |
| 74 | ;scanstart equ rsp + xx - LocalVarsSize ; first two bytes of string ; stored in r12w |
| 75 | ;scanend equ rsp + xx - LocalVarsSize ; last two bytes of string use ebx |
| 76 | ;scanalign equ rsp + xx - LocalVarsSize ; dword-misalignment of string r13 |
| 77 | ;bestlen equ rsp + xx - LocalVarsSize ; size of best match so far -> r11d |
| 78 | ;scan equ rsp + xx - LocalVarsSize ; ptr to string wanting match -> r9 |
| 79 | IFDEF INFOZIP |
| 80 | ELSE |
| 81 | nicematch equ (rsp + 16 - LocalVarsSize) ; a good enough match size |
| 82 | ENDIF |
| 83 | |
| 84 | save_rdi equ rsp + 24 - LocalVarsSize |
| 85 | save_rsi equ rsp + 32 - LocalVarsSize |
| 86 | save_rbx equ rsp + 40 - LocalVarsSize |
| 87 | save_rbp equ rsp + 48 - LocalVarsSize |
| 88 | save_r12 equ rsp + 56 - LocalVarsSize |
| 89 | save_r13 equ rsp + 64 - LocalVarsSize |
| 90 | ;save_r14 equ rsp + 72 - LocalVarsSize |
| 91 | ;save_r15 equ rsp + 80 - LocalVarsSize |
| 92 | |
| 93 | |
| 94 | ; summary of register usage |
| 95 | ; scanend ebx |
| 96 | ; scanendw bx |
| 97 | ; chainlenwmask edx |
| 98 | ; curmatch rsi |
| 99 | ; curmatchd esi |
| 100 | ; windowbestlen r8 |
| 101 | ; scanalign r9 |
| 102 | ; scanalignd r9d |
| 103 | ; window r10 |
| 104 | ; bestlen r11 |
| 105 | ; bestlend r11d |
| 106 | ; scanstart r12d |
| 107 | ; scanstartw r12w |
| 108 | ; scan r13 |
| 109 | ; nicematch r14d |
| 110 | ; limit r15 |
| 111 | ; limitd r15d |
| 112 | ; prev rcx |
| 113 | |
| 114 | ; all the +4 offsets are due to the addition of pending_buf_size (in zlib |
| 115 | ; in the deflate_state structure since the asm code was first written |
| 116 | ; (if you compile with zlib 1.0.4 or older, remove the +4). |
| 117 | ; Note : these value are good with a 8 bytes boundary pack structure |
| 118 | |
| 119 | |
| 120 | MAX_MATCH equ 258 |
| 121 | MIN_MATCH equ 3 |
| 122 | MIN_LOOKAHEAD equ (MAX_MATCH+MIN_MATCH+1) |
| 123 | |
| 124 | |
| 125 | ;;; Offsets for fields in the deflate_state structure. These numbers |
| 126 | ;;; are calculated from the definition of deflate_state, with the |
| 127 | ;;; assumption that the compiler will dword-align the fields. (Thus, |
| 128 | ;;; changing the definition of deflate_state could easily cause this |
| 129 | ;;; program to crash horribly, without so much as a warning at |
| 130 | ;;; compile time. Sigh.) |
| 131 | |
| 132 | ; all the +zlib1222add offsets are due to the addition of fields |
| 133 | ; in zlib in the deflate_state structure since the asm code was first written |
| 134 | ; (if you compile with zlib 1.0.4 or older, use "zlib1222add equ (-4)"). |
| 135 | ; (if you compile with zlib between 1.0.5 and 1.2.2.1, use "zlib1222add equ 0"). |
| 136 | ; if you compile with zlib 1.2.2.2 or later , use "zlib1222add equ 8"). |
| 137 | |
| 138 | |
| 139 | IFDEF INFOZIP |
| 140 | |
| 141 | _DATA SEGMENT |
| 142 | COMM window_size:DWORD |
| 143 | ; WMask ; 7fff |
| 144 | COMM window:BYTE:010040H |
| 145 | COMM prev:WORD:08000H |
| 146 | ; MatchLen : unused |
| 147 | ; PrevMatch : unused |
| 148 | COMM strstart:DWORD |
| 149 | COMM match_start:DWORD |
| 150 | ; Lookahead : ignore |
| 151 | COMM prev_length:DWORD ; PrevLen |
| 152 | COMM max_chain_length:DWORD |
| 153 | COMM good_match:DWORD |
| 154 | COMM nice_match:DWORD |
| 155 | prev_ad equ OFFSET prev |
| 156 | window_ad equ OFFSET window |
| 157 | nicematch equ nice_match |
| 158 | _DATA ENDS |
| 159 | WMask equ 07fffh |
| 160 | |
| 161 | ELSE |
| 162 | |
| 163 | IFNDEF zlib1222add |
| 164 | zlib1222add equ 8 |
| 165 | ENDIF |
| 166 | dsWSize equ 56+zlib1222add+(zlib1222add/2) |
| 167 | dsWMask equ 64+zlib1222add+(zlib1222add/2) |
| 168 | dsWindow equ 72+zlib1222add |
| 169 | dsPrev equ 88+zlib1222add |
| 170 | dsMatchLen equ 128+zlib1222add |
| 171 | dsPrevMatch equ 132+zlib1222add |
| 172 | dsStrStart equ 140+zlib1222add |
| 173 | dsMatchStart equ 144+zlib1222add |
| 174 | dsLookahead equ 148+zlib1222add |
| 175 | dsPrevLen equ 152+zlib1222add |
| 176 | dsMaxChainLen equ 156+zlib1222add |
| 177 | dsGoodMatch equ 172+zlib1222add |
| 178 | dsNiceMatch equ 176+zlib1222add |
| 179 | |
| 180 | window_size equ [ rcx + dsWSize] |
| 181 | WMask equ [ rcx + dsWMask] |
| 182 | window_ad equ [ rcx + dsWindow] |
| 183 | prev_ad equ [ rcx + dsPrev] |
| 184 | strstart equ [ rcx + dsStrStart] |
| 185 | match_start equ [ rcx + dsMatchStart] |
| 186 | Lookahead equ [ rcx + dsLookahead] ; 0ffffffffh on infozip |
| 187 | prev_length equ [ rcx + dsPrevLen] |
| 188 | max_chain_length equ [ rcx + dsMaxChainLen] |
| 189 | good_match equ [ rcx + dsGoodMatch] |
| 190 | nice_match equ [ rcx + dsNiceMatch] |
| 191 | ENDIF |
| 192 | |
| 193 | ; parameter 1 in r8(deflate state s), param 2 in rdx (cur match) |
| 194 | |
| 195 | ; see http://weblogs.asp.net/oldnewthing/archive/2004/01/14/58579.aspx and |
| 196 | ; http://msdn.microsoft.com/library/en-us/kmarch/hh/kmarch/64bitAMD_8e951dd2-ee77-4728-8702-55ce4b5dd24a.xml.asp |
| 197 | ; |
| 198 | ; All registers must be preserved across the call, except for |
| 199 | ; rax, rcx, rdx, r8, r9, r10, and r11, which are scratch. |
| 200 | |
| 201 | |
| 202 | |
| 203 | ;;; Save registers that the compiler may be using, and adjust esp to |
| 204 | ;;; make room for our stack frame. |
| 205 | |
| 206 | |
| 207 | ;;; Retrieve the function arguments. r8d will hold cur_match |
| 208 | ;;; throughout the entire function. edx will hold the pointer to the |
| 209 | ;;; deflate_state structure during the function's setup (before |
| 210 | ;;; entering the main loop. |
| 211 | |
| 212 | ; parameter 1 in rcx (deflate_state* s), param 2 in edx -> r8 (cur match) |
| 213 | |
| 214 | ; this clear high 32 bits of r8, which can be garbage in both r8 and rdx |
| 215 | |
| 216 | mov [save_rdi],rdi |
| 217 | mov [save_rsi],rsi |
| 218 | mov [save_rbx],rbx |
| 219 | mov [save_rbp],rbp |
| 220 | IFDEF INFOZIP |
| 221 | mov r8d,ecx |
| 222 | ELSE |
| 223 | mov r8d,edx |
| 224 | ENDIF |
| 225 | mov [save_r12],r12 |
| 226 | mov [save_r13],r13 |
| 227 | ; mov [save_r14],r14 |
| 228 | ; mov [save_r15],r15 |
| 229 | |
| 230 | |
| 231 | ;;; uInt wmask = s->w_mask; |
| 232 | ;;; unsigned chain_length = s->max_chain_length; |
| 233 | ;;; if (s->prev_length >= s->good_match) { |
| 234 | ;;; chain_length >>= 2; |
| 235 | ;;; } |
| 236 | |
| 237 | mov edi, prev_length |
| 238 | mov esi, good_match |
| 239 | mov eax, WMask |
| 240 | mov ebx, max_chain_length |
| 241 | cmp edi, esi |
| 242 | jl LastMatchGood |
| 243 | shr ebx, 2 |
| 244 | LastMatchGood: |
| 245 | |
| 246 | ;;; chainlen is decremented once beforehand so that the function can |
| 247 | ;;; use the sign flag instead of the zero flag for the exit test. |
| 248 | ;;; It is then shifted into the high word, to make room for the wmask |
| 249 | ;;; value, which it will always accompany. |
| 250 | |
| 251 | dec ebx |
| 252 | shl ebx, 16 |
| 253 | or ebx, eax |
| 254 | |
| 255 | ;;; on zlib only |
| 256 | ;;; if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; |
| 257 | |
| 258 | IFDEF INFOZIP |
| 259 | mov [chainlenwmask], ebx |
| 260 | ; on infozip nice_match = [nice_match] |
| 261 | ELSE |
| 262 | mov eax, nice_match |
| 263 | mov [chainlenwmask], ebx |
| 264 | mov r10d, Lookahead |
| 265 | cmp r10d, eax |
| 266 | cmovnl r10d, eax |
| 267 | mov [nicematch],r10d |
| 268 | ENDIF |
| 269 | |
| 270 | ;;; register Bytef *scan = s->window + s->strstart; |
| 271 | mov r10, window_ad |
| 272 | mov ebp, strstart |
| 273 | lea r13, [r10 + rbp] |
| 274 | |
| 275 | ;;; Determine how many bytes the scan ptr is off from being |
| 276 | ;;; dword-aligned. |
| 277 | |
| 278 | mov r9,r13 |
| 279 | neg r13 |
| 280 | and r13,3 |
| 281 | |
| 282 | ;;; IPos limit = s->strstart > (IPos)MAX_DIST(s) ? |
| 283 | ;;; s->strstart - (IPos)MAX_DIST(s) : NIL; |
| 284 | IFDEF INFOZIP |
| 285 | mov eax,07efah ; MAX_DIST = (WSIZE-MIN_LOOKAHEAD) (0x8000-(3+8+1)) |
| 286 | ELSE |
| 287 | mov eax, window_size |
| 288 | sub eax, MIN_LOOKAHEAD |
| 289 | ENDIF |
| 290 | xor edi,edi |
| 291 | sub ebp, eax |
| 292 | |
| 293 | mov r11d, prev_length |
| 294 | |
| 295 | cmovng ebp,edi |
| 296 | |
| 297 | ;;; int best_len = s->prev_length; |
| 298 | |
| 299 | |
| 300 | ;;; Store the sum of s->window + best_len in esi locally, and in esi. |
| 301 | |
| 302 | lea rsi,[r10+r11] |
| 303 | |
| 304 | ;;; register ush scan_start = *(ushf*)scan; |
| 305 | ;;; register ush scan_end = *(ushf*)(scan+best_len-1); |
| 306 | ;;; Posf *prev = s->prev; |
| 307 | |
| 308 | movzx r12d,word ptr [r9] |
| 309 | movzx ebx, word ptr [r9 + r11 - 1] |
| 310 | |
| 311 | mov rdi, prev_ad |
| 312 | |
| 313 | ;;; Jump into the main loop. |
| 314 | |
| 315 | mov edx, [chainlenwmask] |
| 316 | |
| 317 | cmp bx,word ptr [rsi + r8 - 1] |
| 318 | jz LookupLoopIsZero |
| 319 | |
| 320 | LookupLoop1: |
| 321 | and r8d, edx |
| 322 | |
| 323 | movzx r8d, word ptr [rdi + r8*2] |
| 324 | cmp r8d, ebp |
| 325 | jbe LeaveNow |
| 326 | sub edx, 00010000h |
| 327 | js LeaveNow |
| 328 | |
| 329 | LoopEntry1: |
| 330 | cmp bx,word ptr [rsi + r8 - 1] |
| 331 | jz LookupLoopIsZero |
| 332 | |
| 333 | LookupLoop2: |
| 334 | and r8d, edx |
| 335 | |
| 336 | movzx r8d, word ptr [rdi + r8*2] |
| 337 | cmp r8d, ebp |
| 338 | jbe LeaveNow |
| 339 | sub edx, 00010000h |
| 340 | js LeaveNow |
| 341 | |
| 342 | LoopEntry2: |
| 343 | cmp bx,word ptr [rsi + r8 - 1] |
| 344 | jz LookupLoopIsZero |
| 345 | |
| 346 | LookupLoop4: |
| 347 | and r8d, edx |
| 348 | |
| 349 | movzx r8d, word ptr [rdi + r8*2] |
| 350 | cmp r8d, ebp |
| 351 | jbe LeaveNow |
| 352 | sub edx, 00010000h |
| 353 | js LeaveNow |
| 354 | |
| 355 | LoopEntry4: |
| 356 | |
| 357 | cmp bx,word ptr [rsi + r8 - 1] |
| 358 | jnz LookupLoop1 |
| 359 | jmp LookupLoopIsZero |
| 360 | |
| 361 | |
| 362 | ;;; do { |
| 363 | ;;; match = s->window + cur_match; |
| 364 | ;;; if (*(ushf*)(match+best_len-1) != scan_end || |
| 365 | ;;; *(ushf*)match != scan_start) continue; |
| 366 | ;;; [...] |
| 367 | ;;; } while ((cur_match = prev[cur_match & wmask]) > limit |
| 368 | ;;; && --chain_length != 0); |
| 369 | ;;; |
| 370 | ;;; Here is the inner loop of the function. The function will spend the |
| 371 | ;;; majority of its time in this loop, and majority of that time will |
| 372 | ;;; be spent in the first ten instructions. |
| 373 | ;;; |
| 374 | ;;; Within this loop: |
| 375 | ;;; ebx = scanend |
| 376 | ;;; r8d = curmatch |
| 377 | ;;; edx = chainlenwmask - i.e., ((chainlen << 16) | wmask) |
| 378 | ;;; esi = windowbestlen - i.e., (window + bestlen) |
| 379 | ;;; edi = prev |
| 380 | ;;; ebp = limit |
| 381 | |
| 382 | LookupLoop: |
| 383 | and r8d, edx |
| 384 | |
| 385 | movzx r8d, word ptr [rdi + r8*2] |
| 386 | cmp r8d, ebp |
| 387 | jbe LeaveNow |
| 388 | sub edx, 00010000h |
| 389 | js LeaveNow |
| 390 | |
| 391 | LoopEntry: |
| 392 | |
| 393 | cmp bx,word ptr [rsi + r8 - 1] |
| 394 | jnz LookupLoop1 |
| 395 | LookupLoopIsZero: |
| 396 | cmp r12w, word ptr [r10 + r8] |
| 397 | jnz LookupLoop1 |
| 398 | |
| 399 | |
| 400 | ;;; Store the current value of chainlen. |
| 401 | mov [chainlenwmask], edx |
| 402 | |
| 403 | ;;; Point edi to the string under scrutiny, and esi to the string we |
| 404 | ;;; are hoping to match it up with. In actuality, esi and edi are |
| 405 | ;;; both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and edx is |
| 406 | ;;; initialized to -(MAX_MATCH_8 - scanalign). |
| 407 | |
| 408 | lea rsi,[r8+r10] |
| 409 | mov rdx, 0fffffffffffffef8h; -(MAX_MATCH_8) |
| 410 | lea rsi, [rsi + r13 + 0108h] ;MAX_MATCH_8] |
| 411 | lea rdi, [r9 + r13 + 0108h] ;MAX_MATCH_8] |
| 412 | |
| 413 | prefetcht1 [rsi+rdx] |
| 414 | prefetcht1 [rdi+rdx] |
| 415 | |
| 416 | |
| 417 | ;;; Test the strings for equality, 8 bytes at a time. At the end, |
| 418 | ;;; adjust rdx so that it is offset to the exact byte that mismatched. |
| 419 | ;;; |
| 420 | ;;; We already know at this point that the first three bytes of the |
| 421 | ;;; strings match each other, and they can be safely passed over before |
| 422 | ;;; starting the compare loop. So what this code does is skip over 0-3 |
| 423 | ;;; bytes, as much as necessary in order to dword-align the edi |
| 424 | ;;; pointer. (rsi will still be misaligned three times out of four.) |
| 425 | ;;; |
| 426 | ;;; It should be confessed that this loop usually does not represent |
| 427 | ;;; much of the total running time. Replacing it with a more |
| 428 | ;;; straightforward "rep cmpsb" would not drastically degrade |
| 429 | ;;; performance. |
| 430 | |
| 431 | |
| 432 | LoopCmps: |
| 433 | mov rax, [rsi + rdx] |
| 434 | xor rax, [rdi + rdx] |
| 435 | jnz LeaveLoopCmps |
| 436 | |
| 437 | mov rax, [rsi + rdx + 8] |
| 438 | xor rax, [rdi + rdx + 8] |
| 439 | jnz LeaveLoopCmps8 |
| 440 | |
| 441 | |
| 442 | mov rax, [rsi + rdx + 8+8] |
| 443 | xor rax, [rdi + rdx + 8+8] |
| 444 | jnz LeaveLoopCmps16 |
| 445 | |
| 446 | add rdx,8+8+8 |
| 447 | |
| 448 | jnz short LoopCmps |
| 449 | jmp short LenMaximum |
| 450 | LeaveLoopCmps16: add rdx,8 |
| 451 | LeaveLoopCmps8: add rdx,8 |
| 452 | LeaveLoopCmps: |
| 453 | |
| 454 | test eax, 0000FFFFh |
| 455 | jnz LenLower |
| 456 | |
| 457 | test eax,0ffffffffh |
| 458 | |
| 459 | jnz LenLower32 |
| 460 | |
| 461 | add rdx,4 |
| 462 | shr rax,32 |
| 463 | or ax,ax |
| 464 | jnz LenLower |
| 465 | |
| 466 | LenLower32: |
| 467 | shr eax,16 |
| 468 | add rdx,2 |
| 469 | LenLower: sub al, 1 |
| 470 | adc rdx, 0 |
| 471 | ;;; Calculate the length of the match. If it is longer than MAX_MATCH, |
| 472 | ;;; then automatically accept it as the best possible match and leave. |
| 473 | |
| 474 | lea rax, [rdi + rdx] |
| 475 | sub rax, r9 |
| 476 | cmp eax, MAX_MATCH |
| 477 | jge LenMaximum |
| 478 | |
| 479 | ;;; If the length of the match is not longer than the best match we |
| 480 | ;;; have so far, then forget it and return to the lookup loop. |
| 481 | ;/////////////////////////////////// |
| 482 | |
| 483 | cmp eax, r11d |
| 484 | jg LongerMatch |
| 485 | |
| 486 | lea rsi,[r10+r11] |
| 487 | |
| 488 | mov rdi, prev_ad |
| 489 | mov edx, [chainlenwmask] |
| 490 | jmp LookupLoop |
| 491 | |
| 492 | ;;; s->match_start = cur_match; |
| 493 | ;;; best_len = len; |
| 494 | ;;; if (len >= nice_match) break; |
| 495 | ;;; scan_end = *(ushf*)(scan+best_len-1); |
| 496 | |
| 497 | LongerMatch: |
| 498 | mov r11d, eax |
| 499 | mov match_start, r8d |
| 500 | cmp eax, [nicematch] |
| 501 | jge LeaveNow |
| 502 | |
| 503 | lea rsi,[r10+rax] |
| 504 | |
| 505 | movzx ebx, word ptr [r9 + rax - 1] |
| 506 | mov rdi, prev_ad |
| 507 | mov edx, [chainlenwmask] |
| 508 | jmp LookupLoop |
| 509 | |
| 510 | ;;; Accept the current string, with the maximum possible length. |
| 511 | |
| 512 | LenMaximum: |
| 513 | mov r11d,MAX_MATCH |
| 514 | mov match_start, r8d |
| 515 | |
| 516 | ;;; if ((uInt)best_len <= s->lookahead) return (uInt)best_len; |
| 517 | ;;; return s->lookahead; |
| 518 | |
| 519 | LeaveNow: |
| 520 | IFDEF INFOZIP |
| 521 | mov eax,r11d |
| 522 | ELSE |
| 523 | mov eax, Lookahead |
| 524 | cmp r11d, eax |
| 525 | cmovng eax, r11d |
| 526 | ENDIF |
| 527 | |
| 528 | ;;; Restore the stack and return from whence we came. |
| 529 | |
| 530 | |
| 531 | mov rsi,[save_rsi] |
| 532 | mov rdi,[save_rdi] |
| 533 | mov rbx,[save_rbx] |
| 534 | mov rbp,[save_rbp] |
| 535 | mov r12,[save_r12] |
| 536 | mov r13,[save_r13] |
| 537 | ; mov r14,[save_r14] |
| 538 | ; mov r15,[save_r15] |
| 539 | |
| 540 | |
| 541 | ret 0 |
| 542 | ; please don't remove this string ! |
| 543 | ; Your can freely use gvmat64 in any free or commercial app |
| 544 | ; but it is far better don't remove the string in the binary! |
| 545 | db 0dh,0ah,"asm686 with masm, optimised assembly code from Brian Raiter, written 1998, converted to amd 64 by Gilles Vollant 2005",0dh,0ah,0 |
| 546 | longest_match ENDP |
| 547 | |
| 548 | match_init PROC |
| 549 | ret 0 |
| 550 | match_init ENDP |
| 551 | |
| 552 | |
| 553 | END |
| --- a/compat/zlib/contrib/masmx64/gvmat64.asm | |
| +++ b/compat/zlib/contrib/masmx64/gvmat64.asm | |
| @@ -1,553 +0,0 @@ | |
D
compat/zlib/contrib/masmx64/inffas8664.c
-186
| --- a/compat/zlib/contrib/masmx64/inffas8664.c | ||
| +++ b/compat/zlib/contrib/masmx64/inffas8664.c | ||
| @@ -1,186 +0,0 @@ | ||
| 1 | -/* inffas8664.c is a hand tuned assembler version of inffast.c - fast decoding | |
| 2 | - * version for AMD64 on Windows using Microsoft C compiler | |
| 3 | - * | |
| 4 | - * Copyright (C) 1995-2003 Mark Adler | |
| 5 | - * For conditions of distribution and use, see copyright notice in zlib.h | |
| 6 | - * | |
| 7 | - * Copyright (C) 2003 Chris Anderson <[email protected]> | |
| 8 | - * Please use the copyright conditions above. | |
| 9 | - * | |
| 10 | - * 2005 - Adaptation to Microsoft C Compiler for AMD64 by Gilles Vollant | |
| 11 | - * | |
| 12 | - * inffas8664.c call function inffas8664fnc in inffasx64.asm | |
| 13 | - * inffasx64.asm is automatically convert from AMD64 portion of inffas86.c | |
| 14 | - * | |
| 15 | - * Dec-29-2003 -- I added AMD64 inflate asm support. This version is also | |
| 16 | - * slightly quicker on x86 systems because, instead of using rep movsb to copy | |
| 17 | - * data, it uses rep movsw, which moves data in 2-byte chunks instead of single | |
| 18 | - * bytes. I've tested the AMD64 code on a Fedora Core 1 + the x86_64 updates | |
| 19 | - * from http://fedora.linux.duke.edu/fc1_x86_64 | |
| 20 | - * which is running on an Athlon 64 3000+ / Gigabyte GA-K8VT800M system with | |
| 21 | - * 1GB ram. The 64-bit version is about 4% faster than the 32-bit version, | |
| 22 | - * when decompressing mozilla-source-1.3.tar.gz. | |
| 23 | - * | |
| 24 | - * Mar-13-2003 -- Most of this is derived from inffast.S which is derived from | |
| 25 | - * the gcc -S output of zlib-1.2.0/inffast.c. Zlib-1.2.0 is in beta release at | |
| 26 | - * the moment. I have successfully compiled and tested this code with gcc2.96, | |
| 27 | - * gcc3.2, icc5.0, msvc6.0. It is very close to the speed of inffast.S | |
| 28 | - * compiled with gcc -DNO_MMX, but inffast.S is still faster on the P3 with MMX | |
| 29 | - * enabled. I will attempt to merge the MMX code into this version. Newer | |
| 30 | - * versions of this and inffast.S can be found at | |
| 31 | - * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ | |
| 32 | - * | |
| 33 | - */ | |
| 34 | - | |
| 35 | -#include <stdio.h> | |
| 36 | -#include "zutil.h" | |
| 37 | -#include "inftrees.h" | |
| 38 | -#include "inflate.h" | |
| 39 | -#include "inffast.h" | |
| 40 | - | |
| 41 | -/* Mark Adler's comments from inffast.c: */ | |
| 42 | - | |
| 43 | -/* | |
| 44 | - Decode literal, length, and distance codes and write out the resulting | |
| 45 | - literal and match bytes until either not enough input or output is | |
| 46 | - available, an end-of-block is encountered, or a data error is encountered. | |
| 47 | - When large enough input and output buffers are supplied to inflate(), for | |
| 48 | - example, a 16K input buffer and a 64K output buffer, more than 95% of the | |
| 49 | - inflate execution time is spent in this routine. | |
| 50 | - | |
| 51 | - Entry assumptions: | |
| 52 | - | |
| 53 | - state->mode == LEN | |
| 54 | - strm->avail_in >= 6 | |
| 55 | - strm->avail_out >= 258 | |
| 56 | - start >= strm->avail_out | |
| 57 | - state->bits < 8 | |
| 58 | - | |
| 59 | - On return, state->mode is one of: | |
| 60 | - | |
| 61 | - LEN -- ran out of enough output space or enough available input | |
| 62 | - TYPE -- reached end of block code, inflate() to interpret next block | |
| 63 | - BAD -- error in block data | |
| 64 | - | |
| 65 | - Notes: | |
| 66 | - | |
| 67 | - - The maximum input bits used by a length/distance pair is 15 bits for the | |
| 68 | - length code, 5 bits for the length extra, 15 bits for the distance code, | |
| 69 | - and 13 bits for the distance extra. This totals 48 bits, or six bytes. | |
| 70 | - Therefore if strm->avail_in >= 6, then there is enough input to avoid | |
| 71 | - checking for available input while decoding. | |
| 72 | - | |
| 73 | - - The maximum bytes that a single length/distance pair can output is 258 | |
| 74 | - bytes, which is the maximum length that can be coded. inflate_fast() | |
| 75 | - requires strm->avail_out >= 258 for each loop to avoid checking for | |
| 76 | - output space. | |
| 77 | - */ | |
| 78 | - | |
| 79 | - | |
| 80 | - | |
| 81 | - typedef struct inffast_ar { | |
| 82 | -/* 64 32 x86 x86_64 */ | |
| 83 | -/* ar offset register */ | |
| 84 | -/* 0 0 */ void *esp; /* esp save */ | |
| 85 | -/* 8 4 */ void *ebp; /* ebp save */ | |
| 86 | -/* 16 8 */ unsigned char FAR *in; /* esi rsi local strm->next_in */ | |
| 87 | -/* 24 12 */ unsigned char FAR *last; /* r9 while in < last */ | |
| 88 | -/* 32 16 */ unsigned char FAR *out; /* edi rdi local strm->next_out */ | |
| 89 | -/* 40 20 */ unsigned char FAR *beg; /* inflate()'s init next_out */ | |
| 90 | -/* 48 24 */ unsigned char FAR *end; /* r10 while out < end */ | |
| 91 | -/* 56 28 */ unsigned char FAR *window;/* size of window, wsize!=0 */ | |
| 92 | -/* 64 32 */ code const FAR *lcode; /* ebp rbp local strm->lencode */ | |
| 93 | -/* 72 36 */ code const FAR *dcode; /* r11 local strm->distcode */ | |
| 94 | -/* 80 40 */ size_t /*unsigned long */hold; /* edx rdx local strm->hold */ | |
| 95 | -/* 88 44 */ unsigned bits; /* ebx rbx local strm->bits */ | |
| 96 | -/* 92 48 */ unsigned wsize; /* window size */ | |
| 97 | -/* 96 52 */ unsigned write; /* window write index */ | |
| 98 | -/*100 56 */ unsigned lmask; /* r12 mask for lcode */ | |
| 99 | -/*104 60 */ unsigned dmask; /* r13 mask for dcode */ | |
| 100 | -/*108 64 */ unsigned len; /* r14 match length */ | |
| 101 | -/*112 68 */ unsigned dist; /* r15 match distance */ | |
| 102 | -/*116 72 */ unsigned status; /* set when state chng*/ | |
| 103 | - } type_ar; | |
| 104 | -#ifdef ASMINF | |
| 105 | - | |
| 106 | -void inflate_fast(strm, start) | |
| 107 | -z_streamp strm; | |
| 108 | -unsigned start; /* inflate()'s starting value for strm->avail_out */ | |
| 109 | -{ | |
| 110 | - struct inflate_state FAR *state; | |
| 111 | - type_ar ar; | |
| 112 | - void inffas8664fnc(struct inffast_ar * par); | |
| 113 | - | |
| 114 | - | |
| 115 | - | |
| 116 | -#if (defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 )) || (defined(_MSC_VER) && defined(_M_AMD64)) | |
| 117 | -#define PAD_AVAIL_IN 6 | |
| 118 | -#define PAD_AVAIL_OUT 258 | |
| 119 | -#else | |
| 120 | -#define PAD_AVAIL_IN 5 | |
| 121 | -#define PAD_AVAIL_OUT 257 | |
| 122 | -#endif | |
| 123 | - | |
| 124 | - /* copy state to local variables */ | |
| 125 | - state = (struct inflate_state FAR *)strm->state; | |
| 126 | - | |
| 127 | - ar.in = strm->next_in; | |
| 128 | - ar.last = ar.in + (strm->avail_in - PAD_AVAIL_IN); | |
| 129 | - ar.out = strm->next_out; | |
| 130 | - ar.beg = ar.out - (start - strm->avail_out); | |
| 131 | - ar.end = ar.out + (strm->avail_out - PAD_AVAIL_OUT); | |
| 132 | - ar.wsize = state->wsize; | |
| 133 | - ar.write = state->wnext; | |
| 134 | - ar.window = state->window; | |
| 135 | - ar.hold = state->hold; | |
| 136 | - ar.bits = state->bits; | |
| 137 | - ar.lcode = state->lencode; | |
| 138 | - ar.dcode = state->distcode; | |
| 139 | - ar.lmask = (1U << state->lenbits) - 1; | |
| 140 | - ar.dmask = (1U << state->distbits) - 1; | |
| 141 | - | |
| 142 | - /* decode literals and length/distances until end-of-block or not enough | |
| 143 | - input data or output space */ | |
| 144 | - | |
| 145 | - /* align in on 1/2 hold size boundary */ | |
| 146 | - while (((size_t)(void *)ar.in & (sizeof(ar.hold) / 2 - 1)) != 0) { | |
| 147 | - ar.hold += (unsigned long)*ar.in++ << ar.bits; | |
| 148 | - ar.bits += 8; | |
| 149 | - } | |
| 150 | - | |
| 151 | - inffas8664fnc(&ar); | |
| 152 | - | |
| 153 | - if (ar.status > 1) { | |
| 154 | - if (ar.status == 2) | |
| 155 | - strm->msg = "invalid literal/length code"; | |
| 156 | - else if (ar.status == 3) | |
| 157 | - strm->msg = "invalid distance code"; | |
| 158 | - else | |
| 159 | - strm->msg = "invalid distance too far back"; | |
| 160 | - state->mode = BAD; | |
| 161 | - } | |
| 162 | - else if ( ar.status == 1 ) { | |
| 163 | - state->mode = TYPE; | |
| 164 | - } | |
| 165 | - | |
| 166 | - /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ | |
| 167 | - ar.len = ar.bits >> 3; | |
| 168 | - ar.in -= ar.len; | |
| 169 | - ar.bits -= ar.len << 3; | |
| 170 | - ar.hold &= (1U << ar.bits) - 1; | |
| 171 | - | |
| 172 | - /* update state and return */ | |
| 173 | - strm->next_in = ar.in; | |
| 174 | - strm->next_out = ar.out; | |
| 175 | - strm->avail_in = (unsigned)(ar.in < ar.last ? | |
| 176 | - PAD_AVAIL_IN + (ar.last - ar.in) : | |
| 177 | - PAD_AVAIL_IN - (ar.in - ar.last)); | |
| 178 | - strm->avail_out = (unsigned)(ar.out < ar.end ? | |
| 179 | - PAD_AVAIL_OUT + (ar.end - ar.out) : | |
| 180 | - PAD_AVAIL_OUT - (ar.out - ar.end)); | |
| 181 | - state->hold = (unsigned long)ar.hold; | |
| 182 | - state->bits = ar.bits; | |
| 183 | - return; | |
| 184 | -} | |
| 185 | - | |
| 186 | -#endif |
| --- a/compat/zlib/contrib/masmx64/inffas8664.c | |
| +++ b/compat/zlib/contrib/masmx64/inffas8664.c | |
| @@ -1,186 +0,0 @@ | |
| 1 | /* inffas8664.c is a hand tuned assembler version of inffast.c - fast decoding |
| 2 | * version for AMD64 on Windows using Microsoft C compiler |
| 3 | * |
| 4 | * Copyright (C) 1995-2003 Mark Adler |
| 5 | * For conditions of distribution and use, see copyright notice in zlib.h |
| 6 | * |
| 7 | * Copyright (C) 2003 Chris Anderson <[email protected]> |
| 8 | * Please use the copyright conditions above. |
| 9 | * |
| 10 | * 2005 - Adaptation to Microsoft C Compiler for AMD64 by Gilles Vollant |
| 11 | * |
| 12 | * inffas8664.c call function inffas8664fnc in inffasx64.asm |
| 13 | * inffasx64.asm is automatically convert from AMD64 portion of inffas86.c |
| 14 | * |
| 15 | * Dec-29-2003 -- I added AMD64 inflate asm support. This version is also |
| 16 | * slightly quicker on x86 systems because, instead of using rep movsb to copy |
| 17 | * data, it uses rep movsw, which moves data in 2-byte chunks instead of single |
| 18 | * bytes. I've tested the AMD64 code on a Fedora Core 1 + the x86_64 updates |
| 19 | * from http://fedora.linux.duke.edu/fc1_x86_64 |
| 20 | * which is running on an Athlon 64 3000+ / Gigabyte GA-K8VT800M system with |
| 21 | * 1GB ram. The 64-bit version is about 4% faster than the 32-bit version, |
| 22 | * when decompressing mozilla-source-1.3.tar.gz. |
| 23 | * |
| 24 | * Mar-13-2003 -- Most of this is derived from inffast.S which is derived from |
| 25 | * the gcc -S output of zlib-1.2.0/inffast.c. Zlib-1.2.0 is in beta release at |
| 26 | * the moment. I have successfully compiled and tested this code with gcc2.96, |
| 27 | * gcc3.2, icc5.0, msvc6.0. It is very close to the speed of inffast.S |
| 28 | * compiled with gcc -DNO_MMX, but inffast.S is still faster on the P3 with MMX |
| 29 | * enabled. I will attempt to merge the MMX code into this version. Newer |
| 30 | * versions of this and inffast.S can be found at |
| 31 | * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ |
| 32 | * |
| 33 | */ |
| 34 | |
| 35 | #include <stdio.h> |
| 36 | #include "zutil.h" |
| 37 | #include "inftrees.h" |
| 38 | #include "inflate.h" |
| 39 | #include "inffast.h" |
| 40 | |
| 41 | /* Mark Adler's comments from inffast.c: */ |
| 42 | |
| 43 | /* |
| 44 | Decode literal, length, and distance codes and write out the resulting |
| 45 | literal and match bytes until either not enough input or output is |
| 46 | available, an end-of-block is encountered, or a data error is encountered. |
| 47 | When large enough input and output buffers are supplied to inflate(), for |
| 48 | example, a 16K input buffer and a 64K output buffer, more than 95% of the |
| 49 | inflate execution time is spent in this routine. |
| 50 | |
| 51 | Entry assumptions: |
| 52 | |
| 53 | state->mode == LEN |
| 54 | strm->avail_in >= 6 |
| 55 | strm->avail_out >= 258 |
| 56 | start >= strm->avail_out |
| 57 | state->bits < 8 |
| 58 | |
| 59 | On return, state->mode is one of: |
| 60 | |
| 61 | LEN -- ran out of enough output space or enough available input |
| 62 | TYPE -- reached end of block code, inflate() to interpret next block |
| 63 | BAD -- error in block data |
| 64 | |
| 65 | Notes: |
| 66 | |
| 67 | - The maximum input bits used by a length/distance pair is 15 bits for the |
| 68 | length code, 5 bits for the length extra, 15 bits for the distance code, |
| 69 | and 13 bits for the distance extra. This totals 48 bits, or six bytes. |
| 70 | Therefore if strm->avail_in >= 6, then there is enough input to avoid |
| 71 | checking for available input while decoding. |
| 72 | |
| 73 | - The maximum bytes that a single length/distance pair can output is 258 |
| 74 | bytes, which is the maximum length that can be coded. inflate_fast() |
| 75 | requires strm->avail_out >= 258 for each loop to avoid checking for |
| 76 | output space. |
| 77 | */ |
| 78 | |
| 79 | |
| 80 | |
| 81 | typedef struct inffast_ar { |
| 82 | /* 64 32 x86 x86_64 */ |
| 83 | /* ar offset register */ |
| 84 | /* 0 0 */ void *esp; /* esp save */ |
| 85 | /* 8 4 */ void *ebp; /* ebp save */ |
| 86 | /* 16 8 */ unsigned char FAR *in; /* esi rsi local strm->next_in */ |
| 87 | /* 24 12 */ unsigned char FAR *last; /* r9 while in < last */ |
| 88 | /* 32 16 */ unsigned char FAR *out; /* edi rdi local strm->next_out */ |
| 89 | /* 40 20 */ unsigned char FAR *beg; /* inflate()'s init next_out */ |
| 90 | /* 48 24 */ unsigned char FAR *end; /* r10 while out < end */ |
| 91 | /* 56 28 */ unsigned char FAR *window;/* size of window, wsize!=0 */ |
| 92 | /* 64 32 */ code const FAR *lcode; /* ebp rbp local strm->lencode */ |
| 93 | /* 72 36 */ code const FAR *dcode; /* r11 local strm->distcode */ |
| 94 | /* 80 40 */ size_t /*unsigned long */hold; /* edx rdx local strm->hold */ |
| 95 | /* 88 44 */ unsigned bits; /* ebx rbx local strm->bits */ |
| 96 | /* 92 48 */ unsigned wsize; /* window size */ |
| 97 | /* 96 52 */ unsigned write; /* window write index */ |
| 98 | /*100 56 */ unsigned lmask; /* r12 mask for lcode */ |
| 99 | /*104 60 */ unsigned dmask; /* r13 mask for dcode */ |
| 100 | /*108 64 */ unsigned len; /* r14 match length */ |
| 101 | /*112 68 */ unsigned dist; /* r15 match distance */ |
| 102 | /*116 72 */ unsigned status; /* set when state chng*/ |
| 103 | } type_ar; |
| 104 | #ifdef ASMINF |
| 105 | |
| 106 | void inflate_fast(strm, start) |
| 107 | z_streamp strm; |
| 108 | unsigned start; /* inflate()'s starting value for strm->avail_out */ |
| 109 | { |
| 110 | struct inflate_state FAR *state; |
| 111 | type_ar ar; |
| 112 | void inffas8664fnc(struct inffast_ar * par); |
| 113 | |
| 114 | |
| 115 | |
| 116 | #if (defined( __GNUC__ ) && defined( __amd64__ ) && ! defined( __i386 )) || (defined(_MSC_VER) && defined(_M_AMD64)) |
| 117 | #define PAD_AVAIL_IN 6 |
| 118 | #define PAD_AVAIL_OUT 258 |
| 119 | #else |
| 120 | #define PAD_AVAIL_IN 5 |
| 121 | #define PAD_AVAIL_OUT 257 |
| 122 | #endif |
| 123 | |
| 124 | /* copy state to local variables */ |
| 125 | state = (struct inflate_state FAR *)strm->state; |
| 126 | |
| 127 | ar.in = strm->next_in; |
| 128 | ar.last = ar.in + (strm->avail_in - PAD_AVAIL_IN); |
| 129 | ar.out = strm->next_out; |
| 130 | ar.beg = ar.out - (start - strm->avail_out); |
| 131 | ar.end = ar.out + (strm->avail_out - PAD_AVAIL_OUT); |
| 132 | ar.wsize = state->wsize; |
| 133 | ar.write = state->wnext; |
| 134 | ar.window = state->window; |
| 135 | ar.hold = state->hold; |
| 136 | ar.bits = state->bits; |
| 137 | ar.lcode = state->lencode; |
| 138 | ar.dcode = state->distcode; |
| 139 | ar.lmask = (1U << state->lenbits) - 1; |
| 140 | ar.dmask = (1U << state->distbits) - 1; |
| 141 | |
| 142 | /* decode literals and length/distances until end-of-block or not enough |
| 143 | input data or output space */ |
| 144 | |
| 145 | /* align in on 1/2 hold size boundary */ |
| 146 | while (((size_t)(void *)ar.in & (sizeof(ar.hold) / 2 - 1)) != 0) { |
| 147 | ar.hold += (unsigned long)*ar.in++ << ar.bits; |
| 148 | ar.bits += 8; |
| 149 | } |
| 150 | |
| 151 | inffas8664fnc(&ar); |
| 152 | |
| 153 | if (ar.status > 1) { |
| 154 | if (ar.status == 2) |
| 155 | strm->msg = "invalid literal/length code"; |
| 156 | else if (ar.status == 3) |
| 157 | strm->msg = "invalid distance code"; |
| 158 | else |
| 159 | strm->msg = "invalid distance too far back"; |
| 160 | state->mode = BAD; |
| 161 | } |
| 162 | else if ( ar.status == 1 ) { |
| 163 | state->mode = TYPE; |
| 164 | } |
| 165 | |
| 166 | /* return unused bytes (on entry, bits < 8, so in won't go too far back) */ |
| 167 | ar.len = ar.bits >> 3; |
| 168 | ar.in -= ar.len; |
| 169 | ar.bits -= ar.len << 3; |
| 170 | ar.hold &= (1U << ar.bits) - 1; |
| 171 | |
| 172 | /* update state and return */ |
| 173 | strm->next_in = ar.in; |
| 174 | strm->next_out = ar.out; |
| 175 | strm->avail_in = (unsigned)(ar.in < ar.last ? |
| 176 | PAD_AVAIL_IN + (ar.last - ar.in) : |
| 177 | PAD_AVAIL_IN - (ar.in - ar.last)); |
| 178 | strm->avail_out = (unsigned)(ar.out < ar.end ? |
| 179 | PAD_AVAIL_OUT + (ar.end - ar.out) : |
| 180 | PAD_AVAIL_OUT - (ar.out - ar.end)); |
| 181 | state->hold = (unsigned long)ar.hold; |
| 182 | state->bits = ar.bits; |
| 183 | return; |
| 184 | } |
| 185 | |
| 186 | #endif |
| --- a/compat/zlib/contrib/masmx64/inffas8664.c | |
| +++ b/compat/zlib/contrib/masmx64/inffas8664.c | |
| @@ -1,186 +0,0 @@ | |
D
compat/zlib/contrib/masmx64/inffasx64.asm
-396
| --- a/compat/zlib/contrib/masmx64/inffasx64.asm | ||
| +++ b/compat/zlib/contrib/masmx64/inffasx64.asm | ||
| @@ -1,396 +0,0 @@ | ||
| 1 | -; inffasx64.asm is a hand tuned assembler version of inffast.c - fast decoding | |
| 2 | -; version for AMD64 on Windows using Microsoft C compiler | |
| 3 | -; | |
| 4 | -; inffasx64.asm is automatically convert from AMD64 portion of inffas86.c | |
| 5 | -; inffasx64.asm is called by inffas8664.c, which contain more info. | |
| 6 | - | |
| 7 | - | |
| 8 | -; to compile this file, I use option | |
| 9 | -; ml64.exe /Flinffasx64 /c /Zi inffasx64.asm | |
| 10 | -; with Microsoft Macro Assembler (x64) for AMD64 | |
| 11 | -; | |
| 12 | - | |
| 13 | -; This file compile with Microsoft Macro Assembler (x64) for AMD64 | |
| 14 | -; | |
| 15 | -; ml64.exe is given with Visual Studio 2005/2008/2010 and Windows WDK | |
| 16 | -; | |
| 17 | -; (you can get Windows WDK with ml64 for AMD64 from | |
| 18 | -; http://www.microsoft.com/whdc/Devtools/wdk/default.mspx for low price) | |
| 19 | -; | |
| 20 | - | |
| 21 | - | |
| 22 | -.code | |
| 23 | -inffas8664fnc PROC | |
| 24 | - | |
| 25 | -; see http://weblogs.asp.net/oldnewthing/archive/2004/01/14/58579.aspx and | |
| 26 | -; http://msdn.microsoft.com/library/en-us/kmarch/hh/kmarch/64bitAMD_8e951dd2-ee77-4728-8702-55ce4b5dd24a.xml.asp | |
| 27 | -; | |
| 28 | -; All registers must be preserved across the call, except for | |
| 29 | -; rax, rcx, rdx, r8, r-9, r10, and r11, which are scratch. | |
| 30 | - | |
| 31 | - | |
| 32 | - mov [rsp-8],rsi | |
| 33 | - mov [rsp-16],rdi | |
| 34 | - mov [rsp-24],r12 | |
| 35 | - mov [rsp-32],r13 | |
| 36 | - mov [rsp-40],r14 | |
| 37 | - mov [rsp-48],r15 | |
| 38 | - mov [rsp-56],rbx | |
| 39 | - | |
| 40 | - mov rax,rcx | |
| 41 | - | |
| 42 | - mov [rax+8], rbp ; /* save regs rbp and rsp */ | |
| 43 | - mov [rax], rsp | |
| 44 | - | |
| 45 | - mov rsp, rax ; /* make rsp point to &ar */ | |
| 46 | - | |
| 47 | - mov rsi, [rsp+16] ; /* rsi = in */ | |
| 48 | - mov rdi, [rsp+32] ; /* rdi = out */ | |
| 49 | - mov r9, [rsp+24] ; /* r9 = last */ | |
| 50 | - mov r10, [rsp+48] ; /* r10 = end */ | |
| 51 | - mov rbp, [rsp+64] ; /* rbp = lcode */ | |
| 52 | - mov r11, [rsp+72] ; /* r11 = dcode */ | |
| 53 | - mov rdx, [rsp+80] ; /* rdx = hold */ | |
| 54 | - mov ebx, [rsp+88] ; /* ebx = bits */ | |
| 55 | - mov r12d, [rsp+100] ; /* r12d = lmask */ | |
| 56 | - mov r13d, [rsp+104] ; /* r13d = dmask */ | |
| 57 | - ; /* r14d = len */ | |
| 58 | - ; /* r15d = dist */ | |
| 59 | - | |
| 60 | - | |
| 61 | - cld | |
| 62 | - cmp r10, rdi | |
| 63 | - je L_one_time ; /* if only one decode left */ | |
| 64 | - cmp r9, rsi | |
| 65 | - | |
| 66 | - jne L_do_loop | |
| 67 | - | |
| 68 | - | |
| 69 | -L_one_time: | |
| 70 | - mov r8, r12 ; /* r8 = lmask */ | |
| 71 | - cmp bl, 32 | |
| 72 | - ja L_get_length_code_one_time | |
| 73 | - | |
| 74 | - lodsd ; /* eax = *(uint *)in++ */ | |
| 75 | - mov cl, bl ; /* cl = bits, needs it for shifting */ | |
| 76 | - add bl, 32 ; /* bits += 32 */ | |
| 77 | - shl rax, cl | |
| 78 | - or rdx, rax ; /* hold |= *((uint *)in)++ << bits */ | |
| 79 | - jmp L_get_length_code_one_time | |
| 80 | - | |
| 81 | -ALIGN 4 | |
| 82 | -L_while_test: | |
| 83 | - cmp r10, rdi | |
| 84 | - jbe L_break_loop | |
| 85 | - cmp r9, rsi | |
| 86 | - jbe L_break_loop | |
| 87 | - | |
| 88 | -L_do_loop: | |
| 89 | - mov r8, r12 ; /* r8 = lmask */ | |
| 90 | - cmp bl, 32 | |
| 91 | - ja L_get_length_code ; /* if (32 < bits) */ | |
| 92 | - | |
| 93 | - lodsd ; /* eax = *(uint *)in++ */ | |
| 94 | - mov cl, bl ; /* cl = bits, needs it for shifting */ | |
| 95 | - add bl, 32 ; /* bits += 32 */ | |
| 96 | - shl rax, cl | |
| 97 | - or rdx, rax ; /* hold |= *((uint *)in)++ << bits */ | |
| 98 | - | |
| 99 | -L_get_length_code: | |
| 100 | - and r8, rdx ; /* r8 &= hold */ | |
| 101 | - mov eax, [rbp+r8*4] ; /* eax = lcode[hold & lmask] */ | |
| 102 | - | |
| 103 | - mov cl, ah ; /* cl = this.bits */ | |
| 104 | - sub bl, ah ; /* bits -= this.bits */ | |
| 105 | - shr rdx, cl ; /* hold >>= this.bits */ | |
| 106 | - | |
| 107 | - test al, al | |
| 108 | - jnz L_test_for_length_base ; /* if (op != 0) 45.7% */ | |
| 109 | - | |
| 110 | - mov r8, r12 ; /* r8 = lmask */ | |
| 111 | - shr eax, 16 ; /* output this.val char */ | |
| 112 | - stosb | |
| 113 | - | |
| 114 | -L_get_length_code_one_time: | |
| 115 | - and r8, rdx ; /* r8 &= hold */ | |
| 116 | - mov eax, [rbp+r8*4] ; /* eax = lcode[hold & lmask] */ | |
| 117 | - | |
| 118 | -L_dolen: | |
| 119 | - mov cl, ah ; /* cl = this.bits */ | |
| 120 | - sub bl, ah ; /* bits -= this.bits */ | |
| 121 | - shr rdx, cl ; /* hold >>= this.bits */ | |
| 122 | - | |
| 123 | - test al, al | |
| 124 | - jnz L_test_for_length_base ; /* if (op != 0) 45.7% */ | |
| 125 | - | |
| 126 | - shr eax, 16 ; /* output this.val char */ | |
| 127 | - stosb | |
| 128 | - jmp L_while_test | |
| 129 | - | |
| 130 | -ALIGN 4 | |
| 131 | -L_test_for_length_base: | |
| 132 | - mov r14d, eax ; /* len = this */ | |
| 133 | - shr r14d, 16 ; /* len = this.val */ | |
| 134 | - mov cl, al | |
| 135 | - | |
| 136 | - test al, 16 | |
| 137 | - jz L_test_for_second_level_length ; /* if ((op & 16) == 0) 8% */ | |
| 138 | - and cl, 15 ; /* op &= 15 */ | |
| 139 | - jz L_decode_distance ; /* if (!op) */ | |
| 140 | - | |
| 141 | -L_add_bits_to_len: | |
| 142 | - sub bl, cl | |
| 143 | - xor eax, eax | |
| 144 | - inc eax | |
| 145 | - shl eax, cl | |
| 146 | - dec eax | |
| 147 | - and eax, edx ; /* eax &= hold */ | |
| 148 | - shr rdx, cl | |
| 149 | - add r14d, eax ; /* len += hold & mask[op] */ | |
| 150 | - | |
| 151 | -L_decode_distance: | |
| 152 | - mov r8, r13 ; /* r8 = dmask */ | |
| 153 | - cmp bl, 32 | |
| 154 | - ja L_get_distance_code ; /* if (32 < bits) */ | |
| 155 | - | |
| 156 | - lodsd ; /* eax = *(uint *)in++ */ | |
| 157 | - mov cl, bl ; /* cl = bits, needs it for shifting */ | |
| 158 | - add bl, 32 ; /* bits += 32 */ | |
| 159 | - shl rax, cl | |
| 160 | - or rdx, rax ; /* hold |= *((uint *)in)++ << bits */ | |
| 161 | - | |
| 162 | -L_get_distance_code: | |
| 163 | - and r8, rdx ; /* r8 &= hold */ | |
| 164 | - mov eax, [r11+r8*4] ; /* eax = dcode[hold & dmask] */ | |
| 165 | - | |
| 166 | -L_dodist: | |
| 167 | - mov r15d, eax ; /* dist = this */ | |
| 168 | - shr r15d, 16 ; /* dist = this.val */ | |
| 169 | - mov cl, ah | |
| 170 | - sub bl, ah ; /* bits -= this.bits */ | |
| 171 | - shr rdx, cl ; /* hold >>= this.bits */ | |
| 172 | - mov cl, al ; /* cl = this.op */ | |
| 173 | - | |
| 174 | - test al, 16 ; /* if ((op & 16) == 0) */ | |
| 175 | - jz L_test_for_second_level_dist | |
| 176 | - and cl, 15 ; /* op &= 15 */ | |
| 177 | - jz L_check_dist_one | |
| 178 | - | |
| 179 | -L_add_bits_to_dist: | |
| 180 | - sub bl, cl | |
| 181 | - xor eax, eax | |
| 182 | - inc eax | |
| 183 | - shl eax, cl | |
| 184 | - dec eax ; /* (1 << op) - 1 */ | |
| 185 | - and eax, edx ; /* eax &= hold */ | |
| 186 | - shr rdx, cl | |
| 187 | - add r15d, eax ; /* dist += hold & ((1 << op) - 1) */ | |
| 188 | - | |
| 189 | -L_check_window: | |
| 190 | - mov r8, rsi ; /* save in so from can use it's reg */ | |
| 191 | - mov rax, rdi | |
| 192 | - sub rax, [rsp+40] ; /* nbytes = out - beg */ | |
| 193 | - | |
| 194 | - cmp eax, r15d | |
| 195 | - jb L_clip_window ; /* if (dist > nbytes) 4.2% */ | |
| 196 | - | |
| 197 | - mov ecx, r14d ; /* ecx = len */ | |
| 198 | - mov rsi, rdi | |
| 199 | - sub rsi, r15 ; /* from = out - dist */ | |
| 200 | - | |
| 201 | - sar ecx, 1 | |
| 202 | - jnc L_copy_two ; /* if len % 2 == 0 */ | |
| 203 | - | |
| 204 | - rep movsw | |
| 205 | - mov al, [rsi] | |
| 206 | - mov [rdi], al | |
| 207 | - inc rdi | |
| 208 | - | |
| 209 | - mov rsi, r8 ; /* move in back to %rsi, toss from */ | |
| 210 | - jmp L_while_test | |
| 211 | - | |
| 212 | -L_copy_two: | |
| 213 | - rep movsw | |
| 214 | - mov rsi, r8 ; /* move in back to %rsi, toss from */ | |
| 215 | - jmp L_while_test | |
| 216 | - | |
| 217 | -ALIGN 4 | |
| 218 | -L_check_dist_one: | |
| 219 | - cmp r15d, 1 ; /* if dist 1, is a memset */ | |
| 220 | - jne L_check_window | |
| 221 | - cmp [rsp+40], rdi ; /* if out == beg, outside window */ | |
| 222 | - je L_check_window | |
| 223 | - | |
| 224 | - mov ecx, r14d ; /* ecx = len */ | |
| 225 | - mov al, [rdi-1] | |
| 226 | - mov ah, al | |
| 227 | - | |
| 228 | - sar ecx, 1 | |
| 229 | - jnc L_set_two | |
| 230 | - mov [rdi], al | |
| 231 | - inc rdi | |
| 232 | - | |
| 233 | -L_set_two: | |
| 234 | - rep stosw | |
| 235 | - jmp L_while_test | |
| 236 | - | |
| 237 | -ALIGN 4 | |
| 238 | -L_test_for_second_level_length: | |
| 239 | - test al, 64 | |
| 240 | - jnz L_test_for_end_of_block ; /* if ((op & 64) != 0) */ | |
| 241 | - | |
| 242 | - xor eax, eax | |
| 243 | - inc eax | |
| 244 | - shl eax, cl | |
| 245 | - dec eax | |
| 246 | - and eax, edx ; /* eax &= hold */ | |
| 247 | - add eax, r14d ; /* eax += len */ | |
| 248 | - mov eax, [rbp+rax*4] ; /* eax = lcode[val+(hold&mask[op])]*/ | |
| 249 | - jmp L_dolen | |
| 250 | - | |
| 251 | -ALIGN 4 | |
| 252 | -L_test_for_second_level_dist: | |
| 253 | - test al, 64 | |
| 254 | - jnz L_invalid_distance_code ; /* if ((op & 64) != 0) */ | |
| 255 | - | |
| 256 | - xor eax, eax | |
| 257 | - inc eax | |
| 258 | - shl eax, cl | |
| 259 | - dec eax | |
| 260 | - and eax, edx ; /* eax &= hold */ | |
| 261 | - add eax, r15d ; /* eax += dist */ | |
| 262 | - mov eax, [r11+rax*4] ; /* eax = dcode[val+(hold&mask[op])]*/ | |
| 263 | - jmp L_dodist | |
| 264 | - | |
| 265 | -ALIGN 4 | |
| 266 | -L_clip_window: | |
| 267 | - mov ecx, eax ; /* ecx = nbytes */ | |
| 268 | - mov eax, [rsp+92] ; /* eax = wsize, prepare for dist cmp */ | |
| 269 | - neg ecx ; /* nbytes = -nbytes */ | |
| 270 | - | |
| 271 | - cmp eax, r15d | |
| 272 | - jb L_invalid_distance_too_far ; /* if (dist > wsize) */ | |
| 273 | - | |
| 274 | - add ecx, r15d ; /* nbytes = dist - nbytes */ | |
| 275 | - cmp dword ptr [rsp+96], 0 | |
| 276 | - jne L_wrap_around_window ; /* if (write != 0) */ | |
| 277 | - | |
| 278 | - mov rsi, [rsp+56] ; /* from = window */ | |
| 279 | - sub eax, ecx ; /* eax -= nbytes */ | |
| 280 | - add rsi, rax ; /* from += wsize - nbytes */ | |
| 281 | - | |
| 282 | - mov eax, r14d ; /* eax = len */ | |
| 283 | - cmp r14d, ecx | |
| 284 | - jbe L_do_copy ; /* if (nbytes >= len) */ | |
| 285 | - | |
| 286 | - sub eax, ecx ; /* eax -= nbytes */ | |
| 287 | - rep movsb | |
| 288 | - mov rsi, rdi | |
| 289 | - sub rsi, r15 ; /* from = &out[ -dist ] */ | |
| 290 | - jmp L_do_copy | |
| 291 | - | |
| 292 | -ALIGN 4 | |
| 293 | -L_wrap_around_window: | |
| 294 | - mov eax, [rsp+96] ; /* eax = write */ | |
| 295 | - cmp ecx, eax | |
| 296 | - jbe L_contiguous_in_window ; /* if (write >= nbytes) */ | |
| 297 | - | |
| 298 | - mov esi, [rsp+92] ; /* from = wsize */ | |
| 299 | - add rsi, [rsp+56] ; /* from += window */ | |
| 300 | - add rsi, rax ; /* from += write */ | |
| 301 | - sub rsi, rcx ; /* from -= nbytes */ | |
| 302 | - sub ecx, eax ; /* nbytes -= write */ | |
| 303 | - | |
| 304 | - mov eax, r14d ; /* eax = len */ | |
| 305 | - cmp eax, ecx | |
| 306 | - jbe L_do_copy ; /* if (nbytes >= len) */ | |
| 307 | - | |
| 308 | - sub eax, ecx ; /* len -= nbytes */ | |
| 309 | - rep movsb | |
| 310 | - mov rsi, [rsp+56] ; /* from = window */ | |
| 311 | - mov ecx, [rsp+96] ; /* nbytes = write */ | |
| 312 | - cmp eax, ecx | |
| 313 | - jbe L_do_copy ; /* if (nbytes >= len) */ | |
| 314 | - | |
| 315 | - sub eax, ecx ; /* len -= nbytes */ | |
| 316 | - rep movsb | |
| 317 | - mov rsi, rdi | |
| 318 | - sub rsi, r15 ; /* from = out - dist */ | |
| 319 | - jmp L_do_copy | |
| 320 | - | |
| 321 | -ALIGN 4 | |
| 322 | -L_contiguous_in_window: | |
| 323 | - mov rsi, [rsp+56] ; /* rsi = window */ | |
| 324 | - add rsi, rax | |
| 325 | - sub rsi, rcx ; /* from += write - nbytes */ | |
| 326 | - | |
| 327 | - mov eax, r14d ; /* eax = len */ | |
| 328 | - cmp eax, ecx | |
| 329 | - jbe L_do_copy ; /* if (nbytes >= len) */ | |
| 330 | - | |
| 331 | - sub eax, ecx ; /* len -= nbytes */ | |
| 332 | - rep movsb | |
| 333 | - mov rsi, rdi | |
| 334 | - sub rsi, r15 ; /* from = out - dist */ | |
| 335 | - jmp L_do_copy ; /* if (nbytes >= len) */ | |
| 336 | - | |
| 337 | -ALIGN 4 | |
| 338 | -L_do_copy: | |
| 339 | - mov ecx, eax ; /* ecx = len */ | |
| 340 | - rep movsb | |
| 341 | - | |
| 342 | - mov rsi, r8 ; /* move in back to %esi, toss from */ | |
| 343 | - jmp L_while_test | |
| 344 | - | |
| 345 | -L_test_for_end_of_block: | |
| 346 | - test al, 32 | |
| 347 | - jz L_invalid_literal_length_code | |
| 348 | - mov dword ptr [rsp+116], 1 | |
| 349 | - jmp L_break_loop_with_status | |
| 350 | - | |
| 351 | -L_invalid_literal_length_code: | |
| 352 | - mov dword ptr [rsp+116], 2 | |
| 353 | - jmp L_break_loop_with_status | |
| 354 | - | |
| 355 | -L_invalid_distance_code: | |
| 356 | - mov dword ptr [rsp+116], 3 | |
| 357 | - jmp L_break_loop_with_status | |
| 358 | - | |
| 359 | -L_invalid_distance_too_far: | |
| 360 | - mov dword ptr [rsp+116], 4 | |
| 361 | - jmp L_break_loop_with_status | |
| 362 | - | |
| 363 | -L_break_loop: | |
| 364 | - mov dword ptr [rsp+116], 0 | |
| 365 | - | |
| 366 | -L_break_loop_with_status: | |
| 367 | -; /* put in, out, bits, and hold back into ar and pop esp */ | |
| 368 | - mov [rsp+16], rsi ; /* in */ | |
| 369 | - mov [rsp+32], rdi ; /* out */ | |
| 370 | - mov [rsp+88], ebx ; /* bits */ | |
| 371 | - mov [rsp+80], rdx ; /* hold */ | |
| 372 | - | |
| 373 | - mov rax, [rsp] ; /* restore rbp and rsp */ | |
| 374 | - mov rbp, [rsp+8] | |
| 375 | - mov rsp, rax | |
| 376 | - | |
| 377 | - | |
| 378 | - | |
| 379 | - mov rsi,[rsp-8] | |
| 380 | - mov rdi,[rsp-16] | |
| 381 | - mov r12,[rsp-24] | |
| 382 | - mov r13,[rsp-32] | |
| 383 | - mov r14,[rsp-40] | |
| 384 | - mov r15,[rsp-48] | |
| 385 | - mov rbx,[rsp-56] | |
| 386 | - | |
| 387 | - ret 0 | |
| 388 | -; : | |
| 389 | -; : "m" (ar) | |
| 390 | -; : "memory", "%rax", "%rbx", "%rcx", "%rdx", "%rsi", "%rdi", | |
| 391 | -; "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15" | |
| 392 | -; ); | |
| 393 | - | |
| 394 | -inffas8664fnc ENDP | |
| 395 | -;_TEXT ENDS | |
| 396 | -END |
| --- a/compat/zlib/contrib/masmx64/inffasx64.asm | |
| +++ b/compat/zlib/contrib/masmx64/inffasx64.asm | |
| @@ -1,396 +0,0 @@ | |
| 1 | ; inffasx64.asm is a hand tuned assembler version of inffast.c - fast decoding |
| 2 | ; version for AMD64 on Windows using Microsoft C compiler |
| 3 | ; |
| 4 | ; inffasx64.asm is automatically convert from AMD64 portion of inffas86.c |
| 5 | ; inffasx64.asm is called by inffas8664.c, which contain more info. |
| 6 | |
| 7 | |
| 8 | ; to compile this file, I use option |
| 9 | ; ml64.exe /Flinffasx64 /c /Zi inffasx64.asm |
| 10 | ; with Microsoft Macro Assembler (x64) for AMD64 |
| 11 | ; |
| 12 | |
| 13 | ; This file compile with Microsoft Macro Assembler (x64) for AMD64 |
| 14 | ; |
| 15 | ; ml64.exe is given with Visual Studio 2005/2008/2010 and Windows WDK |
| 16 | ; |
| 17 | ; (you can get Windows WDK with ml64 for AMD64 from |
| 18 | ; http://www.microsoft.com/whdc/Devtools/wdk/default.mspx for low price) |
| 19 | ; |
| 20 | |
| 21 | |
| 22 | .code |
| 23 | inffas8664fnc PROC |
| 24 | |
| 25 | ; see http://weblogs.asp.net/oldnewthing/archive/2004/01/14/58579.aspx and |
| 26 | ; http://msdn.microsoft.com/library/en-us/kmarch/hh/kmarch/64bitAMD_8e951dd2-ee77-4728-8702-55ce4b5dd24a.xml.asp |
| 27 | ; |
| 28 | ; All registers must be preserved across the call, except for |
| 29 | ; rax, rcx, rdx, r8, r-9, r10, and r11, which are scratch. |
| 30 | |
| 31 | |
| 32 | mov [rsp-8],rsi |
| 33 | mov [rsp-16],rdi |
| 34 | mov [rsp-24],r12 |
| 35 | mov [rsp-32],r13 |
| 36 | mov [rsp-40],r14 |
| 37 | mov [rsp-48],r15 |
| 38 | mov [rsp-56],rbx |
| 39 | |
| 40 | mov rax,rcx |
| 41 | |
| 42 | mov [rax+8], rbp ; /* save regs rbp and rsp */ |
| 43 | mov [rax], rsp |
| 44 | |
| 45 | mov rsp, rax ; /* make rsp point to &ar */ |
| 46 | |
| 47 | mov rsi, [rsp+16] ; /* rsi = in */ |
| 48 | mov rdi, [rsp+32] ; /* rdi = out */ |
| 49 | mov r9, [rsp+24] ; /* r9 = last */ |
| 50 | mov r10, [rsp+48] ; /* r10 = end */ |
| 51 | mov rbp, [rsp+64] ; /* rbp = lcode */ |
| 52 | mov r11, [rsp+72] ; /* r11 = dcode */ |
| 53 | mov rdx, [rsp+80] ; /* rdx = hold */ |
| 54 | mov ebx, [rsp+88] ; /* ebx = bits */ |
| 55 | mov r12d, [rsp+100] ; /* r12d = lmask */ |
| 56 | mov r13d, [rsp+104] ; /* r13d = dmask */ |
| 57 | ; /* r14d = len */ |
| 58 | ; /* r15d = dist */ |
| 59 | |
| 60 | |
| 61 | cld |
| 62 | cmp r10, rdi |
| 63 | je L_one_time ; /* if only one decode left */ |
| 64 | cmp r9, rsi |
| 65 | |
| 66 | jne L_do_loop |
| 67 | |
| 68 | |
| 69 | L_one_time: |
| 70 | mov r8, r12 ; /* r8 = lmask */ |
| 71 | cmp bl, 32 |
| 72 | ja L_get_length_code_one_time |
| 73 | |
| 74 | lodsd ; /* eax = *(uint *)in++ */ |
| 75 | mov cl, bl ; /* cl = bits, needs it for shifting */ |
| 76 | add bl, 32 ; /* bits += 32 */ |
| 77 | shl rax, cl |
| 78 | or rdx, rax ; /* hold |= *((uint *)in)++ << bits */ |
| 79 | jmp L_get_length_code_one_time |
| 80 | |
| 81 | ALIGN 4 |
| 82 | L_while_test: |
| 83 | cmp r10, rdi |
| 84 | jbe L_break_loop |
| 85 | cmp r9, rsi |
| 86 | jbe L_break_loop |
| 87 | |
| 88 | L_do_loop: |
| 89 | mov r8, r12 ; /* r8 = lmask */ |
| 90 | cmp bl, 32 |
| 91 | ja L_get_length_code ; /* if (32 < bits) */ |
| 92 | |
| 93 | lodsd ; /* eax = *(uint *)in++ */ |
| 94 | mov cl, bl ; /* cl = bits, needs it for shifting */ |
| 95 | add bl, 32 ; /* bits += 32 */ |
| 96 | shl rax, cl |
| 97 | or rdx, rax ; /* hold |= *((uint *)in)++ << bits */ |
| 98 | |
| 99 | L_get_length_code: |
| 100 | and r8, rdx ; /* r8 &= hold */ |
| 101 | mov eax, [rbp+r8*4] ; /* eax = lcode[hold & lmask] */ |
| 102 | |
| 103 | mov cl, ah ; /* cl = this.bits */ |
| 104 | sub bl, ah ; /* bits -= this.bits */ |
| 105 | shr rdx, cl ; /* hold >>= this.bits */ |
| 106 | |
| 107 | test al, al |
| 108 | jnz L_test_for_length_base ; /* if (op != 0) 45.7% */ |
| 109 | |
| 110 | mov r8, r12 ; /* r8 = lmask */ |
| 111 | shr eax, 16 ; /* output this.val char */ |
| 112 | stosb |
| 113 | |
| 114 | L_get_length_code_one_time: |
| 115 | and r8, rdx ; /* r8 &= hold */ |
| 116 | mov eax, [rbp+r8*4] ; /* eax = lcode[hold & lmask] */ |
| 117 | |
| 118 | L_dolen: |
| 119 | mov cl, ah ; /* cl = this.bits */ |
| 120 | sub bl, ah ; /* bits -= this.bits */ |
| 121 | shr rdx, cl ; /* hold >>= this.bits */ |
| 122 | |
| 123 | test al, al |
| 124 | jnz L_test_for_length_base ; /* if (op != 0) 45.7% */ |
| 125 | |
| 126 | shr eax, 16 ; /* output this.val char */ |
| 127 | stosb |
| 128 | jmp L_while_test |
| 129 | |
| 130 | ALIGN 4 |
| 131 | L_test_for_length_base: |
| 132 | mov r14d, eax ; /* len = this */ |
| 133 | shr r14d, 16 ; /* len = this.val */ |
| 134 | mov cl, al |
| 135 | |
| 136 | test al, 16 |
| 137 | jz L_test_for_second_level_length ; /* if ((op & 16) == 0) 8% */ |
| 138 | and cl, 15 ; /* op &= 15 */ |
| 139 | jz L_decode_distance ; /* if (!op) */ |
| 140 | |
| 141 | L_add_bits_to_len: |
| 142 | sub bl, cl |
| 143 | xor eax, eax |
| 144 | inc eax |
| 145 | shl eax, cl |
| 146 | dec eax |
| 147 | and eax, edx ; /* eax &= hold */ |
| 148 | shr rdx, cl |
| 149 | add r14d, eax ; /* len += hold & mask[op] */ |
| 150 | |
| 151 | L_decode_distance: |
| 152 | mov r8, r13 ; /* r8 = dmask */ |
| 153 | cmp bl, 32 |
| 154 | ja L_get_distance_code ; /* if (32 < bits) */ |
| 155 | |
| 156 | lodsd ; /* eax = *(uint *)in++ */ |
| 157 | mov cl, bl ; /* cl = bits, needs it for shifting */ |
| 158 | add bl, 32 ; /* bits += 32 */ |
| 159 | shl rax, cl |
| 160 | or rdx, rax ; /* hold |= *((uint *)in)++ << bits */ |
| 161 | |
| 162 | L_get_distance_code: |
| 163 | and r8, rdx ; /* r8 &= hold */ |
| 164 | mov eax, [r11+r8*4] ; /* eax = dcode[hold & dmask] */ |
| 165 | |
| 166 | L_dodist: |
| 167 | mov r15d, eax ; /* dist = this */ |
| 168 | shr r15d, 16 ; /* dist = this.val */ |
| 169 | mov cl, ah |
| 170 | sub bl, ah ; /* bits -= this.bits */ |
| 171 | shr rdx, cl ; /* hold >>= this.bits */ |
| 172 | mov cl, al ; /* cl = this.op */ |
| 173 | |
| 174 | test al, 16 ; /* if ((op & 16) == 0) */ |
| 175 | jz L_test_for_second_level_dist |
| 176 | and cl, 15 ; /* op &= 15 */ |
| 177 | jz L_check_dist_one |
| 178 | |
| 179 | L_add_bits_to_dist: |
| 180 | sub bl, cl |
| 181 | xor eax, eax |
| 182 | inc eax |
| 183 | shl eax, cl |
| 184 | dec eax ; /* (1 << op) - 1 */ |
| 185 | and eax, edx ; /* eax &= hold */ |
| 186 | shr rdx, cl |
| 187 | add r15d, eax ; /* dist += hold & ((1 << op) - 1) */ |
| 188 | |
| 189 | L_check_window: |
| 190 | mov r8, rsi ; /* save in so from can use it's reg */ |
| 191 | mov rax, rdi |
| 192 | sub rax, [rsp+40] ; /* nbytes = out - beg */ |
| 193 | |
| 194 | cmp eax, r15d |
| 195 | jb L_clip_window ; /* if (dist > nbytes) 4.2% */ |
| 196 | |
| 197 | mov ecx, r14d ; /* ecx = len */ |
| 198 | mov rsi, rdi |
| 199 | sub rsi, r15 ; /* from = out - dist */ |
| 200 | |
| 201 | sar ecx, 1 |
| 202 | jnc L_copy_two ; /* if len % 2 == 0 */ |
| 203 | |
| 204 | rep movsw |
| 205 | mov al, [rsi] |
| 206 | mov [rdi], al |
| 207 | inc rdi |
| 208 | |
| 209 | mov rsi, r8 ; /* move in back to %rsi, toss from */ |
| 210 | jmp L_while_test |
| 211 | |
| 212 | L_copy_two: |
| 213 | rep movsw |
| 214 | mov rsi, r8 ; /* move in back to %rsi, toss from */ |
| 215 | jmp L_while_test |
| 216 | |
| 217 | ALIGN 4 |
| 218 | L_check_dist_one: |
| 219 | cmp r15d, 1 ; /* if dist 1, is a memset */ |
| 220 | jne L_check_window |
| 221 | cmp [rsp+40], rdi ; /* if out == beg, outside window */ |
| 222 | je L_check_window |
| 223 | |
| 224 | mov ecx, r14d ; /* ecx = len */ |
| 225 | mov al, [rdi-1] |
| 226 | mov ah, al |
| 227 | |
| 228 | sar ecx, 1 |
| 229 | jnc L_set_two |
| 230 | mov [rdi], al |
| 231 | inc rdi |
| 232 | |
| 233 | L_set_two: |
| 234 | rep stosw |
| 235 | jmp L_while_test |
| 236 | |
| 237 | ALIGN 4 |
| 238 | L_test_for_second_level_length: |
| 239 | test al, 64 |
| 240 | jnz L_test_for_end_of_block ; /* if ((op & 64) != 0) */ |
| 241 | |
| 242 | xor eax, eax |
| 243 | inc eax |
| 244 | shl eax, cl |
| 245 | dec eax |
| 246 | and eax, edx ; /* eax &= hold */ |
| 247 | add eax, r14d ; /* eax += len */ |
| 248 | mov eax, [rbp+rax*4] ; /* eax = lcode[val+(hold&mask[op])]*/ |
| 249 | jmp L_dolen |
| 250 | |
| 251 | ALIGN 4 |
| 252 | L_test_for_second_level_dist: |
| 253 | test al, 64 |
| 254 | jnz L_invalid_distance_code ; /* if ((op & 64) != 0) */ |
| 255 | |
| 256 | xor eax, eax |
| 257 | inc eax |
| 258 | shl eax, cl |
| 259 | dec eax |
| 260 | and eax, edx ; /* eax &= hold */ |
| 261 | add eax, r15d ; /* eax += dist */ |
| 262 | mov eax, [r11+rax*4] ; /* eax = dcode[val+(hold&mask[op])]*/ |
| 263 | jmp L_dodist |
| 264 | |
| 265 | ALIGN 4 |
| 266 | L_clip_window: |
| 267 | mov ecx, eax ; /* ecx = nbytes */ |
| 268 | mov eax, [rsp+92] ; /* eax = wsize, prepare for dist cmp */ |
| 269 | neg ecx ; /* nbytes = -nbytes */ |
| 270 | |
| 271 | cmp eax, r15d |
| 272 | jb L_invalid_distance_too_far ; /* if (dist > wsize) */ |
| 273 | |
| 274 | add ecx, r15d ; /* nbytes = dist - nbytes */ |
| 275 | cmp dword ptr [rsp+96], 0 |
| 276 | jne L_wrap_around_window ; /* if (write != 0) */ |
| 277 | |
| 278 | mov rsi, [rsp+56] ; /* from = window */ |
| 279 | sub eax, ecx ; /* eax -= nbytes */ |
| 280 | add rsi, rax ; /* from += wsize - nbytes */ |
| 281 | |
| 282 | mov eax, r14d ; /* eax = len */ |
| 283 | cmp r14d, ecx |
| 284 | jbe L_do_copy ; /* if (nbytes >= len) */ |
| 285 | |
| 286 | sub eax, ecx ; /* eax -= nbytes */ |
| 287 | rep movsb |
| 288 | mov rsi, rdi |
| 289 | sub rsi, r15 ; /* from = &out[ -dist ] */ |
| 290 | jmp L_do_copy |
| 291 | |
| 292 | ALIGN 4 |
| 293 | L_wrap_around_window: |
| 294 | mov eax, [rsp+96] ; /* eax = write */ |
| 295 | cmp ecx, eax |
| 296 | jbe L_contiguous_in_window ; /* if (write >= nbytes) */ |
| 297 | |
| 298 | mov esi, [rsp+92] ; /* from = wsize */ |
| 299 | add rsi, [rsp+56] ; /* from += window */ |
| 300 | add rsi, rax ; /* from += write */ |
| 301 | sub rsi, rcx ; /* from -= nbytes */ |
| 302 | sub ecx, eax ; /* nbytes -= write */ |
| 303 | |
| 304 | mov eax, r14d ; /* eax = len */ |
| 305 | cmp eax, ecx |
| 306 | jbe L_do_copy ; /* if (nbytes >= len) */ |
| 307 | |
| 308 | sub eax, ecx ; /* len -= nbytes */ |
| 309 | rep movsb |
| 310 | mov rsi, [rsp+56] ; /* from = window */ |
| 311 | mov ecx, [rsp+96] ; /* nbytes = write */ |
| 312 | cmp eax, ecx |
| 313 | jbe L_do_copy ; /* if (nbytes >= len) */ |
| 314 | |
| 315 | sub eax, ecx ; /* len -= nbytes */ |
| 316 | rep movsb |
| 317 | mov rsi, rdi |
| 318 | sub rsi, r15 ; /* from = out - dist */ |
| 319 | jmp L_do_copy |
| 320 | |
| 321 | ALIGN 4 |
| 322 | L_contiguous_in_window: |
| 323 | mov rsi, [rsp+56] ; /* rsi = window */ |
| 324 | add rsi, rax |
| 325 | sub rsi, rcx ; /* from += write - nbytes */ |
| 326 | |
| 327 | mov eax, r14d ; /* eax = len */ |
| 328 | cmp eax, ecx |
| 329 | jbe L_do_copy ; /* if (nbytes >= len) */ |
| 330 | |
| 331 | sub eax, ecx ; /* len -= nbytes */ |
| 332 | rep movsb |
| 333 | mov rsi, rdi |
| 334 | sub rsi, r15 ; /* from = out - dist */ |
| 335 | jmp L_do_copy ; /* if (nbytes >= len) */ |
| 336 | |
| 337 | ALIGN 4 |
| 338 | L_do_copy: |
| 339 | mov ecx, eax ; /* ecx = len */ |
| 340 | rep movsb |
| 341 | |
| 342 | mov rsi, r8 ; /* move in back to %esi, toss from */ |
| 343 | jmp L_while_test |
| 344 | |
| 345 | L_test_for_end_of_block: |
| 346 | test al, 32 |
| 347 | jz L_invalid_literal_length_code |
| 348 | mov dword ptr [rsp+116], 1 |
| 349 | jmp L_break_loop_with_status |
| 350 | |
| 351 | L_invalid_literal_length_code: |
| 352 | mov dword ptr [rsp+116], 2 |
| 353 | jmp L_break_loop_with_status |
| 354 | |
| 355 | L_invalid_distance_code: |
| 356 | mov dword ptr [rsp+116], 3 |
| 357 | jmp L_break_loop_with_status |
| 358 | |
| 359 | L_invalid_distance_too_far: |
| 360 | mov dword ptr [rsp+116], 4 |
| 361 | jmp L_break_loop_with_status |
| 362 | |
| 363 | L_break_loop: |
| 364 | mov dword ptr [rsp+116], 0 |
| 365 | |
| 366 | L_break_loop_with_status: |
| 367 | ; /* put in, out, bits, and hold back into ar and pop esp */ |
| 368 | mov [rsp+16], rsi ; /* in */ |
| 369 | mov [rsp+32], rdi ; /* out */ |
| 370 | mov [rsp+88], ebx ; /* bits */ |
| 371 | mov [rsp+80], rdx ; /* hold */ |
| 372 | |
| 373 | mov rax, [rsp] ; /* restore rbp and rsp */ |
| 374 | mov rbp, [rsp+8] |
| 375 | mov rsp, rax |
| 376 | |
| 377 | |
| 378 | |
| 379 | mov rsi,[rsp-8] |
| 380 | mov rdi,[rsp-16] |
| 381 | mov r12,[rsp-24] |
| 382 | mov r13,[rsp-32] |
| 383 | mov r14,[rsp-40] |
| 384 | mov r15,[rsp-48] |
| 385 | mov rbx,[rsp-56] |
| 386 | |
| 387 | ret 0 |
| 388 | ; : |
| 389 | ; : "m" (ar) |
| 390 | ; : "memory", "%rax", "%rbx", "%rcx", "%rdx", "%rsi", "%rdi", |
| 391 | ; "%r8", "%r9", "%r10", "%r11", "%r12", "%r13", "%r14", "%r15" |
| 392 | ; ); |
| 393 | |
| 394 | inffas8664fnc ENDP |
| 395 | ;_TEXT ENDS |
| 396 | END |
| --- a/compat/zlib/contrib/masmx64/inffasx64.asm | |
| +++ b/compat/zlib/contrib/masmx64/inffasx64.asm | |
| @@ -1,396 +0,0 @@ | |
D
compat/zlib/contrib/masmx64/readme.txt
-28
| --- a/compat/zlib/contrib/masmx64/readme.txt | ||
| +++ b/compat/zlib/contrib/masmx64/readme.txt | ||
| @@ -1,31 +0,0 @@ | ||
| 1 | -Summary | |
| -------- | ||
| 2 | -This directory contains ASM implementations of the functions | |
| 3 | -longest_match() and inflate_fast(), for 64 bits x86 (both AMD64 and Intel EM64t), | |
| 4 | -for use with Microsoft Macro Assembler (x64) for AMD64 and Microsoft C++ 64 bits. | |
| 5 | - | |
| 6 | -gvmat64.asm is written by Gilles Vollant (2005), by using Brian Raiter 686/32 bits | |
| 7 | - assembly optimized version from Jean-loup Gailly original longest_match function | |
| 8 | - | |
| 9 | -inffasx64.asm and inffas8664.c were written by Chris Anderson, by optimizing | |
| 10 | - original function from Mark Adler | |
| 11 | - | |
| 12 | -Use instructions | |
| ----------------- | ||
| 13 | -Assemble the .asm files using MASM and put the object files into the zlib source | |
| 14 | -directory. You can also get object files here: | |
| 15 | - | |
| 16 | - http://www.winimage.com/zLibDll/zlib124_masm_obj.zip | |
| 17 | - | |
| 18 | -define ASMV and ASMINF in your project. Include inffas8664.c in your source tree, | |
| 19 | -and inffasx64.obj and gvmat64.obj as object to link. | |
| 20 | - | |
| 21 | - | |
| 22 | -Build instructions | |
| ------------------- | ||
| 23 | -run bld_64.bat with Microsoft Macro Assembler (x64) for AMD64 (ml64.exe) | |
| 24 | - | |
| 25 | -ml64.exe is given with Visual Studio 2005, Windows 2003 server DDK | |
| 26 | - | |
| 27 | -You can get Windows 2003 server DDK with ml64 and cl for AMD64 from | |
| 28 | - http://www.microsoft.com/whdc/devtools/ddk/default.mspx for low price) |
| --- a/compat/zlib/contrib/masmx64/readme.txt | |
| +++ b/compat/zlib/contrib/masmx64/readme.txt | |
| @@ -1,31 +0,0 @@ | |
| 1 | Summary |
| -------- | |
| 2 | This directory contains ASM implementations of the functions |
| 3 | longest_match() and inflate_fast(), for 64 bits x86 (both AMD64 and Intel EM64t), |
| 4 | for use with Microsoft Macro Assembler (x64) for AMD64 and Microsoft C++ 64 bits. |
| 5 | |
| 6 | gvmat64.asm is written by Gilles Vollant (2005), by using Brian Raiter 686/32 bits |
| 7 | assembly optimized version from Jean-loup Gailly original longest_match function |
| 8 | |
| 9 | inffasx64.asm and inffas8664.c were written by Chris Anderson, by optimizing |
| 10 | original function from Mark Adler |
| 11 | |
| 12 | Use instructions |
| ----------------- | |
| 13 | Assemble the .asm files using MASM and put the object files into the zlib source |
| 14 | directory. You can also get object files here: |
| 15 | |
| 16 | http://www.winimage.com/zLibDll/zlib124_masm_obj.zip |
| 17 | |
| 18 | define ASMV and ASMINF in your project. Include inffas8664.c in your source tree, |
| 19 | and inffasx64.obj and gvmat64.obj as object to link. |
| 20 | |
| 21 | |
| 22 | Build instructions |
| ------------------- | |
| 23 | run bld_64.bat with Microsoft Macro Assembler (x64) for AMD64 (ml64.exe) |
| 24 | |
| 25 | ml64.exe is given with Visual Studio 2005, Windows 2003 server DDK |
| 26 | |
| 27 | You can get Windows 2003 server DDK with ml64 and cl for AMD64 from |
| 28 | http://www.microsoft.com/whdc/devtools/ddk/default.mspx for low price) |
| --- a/compat/zlib/contrib/masmx64/readme.txt | |
| +++ b/compat/zlib/contrib/masmx64/readme.txt | |
| @@ -1,31 +0,0 @@ | |
| -------- | |
| ----------------- | |
| ------------------- | |
D
compat/zlib/contrib/masmx86/bld_ml32.bat
-2
| --- a/compat/zlib/contrib/masmx86/bld_ml32.bat | ||
| +++ b/compat/zlib/contrib/masmx86/bld_ml32.bat | ||
| @@ -1,2 +0,0 @@ | ||
| 1 | -ml /coff /Zi /c /Flmatch686.lst match686.asm | |
| 2 | -ml /coff /Zi /c /Flinffas32.lst inffas32.asm |
| --- a/compat/zlib/contrib/masmx86/bld_ml32.bat | |
| +++ b/compat/zlib/contrib/masmx86/bld_ml32.bat | |
| @@ -1,2 +0,0 @@ | |
| 1 | ml /coff /Zi /c /Flmatch686.lst match686.asm |
| 2 | ml /coff /Zi /c /Flinffas32.lst inffas32.asm |
| --- a/compat/zlib/contrib/masmx86/bld_ml32.bat | |
| +++ b/compat/zlib/contrib/masmx86/bld_ml32.bat | |
| @@ -1,2 +0,0 @@ | |
D
compat/zlib/contrib/masmx86/inffas32.asm
-1080
| --- a/compat/zlib/contrib/masmx86/inffas32.asm | ||
| +++ b/compat/zlib/contrib/masmx86/inffas32.asm | ||
| @@ -1,1080 +0,0 @@ | ||
| 1 | -;/* inffas32.asm is a hand tuned assembler version of inffast.c -- fast decoding | |
| 2 | -; * | |
| 3 | -; * inffas32.asm is derivated from inffas86.c, with translation of assembly code | |
| 4 | -; * | |
| 5 | -; * Copyright (C) 1995-2003 Mark Adler | |
| 6 | -; * For conditions of distribution and use, see copyright notice in zlib.h | |
| 7 | -; * | |
| 8 | -; * Copyright (C) 2003 Chris Anderson <[email protected]> | |
| 9 | -; * Please use the copyright conditions above. | |
| 10 | -; * | |
| 11 | -; * Mar-13-2003 -- Most of this is derived from inffast.S which is derived from | |
| 12 | -; * the gcc -S output of zlib-1.2.0/inffast.c. Zlib-1.2.0 is in beta release at | |
| 13 | -; * the moment. I have successfully compiled and tested this code with gcc2.96, | |
| 14 | -; * gcc3.2, icc5.0, msvc6.0. It is very close to the speed of inffast.S | |
| 15 | -; * compiled with gcc -DNO_MMX, but inffast.S is still faster on the P3 with MMX | |
| 16 | -; * enabled. I will attempt to merge the MMX code into this version. Newer | |
| 17 | -; * versions of this and inffast.S can be found at | |
| 18 | -; * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ | |
| 19 | -; * | |
| 20 | -; * 2005 : modification by Gilles Vollant | |
| 21 | -; */ | |
| 22 | -; For Visual C++ 4.x and higher and ML 6.x and higher | |
| 23 | -; ml.exe is in directory \MASM611C of Win95 DDK | |
| 24 | -; ml.exe is also distributed in http://www.masm32.com/masmdl.htm | |
| 25 | -; and in VC++2003 toolkit at http://msdn.microsoft.com/visualc/vctoolkit2003/ | |
| 26 | -; | |
| 27 | -; | |
| 28 | -; compile with command line option | |
| 29 | -; ml /coff /Zi /c /Flinffas32.lst inffas32.asm | |
| 30 | - | |
| 31 | -; if you define NO_GZIP (see inflate.h), compile with | |
| 32 | -; ml /coff /Zi /c /Flinffas32.lst /DNO_GUNZIP inffas32.asm | |
| 33 | - | |
| 34 | - | |
| 35 | -; zlib122sup is 0 fort zlib 1.2.2.1 and lower | |
| 36 | -; zlib122sup is 8 fort zlib 1.2.2.2 and more (with addition of dmax and head | |
| 37 | -; in inflate_state in inflate.h) | |
| 38 | -zlib1222sup equ 8 | |
| 39 | - | |
| 40 | - | |
| 41 | -IFDEF GUNZIP | |
| 42 | - INFLATE_MODE_TYPE equ 11 | |
| 43 | - INFLATE_MODE_BAD equ 26 | |
| 44 | -ELSE | |
| 45 | - IFNDEF NO_GUNZIP | |
| 46 | - INFLATE_MODE_TYPE equ 11 | |
| 47 | - INFLATE_MODE_BAD equ 26 | |
| 48 | - ELSE | |
| 49 | - INFLATE_MODE_TYPE equ 3 | |
| 50 | - INFLATE_MODE_BAD equ 17 | |
| 51 | - ENDIF | |
| 52 | -ENDIF | |
| 53 | - | |
| 54 | - | |
| 55 | -; 75 "inffast.S" | |
| 56 | -;FILE "inffast.S" | |
| 57 | - | |
| 58 | -;;;GLOBAL _inflate_fast | |
| 59 | - | |
| 60 | -;;;SECTION .text | |
| 61 | - | |
| 62 | - | |
| 63 | - | |
| 64 | - .586p | |
| 65 | - .mmx | |
| 66 | - | |
| 67 | - name inflate_fast_x86 | |
| 68 | - .MODEL FLAT | |
| 69 | - | |
| 70 | -_DATA segment | |
| 71 | -inflate_fast_use_mmx: | |
| 72 | - dd 1 | |
| 73 | - | |
| 74 | - | |
| 75 | -_TEXT segment | |
| 76 | - | |
| 77 | - | |
| 78 | - | |
| 79 | -ALIGN 4 | |
| 80 | - db 'Fast decoding Code from Chris Anderson' | |
| 81 | - db 0 | |
| 82 | - | |
| 83 | -ALIGN 4 | |
| 84 | -invalid_literal_length_code_msg: | |
| 85 | - db 'invalid literal/length code' | |
| 86 | - db 0 | |
| 87 | - | |
| 88 | -ALIGN 4 | |
| 89 | -invalid_distance_code_msg: | |
| 90 | - db 'invalid distance code' | |
| 91 | - db 0 | |
| 92 | - | |
| 93 | -ALIGN 4 | |
| 94 | -invalid_distance_too_far_msg: | |
| 95 | - db 'invalid distance too far back' | |
| 96 | - db 0 | |
| 97 | - | |
| 98 | - | |
| 99 | -ALIGN 4 | |
| 100 | -inflate_fast_mask: | |
| 101 | -dd 0 | |
| 102 | -dd 1 | |
| 103 | -dd 3 | |
| 104 | -dd 7 | |
| 105 | -dd 15 | |
| 106 | -dd 31 | |
| 107 | -dd 63 | |
| 108 | -dd 127 | |
| 109 | -dd 255 | |
| 110 | -dd 511 | |
| 111 | -dd 1023 | |
| 112 | -dd 2047 | |
| 113 | -dd 4095 | |
| 114 | -dd 8191 | |
| 115 | -dd 16383 | |
| 116 | -dd 32767 | |
| 117 | -dd 65535 | |
| 118 | -dd 131071 | |
| 119 | -dd 262143 | |
| 120 | -dd 524287 | |
| 121 | -dd 1048575 | |
| 122 | -dd 2097151 | |
| 123 | -dd 4194303 | |
| 124 | -dd 8388607 | |
| 125 | -dd 16777215 | |
| 126 | -dd 33554431 | |
| 127 | -dd 67108863 | |
| 128 | -dd 134217727 | |
| 129 | -dd 268435455 | |
| 130 | -dd 536870911 | |
| 131 | -dd 1073741823 | |
| 132 | -dd 2147483647 | |
| 133 | -dd 4294967295 | |
| 134 | - | |
| 135 | - | |
| 136 | -mode_state equ 0 ;/* state->mode */ | |
| 137 | -wsize_state equ (32+zlib1222sup) ;/* state->wsize */ | |
| 138 | -write_state equ (36+4+zlib1222sup) ;/* state->write */ | |
| 139 | -window_state equ (40+4+zlib1222sup) ;/* state->window */ | |
| 140 | -hold_state equ (44+4+zlib1222sup) ;/* state->hold */ | |
| 141 | -bits_state equ (48+4+zlib1222sup) ;/* state->bits */ | |
| 142 | -lencode_state equ (64+4+zlib1222sup) ;/* state->lencode */ | |
| 143 | -distcode_state equ (68+4+zlib1222sup) ;/* state->distcode */ | |
| 144 | -lenbits_state equ (72+4+zlib1222sup) ;/* state->lenbits */ | |
| 145 | -distbits_state equ (76+4+zlib1222sup) ;/* state->distbits */ | |
| 146 | - | |
| 147 | - | |
| 148 | -;;SECTION .text | |
| 149 | -; 205 "inffast.S" | |
| 150 | -;GLOBAL inflate_fast_use_mmx | |
| 151 | - | |
| 152 | -;SECTION .data | |
| 153 | - | |
| 154 | - | |
| 155 | -; GLOBAL inflate_fast_use_mmx:object | |
| 156 | -;.size inflate_fast_use_mmx, 4 | |
| 157 | -; 226 "inffast.S" | |
| 158 | -;SECTION .text | |
| 159 | - | |
| 160 | -ALIGN 4 | |
| 161 | -_inflate_fast proc near | |
| 162 | -.FPO (16, 4, 0, 0, 1, 0) | |
| 163 | - push edi | |
| 164 | - push esi | |
| 165 | - push ebp | |
| 166 | - push ebx | |
| 167 | - pushfd | |
| 168 | - sub esp,64 | |
| 169 | - cld | |
| 170 | - | |
| 171 | - | |
| 172 | - | |
| 173 | - | |
| 174 | - mov esi, [esp+88] | |
| 175 | - mov edi, [esi+28] | |
| 176 | - | |
| 177 | - | |
| 178 | - | |
| 179 | - | |
| 180 | - | |
| 181 | - | |
| 182 | - | |
| 183 | - mov edx, [esi+4] | |
| 184 | - mov eax, [esi+0] | |
| 185 | - | |
| 186 | - add edx,eax | |
| 187 | - sub edx,11 | |
| 188 | - | |
| 189 | - mov [esp+44],eax | |
| 190 | - mov [esp+20],edx | |
| 191 | - | |
| 192 | - mov ebp, [esp+92] | |
| 193 | - mov ecx, [esi+16] | |
| 194 | - mov ebx, [esi+12] | |
| 195 | - | |
| 196 | - sub ebp,ecx | |
| 197 | - neg ebp | |
| 198 | - add ebp,ebx | |
| 199 | - | |
| 200 | - sub ecx,257 | |
| 201 | - add ecx,ebx | |
| 202 | - | |
| 203 | - mov [esp+60],ebx | |
| 204 | - mov [esp+40],ebp | |
| 205 | - mov [esp+16],ecx | |
| 206 | -; 285 "inffast.S" | |
| 207 | - mov eax, [edi+lencode_state] | |
| 208 | - mov ecx, [edi+distcode_state] | |
| 209 | - | |
| 210 | - mov [esp+8],eax | |
| 211 | - mov [esp+12],ecx | |
| 212 | - | |
| 213 | - mov eax,1 | |
| 214 | - mov ecx, [edi+lenbits_state] | |
| 215 | - shl eax,cl | |
| 216 | - dec eax | |
| 217 | - mov [esp+0],eax | |
| 218 | - | |
| 219 | - mov eax,1 | |
| 220 | - mov ecx, [edi+distbits_state] | |
| 221 | - shl eax,cl | |
| 222 | - dec eax | |
| 223 | - mov [esp+4],eax | |
| 224 | - | |
| 225 | - mov eax, [edi+wsize_state] | |
| 226 | - mov ecx, [edi+write_state] | |
| 227 | - mov edx, [edi+window_state] | |
| 228 | - | |
| 229 | - mov [esp+52],eax | |
| 230 | - mov [esp+48],ecx | |
| 231 | - mov [esp+56],edx | |
| 232 | - | |
| 233 | - mov ebp, [edi+hold_state] | |
| 234 | - mov ebx, [edi+bits_state] | |
| 235 | -; 321 "inffast.S" | |
| 236 | - mov esi, [esp+44] | |
| 237 | - mov ecx, [esp+20] | |
| 238 | - cmp ecx,esi | |
| 239 | - ja L_align_long | |
| 240 | - | |
| 241 | - add ecx,11 | |
| 242 | - sub ecx,esi | |
| 243 | - mov eax,12 | |
| 244 | - sub eax,ecx | |
| 245 | - lea edi, [esp+28] | |
| 246 | - rep movsb | |
| 247 | - mov ecx,eax | |
| 248 | - xor eax,eax | |
| 249 | - rep stosb | |
| 250 | - lea esi, [esp+28] | |
| 251 | - mov [esp+20],esi | |
| 252 | - jmp L_is_aligned | |
| 253 | - | |
| 254 | - | |
| 255 | -L_align_long: | |
| 256 | - test esi,3 | |
| 257 | - jz L_is_aligned | |
| 258 | - xor eax,eax | |
| 259 | - mov al, [esi] | |
| 260 | - inc esi | |
| 261 | - mov ecx,ebx | |
| 262 | - add ebx,8 | |
| 263 | - shl eax,cl | |
| 264 | - or ebp,eax | |
| 265 | - jmp L_align_long | |
| 266 | - | |
| 267 | -L_is_aligned: | |
| 268 | - mov edi, [esp+60] | |
| 269 | -; 366 "inffast.S" | |
| 270 | -L_check_mmx: | |
| 271 | - cmp dword ptr [inflate_fast_use_mmx],2 | |
| 272 | - je L_init_mmx | |
| 273 | - ja L_do_loop | |
| 274 | - | |
| 275 | - push eax | |
| 276 | - push ebx | |
| 277 | - push ecx | |
| 278 | - push edx | |
| 279 | - pushfd | |
| 280 | - mov eax, [esp] | |
| 281 | - xor dword ptr [esp],0200000h | |
| 282 | - | |
| 283 | - | |
| 284 | - | |
| 285 | - | |
| 286 | - popfd | |
| 287 | - pushfd | |
| 288 | - pop edx | |
| 289 | - xor edx,eax | |
| 290 | - jz L_dont_use_mmx | |
| 291 | - xor eax,eax | |
| 292 | - cpuid | |
| 293 | - cmp ebx,0756e6547h | |
| 294 | - jne L_dont_use_mmx | |
| 295 | - cmp ecx,06c65746eh | |
| 296 | - jne L_dont_use_mmx | |
| 297 | - cmp edx,049656e69h | |
| 298 | - jne L_dont_use_mmx | |
| 299 | - mov eax,1 | |
| 300 | - cpuid | |
| 301 | - shr eax,8 | |
| 302 | - and eax,15 | |
| 303 | - cmp eax,6 | |
| 304 | - jne L_dont_use_mmx | |
| 305 | - test edx,0800000h | |
| 306 | - jnz L_use_mmx | |
| 307 | - jmp L_dont_use_mmx | |
| 308 | -L_use_mmx: | |
| 309 | - mov dword ptr [inflate_fast_use_mmx],2 | |
| 310 | - jmp L_check_mmx_pop | |
| 311 | -L_dont_use_mmx: | |
| 312 | - mov dword ptr [inflate_fast_use_mmx],3 | |
| 313 | -L_check_mmx_pop: | |
| 314 | - pop edx | |
| 315 | - pop ecx | |
| 316 | - pop ebx | |
| 317 | - pop eax | |
| 318 | - jmp L_check_mmx | |
| 319 | -; 426 "inffast.S" | |
| 320 | -ALIGN 4 | |
| 321 | -L_do_loop: | |
| 322 | -; 437 "inffast.S" | |
| 323 | - cmp bl,15 | |
| 324 | - ja L_get_length_code | |
| 325 | - | |
| 326 | - xor eax,eax | |
| 327 | - lodsw | |
| 328 | - mov cl,bl | |
| 329 | - add bl,16 | |
| 330 | - shl eax,cl | |
| 331 | - or ebp,eax | |
| 332 | - | |
| 333 | -L_get_length_code: | |
| 334 | - mov edx, [esp+0] | |
| 335 | - mov ecx, [esp+8] | |
| 336 | - and edx,ebp | |
| 337 | - mov eax, [ecx+edx*4] | |
| 338 | - | |
| 339 | -L_dolen: | |
| 340 | - | |
| 341 | - | |
| 342 | - | |
| 343 | - | |
| 344 | - | |
| 345 | - | |
| 346 | - mov cl,ah | |
| 347 | - sub bl,ah | |
| 348 | - shr ebp,cl | |
| 349 | - | |
| 350 | - | |
| 351 | - | |
| 352 | - | |
| 353 | - | |
| 354 | - | |
| 355 | - test al,al | |
| 356 | - jnz L_test_for_length_base | |
| 357 | - | |
| 358 | - shr eax,16 | |
| 359 | - stosb | |
| 360 | - | |
| 361 | -L_while_test: | |
| 362 | - | |
| 363 | - | |
| 364 | - cmp [esp+16],edi | |
| 365 | - jbe L_break_loop | |
| 366 | - | |
| 367 | - cmp [esp+20],esi | |
| 368 | - ja L_do_loop | |
| 369 | - jmp L_break_loop | |
| 370 | - | |
| 371 | -L_test_for_length_base: | |
| 372 | -; 502 "inffast.S" | |
| 373 | - mov edx,eax | |
| 374 | - shr edx,16 | |
| 375 | - mov cl,al | |
| 376 | - | |
| 377 | - test al,16 | |
| 378 | - jz L_test_for_second_level_length | |
| 379 | - and cl,15 | |
| 380 | - jz L_save_len | |
| 381 | - cmp bl,cl | |
| 382 | - jae L_add_bits_to_len | |
| 383 | - | |
| 384 | - mov ch,cl | |
| 385 | - xor eax,eax | |
| 386 | - lodsw | |
| 387 | - mov cl,bl | |
| 388 | - add bl,16 | |
| 389 | - shl eax,cl | |
| 390 | - or ebp,eax | |
| 391 | - mov cl,ch | |
| 392 | - | |
| 393 | -L_add_bits_to_len: | |
| 394 | - mov eax,1 | |
| 395 | - shl eax,cl | |
| 396 | - dec eax | |
| 397 | - sub bl,cl | |
| 398 | - and eax,ebp | |
| 399 | - shr ebp,cl | |
| 400 | - add edx,eax | |
| 401 | - | |
| 402 | -L_save_len: | |
| 403 | - mov [esp+24],edx | |
| 404 | - | |
| 405 | - | |
| 406 | -L_decode_distance: | |
| 407 | -; 549 "inffast.S" | |
| 408 | - cmp bl,15 | |
| 409 | - ja L_get_distance_code | |
| 410 | - | |
| 411 | - xor eax,eax | |
| 412 | - lodsw | |
| 413 | - mov cl,bl | |
| 414 | - add bl,16 | |
| 415 | - shl eax,cl | |
| 416 | - or ebp,eax | |
| 417 | - | |
| 418 | -L_get_distance_code: | |
| 419 | - mov edx, [esp+4] | |
| 420 | - mov ecx, [esp+12] | |
| 421 | - and edx,ebp | |
| 422 | - mov eax, [ecx+edx*4] | |
| 423 | - | |
| 424 | - | |
| 425 | -L_dodist: | |
| 426 | - mov edx,eax | |
| 427 | - shr edx,16 | |
| 428 | - mov cl,ah | |
| 429 | - sub bl,ah | |
| 430 | - shr ebp,cl | |
| 431 | -; 584 "inffast.S" | |
| 432 | - mov cl,al | |
| 433 | - | |
| 434 | - test al,16 | |
| 435 | - jz L_test_for_second_level_dist | |
| 436 | - and cl,15 | |
| 437 | - jz L_check_dist_one | |
| 438 | - cmp bl,cl | |
| 439 | - jae L_add_bits_to_dist | |
| 440 | - | |
| 441 | - mov ch,cl | |
| 442 | - xor eax,eax | |
| 443 | - lodsw | |
| 444 | - mov cl,bl | |
| 445 | - add bl,16 | |
| 446 | - shl eax,cl | |
| 447 | - or ebp,eax | |
| 448 | - mov cl,ch | |
| 449 | - | |
| 450 | -L_add_bits_to_dist: | |
| 451 | - mov eax,1 | |
| 452 | - shl eax,cl | |
| 453 | - dec eax | |
| 454 | - sub bl,cl | |
| 455 | - and eax,ebp | |
| 456 | - shr ebp,cl | |
| 457 | - add edx,eax | |
| 458 | - jmp L_check_window | |
| 459 | - | |
| 460 | -L_check_window: | |
| 461 | -; 625 "inffast.S" | |
| 462 | - mov [esp+44],esi | |
| 463 | - mov eax,edi | |
| 464 | - sub eax, [esp+40] | |
| 465 | - | |
| 466 | - cmp eax,edx | |
| 467 | - jb L_clip_window | |
| 468 | - | |
| 469 | - mov ecx, [esp+24] | |
| 470 | - mov esi,edi | |
| 471 | - sub esi,edx | |
| 472 | - | |
| 473 | - sub ecx,3 | |
| 474 | - mov al, [esi] | |
| 475 | - mov [edi],al | |
| 476 | - mov al, [esi+1] | |
| 477 | - mov dl, [esi+2] | |
| 478 | - add esi,3 | |
| 479 | - mov [edi+1],al | |
| 480 | - mov [edi+2],dl | |
| 481 | - add edi,3 | |
| 482 | - rep movsb | |
| 483 | - | |
| 484 | - mov esi, [esp+44] | |
| 485 | - jmp L_while_test | |
| 486 | - | |
| 487 | -ALIGN 4 | |
| 488 | -L_check_dist_one: | |
| 489 | - cmp edx,1 | |
| 490 | - jne L_check_window | |
| 491 | - cmp [esp+40],edi | |
| 492 | - je L_check_window | |
| 493 | - | |
| 494 | - dec edi | |
| 495 | - mov ecx, [esp+24] | |
| 496 | - mov al, [edi] | |
| 497 | - sub ecx,3 | |
| 498 | - | |
| 499 | - mov [edi+1],al | |
| 500 | - mov [edi+2],al | |
| 501 | - mov [edi+3],al | |
| 502 | - add edi,4 | |
| 503 | - rep stosb | |
| 504 | - | |
| 505 | - jmp L_while_test | |
| 506 | - | |
| 507 | -ALIGN 4 | |
| 508 | -L_test_for_second_level_length: | |
| 509 | - | |
| 510 | - | |
| 511 | - | |
| 512 | - | |
| 513 | - test al,64 | |
| 514 | - jnz L_test_for_end_of_block | |
| 515 | - | |
| 516 | - mov eax,1 | |
| 517 | - shl eax,cl | |
| 518 | - dec eax | |
| 519 | - and eax,ebp | |
| 520 | - add eax,edx | |
| 521 | - mov edx, [esp+8] | |
| 522 | - mov eax, [edx+eax*4] | |
| 523 | - jmp L_dolen | |
| 524 | - | |
| 525 | -ALIGN 4 | |
| 526 | -L_test_for_second_level_dist: | |
| 527 | - | |
| 528 | - | |
| 529 | - | |
| 530 | - | |
| 531 | - test al,64 | |
| 532 | - jnz L_invalid_distance_code | |
| 533 | - | |
| 534 | - mov eax,1 | |
| 535 | - shl eax,cl | |
| 536 | - dec eax | |
| 537 | - and eax,ebp | |
| 538 | - add eax,edx | |
| 539 | - mov edx, [esp+12] | |
| 540 | - mov eax, [edx+eax*4] | |
| 541 | - jmp L_dodist | |
| 542 | - | |
| 543 | -ALIGN 4 | |
| 544 | -L_clip_window: | |
| 545 | -; 721 "inffast.S" | |
| 546 | - mov ecx,eax | |
| 547 | - mov eax, [esp+52] | |
| 548 | - neg ecx | |
| 549 | - mov esi, [esp+56] | |
| 550 | - | |
| 551 | - cmp eax,edx | |
| 552 | - jb L_invalid_distance_too_far | |
| 553 | - | |
| 554 | - add ecx,edx | |
| 555 | - cmp dword ptr [esp+48],0 | |
| 556 | - jne L_wrap_around_window | |
| 557 | - | |
| 558 | - sub eax,ecx | |
| 559 | - add esi,eax | |
| 560 | -; 749 "inffast.S" | |
| 561 | - mov eax, [esp+24] | |
| 562 | - cmp eax,ecx | |
| 563 | - jbe L_do_copy1 | |
| 564 | - | |
| 565 | - sub eax,ecx | |
| 566 | - rep movsb | |
| 567 | - mov esi,edi | |
| 568 | - sub esi,edx | |
| 569 | - jmp L_do_copy1 | |
| 570 | - | |
| 571 | - cmp eax,ecx | |
| 572 | - jbe L_do_copy1 | |
| 573 | - | |
| 574 | - sub eax,ecx | |
| 575 | - rep movsb | |
| 576 | - mov esi,edi | |
| 577 | - sub esi,edx | |
| 578 | - jmp L_do_copy1 | |
| 579 | - | |
| 580 | -L_wrap_around_window: | |
| 581 | -; 793 "inffast.S" | |
| 582 | - mov eax, [esp+48] | |
| 583 | - cmp ecx,eax | |
| 584 | - jbe L_contiguous_in_window | |
| 585 | - | |
| 586 | - add esi, [esp+52] | |
| 587 | - add esi,eax | |
| 588 | - sub esi,ecx | |
| 589 | - sub ecx,eax | |
| 590 | - | |
| 591 | - | |
| 592 | - mov eax, [esp+24] | |
| 593 | - cmp eax,ecx | |
| 594 | - jbe L_do_copy1 | |
| 595 | - | |
| 596 | - sub eax,ecx | |
| 597 | - rep movsb | |
| 598 | - mov esi, [esp+56] | |
| 599 | - mov ecx, [esp+48] | |
| 600 | - cmp eax,ecx | |
| 601 | - jbe L_do_copy1 | |
| 602 | - | |
| 603 | - sub eax,ecx | |
| 604 | - rep movsb | |
| 605 | - mov esi,edi | |
| 606 | - sub esi,edx | |
| 607 | - jmp L_do_copy1 | |
| 608 | - | |
| 609 | -L_contiguous_in_window: | |
| 610 | -; 836 "inffast.S" | |
| 611 | - add esi,eax | |
| 612 | - sub esi,ecx | |
| 613 | - | |
| 614 | - | |
| 615 | - mov eax, [esp+24] | |
| 616 | - cmp eax,ecx | |
| 617 | - jbe L_do_copy1 | |
| 618 | - | |
| 619 | - sub eax,ecx | |
| 620 | - rep movsb | |
| 621 | - mov esi,edi | |
| 622 | - sub esi,edx | |
| 623 | - | |
| 624 | -L_do_copy1: | |
| 625 | -; 862 "inffast.S" | |
| 626 | - mov ecx,eax | |
| 627 | - rep movsb | |
| 628 | - | |
| 629 | - mov esi, [esp+44] | |
| 630 | - jmp L_while_test | |
| 631 | -; 878 "inffast.S" | |
| 632 | -ALIGN 4 | |
| 633 | -L_init_mmx: | |
| 634 | - emms | |
| 635 | - | |
| 636 | - | |
| 637 | - | |
| 638 | - | |
| 639 | - | |
| 640 | - movd mm0,ebp | |
| 641 | - mov ebp,ebx | |
| 642 | -; 896 "inffast.S" | |
| 643 | - movd mm4,dword ptr [esp+0] | |
| 644 | - movq mm3,mm4 | |
| 645 | - movd mm5,dword ptr [esp+4] | |
| 646 | - movq mm2,mm5 | |
| 647 | - pxor mm1,mm1 | |
| 648 | - mov ebx, [esp+8] | |
| 649 | - jmp L_do_loop_mmx | |
| 650 | - | |
| 651 | -ALIGN 4 | |
| 652 | -L_do_loop_mmx: | |
| 653 | - psrlq mm0,mm1 | |
| 654 | - | |
| 655 | - cmp ebp,32 | |
| 656 | - ja L_get_length_code_mmx | |
| 657 | - | |
| 658 | - movd mm6,ebp | |
| 659 | - movd mm7,dword ptr [esi] | |
| 660 | - add esi,4 | |
| 661 | - psllq mm7,mm6 | |
| 662 | - add ebp,32 | |
| 663 | - por mm0,mm7 | |
| 664 | - | |
| 665 | -L_get_length_code_mmx: | |
| 666 | - pand mm4,mm0 | |
| 667 | - movd eax,mm4 | |
| 668 | - movq mm4,mm3 | |
| 669 | - mov eax, [ebx+eax*4] | |
| 670 | - | |
| 671 | -L_dolen_mmx: | |
| 672 | - movzx ecx,ah | |
| 673 | - movd mm1,ecx | |
| 674 | - sub ebp,ecx | |
| 675 | - | |
| 676 | - test al,al | |
| 677 | - jnz L_test_for_length_base_mmx | |
| 678 | - | |
| 679 | - shr eax,16 | |
| 680 | - stosb | |
| 681 | - | |
| 682 | -L_while_test_mmx: | |
| 683 | - | |
| 684 | - | |
| 685 | - cmp [esp+16],edi | |
| 686 | - jbe L_break_loop | |
| 687 | - | |
| 688 | - cmp [esp+20],esi | |
| 689 | - ja L_do_loop_mmx | |
| 690 | - jmp L_break_loop | |
| 691 | - | |
| 692 | -L_test_for_length_base_mmx: | |
| 693 | - | |
| 694 | - mov edx,eax | |
| 695 | - shr edx,16 | |
| 696 | - | |
| 697 | - test al,16 | |
| 698 | - jz L_test_for_second_level_length_mmx | |
| 699 | - and eax,15 | |
| 700 | - jz L_decode_distance_mmx | |
| 701 | - | |
| 702 | - psrlq mm0,mm1 | |
| 703 | - movd mm1,eax | |
| 704 | - movd ecx,mm0 | |
| 705 | - sub ebp,eax | |
| 706 | - and ecx, [inflate_fast_mask+eax*4] | |
| 707 | - add edx,ecx | |
| 708 | - | |
| 709 | -L_decode_distance_mmx: | |
| 710 | - psrlq mm0,mm1 | |
| 711 | - | |
| 712 | - cmp ebp,32 | |
| 713 | - ja L_get_dist_code_mmx | |
| 714 | - | |
| 715 | - movd mm6,ebp | |
| 716 | - movd mm7,dword ptr [esi] | |
| 717 | - add esi,4 | |
| 718 | - psllq mm7,mm6 | |
| 719 | - add ebp,32 | |
| 720 | - por mm0,mm7 | |
| 721 | - | |
| 722 | -L_get_dist_code_mmx: | |
| 723 | - mov ebx, [esp+12] | |
| 724 | - pand mm5,mm0 | |
| 725 | - movd eax,mm5 | |
| 726 | - movq mm5,mm2 | |
| 727 | - mov eax, [ebx+eax*4] | |
| 728 | - | |
| 729 | -L_dodist_mmx: | |
| 730 | - | |
| 731 | - movzx ecx,ah | |
| 732 | - mov ebx,eax | |
| 733 | - shr ebx,16 | |
| 734 | - sub ebp,ecx | |
| 735 | - movd mm1,ecx | |
| 736 | - | |
| 737 | - test al,16 | |
| 738 | - jz L_test_for_second_level_dist_mmx | |
| 739 | - and eax,15 | |
| 740 | - jz L_check_dist_one_mmx | |
| 741 | - | |
| 742 | -L_add_bits_to_dist_mmx: | |
| 743 | - psrlq mm0,mm1 | |
| 744 | - movd mm1,eax | |
| 745 | - movd ecx,mm0 | |
| 746 | - sub ebp,eax | |
| 747 | - and ecx, [inflate_fast_mask+eax*4] | |
| 748 | - add ebx,ecx | |
| 749 | - | |
| 750 | -L_check_window_mmx: | |
| 751 | - mov [esp+44],esi | |
| 752 | - mov eax,edi | |
| 753 | - sub eax, [esp+40] | |
| 754 | - | |
| 755 | - cmp eax,ebx | |
| 756 | - jb L_clip_window_mmx | |
| 757 | - | |
| 758 | - mov ecx,edx | |
| 759 | - mov esi,edi | |
| 760 | - sub esi,ebx | |
| 761 | - | |
| 762 | - sub ecx,3 | |
| 763 | - mov al, [esi] | |
| 764 | - mov [edi],al | |
| 765 | - mov al, [esi+1] | |
| 766 | - mov dl, [esi+2] | |
| 767 | - add esi,3 | |
| 768 | - mov [edi+1],al | |
| 769 | - mov [edi+2],dl | |
| 770 | - add edi,3 | |
| 771 | - rep movsb | |
| 772 | - | |
| 773 | - mov esi, [esp+44] | |
| 774 | - mov ebx, [esp+8] | |
| 775 | - jmp L_while_test_mmx | |
| 776 | - | |
| 777 | -ALIGN 4 | |
| 778 | -L_check_dist_one_mmx: | |
| 779 | - cmp ebx,1 | |
| 780 | - jne L_check_window_mmx | |
| 781 | - cmp [esp+40],edi | |
| 782 | - je L_check_window_mmx | |
| 783 | - | |
| 784 | - dec edi | |
| 785 | - mov ecx,edx | |
| 786 | - mov al, [edi] | |
| 787 | - sub ecx,3 | |
| 788 | - | |
| 789 | - mov [edi+1],al | |
| 790 | - mov [edi+2],al | |
| 791 | - mov [edi+3],al | |
| 792 | - add edi,4 | |
| 793 | - rep stosb | |
| 794 | - | |
| 795 | - mov ebx, [esp+8] | |
| 796 | - jmp L_while_test_mmx | |
| 797 | - | |
| 798 | -ALIGN 4 | |
| 799 | -L_test_for_second_level_length_mmx: | |
| 800 | - test al,64 | |
| 801 | - jnz L_test_for_end_of_block | |
| 802 | - | |
| 803 | - and eax,15 | |
| 804 | - psrlq mm0,mm1 | |
| 805 | - movd ecx,mm0 | |
| 806 | - and ecx, [inflate_fast_mask+eax*4] | |
| 807 | - add ecx,edx | |
| 808 | - mov eax, [ebx+ecx*4] | |
| 809 | - jmp L_dolen_mmx | |
| 810 | - | |
| 811 | -ALIGN 4 | |
| 812 | -L_test_for_second_level_dist_mmx: | |
| 813 | - test al,64 | |
| 814 | - jnz L_invalid_distance_code | |
| 815 | - | |
| 816 | - and eax,15 | |
| 817 | - psrlq mm0,mm1 | |
| 818 | - movd ecx,mm0 | |
| 819 | - and ecx, [inflate_fast_mask+eax*4] | |
| 820 | - mov eax, [esp+12] | |
| 821 | - add ecx,ebx | |
| 822 | - mov eax, [eax+ecx*4] | |
| 823 | - jmp L_dodist_mmx | |
| 824 | - | |
| 825 | -ALIGN 4 | |
| 826 | -L_clip_window_mmx: | |
| 827 | - | |
| 828 | - mov ecx,eax | |
| 829 | - mov eax, [esp+52] | |
| 830 | - neg ecx | |
| 831 | - mov esi, [esp+56] | |
| 832 | - | |
| 833 | - cmp eax,ebx | |
| 834 | - jb L_invalid_distance_too_far | |
| 835 | - | |
| 836 | - add ecx,ebx | |
| 837 | - cmp dword ptr [esp+48],0 | |
| 838 | - jne L_wrap_around_window_mmx | |
| 839 | - | |
| 840 | - sub eax,ecx | |
| 841 | - add esi,eax | |
| 842 | - | |
| 843 | - cmp edx,ecx | |
| 844 | - jbe L_do_copy1_mmx | |
| 845 | - | |
| 846 | - sub edx,ecx | |
| 847 | - rep movsb | |
| 848 | - mov esi,edi | |
| 849 | - sub esi,ebx | |
| 850 | - jmp L_do_copy1_mmx | |
| 851 | - | |
| 852 | - cmp edx,ecx | |
| 853 | - jbe L_do_copy1_mmx | |
| 854 | - | |
| 855 | - sub edx,ecx | |
| 856 | - rep movsb | |
| 857 | - mov esi,edi | |
| 858 | - sub esi,ebx | |
| 859 | - jmp L_do_copy1_mmx | |
| 860 | - | |
| 861 | -L_wrap_around_window_mmx: | |
| 862 | - | |
| 863 | - mov eax, [esp+48] | |
| 864 | - cmp ecx,eax | |
| 865 | - jbe L_contiguous_in_window_mmx | |
| 866 | - | |
| 867 | - add esi, [esp+52] | |
| 868 | - add esi,eax | |
| 869 | - sub esi,ecx | |
| 870 | - sub ecx,eax | |
| 871 | - | |
| 872 | - | |
| 873 | - cmp edx,ecx | |
| 874 | - jbe L_do_copy1_mmx | |
| 875 | - | |
| 876 | - sub edx,ecx | |
| 877 | - rep movsb | |
| 878 | - mov esi, [esp+56] | |
| 879 | - mov ecx, [esp+48] | |
| 880 | - cmp edx,ecx | |
| 881 | - jbe L_do_copy1_mmx | |
| 882 | - | |
| 883 | - sub edx,ecx | |
| 884 | - rep movsb | |
| 885 | - mov esi,edi | |
| 886 | - sub esi,ebx | |
| 887 | - jmp L_do_copy1_mmx | |
| 888 | - | |
| 889 | -L_contiguous_in_window_mmx: | |
| 890 | - | |
| 891 | - add esi,eax | |
| 892 | - sub esi,ecx | |
| 893 | - | |
| 894 | - | |
| 895 | - cmp edx,ecx | |
| 896 | - jbe L_do_copy1_mmx | |
| 897 | - | |
| 898 | - sub edx,ecx | |
| 899 | - rep movsb | |
| 900 | - mov esi,edi | |
| 901 | - sub esi,ebx | |
| 902 | - | |
| 903 | -L_do_copy1_mmx: | |
| 904 | - | |
| 905 | - | |
| 906 | - mov ecx,edx | |
| 907 | - rep movsb | |
| 908 | - | |
| 909 | - mov esi, [esp+44] | |
| 910 | - mov ebx, [esp+8] | |
| 911 | - jmp L_while_test_mmx | |
| 912 | -; 1174 "inffast.S" | |
| 913 | -L_invalid_distance_code: | |
| 914 | - | |
| 915 | - | |
| 916 | - | |
| 917 | - | |
| 918 | - | |
| 919 | - mov ecx, invalid_distance_code_msg | |
| 920 | - mov edx,INFLATE_MODE_BAD | |
| 921 | - jmp L_update_stream_state | |
| 922 | - | |
| 923 | -L_test_for_end_of_block: | |
| 924 | - | |
| 925 | - | |
| 926 | - | |
| 927 | - | |
| 928 | - | |
| 929 | - test al,32 | |
| 930 | - jz L_invalid_literal_length_code | |
| 931 | - | |
| 932 | - mov ecx,0 | |
| 933 | - mov edx,INFLATE_MODE_TYPE | |
| 934 | - jmp L_update_stream_state | |
| 935 | - | |
| 936 | -L_invalid_literal_length_code: | |
| 937 | - | |
| 938 | - | |
| 939 | - | |
| 940 | - | |
| 941 | - | |
| 942 | - mov ecx, invalid_literal_length_code_msg | |
| 943 | - mov edx,INFLATE_MODE_BAD | |
| 944 | - jmp L_update_stream_state | |
| 945 | - | |
| 946 | -L_invalid_distance_too_far: | |
| 947 | - | |
| 948 | - | |
| 949 | - | |
| 950 | - mov esi, [esp+44] | |
| 951 | - mov ecx, invalid_distance_too_far_msg | |
| 952 | - mov edx,INFLATE_MODE_BAD | |
| 953 | - jmp L_update_stream_state | |
| 954 | - | |
| 955 | -L_update_stream_state: | |
| 956 | - | |
| 957 | - mov eax, [esp+88] | |
| 958 | - test ecx,ecx | |
| 959 | - jz L_skip_msg | |
| 960 | - mov [eax+24],ecx | |
| 961 | -L_skip_msg: | |
| 962 | - mov eax, [eax+28] | |
| 963 | - mov [eax+mode_state],edx | |
| 964 | - jmp L_break_loop | |
| 965 | - | |
| 966 | -ALIGN 4 | |
| 967 | -L_break_loop: | |
| 968 | -; 1243 "inffast.S" | |
| 969 | - cmp dword ptr [inflate_fast_use_mmx],2 | |
| 970 | - jne L_update_next_in | |
| 971 | - | |
| 972 | - | |
| 973 | - | |
| 974 | - mov ebx,ebp | |
| 975 | - | |
| 976 | -L_update_next_in: | |
| 977 | -; 1266 "inffast.S" | |
| 978 | - mov eax, [esp+88] | |
| 979 | - mov ecx,ebx | |
| 980 | - mov edx, [eax+28] | |
| 981 | - shr ecx,3 | |
| 982 | - sub esi,ecx | |
| 983 | - shl ecx,3 | |
| 984 | - sub ebx,ecx | |
| 985 | - mov [eax+12],edi | |
| 986 | - mov [edx+bits_state],ebx | |
| 987 | - mov ecx,ebx | |
| 988 | - | |
| 989 | - lea ebx, [esp+28] | |
| 990 | - cmp [esp+20],ebx | |
| 991 | - jne L_buf_not_used | |
| 992 | - | |
| 993 | - sub esi,ebx | |
| 994 | - mov ebx, [eax+0] | |
| 995 | - mov [esp+20],ebx | |
| 996 | - add esi,ebx | |
| 997 | - mov ebx, [eax+4] | |
| 998 | - sub ebx,11 | |
| 999 | - add [esp+20],ebx | |
| 1000 | - | |
| 1001 | -L_buf_not_used: | |
| 1002 | - mov [eax+0],esi | |
| 1003 | - | |
| 1004 | - mov ebx,1 | |
| 1005 | - shl ebx,cl | |
| 1006 | - dec ebx | |
| 1007 | - | |
| 1008 | - | |
| 1009 | - | |
| 1010 | - | |
| 1011 | - | |
| 1012 | - cmp dword ptr [inflate_fast_use_mmx],2 | |
| 1013 | - jne L_update_hold | |
| 1014 | - | |
| 1015 | - | |
| 1016 | - | |
| 1017 | - psrlq mm0,mm1 | |
| 1018 | - movd ebp,mm0 | |
| 1019 | - | |
| 1020 | - emms | |
| 1021 | - | |
| 1022 | -L_update_hold: | |
| 1023 | - | |
| 1024 | - | |
| 1025 | - | |
| 1026 | - and ebp,ebx | |
| 1027 | - mov [edx+hold_state],ebp | |
| 1028 | - | |
| 1029 | - | |
| 1030 | - | |
| 1031 | - | |
| 1032 | - mov ebx, [esp+20] | |
| 1033 | - cmp ebx,esi | |
| 1034 | - jbe L_last_is_smaller | |
| 1035 | - | |
| 1036 | - sub ebx,esi | |
| 1037 | - add ebx,11 | |
| 1038 | - mov [eax+4],ebx | |
| 1039 | - jmp L_fixup_out | |
| 1040 | -L_last_is_smaller: | |
| 1041 | - sub esi,ebx | |
| 1042 | - neg esi | |
| 1043 | - add esi,11 | |
| 1044 | - mov [eax+4],esi | |
| 1045 | - | |
| 1046 | - | |
| 1047 | - | |
| 1048 | - | |
| 1049 | -L_fixup_out: | |
| 1050 | - | |
| 1051 | - mov ebx, [esp+16] | |
| 1052 | - cmp ebx,edi | |
| 1053 | - jbe L_end_is_smaller | |
| 1054 | - | |
| 1055 | - sub ebx,edi | |
| 1056 | - add ebx,257 | |
| 1057 | - mov [eax+16],ebx | |
| 1058 | - jmp L_done | |
| 1059 | -L_end_is_smaller: | |
| 1060 | - sub edi,ebx | |
| 1061 | - neg edi | |
| 1062 | - add edi,257 | |
| 1063 | - mov [eax+16],edi | |
| 1064 | - | |
| 1065 | - | |
| 1066 | - | |
| 1067 | - | |
| 1068 | - | |
| 1069 | -L_done: | |
| 1070 | - add esp,64 | |
| 1071 | - popfd | |
| 1072 | - pop ebx | |
| 1073 | - pop ebp | |
| 1074 | - pop esi | |
| 1075 | - pop edi | |
| 1076 | - ret | |
| 1077 | -_inflate_fast endp | |
| 1078 | - | |
| 1079 | -_TEXT ends | |
| 1080 | -end |
| --- a/compat/zlib/contrib/masmx86/inffas32.asm | |
| +++ b/compat/zlib/contrib/masmx86/inffas32.asm | |
| @@ -1,1080 +0,0 @@ | |
| 1 | ;/* inffas32.asm is a hand tuned assembler version of inffast.c -- fast decoding |
| 2 | ; * |
| 3 | ; * inffas32.asm is derivated from inffas86.c, with translation of assembly code |
| 4 | ; * |
| 5 | ; * Copyright (C) 1995-2003 Mark Adler |
| 6 | ; * For conditions of distribution and use, see copyright notice in zlib.h |
| 7 | ; * |
| 8 | ; * Copyright (C) 2003 Chris Anderson <[email protected]> |
| 9 | ; * Please use the copyright conditions above. |
| 10 | ; * |
| 11 | ; * Mar-13-2003 -- Most of this is derived from inffast.S which is derived from |
| 12 | ; * the gcc -S output of zlib-1.2.0/inffast.c. Zlib-1.2.0 is in beta release at |
| 13 | ; * the moment. I have successfully compiled and tested this code with gcc2.96, |
| 14 | ; * gcc3.2, icc5.0, msvc6.0. It is very close to the speed of inffast.S |
| 15 | ; * compiled with gcc -DNO_MMX, but inffast.S is still faster on the P3 with MMX |
| 16 | ; * enabled. I will attempt to merge the MMX code into this version. Newer |
| 17 | ; * versions of this and inffast.S can be found at |
| 18 | ; * http://www.eetbeetee.com/zlib/ and http://www.charm.net/~christop/zlib/ |
| 19 | ; * |
| 20 | ; * 2005 : modification by Gilles Vollant |
| 21 | ; */ |
| 22 | ; For Visual C++ 4.x and higher and ML 6.x and higher |
| 23 | ; ml.exe is in directory \MASM611C of Win95 DDK |
| 24 | ; ml.exe is also distributed in http://www.masm32.com/masmdl.htm |
| 25 | ; and in VC++2003 toolkit at http://msdn.microsoft.com/visualc/vctoolkit2003/ |
| 26 | ; |
| 27 | ; |
| 28 | ; compile with command line option |
| 29 | ; ml /coff /Zi /c /Flinffas32.lst inffas32.asm |
| 30 | |
| 31 | ; if you define NO_GZIP (see inflate.h), compile with |
| 32 | ; ml /coff /Zi /c /Flinffas32.lst /DNO_GUNZIP inffas32.asm |
| 33 | |
| 34 | |
| 35 | ; zlib122sup is 0 fort zlib 1.2.2.1 and lower |
| 36 | ; zlib122sup is 8 fort zlib 1.2.2.2 and more (with addition of dmax and head |
| 37 | ; in inflate_state in inflate.h) |
| 38 | zlib1222sup equ 8 |
| 39 | |
| 40 | |
| 41 | IFDEF GUNZIP |
| 42 | INFLATE_MODE_TYPE equ 11 |
| 43 | INFLATE_MODE_BAD equ 26 |
| 44 | ELSE |
| 45 | IFNDEF NO_GUNZIP |
| 46 | INFLATE_MODE_TYPE equ 11 |
| 47 | INFLATE_MODE_BAD equ 26 |
| 48 | ELSE |
| 49 | INFLATE_MODE_TYPE equ 3 |
| 50 | INFLATE_MODE_BAD equ 17 |
| 51 | ENDIF |
| 52 | ENDIF |
| 53 | |
| 54 | |
| 55 | ; 75 "inffast.S" |
| 56 | ;FILE "inffast.S" |
| 57 | |
| 58 | ;;;GLOBAL _inflate_fast |
| 59 | |
| 60 | ;;;SECTION .text |
| 61 | |
| 62 | |
| 63 | |
| 64 | .586p |
| 65 | .mmx |
| 66 | |
| 67 | name inflate_fast_x86 |
| 68 | .MODEL FLAT |
| 69 | |
| 70 | _DATA segment |
| 71 | inflate_fast_use_mmx: |
| 72 | dd 1 |
| 73 | |
| 74 | |
| 75 | _TEXT segment |
| 76 | |
| 77 | |
| 78 | |
| 79 | ALIGN 4 |
| 80 | db 'Fast decoding Code from Chris Anderson' |
| 81 | db 0 |
| 82 | |
| 83 | ALIGN 4 |
| 84 | invalid_literal_length_code_msg: |
| 85 | db 'invalid literal/length code' |
| 86 | db 0 |
| 87 | |
| 88 | ALIGN 4 |
| 89 | invalid_distance_code_msg: |
| 90 | db 'invalid distance code' |
| 91 | db 0 |
| 92 | |
| 93 | ALIGN 4 |
| 94 | invalid_distance_too_far_msg: |
| 95 | db 'invalid distance too far back' |
| 96 | db 0 |
| 97 | |
| 98 | |
| 99 | ALIGN 4 |
| 100 | inflate_fast_mask: |
| 101 | dd 0 |
| 102 | dd 1 |
| 103 | dd 3 |
| 104 | dd 7 |
| 105 | dd 15 |
| 106 | dd 31 |
| 107 | dd 63 |
| 108 | dd 127 |
| 109 | dd 255 |
| 110 | dd 511 |
| 111 | dd 1023 |
| 112 | dd 2047 |
| 113 | dd 4095 |
| 114 | dd 8191 |
| 115 | dd 16383 |
| 116 | dd 32767 |
| 117 | dd 65535 |
| 118 | dd 131071 |
| 119 | dd 262143 |
| 120 | dd 524287 |
| 121 | dd 1048575 |
| 122 | dd 2097151 |
| 123 | dd 4194303 |
| 124 | dd 8388607 |
| 125 | dd 16777215 |
| 126 | dd 33554431 |
| 127 | dd 67108863 |
| 128 | dd 134217727 |
| 129 | dd 268435455 |
| 130 | dd 536870911 |
| 131 | dd 1073741823 |
| 132 | dd 2147483647 |
| 133 | dd 4294967295 |
| 134 | |
| 135 | |
| 136 | mode_state equ 0 ;/* state->mode */ |
| 137 | wsize_state equ (32+zlib1222sup) ;/* state->wsize */ |
| 138 | write_state equ (36+4+zlib1222sup) ;/* state->write */ |
| 139 | window_state equ (40+4+zlib1222sup) ;/* state->window */ |
| 140 | hold_state equ (44+4+zlib1222sup) ;/* state->hold */ |
| 141 | bits_state equ (48+4+zlib1222sup) ;/* state->bits */ |
| 142 | lencode_state equ (64+4+zlib1222sup) ;/* state->lencode */ |
| 143 | distcode_state equ (68+4+zlib1222sup) ;/* state->distcode */ |
| 144 | lenbits_state equ (72+4+zlib1222sup) ;/* state->lenbits */ |
| 145 | distbits_state equ (76+4+zlib1222sup) ;/* state->distbits */ |
| 146 | |
| 147 | |
| 148 | ;;SECTION .text |
| 149 | ; 205 "inffast.S" |
| 150 | ;GLOBAL inflate_fast_use_mmx |
| 151 | |
| 152 | ;SECTION .data |
| 153 | |
| 154 | |
| 155 | ; GLOBAL inflate_fast_use_mmx:object |
| 156 | ;.size inflate_fast_use_mmx, 4 |
| 157 | ; 226 "inffast.S" |
| 158 | ;SECTION .text |
| 159 | |
| 160 | ALIGN 4 |
| 161 | _inflate_fast proc near |
| 162 | .FPO (16, 4, 0, 0, 1, 0) |
| 163 | push edi |
| 164 | push esi |
| 165 | push ebp |
| 166 | push ebx |
| 167 | pushfd |
| 168 | sub esp,64 |
| 169 | cld |
| 170 | |
| 171 | |
| 172 | |
| 173 | |
| 174 | mov esi, [esp+88] |
| 175 | mov edi, [esi+28] |
| 176 | |
| 177 | |
| 178 | |
| 179 | |
| 180 | |
| 181 | |
| 182 | |
| 183 | mov edx, [esi+4] |
| 184 | mov eax, [esi+0] |
| 185 | |
| 186 | add edx,eax |
| 187 | sub edx,11 |
| 188 | |
| 189 | mov [esp+44],eax |
| 190 | mov [esp+20],edx |
| 191 | |
| 192 | mov ebp, [esp+92] |
| 193 | mov ecx, [esi+16] |
| 194 | mov ebx, [esi+12] |
| 195 | |
| 196 | sub ebp,ecx |
| 197 | neg ebp |
| 198 | add ebp,ebx |
| 199 | |
| 200 | sub ecx,257 |
| 201 | add ecx,ebx |
| 202 | |
| 203 | mov [esp+60],ebx |
| 204 | mov [esp+40],ebp |
| 205 | mov [esp+16],ecx |
| 206 | ; 285 "inffast.S" |
| 207 | mov eax, [edi+lencode_state] |
| 208 | mov ecx, [edi+distcode_state] |
| 209 | |
| 210 | mov [esp+8],eax |
| 211 | mov [esp+12],ecx |
| 212 | |
| 213 | mov eax,1 |
| 214 | mov ecx, [edi+lenbits_state] |
| 215 | shl eax,cl |
| 216 | dec eax |
| 217 | mov [esp+0],eax |
| 218 | |
| 219 | mov eax,1 |
| 220 | mov ecx, [edi+distbits_state] |
| 221 | shl eax,cl |
| 222 | dec eax |
| 223 | mov [esp+4],eax |
| 224 | |
| 225 | mov eax, [edi+wsize_state] |
| 226 | mov ecx, [edi+write_state] |
| 227 | mov edx, [edi+window_state] |
| 228 | |
| 229 | mov [esp+52],eax |
| 230 | mov [esp+48],ecx |
| 231 | mov [esp+56],edx |
| 232 | |
| 233 | mov ebp, [edi+hold_state] |
| 234 | mov ebx, [edi+bits_state] |
| 235 | ; 321 "inffast.S" |
| 236 | mov esi, [esp+44] |
| 237 | mov ecx, [esp+20] |
| 238 | cmp ecx,esi |
| 239 | ja L_align_long |
| 240 | |
| 241 | add ecx,11 |
| 242 | sub ecx,esi |
| 243 | mov eax,12 |
| 244 | sub eax,ecx |
| 245 | lea edi, [esp+28] |
| 246 | rep movsb |
| 247 | mov ecx,eax |
| 248 | xor eax,eax |
| 249 | rep stosb |
| 250 | lea esi, [esp+28] |
| 251 | mov [esp+20],esi |
| 252 | jmp L_is_aligned |
| 253 | |
| 254 | |
| 255 | L_align_long: |
| 256 | test esi,3 |
| 257 | jz L_is_aligned |
| 258 | xor eax,eax |
| 259 | mov al, [esi] |
| 260 | inc esi |
| 261 | mov ecx,ebx |
| 262 | add ebx,8 |
| 263 | shl eax,cl |
| 264 | or ebp,eax |
| 265 | jmp L_align_long |
| 266 | |
| 267 | L_is_aligned: |
| 268 | mov edi, [esp+60] |
| 269 | ; 366 "inffast.S" |
| 270 | L_check_mmx: |
| 271 | cmp dword ptr [inflate_fast_use_mmx],2 |
| 272 | je L_init_mmx |
| 273 | ja L_do_loop |
| 274 | |
| 275 | push eax |
| 276 | push ebx |
| 277 | push ecx |
| 278 | push edx |
| 279 | pushfd |
| 280 | mov eax, [esp] |
| 281 | xor dword ptr [esp],0200000h |
| 282 | |
| 283 | |
| 284 | |
| 285 | |
| 286 | popfd |
| 287 | pushfd |
| 288 | pop edx |
| 289 | xor edx,eax |
| 290 | jz L_dont_use_mmx |
| 291 | xor eax,eax |
| 292 | cpuid |
| 293 | cmp ebx,0756e6547h |
| 294 | jne L_dont_use_mmx |
| 295 | cmp ecx,06c65746eh |
| 296 | jne L_dont_use_mmx |
| 297 | cmp edx,049656e69h |
| 298 | jne L_dont_use_mmx |
| 299 | mov eax,1 |
| 300 | cpuid |
| 301 | shr eax,8 |
| 302 | and eax,15 |
| 303 | cmp eax,6 |
| 304 | jne L_dont_use_mmx |
| 305 | test edx,0800000h |
| 306 | jnz L_use_mmx |
| 307 | jmp L_dont_use_mmx |
| 308 | L_use_mmx: |
| 309 | mov dword ptr [inflate_fast_use_mmx],2 |
| 310 | jmp L_check_mmx_pop |
| 311 | L_dont_use_mmx: |
| 312 | mov dword ptr [inflate_fast_use_mmx],3 |
| 313 | L_check_mmx_pop: |
| 314 | pop edx |
| 315 | pop ecx |
| 316 | pop ebx |
| 317 | pop eax |
| 318 | jmp L_check_mmx |
| 319 | ; 426 "inffast.S" |
| 320 | ALIGN 4 |
| 321 | L_do_loop: |
| 322 | ; 437 "inffast.S" |
| 323 | cmp bl,15 |
| 324 | ja L_get_length_code |
| 325 | |
| 326 | xor eax,eax |
| 327 | lodsw |
| 328 | mov cl,bl |
| 329 | add bl,16 |
| 330 | shl eax,cl |
| 331 | or ebp,eax |
| 332 | |
| 333 | L_get_length_code: |
| 334 | mov edx, [esp+0] |
| 335 | mov ecx, [esp+8] |
| 336 | and edx,ebp |
| 337 | mov eax, [ecx+edx*4] |
| 338 | |
| 339 | L_dolen: |
| 340 | |
| 341 | |
| 342 | |
| 343 | |
| 344 | |
| 345 | |
| 346 | mov cl,ah |
| 347 | sub bl,ah |
| 348 | shr ebp,cl |
| 349 | |
| 350 | |
| 351 | |
| 352 | |
| 353 | |
| 354 | |
| 355 | test al,al |
| 356 | jnz L_test_for_length_base |
| 357 | |
| 358 | shr eax,16 |
| 359 | stosb |
| 360 | |
| 361 | L_while_test: |
| 362 | |
| 363 | |
| 364 | cmp [esp+16],edi |
| 365 | jbe L_break_loop |
| 366 | |
| 367 | cmp [esp+20],esi |
| 368 | ja L_do_loop |
| 369 | jmp L_break_loop |
| 370 | |
| 371 | L_test_for_length_base: |
| 372 | ; 502 "inffast.S" |
| 373 | mov edx,eax |
| 374 | shr edx,16 |
| 375 | mov cl,al |
| 376 | |
| 377 | test al,16 |
| 378 | jz L_test_for_second_level_length |
| 379 | and cl,15 |
| 380 | jz L_save_len |
| 381 | cmp bl,cl |
| 382 | jae L_add_bits_to_len |
| 383 | |
| 384 | mov ch,cl |
| 385 | xor eax,eax |
| 386 | lodsw |
| 387 | mov cl,bl |
| 388 | add bl,16 |
| 389 | shl eax,cl |
| 390 | or ebp,eax |
| 391 | mov cl,ch |
| 392 | |
| 393 | L_add_bits_to_len: |
| 394 | mov eax,1 |
| 395 | shl eax,cl |
| 396 | dec eax |
| 397 | sub bl,cl |
| 398 | and eax,ebp |
| 399 | shr ebp,cl |
| 400 | add edx,eax |
| 401 | |
| 402 | L_save_len: |
| 403 | mov [esp+24],edx |
| 404 | |
| 405 | |
| 406 | L_decode_distance: |
| 407 | ; 549 "inffast.S" |
| 408 | cmp bl,15 |
| 409 | ja L_get_distance_code |
| 410 | |
| 411 | xor eax,eax |
| 412 | lodsw |
| 413 | mov cl,bl |
| 414 | add bl,16 |
| 415 | shl eax,cl |
| 416 | or ebp,eax |
| 417 | |
| 418 | L_get_distance_code: |
| 419 | mov edx, [esp+4] |
| 420 | mov ecx, [esp+12] |
| 421 | and edx,ebp |
| 422 | mov eax, [ecx+edx*4] |
| 423 | |
| 424 | |
| 425 | L_dodist: |
| 426 | mov edx,eax |
| 427 | shr edx,16 |
| 428 | mov cl,ah |
| 429 | sub bl,ah |
| 430 | shr ebp,cl |
| 431 | ; 584 "inffast.S" |
| 432 | mov cl,al |
| 433 | |
| 434 | test al,16 |
| 435 | jz L_test_for_second_level_dist |
| 436 | and cl,15 |
| 437 | jz L_check_dist_one |
| 438 | cmp bl,cl |
| 439 | jae L_add_bits_to_dist |
| 440 | |
| 441 | mov ch,cl |
| 442 | xor eax,eax |
| 443 | lodsw |
| 444 | mov cl,bl |
| 445 | add bl,16 |
| 446 | shl eax,cl |
| 447 | or ebp,eax |
| 448 | mov cl,ch |
| 449 | |
| 450 | L_add_bits_to_dist: |
| 451 | mov eax,1 |
| 452 | shl eax,cl |
| 453 | dec eax |
| 454 | sub bl,cl |
| 455 | and eax,ebp |
| 456 | shr ebp,cl |
| 457 | add edx,eax |
| 458 | jmp L_check_window |
| 459 | |
| 460 | L_check_window: |
| 461 | ; 625 "inffast.S" |
| 462 | mov [esp+44],esi |
| 463 | mov eax,edi |
| 464 | sub eax, [esp+40] |
| 465 | |
| 466 | cmp eax,edx |
| 467 | jb L_clip_window |
| 468 | |
| 469 | mov ecx, [esp+24] |
| 470 | mov esi,edi |
| 471 | sub esi,edx |
| 472 | |
| 473 | sub ecx,3 |
| 474 | mov al, [esi] |
| 475 | mov [edi],al |
| 476 | mov al, [esi+1] |
| 477 | mov dl, [esi+2] |
| 478 | add esi,3 |
| 479 | mov [edi+1],al |
| 480 | mov [edi+2],dl |
| 481 | add edi,3 |
| 482 | rep movsb |
| 483 | |
| 484 | mov esi, [esp+44] |
| 485 | jmp L_while_test |
| 486 | |
| 487 | ALIGN 4 |
| 488 | L_check_dist_one: |
| 489 | cmp edx,1 |
| 490 | jne L_check_window |
| 491 | cmp [esp+40],edi |
| 492 | je L_check_window |
| 493 | |
| 494 | dec edi |
| 495 | mov ecx, [esp+24] |
| 496 | mov al, [edi] |
| 497 | sub ecx,3 |
| 498 | |
| 499 | mov [edi+1],al |
| 500 | mov [edi+2],al |
| 501 | mov [edi+3],al |
| 502 | add edi,4 |
| 503 | rep stosb |
| 504 | |
| 505 | jmp L_while_test |
| 506 | |
| 507 | ALIGN 4 |
| 508 | L_test_for_second_level_length: |
| 509 | |
| 510 | |
| 511 | |
| 512 | |
| 513 | test al,64 |
| 514 | jnz L_test_for_end_of_block |
| 515 | |
| 516 | mov eax,1 |
| 517 | shl eax,cl |
| 518 | dec eax |
| 519 | and eax,ebp |
| 520 | add eax,edx |
| 521 | mov edx, [esp+8] |
| 522 | mov eax, [edx+eax*4] |
| 523 | jmp L_dolen |
| 524 | |
| 525 | ALIGN 4 |
| 526 | L_test_for_second_level_dist: |
| 527 | |
| 528 | |
| 529 | |
| 530 | |
| 531 | test al,64 |
| 532 | jnz L_invalid_distance_code |
| 533 | |
| 534 | mov eax,1 |
| 535 | shl eax,cl |
| 536 | dec eax |
| 537 | and eax,ebp |
| 538 | add eax,edx |
| 539 | mov edx, [esp+12] |
| 540 | mov eax, [edx+eax*4] |
| 541 | jmp L_dodist |
| 542 | |
| 543 | ALIGN 4 |
| 544 | L_clip_window: |
| 545 | ; 721 "inffast.S" |
| 546 | mov ecx,eax |
| 547 | mov eax, [esp+52] |
| 548 | neg ecx |
| 549 | mov esi, [esp+56] |
| 550 | |
| 551 | cmp eax,edx |
| 552 | jb L_invalid_distance_too_far |
| 553 | |
| 554 | add ecx,edx |
| 555 | cmp dword ptr [esp+48],0 |
| 556 | jne L_wrap_around_window |
| 557 | |
| 558 | sub eax,ecx |
| 559 | add esi,eax |
| 560 | ; 749 "inffast.S" |
| 561 | mov eax, [esp+24] |
| 562 | cmp eax,ecx |
| 563 | jbe L_do_copy1 |
| 564 | |
| 565 | sub eax,ecx |
| 566 | rep movsb |
| 567 | mov esi,edi |
| 568 | sub esi,edx |
| 569 | jmp L_do_copy1 |
| 570 | |
| 571 | cmp eax,ecx |
| 572 | jbe L_do_copy1 |
| 573 | |
| 574 | sub eax,ecx |
| 575 | rep movsb |
| 576 | mov esi,edi |
| 577 | sub esi,edx |
| 578 | jmp L_do_copy1 |
| 579 | |
| 580 | L_wrap_around_window: |
| 581 | ; 793 "inffast.S" |
| 582 | mov eax, [esp+48] |
| 583 | cmp ecx,eax |
| 584 | jbe L_contiguous_in_window |
| 585 | |
| 586 | add esi, [esp+52] |
| 587 | add esi,eax |
| 588 | sub esi,ecx |
| 589 | sub ecx,eax |
| 590 | |
| 591 | |
| 592 | mov eax, [esp+24] |
| 593 | cmp eax,ecx |
| 594 | jbe L_do_copy1 |
| 595 | |
| 596 | sub eax,ecx |
| 597 | rep movsb |
| 598 | mov esi, [esp+56] |
| 599 | mov ecx, [esp+48] |
| 600 | cmp eax,ecx |
| 601 | jbe L_do_copy1 |
| 602 | |
| 603 | sub eax,ecx |
| 604 | rep movsb |
| 605 | mov esi,edi |
| 606 | sub esi,edx |
| 607 | jmp L_do_copy1 |
| 608 | |
| 609 | L_contiguous_in_window: |
| 610 | ; 836 "inffast.S" |
| 611 | add esi,eax |
| 612 | sub esi,ecx |
| 613 | |
| 614 | |
| 615 | mov eax, [esp+24] |
| 616 | cmp eax,ecx |
| 617 | jbe L_do_copy1 |
| 618 | |
| 619 | sub eax,ecx |
| 620 | rep movsb |
| 621 | mov esi,edi |
| 622 | sub esi,edx |
| 623 | |
| 624 | L_do_copy1: |
| 625 | ; 862 "inffast.S" |
| 626 | mov ecx,eax |
| 627 | rep movsb |
| 628 | |
| 629 | mov esi, [esp+44] |
| 630 | jmp L_while_test |
| 631 | ; 878 "inffast.S" |
| 632 | ALIGN 4 |
| 633 | L_init_mmx: |
| 634 | emms |
| 635 | |
| 636 | |
| 637 | |
| 638 | |
| 639 | |
| 640 | movd mm0,ebp |
| 641 | mov ebp,ebx |
| 642 | ; 896 "inffast.S" |
| 643 | movd mm4,dword ptr [esp+0] |
| 644 | movq mm3,mm4 |
| 645 | movd mm5,dword ptr [esp+4] |
| 646 | movq mm2,mm5 |
| 647 | pxor mm1,mm1 |
| 648 | mov ebx, [esp+8] |
| 649 | jmp L_do_loop_mmx |
| 650 | |
| 651 | ALIGN 4 |
| 652 | L_do_loop_mmx: |
| 653 | psrlq mm0,mm1 |
| 654 | |
| 655 | cmp ebp,32 |
| 656 | ja L_get_length_code_mmx |
| 657 | |
| 658 | movd mm6,ebp |
| 659 | movd mm7,dword ptr [esi] |
| 660 | add esi,4 |
| 661 | psllq mm7,mm6 |
| 662 | add ebp,32 |
| 663 | por mm0,mm7 |
| 664 | |
| 665 | L_get_length_code_mmx: |
| 666 | pand mm4,mm0 |
| 667 | movd eax,mm4 |
| 668 | movq mm4,mm3 |
| 669 | mov eax, [ebx+eax*4] |
| 670 | |
| 671 | L_dolen_mmx: |
| 672 | movzx ecx,ah |
| 673 | movd mm1,ecx |
| 674 | sub ebp,ecx |
| 675 | |
| 676 | test al,al |
| 677 | jnz L_test_for_length_base_mmx |
| 678 | |
| 679 | shr eax,16 |
| 680 | stosb |
| 681 | |
| 682 | L_while_test_mmx: |
| 683 | |
| 684 | |
| 685 | cmp [esp+16],edi |
| 686 | jbe L_break_loop |
| 687 | |
| 688 | cmp [esp+20],esi |
| 689 | ja L_do_loop_mmx |
| 690 | jmp L_break_loop |
| 691 | |
| 692 | L_test_for_length_base_mmx: |
| 693 | |
| 694 | mov edx,eax |
| 695 | shr edx,16 |
| 696 | |
| 697 | test al,16 |
| 698 | jz L_test_for_second_level_length_mmx |
| 699 | and eax,15 |
| 700 | jz L_decode_distance_mmx |
| 701 | |
| 702 | psrlq mm0,mm1 |
| 703 | movd mm1,eax |
| 704 | movd ecx,mm0 |
| 705 | sub ebp,eax |
| 706 | and ecx, [inflate_fast_mask+eax*4] |
| 707 | add edx,ecx |
| 708 | |
| 709 | L_decode_distance_mmx: |
| 710 | psrlq mm0,mm1 |
| 711 | |
| 712 | cmp ebp,32 |
| 713 | ja L_get_dist_code_mmx |
| 714 | |
| 715 | movd mm6,ebp |
| 716 | movd mm7,dword ptr [esi] |
| 717 | add esi,4 |
| 718 | psllq mm7,mm6 |
| 719 | add ebp,32 |
| 720 | por mm0,mm7 |
| 721 | |
| 722 | L_get_dist_code_mmx: |
| 723 | mov ebx, [esp+12] |
| 724 | pand mm5,mm0 |
| 725 | movd eax,mm5 |
| 726 | movq mm5,mm2 |
| 727 | mov eax, [ebx+eax*4] |
| 728 | |
| 729 | L_dodist_mmx: |
| 730 | |
| 731 | movzx ecx,ah |
| 732 | mov ebx,eax |
| 733 | shr ebx,16 |
| 734 | sub ebp,ecx |
| 735 | movd mm1,ecx |
| 736 | |
| 737 | test al,16 |
| 738 | jz L_test_for_second_level_dist_mmx |
| 739 | and eax,15 |
| 740 | jz L_check_dist_one_mmx |
| 741 | |
| 742 | L_add_bits_to_dist_mmx: |
| 743 | psrlq mm0,mm1 |
| 744 | movd mm1,eax |
| 745 | movd ecx,mm0 |
| 746 | sub ebp,eax |
| 747 | and ecx, [inflate_fast_mask+eax*4] |
| 748 | add ebx,ecx |
| 749 | |
| 750 | L_check_window_mmx: |
| 751 | mov [esp+44],esi |
| 752 | mov eax,edi |
| 753 | sub eax, [esp+40] |
| 754 | |
| 755 | cmp eax,ebx |
| 756 | jb L_clip_window_mmx |
| 757 | |
| 758 | mov ecx,edx |
| 759 | mov esi,edi |
| 760 | sub esi,ebx |
| 761 | |
| 762 | sub ecx,3 |
| 763 | mov al, [esi] |
| 764 | mov [edi],al |
| 765 | mov al, [esi+1] |
| 766 | mov dl, [esi+2] |
| 767 | add esi,3 |
| 768 | mov [edi+1],al |
| 769 | mov [edi+2],dl |
| 770 | add edi,3 |
| 771 | rep movsb |
| 772 | |
| 773 | mov esi, [esp+44] |
| 774 | mov ebx, [esp+8] |
| 775 | jmp L_while_test_mmx |
| 776 | |
| 777 | ALIGN 4 |
| 778 | L_check_dist_one_mmx: |
| 779 | cmp ebx,1 |
| 780 | jne L_check_window_mmx |
| 781 | cmp [esp+40],edi |
| 782 | je L_check_window_mmx |
| 783 | |
| 784 | dec edi |
| 785 | mov ecx,edx |
| 786 | mov al, [edi] |
| 787 | sub ecx,3 |
| 788 | |
| 789 | mov [edi+1],al |
| 790 | mov [edi+2],al |
| 791 | mov [edi+3],al |
| 792 | add edi,4 |
| 793 | rep stosb |
| 794 | |
| 795 | mov ebx, [esp+8] |
| 796 | jmp L_while_test_mmx |
| 797 | |
| 798 | ALIGN 4 |
| 799 | L_test_for_second_level_length_mmx: |
| 800 | test al,64 |
| 801 | jnz L_test_for_end_of_block |
| 802 | |
| 803 | and eax,15 |
| 804 | psrlq mm0,mm1 |
| 805 | movd ecx,mm0 |
| 806 | and ecx, [inflate_fast_mask+eax*4] |
| 807 | add ecx,edx |
| 808 | mov eax, [ebx+ecx*4] |
| 809 | jmp L_dolen_mmx |
| 810 | |
| 811 | ALIGN 4 |
| 812 | L_test_for_second_level_dist_mmx: |
| 813 | test al,64 |
| 814 | jnz L_invalid_distance_code |
| 815 | |
| 816 | and eax,15 |
| 817 | psrlq mm0,mm1 |
| 818 | movd ecx,mm0 |
| 819 | and ecx, [inflate_fast_mask+eax*4] |
| 820 | mov eax, [esp+12] |
| 821 | add ecx,ebx |
| 822 | mov eax, [eax+ecx*4] |
| 823 | jmp L_dodist_mmx |
| 824 | |
| 825 | ALIGN 4 |
| 826 | L_clip_window_mmx: |
| 827 | |
| 828 | mov ecx,eax |
| 829 | mov eax, [esp+52] |
| 830 | neg ecx |
| 831 | mov esi, [esp+56] |
| 832 | |
| 833 | cmp eax,ebx |
| 834 | jb L_invalid_distance_too_far |
| 835 | |
| 836 | add ecx,ebx |
| 837 | cmp dword ptr [esp+48],0 |
| 838 | jne L_wrap_around_window_mmx |
| 839 | |
| 840 | sub eax,ecx |
| 841 | add esi,eax |
| 842 | |
| 843 | cmp edx,ecx |
| 844 | jbe L_do_copy1_mmx |
| 845 | |
| 846 | sub edx,ecx |
| 847 | rep movsb |
| 848 | mov esi,edi |
| 849 | sub esi,ebx |
| 850 | jmp L_do_copy1_mmx |
| 851 | |
| 852 | cmp edx,ecx |
| 853 | jbe L_do_copy1_mmx |
| 854 | |
| 855 | sub edx,ecx |
| 856 | rep movsb |
| 857 | mov esi,edi |
| 858 | sub esi,ebx |
| 859 | jmp L_do_copy1_mmx |
| 860 | |
| 861 | L_wrap_around_window_mmx: |
| 862 | |
| 863 | mov eax, [esp+48] |
| 864 | cmp ecx,eax |
| 865 | jbe L_contiguous_in_window_mmx |
| 866 | |
| 867 | add esi, [esp+52] |
| 868 | add esi,eax |
| 869 | sub esi,ecx |
| 870 | sub ecx,eax |
| 871 | |
| 872 | |
| 873 | cmp edx,ecx |
| 874 | jbe L_do_copy1_mmx |
| 875 | |
| 876 | sub edx,ecx |
| 877 | rep movsb |
| 878 | mov esi, [esp+56] |
| 879 | mov ecx, [esp+48] |
| 880 | cmp edx,ecx |
| 881 | jbe L_do_copy1_mmx |
| 882 | |
| 883 | sub edx,ecx |
| 884 | rep movsb |
| 885 | mov esi,edi |
| 886 | sub esi,ebx |
| 887 | jmp L_do_copy1_mmx |
| 888 | |
| 889 | L_contiguous_in_window_mmx: |
| 890 | |
| 891 | add esi,eax |
| 892 | sub esi,ecx |
| 893 | |
| 894 | |
| 895 | cmp edx,ecx |
| 896 | jbe L_do_copy1_mmx |
| 897 | |
| 898 | sub edx,ecx |
| 899 | rep movsb |
| 900 | mov esi,edi |
| 901 | sub esi,ebx |
| 902 | |
| 903 | L_do_copy1_mmx: |
| 904 | |
| 905 | |
| 906 | mov ecx,edx |
| 907 | rep movsb |
| 908 | |
| 909 | mov esi, [esp+44] |
| 910 | mov ebx, [esp+8] |
| 911 | jmp L_while_test_mmx |
| 912 | ; 1174 "inffast.S" |
| 913 | L_invalid_distance_code: |
| 914 | |
| 915 | |
| 916 | |
| 917 | |
| 918 | |
| 919 | mov ecx, invalid_distance_code_msg |
| 920 | mov edx,INFLATE_MODE_BAD |
| 921 | jmp L_update_stream_state |
| 922 | |
| 923 | L_test_for_end_of_block: |
| 924 | |
| 925 | |
| 926 | |
| 927 | |
| 928 | |
| 929 | test al,32 |
| 930 | jz L_invalid_literal_length_code |
| 931 | |
| 932 | mov ecx,0 |
| 933 | mov edx,INFLATE_MODE_TYPE |
| 934 | jmp L_update_stream_state |
| 935 | |
| 936 | L_invalid_literal_length_code: |
| 937 | |
| 938 | |
| 939 | |
| 940 | |
| 941 | |
| 942 | mov ecx, invalid_literal_length_code_msg |
| 943 | mov edx,INFLATE_MODE_BAD |
| 944 | jmp L_update_stream_state |
| 945 | |
| 946 | L_invalid_distance_too_far: |
| 947 | |
| 948 | |
| 949 | |
| 950 | mov esi, [esp+44] |
| 951 | mov ecx, invalid_distance_too_far_msg |
| 952 | mov edx,INFLATE_MODE_BAD |
| 953 | jmp L_update_stream_state |
| 954 | |
| 955 | L_update_stream_state: |
| 956 | |
| 957 | mov eax, [esp+88] |
| 958 | test ecx,ecx |
| 959 | jz L_skip_msg |
| 960 | mov [eax+24],ecx |
| 961 | L_skip_msg: |
| 962 | mov eax, [eax+28] |
| 963 | mov [eax+mode_state],edx |
| 964 | jmp L_break_loop |
| 965 | |
| 966 | ALIGN 4 |
| 967 | L_break_loop: |
| 968 | ; 1243 "inffast.S" |
| 969 | cmp dword ptr [inflate_fast_use_mmx],2 |
| 970 | jne L_update_next_in |
| 971 | |
| 972 | |
| 973 | |
| 974 | mov ebx,ebp |
| 975 | |
| 976 | L_update_next_in: |
| 977 | ; 1266 "inffast.S" |
| 978 | mov eax, [esp+88] |
| 979 | mov ecx,ebx |
| 980 | mov edx, [eax+28] |
| 981 | shr ecx,3 |
| 982 | sub esi,ecx |
| 983 | shl ecx,3 |
| 984 | sub ebx,ecx |
| 985 | mov [eax+12],edi |
| 986 | mov [edx+bits_state],ebx |
| 987 | mov ecx,ebx |
| 988 | |
| 989 | lea ebx, [esp+28] |
| 990 | cmp [esp+20],ebx |
| 991 | jne L_buf_not_used |
| 992 | |
| 993 | sub esi,ebx |
| 994 | mov ebx, [eax+0] |
| 995 | mov [esp+20],ebx |
| 996 | add esi,ebx |
| 997 | mov ebx, [eax+4] |
| 998 | sub ebx,11 |
| 999 | add [esp+20],ebx |
| 1000 | |
| 1001 | L_buf_not_used: |
| 1002 | mov [eax+0],esi |
| 1003 | |
| 1004 | mov ebx,1 |
| 1005 | shl ebx,cl |
| 1006 | dec ebx |
| 1007 | |
| 1008 | |
| 1009 | |
| 1010 | |
| 1011 | |
| 1012 | cmp dword ptr [inflate_fast_use_mmx],2 |
| 1013 | jne L_update_hold |
| 1014 | |
| 1015 | |
| 1016 | |
| 1017 | psrlq mm0,mm1 |
| 1018 | movd ebp,mm0 |
| 1019 | |
| 1020 | emms |
| 1021 | |
| 1022 | L_update_hold: |
| 1023 | |
| 1024 | |
| 1025 | |
| 1026 | and ebp,ebx |
| 1027 | mov [edx+hold_state],ebp |
| 1028 | |
| 1029 | |
| 1030 | |
| 1031 | |
| 1032 | mov ebx, [esp+20] |
| 1033 | cmp ebx,esi |
| 1034 | jbe L_last_is_smaller |
| 1035 | |
| 1036 | sub ebx,esi |
| 1037 | add ebx,11 |
| 1038 | mov [eax+4],ebx |
| 1039 | jmp L_fixup_out |
| 1040 | L_last_is_smaller: |
| 1041 | sub esi,ebx |
| 1042 | neg esi |
| 1043 | add esi,11 |
| 1044 | mov [eax+4],esi |
| 1045 | |
| 1046 | |
| 1047 | |
| 1048 | |
| 1049 | L_fixup_out: |
| 1050 | |
| 1051 | mov ebx, [esp+16] |
| 1052 | cmp ebx,edi |
| 1053 | jbe L_end_is_smaller |
| 1054 | |
| 1055 | sub ebx,edi |
| 1056 | add ebx,257 |
| 1057 | mov [eax+16],ebx |
| 1058 | jmp L_done |
| 1059 | L_end_is_smaller: |
| 1060 | sub edi,ebx |
| 1061 | neg edi |
| 1062 | add edi,257 |
| 1063 | mov [eax+16],edi |
| 1064 | |
| 1065 | |
| 1066 | |
| 1067 | |
| 1068 | |
| 1069 | L_done: |
| 1070 | add esp,64 |
| 1071 | popfd |
| 1072 | pop ebx |
| 1073 | pop ebp |
| 1074 | pop esi |
| 1075 | pop edi |
| 1076 | ret |
| 1077 | _inflate_fast endp |
| 1078 | |
| 1079 | _TEXT ends |
| 1080 | end |
| --- a/compat/zlib/contrib/masmx86/inffas32.asm | |
| +++ b/compat/zlib/contrib/masmx86/inffas32.asm | |
| @@ -1,1080 +0,0 @@ | |
D
compat/zlib/contrib/masmx86/match686.asm
-479
| --- a/compat/zlib/contrib/masmx86/match686.asm | ||
| +++ b/compat/zlib/contrib/masmx86/match686.asm | ||
| @@ -1,479 +0,0 @@ | ||
| 1 | -; match686.asm -- Asm portion of the optimized longest_match for 32 bits x86 | |
| 2 | -; Copyright (C) 1995-1996 Jean-loup Gailly, Brian Raiter and Gilles Vollant. | |
| 3 | -; File written by Gilles Vollant, by converting match686.S from Brian Raiter | |
| 4 | -; for MASM. This is as assembly version of longest_match | |
| 5 | -; from Jean-loup Gailly in deflate.c | |
| 6 | -; | |
| 7 | -; http://www.zlib.net | |
| 8 | -; http://www.winimage.com/zLibDll | |
| 9 | -; http://www.muppetlabs.com/~breadbox/software/assembly.html | |
| 10 | -; | |
| 11 | -; For Visual C++ 4.x and higher and ML 6.x and higher | |
| 12 | -; ml.exe is distributed in | |
| 13 | -; http://www.microsoft.com/downloads/details.aspx?FamilyID=7a1c9da0-0510-44a2-b042-7ef370530c64 | |
| 14 | -; | |
| 15 | -; this file contain two implementation of longest_match | |
| 16 | -; | |
| 17 | -; this longest_match was written by Brian raiter (1998), optimized for Pentium Pro | |
| 18 | -; (and the faster known version of match_init on modern Core 2 Duo and AMD Phenom) | |
| 19 | -; | |
| 20 | -; for using an assembly version of longest_match, you need define ASMV in project | |
| 21 | -; | |
| 22 | -; compile the asm file running | |
| 23 | -; ml /coff /Zi /c /Flmatch686.lst match686.asm | |
| 24 | -; and do not include match686.obj in your project | |
| 25 | -; | |
| 26 | -; note: contrib of zLib 1.2.3 and earlier contained both a deprecated version for | |
| 27 | -; Pentium (prior Pentium Pro) and this version for Pentium Pro and modern processor | |
| 28 | -; with autoselect (with cpu detection code) | |
| 29 | -; if you want support the old pentium optimization, you can still use these version | |
| 30 | -; | |
| 31 | -; this file is not optimized for old pentium, but it compatible with all x86 32 bits | |
| 32 | -; processor (starting 80386) | |
| 33 | -; | |
| 34 | -; | |
| 35 | -; see below : zlib1222add must be adjuster if you use a zlib version < 1.2.2.2 | |
| 36 | - | |
| 37 | -;uInt longest_match(s, cur_match) | |
| 38 | -; deflate_state *s; | |
| 39 | -; IPos cur_match; /* current match */ | |
| 40 | - | |
| 41 | - NbStack equ 76 | |
| 42 | - cur_match equ dword ptr[esp+NbStack-0] | |
| 43 | - str_s equ dword ptr[esp+NbStack-4] | |
| 44 | -; 5 dword on top (ret,ebp,esi,edi,ebx) | |
| 45 | - adrret equ dword ptr[esp+NbStack-8] | |
| 46 | - pushebp equ dword ptr[esp+NbStack-12] | |
| 47 | - pushedi equ dword ptr[esp+NbStack-16] | |
| 48 | - pushesi equ dword ptr[esp+NbStack-20] | |
| 49 | - pushebx equ dword ptr[esp+NbStack-24] | |
| 50 | - | |
| 51 | - chain_length equ dword ptr [esp+NbStack-28] | |
| 52 | - limit equ dword ptr [esp+NbStack-32] | |
| 53 | - best_len equ dword ptr [esp+NbStack-36] | |
| 54 | - window equ dword ptr [esp+NbStack-40] | |
| 55 | - prev equ dword ptr [esp+NbStack-44] | |
| 56 | - scan_start equ word ptr [esp+NbStack-48] | |
| 57 | - wmask equ dword ptr [esp+NbStack-52] | |
| 58 | - match_start_ptr equ dword ptr [esp+NbStack-56] | |
| 59 | - nice_match equ dword ptr [esp+NbStack-60] | |
| 60 | - scan equ dword ptr [esp+NbStack-64] | |
| 61 | - | |
| 62 | - windowlen equ dword ptr [esp+NbStack-68] | |
| 63 | - match_start equ dword ptr [esp+NbStack-72] | |
| 64 | - strend equ dword ptr [esp+NbStack-76] | |
| 65 | - NbStackAdd equ (NbStack-24) | |
| 66 | - | |
| 67 | - .386p | |
| 68 | - | |
| 69 | - name gvmatch | |
| 70 | - .MODEL FLAT | |
| 71 | - | |
| 72 | - | |
| 73 | - | |
| 74 | -; all the +zlib1222add offsets are due to the addition of fields | |
| 75 | -; in zlib in the deflate_state structure since the asm code was first written | |
| 76 | -; (if you compile with zlib 1.0.4 or older, use "zlib1222add equ (-4)"). | |
| 77 | -; (if you compile with zlib between 1.0.5 and 1.2.2.1, use "zlib1222add equ 0"). | |
| 78 | -; if you compile with zlib 1.2.2.2 or later , use "zlib1222add equ 8"). | |
| 79 | - | |
| 80 | - zlib1222add equ 8 | |
| 81 | - | |
| 82 | -; Note : these value are good with a 8 bytes boundary pack structure | |
| 83 | - dep_chain_length equ 74h+zlib1222add | |
| 84 | - dep_window equ 30h+zlib1222add | |
| 85 | - dep_strstart equ 64h+zlib1222add | |
| 86 | - dep_prev_length equ 70h+zlib1222add | |
| 87 | - dep_nice_match equ 88h+zlib1222add | |
| 88 | - dep_w_size equ 24h+zlib1222add | |
| 89 | - dep_prev equ 38h+zlib1222add | |
| 90 | - dep_w_mask equ 2ch+zlib1222add | |
| 91 | - dep_good_match equ 84h+zlib1222add | |
| 92 | - dep_match_start equ 68h+zlib1222add | |
| 93 | - dep_lookahead equ 6ch+zlib1222add | |
| 94 | - | |
| 95 | - | |
| 96 | -_TEXT segment | |
| 97 | - | |
| 98 | -IFDEF NOUNDERLINE | |
| 99 | - public longest_match | |
| 100 | - public match_init | |
| 101 | -ELSE | |
| 102 | - public _longest_match | |
| 103 | - public _match_init | |
| 104 | -ENDIF | |
| 105 | - | |
| 106 | - MAX_MATCH equ 258 | |
| 107 | - MIN_MATCH equ 3 | |
| 108 | - MIN_LOOKAHEAD equ (MAX_MATCH+MIN_MATCH+1) | |
| 109 | - | |
| 110 | - | |
| 111 | - | |
| 112 | -MAX_MATCH equ 258 | |
| 113 | -MIN_MATCH equ 3 | |
| 114 | -MIN_LOOKAHEAD equ (MAX_MATCH + MIN_MATCH + 1) | |
| 115 | -MAX_MATCH_8_ equ ((MAX_MATCH + 7) AND 0FFF0h) | |
| 116 | - | |
| 117 | - | |
| 118 | -;;; stack frame offsets | |
| 119 | - | |
| 120 | -chainlenwmask equ esp + 0 ; high word: current chain len | |
| 121 | - ; low word: s->wmask | |
| 122 | -window equ esp + 4 ; local copy of s->window | |
| 123 | -windowbestlen equ esp + 8 ; s->window + bestlen | |
| 124 | -scanstart equ esp + 16 ; first two bytes of string | |
| 125 | -scanend equ esp + 12 ; last two bytes of string | |
| 126 | -scanalign equ esp + 20 ; dword-misalignment of string | |
| 127 | -nicematch equ esp + 24 ; a good enough match size | |
| 128 | -bestlen equ esp + 28 ; size of best match so far | |
| 129 | -scan equ esp + 32 ; ptr to string wanting match | |
| 130 | - | |
| 131 | -LocalVarsSize equ 36 | |
| 132 | -; saved ebx byte esp + 36 | |
| 133 | -; saved edi byte esp + 40 | |
| 134 | -; saved esi byte esp + 44 | |
| 135 | -; saved ebp byte esp + 48 | |
| 136 | -; return address byte esp + 52 | |
| 137 | -deflatestate equ esp + 56 ; the function arguments | |
| 138 | -curmatch equ esp + 60 | |
| 139 | - | |
| 140 | -;;; Offsets for fields in the deflate_state structure. These numbers | |
| 141 | -;;; are calculated from the definition of deflate_state, with the | |
| 142 | -;;; assumption that the compiler will dword-align the fields. (Thus, | |
| 143 | -;;; changing the definition of deflate_state could easily cause this | |
| 144 | -;;; program to crash horribly, without so much as a warning at | |
| 145 | -;;; compile time. Sigh.) | |
| 146 | - | |
| 147 | -dsWSize equ 36+zlib1222add | |
| 148 | -dsWMask equ 44+zlib1222add | |
| 149 | -dsWindow equ 48+zlib1222add | |
| 150 | -dsPrev equ 56+zlib1222add | |
| 151 | -dsMatchLen equ 88+zlib1222add | |
| 152 | -dsPrevMatch equ 92+zlib1222add | |
| 153 | -dsStrStart equ 100+zlib1222add | |
| 154 | -dsMatchStart equ 104+zlib1222add | |
| 155 | -dsLookahead equ 108+zlib1222add | |
| 156 | -dsPrevLen equ 112+zlib1222add | |
| 157 | -dsMaxChainLen equ 116+zlib1222add | |
| 158 | -dsGoodMatch equ 132+zlib1222add | |
| 159 | -dsNiceMatch equ 136+zlib1222add | |
| 160 | - | |
| 161 | - | |
| 162 | -;;; match686.asm -- Pentium-Pro-optimized version of longest_match() | |
| 163 | -;;; Written for zlib 1.1.2 | |
| 164 | -;;; Copyright (C) 1998 Brian Raiter <[email protected]> | |
| 165 | -;;; You can look at http://www.muppetlabs.com/~breadbox/software/assembly.html | |
| 166 | -;;; | |
| 167 | -;; | |
| 168 | -;; This software is provided 'as-is', without any express or implied | |
| 169 | -;; warranty. In no event will the authors be held liable for any damages | |
| 170 | -;; arising from the use of this software. | |
| 171 | -;; | |
| 172 | -;; Permission is granted to anyone to use this software for any purpose, | |
| 173 | -;; including commercial applications, and to alter it and redistribute it | |
| 174 | -;; freely, subject to the following restrictions: | |
| 175 | -;; | |
| 176 | -;; 1. The origin of this software must not be misrepresented; you must not | |
| 177 | -;; claim that you wrote the original software. If you use this software | |
| 178 | -;; in a product, an acknowledgment in the product documentation would be | |
| 179 | -;; appreciated but is not required. | |
| 180 | -;; 2. Altered source versions must be plainly marked as such, and must not be | |
| 181 | -;; misrepresented as being the original software | |
| 182 | -;; 3. This notice may not be removed or altered from any source distribution. | |
| 183 | -;; | |
| 184 | - | |
| 185 | -;GLOBAL _longest_match, _match_init | |
| 186 | - | |
| 187 | - | |
| 188 | -;SECTION .text | |
| 189 | - | |
| 190 | -;;; uInt longest_match(deflate_state *deflatestate, IPos curmatch) | |
| 191 | - | |
| 192 | -;_longest_match: | |
| 193 | - IFDEF NOUNDERLINE | |
| 194 | - longest_match proc near | |
| 195 | - ELSE | |
| 196 | - _longest_match proc near | |
| 197 | - ENDIF | |
| 198 | -.FPO (9, 4, 0, 0, 1, 0) | |
| 199 | - | |
| 200 | -;;; Save registers that the compiler may be using, and adjust esp to | |
| 201 | -;;; make room for our stack frame. | |
| 202 | - | |
| 203 | - push ebp | |
| 204 | - push edi | |
| 205 | - push esi | |
| 206 | - push ebx | |
| 207 | - sub esp, LocalVarsSize | |
| 208 | - | |
| 209 | -;;; Retrieve the function arguments. ecx will hold cur_match | |
| 210 | -;;; throughout the entire function. edx will hold the pointer to the | |
| 211 | -;;; deflate_state structure during the function's setup (before | |
| 212 | -;;; entering the main loop. | |
| 213 | - | |
| 214 | - mov edx, [deflatestate] | |
| 215 | - mov ecx, [curmatch] | |
| 216 | - | |
| 217 | -;;; uInt wmask = s->w_mask; | |
| 218 | -;;; unsigned chain_length = s->max_chain_length; | |
| 219 | -;;; if (s->prev_length >= s->good_match) { | |
| 220 | -;;; chain_length >>= 2; | |
| 221 | -;;; } | |
| 222 | - | |
| 223 | - mov eax, [edx + dsPrevLen] | |
| 224 | - mov ebx, [edx + dsGoodMatch] | |
| 225 | - cmp eax, ebx | |
| 226 | - mov eax, [edx + dsWMask] | |
| 227 | - mov ebx, [edx + dsMaxChainLen] | |
| 228 | - jl LastMatchGood | |
| 229 | - shr ebx, 2 | |
| 230 | -LastMatchGood: | |
| 231 | - | |
| 232 | -;;; chainlen is decremented once beforehand so that the function can | |
| 233 | -;;; use the sign flag instead of the zero flag for the exit test. | |
| 234 | -;;; It is then shifted into the high word, to make room for the wmask | |
| 235 | -;;; value, which it will always accompany. | |
| 236 | - | |
| 237 | - dec ebx | |
| 238 | - shl ebx, 16 | |
| 239 | - or ebx, eax | |
| 240 | - mov [chainlenwmask], ebx | |
| 241 | - | |
| 242 | -;;; if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; | |
| 243 | - | |
| 244 | - mov eax, [edx + dsNiceMatch] | |
| 245 | - mov ebx, [edx + dsLookahead] | |
| 246 | - cmp ebx, eax | |
| 247 | - jl LookaheadLess | |
| 248 | - mov ebx, eax | |
| 249 | -LookaheadLess: mov [nicematch], ebx | |
| 250 | - | |
| 251 | -;;; register Bytef *scan = s->window + s->strstart; | |
| 252 | - | |
| 253 | - mov esi, [edx + dsWindow] | |
| 254 | - mov [window], esi | |
| 255 | - mov ebp, [edx + dsStrStart] | |
| 256 | - lea edi, [esi + ebp] | |
| 257 | - mov [scan], edi | |
| 258 | - | |
| 259 | -;;; Determine how many bytes the scan ptr is off from being | |
| 260 | -;;; dword-aligned. | |
| 261 | - | |
| 262 | - mov eax, edi | |
| 263 | - neg eax | |
| 264 | - and eax, 3 | |
| 265 | - mov [scanalign], eax | |
| 266 | - | |
| 267 | -;;; IPos limit = s->strstart > (IPos)MAX_DIST(s) ? | |
| 268 | -;;; s->strstart - (IPos)MAX_DIST(s) : NIL; | |
| 269 | - | |
| 270 | - mov eax, [edx + dsWSize] | |
| 271 | - sub eax, MIN_LOOKAHEAD | |
| 272 | - sub ebp, eax | |
| 273 | - jg LimitPositive | |
| 274 | - xor ebp, ebp | |
| 275 | -LimitPositive: | |
| 276 | - | |
| 277 | -;;; int best_len = s->prev_length; | |
| 278 | - | |
| 279 | - mov eax, [edx + dsPrevLen] | |
| 280 | - mov [bestlen], eax | |
| 281 | - | |
| 282 | -;;; Store the sum of s->window + best_len in esi locally, and in esi. | |
| 283 | - | |
| 284 | - add esi, eax | |
| 285 | - mov [windowbestlen], esi | |
| 286 | - | |
| 287 | -;;; register ush scan_start = *(ushf*)scan; | |
| 288 | -;;; register ush scan_end = *(ushf*)(scan+best_len-1); | |
| 289 | -;;; Posf *prev = s->prev; | |
| 290 | - | |
| 291 | - movzx ebx, word ptr [edi] | |
| 292 | - mov [scanstart], ebx | |
| 293 | - movzx ebx, word ptr [edi + eax - 1] | |
| 294 | - mov [scanend], ebx | |
| 295 | - mov edi, [edx + dsPrev] | |
| 296 | - | |
| 297 | -;;; Jump into the main loop. | |
| 298 | - | |
| 299 | - mov edx, [chainlenwmask] | |
| 300 | - jmp short LoopEntry | |
| 301 | - | |
| 302 | -align 4 | |
| 303 | - | |
| 304 | -;;; do { | |
| 305 | -;;; match = s->window + cur_match; | |
| 306 | -;;; if (*(ushf*)(match+best_len-1) != scan_end || | |
| 307 | -;;; *(ushf*)match != scan_start) continue; | |
| 308 | -;;; [...] | |
| 309 | -;;; } while ((cur_match = prev[cur_match & wmask]) > limit | |
| 310 | -;;; && --chain_length != 0); | |
| 311 | -;;; | |
| 312 | -;;; Here is the inner loop of the function. The function will spend the | |
| 313 | -;;; majority of its time in this loop, and majority of that time will | |
| 314 | -;;; be spent in the first ten instructions. | |
| 315 | -;;; | |
| 316 | -;;; Within this loop: | |
| 317 | -;;; ebx = scanend | |
| 318 | -;;; ecx = curmatch | |
| 319 | -;;; edx = chainlenwmask - i.e., ((chainlen << 16) | wmask) | |
| 320 | -;;; esi = windowbestlen - i.e., (window + bestlen) | |
| 321 | -;;; edi = prev | |
| 322 | -;;; ebp = limit | |
| 323 | - | |
| 324 | -LookupLoop: | |
| 325 | - and ecx, edx | |
| 326 | - movzx ecx, word ptr [edi + ecx*2] | |
| 327 | - cmp ecx, ebp | |
| 328 | - jbe LeaveNow | |
| 329 | - sub edx, 00010000h | |
| 330 | - js LeaveNow | |
| 331 | -LoopEntry: movzx eax, word ptr [esi + ecx - 1] | |
| 332 | - cmp eax, ebx | |
| 333 | - jnz LookupLoop | |
| 334 | - mov eax, [window] | |
| 335 | - movzx eax, word ptr [eax + ecx] | |
| 336 | - cmp eax, [scanstart] | |
| 337 | - jnz LookupLoop | |
| 338 | - | |
| 339 | -;;; Store the current value of chainlen. | |
| 340 | - | |
| 341 | - mov [chainlenwmask], edx | |
| 342 | - | |
| 343 | -;;; Point edi to the string under scrutiny, and esi to the string we | |
| 344 | -;;; are hoping to match it up with. In actuality, esi and edi are | |
| 345 | -;;; both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and edx is | |
| 346 | -;;; initialized to -(MAX_MATCH_8 - scanalign). | |
| 347 | - | |
| 348 | - mov esi, [window] | |
| 349 | - mov edi, [scan] | |
| 350 | - add esi, ecx | |
| 351 | - mov eax, [scanalign] | |
| 352 | - mov edx, 0fffffef8h; -(MAX_MATCH_8) | |
| 353 | - lea edi, [edi + eax + 0108h] ;MAX_MATCH_8] | |
| 354 | - lea esi, [esi + eax + 0108h] ;MAX_MATCH_8] | |
| 355 | - | |
| 356 | -;;; Test the strings for equality, 8 bytes at a time. At the end, | |
| 357 | -;;; adjust edx so that it is offset to the exact byte that mismatched. | |
| 358 | -;;; | |
| 359 | -;;; We already know at this point that the first three bytes of the | |
| 360 | -;;; strings match each other, and they can be safely passed over before | |
| 361 | -;;; starting the compare loop. So what this code does is skip over 0-3 | |
| 362 | -;;; bytes, as much as necessary in order to dword-align the edi | |
| 363 | -;;; pointer. (esi will still be misaligned three times out of four.) | |
| 364 | -;;; | |
| 365 | -;;; It should be confessed that this loop usually does not represent | |
| 366 | -;;; much of the total running time. Replacing it with a more | |
| 367 | -;;; straightforward "rep cmpsb" would not drastically degrade | |
| 368 | -;;; performance. | |
| 369 | - | |
| 370 | -LoopCmps: | |
| 371 | - mov eax, [esi + edx] | |
| 372 | - xor eax, [edi + edx] | |
| 373 | - jnz LeaveLoopCmps | |
| 374 | - mov eax, [esi + edx + 4] | |
| 375 | - xor eax, [edi + edx + 4] | |
| 376 | - jnz LeaveLoopCmps4 | |
| 377 | - add edx, 8 | |
| 378 | - jnz LoopCmps | |
| 379 | - jmp short LenMaximum | |
| 380 | -LeaveLoopCmps4: add edx, 4 | |
| 381 | -LeaveLoopCmps: test eax, 0000FFFFh | |
| 382 | - jnz LenLower | |
| 383 | - add edx, 2 | |
| 384 | - shr eax, 16 | |
| 385 | -LenLower: sub al, 1 | |
| 386 | - adc edx, 0 | |
| 387 | - | |
| 388 | -;;; Calculate the length of the match. If it is longer than MAX_MATCH, | |
| 389 | -;;; then automatically accept it as the best possible match and leave. | |
| 390 | - | |
| 391 | - lea eax, [edi + edx] | |
| 392 | - mov edi, [scan] | |
| 393 | - sub eax, edi | |
| 394 | - cmp eax, MAX_MATCH | |
| 395 | - jge LenMaximum | |
| 396 | - | |
| 397 | -;;; If the length of the match is not longer than the best match we | |
| 398 | -;;; have so far, then forget it and return to the lookup loop. | |
| 399 | - | |
| 400 | - mov edx, [deflatestate] | |
| 401 | - mov ebx, [bestlen] | |
| 402 | - cmp eax, ebx | |
| 403 | - jg LongerMatch | |
| 404 | - mov esi, [windowbestlen] | |
| 405 | - mov edi, [edx + dsPrev] | |
| 406 | - mov ebx, [scanend] | |
| 407 | - mov edx, [chainlenwmask] | |
| 408 | - jmp LookupLoop | |
| 409 | - | |
| 410 | -;;; s->match_start = cur_match; | |
| 411 | -;;; best_len = len; | |
| 412 | -;;; if (len >= nice_match) break; | |
| 413 | -;;; scan_end = *(ushf*)(scan+best_len-1); | |
| 414 | - | |
| 415 | -LongerMatch: mov ebx, [nicematch] | |
| 416 | - mov [bestlen], eax | |
| 417 | - mov [edx + dsMatchStart], ecx | |
| 418 | - cmp eax, ebx | |
| 419 | - jge LeaveNow | |
| 420 | - mov esi, [window] | |
| 421 | - add esi, eax | |
| 422 | - mov [windowbestlen], esi | |
| 423 | - movzx ebx, word ptr [edi + eax - 1] | |
| 424 | - mov edi, [edx + dsPrev] | |
| 425 | - mov [scanend], ebx | |
| 426 | - mov edx, [chainlenwmask] | |
| 427 | - jmp LookupLoop | |
| 428 | - | |
| 429 | -;;; Accept the current string, with the maximum possible length. | |
| 430 | - | |
| 431 | -LenMaximum: mov edx, [deflatestate] | |
| 432 | - mov dword ptr [bestlen], MAX_MATCH | |
| 433 | - mov [edx + dsMatchStart], ecx | |
| 434 | - | |
| 435 | -;;; if ((uInt)best_len <= s->lookahead) return (uInt)best_len; | |
| 436 | -;;; return s->lookahead; | |
| 437 | - | |
| 438 | -LeaveNow: | |
| 439 | - mov edx, [deflatestate] | |
| 440 | - mov ebx, [bestlen] | |
| 441 | - mov eax, [edx + dsLookahead] | |
| 442 | - cmp ebx, eax | |
| 443 | - jg LookaheadRet | |
| 444 | - mov eax, ebx | |
| 445 | -LookaheadRet: | |
| 446 | - | |
| 447 | -;;; Restore the stack and return from whence we came. | |
| 448 | - | |
| 449 | - add esp, LocalVarsSize | |
| 450 | - pop ebx | |
| 451 | - pop esi | |
| 452 | - pop edi | |
| 453 | - pop ebp | |
| 454 | - | |
| 455 | - ret | |
| 456 | -; please don't remove this string ! | |
| 457 | -; Your can freely use match686 in any free or commercial app if you don't remove the string in the binary! | |
| 458 | - db 0dh,0ah,"asm686 with masm, optimised assembly code from Brian Raiter, written 1998",0dh,0ah | |
| 459 | - | |
| 460 | - | |
| 461 | - IFDEF NOUNDERLINE | |
| 462 | - longest_match endp | |
| 463 | - ELSE | |
| 464 | - _longest_match endp | |
| 465 | - ENDIF | |
| 466 | - | |
| 467 | - IFDEF NOUNDERLINE | |
| 468 | - match_init proc near | |
| 469 | - ret | |
| 470 | - match_init endp | |
| 471 | - ELSE | |
| 472 | - _match_init proc near | |
| 473 | - ret | |
| 474 | - _match_init endp | |
| 475 | - ENDIF | |
| 476 | - | |
| 477 | - | |
| 478 | -_TEXT ends | |
| 479 | -end |
| --- a/compat/zlib/contrib/masmx86/match686.asm | |
| +++ b/compat/zlib/contrib/masmx86/match686.asm | |
| @@ -1,479 +0,0 @@ | |
| 1 | ; match686.asm -- Asm portion of the optimized longest_match for 32 bits x86 |
| 2 | ; Copyright (C) 1995-1996 Jean-loup Gailly, Brian Raiter and Gilles Vollant. |
| 3 | ; File written by Gilles Vollant, by converting match686.S from Brian Raiter |
| 4 | ; for MASM. This is as assembly version of longest_match |
| 5 | ; from Jean-loup Gailly in deflate.c |
| 6 | ; |
| 7 | ; http://www.zlib.net |
| 8 | ; http://www.winimage.com/zLibDll |
| 9 | ; http://www.muppetlabs.com/~breadbox/software/assembly.html |
| 10 | ; |
| 11 | ; For Visual C++ 4.x and higher and ML 6.x and higher |
| 12 | ; ml.exe is distributed in |
| 13 | ; http://www.microsoft.com/downloads/details.aspx?FamilyID=7a1c9da0-0510-44a2-b042-7ef370530c64 |
| 14 | ; |
| 15 | ; this file contain two implementation of longest_match |
| 16 | ; |
| 17 | ; this longest_match was written by Brian raiter (1998), optimized for Pentium Pro |
| 18 | ; (and the faster known version of match_init on modern Core 2 Duo and AMD Phenom) |
| 19 | ; |
| 20 | ; for using an assembly version of longest_match, you need define ASMV in project |
| 21 | ; |
| 22 | ; compile the asm file running |
| 23 | ; ml /coff /Zi /c /Flmatch686.lst match686.asm |
| 24 | ; and do not include match686.obj in your project |
| 25 | ; |
| 26 | ; note: contrib of zLib 1.2.3 and earlier contained both a deprecated version for |
| 27 | ; Pentium (prior Pentium Pro) and this version for Pentium Pro and modern processor |
| 28 | ; with autoselect (with cpu detection code) |
| 29 | ; if you want support the old pentium optimization, you can still use these version |
| 30 | ; |
| 31 | ; this file is not optimized for old pentium, but it compatible with all x86 32 bits |
| 32 | ; processor (starting 80386) |
| 33 | ; |
| 34 | ; |
| 35 | ; see below : zlib1222add must be adjuster if you use a zlib version < 1.2.2.2 |
| 36 | |
| 37 | ;uInt longest_match(s, cur_match) |
| 38 | ; deflate_state *s; |
| 39 | ; IPos cur_match; /* current match */ |
| 40 | |
| 41 | NbStack equ 76 |
| 42 | cur_match equ dword ptr[esp+NbStack-0] |
| 43 | str_s equ dword ptr[esp+NbStack-4] |
| 44 | ; 5 dword on top (ret,ebp,esi,edi,ebx) |
| 45 | adrret equ dword ptr[esp+NbStack-8] |
| 46 | pushebp equ dword ptr[esp+NbStack-12] |
| 47 | pushedi equ dword ptr[esp+NbStack-16] |
| 48 | pushesi equ dword ptr[esp+NbStack-20] |
| 49 | pushebx equ dword ptr[esp+NbStack-24] |
| 50 | |
| 51 | chain_length equ dword ptr [esp+NbStack-28] |
| 52 | limit equ dword ptr [esp+NbStack-32] |
| 53 | best_len equ dword ptr [esp+NbStack-36] |
| 54 | window equ dword ptr [esp+NbStack-40] |
| 55 | prev equ dword ptr [esp+NbStack-44] |
| 56 | scan_start equ word ptr [esp+NbStack-48] |
| 57 | wmask equ dword ptr [esp+NbStack-52] |
| 58 | match_start_ptr equ dword ptr [esp+NbStack-56] |
| 59 | nice_match equ dword ptr [esp+NbStack-60] |
| 60 | scan equ dword ptr [esp+NbStack-64] |
| 61 | |
| 62 | windowlen equ dword ptr [esp+NbStack-68] |
| 63 | match_start equ dword ptr [esp+NbStack-72] |
| 64 | strend equ dword ptr [esp+NbStack-76] |
| 65 | NbStackAdd equ (NbStack-24) |
| 66 | |
| 67 | .386p |
| 68 | |
| 69 | name gvmatch |
| 70 | .MODEL FLAT |
| 71 | |
| 72 | |
| 73 | |
| 74 | ; all the +zlib1222add offsets are due to the addition of fields |
| 75 | ; in zlib in the deflate_state structure since the asm code was first written |
| 76 | ; (if you compile with zlib 1.0.4 or older, use "zlib1222add equ (-4)"). |
| 77 | ; (if you compile with zlib between 1.0.5 and 1.2.2.1, use "zlib1222add equ 0"). |
| 78 | ; if you compile with zlib 1.2.2.2 or later , use "zlib1222add equ 8"). |
| 79 | |
| 80 | zlib1222add equ 8 |
| 81 | |
| 82 | ; Note : these value are good with a 8 bytes boundary pack structure |
| 83 | dep_chain_length equ 74h+zlib1222add |
| 84 | dep_window equ 30h+zlib1222add |
| 85 | dep_strstart equ 64h+zlib1222add |
| 86 | dep_prev_length equ 70h+zlib1222add |
| 87 | dep_nice_match equ 88h+zlib1222add |
| 88 | dep_w_size equ 24h+zlib1222add |
| 89 | dep_prev equ 38h+zlib1222add |
| 90 | dep_w_mask equ 2ch+zlib1222add |
| 91 | dep_good_match equ 84h+zlib1222add |
| 92 | dep_match_start equ 68h+zlib1222add |
| 93 | dep_lookahead equ 6ch+zlib1222add |
| 94 | |
| 95 | |
| 96 | _TEXT segment |
| 97 | |
| 98 | IFDEF NOUNDERLINE |
| 99 | public longest_match |
| 100 | public match_init |
| 101 | ELSE |
| 102 | public _longest_match |
| 103 | public _match_init |
| 104 | ENDIF |
| 105 | |
| 106 | MAX_MATCH equ 258 |
| 107 | MIN_MATCH equ 3 |
| 108 | MIN_LOOKAHEAD equ (MAX_MATCH+MIN_MATCH+1) |
| 109 | |
| 110 | |
| 111 | |
| 112 | MAX_MATCH equ 258 |
| 113 | MIN_MATCH equ 3 |
| 114 | MIN_LOOKAHEAD equ (MAX_MATCH + MIN_MATCH + 1) |
| 115 | MAX_MATCH_8_ equ ((MAX_MATCH + 7) AND 0FFF0h) |
| 116 | |
| 117 | |
| 118 | ;;; stack frame offsets |
| 119 | |
| 120 | chainlenwmask equ esp + 0 ; high word: current chain len |
| 121 | ; low word: s->wmask |
| 122 | window equ esp + 4 ; local copy of s->window |
| 123 | windowbestlen equ esp + 8 ; s->window + bestlen |
| 124 | scanstart equ esp + 16 ; first two bytes of string |
| 125 | scanend equ esp + 12 ; last two bytes of string |
| 126 | scanalign equ esp + 20 ; dword-misalignment of string |
| 127 | nicematch equ esp + 24 ; a good enough match size |
| 128 | bestlen equ esp + 28 ; size of best match so far |
| 129 | scan equ esp + 32 ; ptr to string wanting match |
| 130 | |
| 131 | LocalVarsSize equ 36 |
| 132 | ; saved ebx byte esp + 36 |
| 133 | ; saved edi byte esp + 40 |
| 134 | ; saved esi byte esp + 44 |
| 135 | ; saved ebp byte esp + 48 |
| 136 | ; return address byte esp + 52 |
| 137 | deflatestate equ esp + 56 ; the function arguments |
| 138 | curmatch equ esp + 60 |
| 139 | |
| 140 | ;;; Offsets for fields in the deflate_state structure. These numbers |
| 141 | ;;; are calculated from the definition of deflate_state, with the |
| 142 | ;;; assumption that the compiler will dword-align the fields. (Thus, |
| 143 | ;;; changing the definition of deflate_state could easily cause this |
| 144 | ;;; program to crash horribly, without so much as a warning at |
| 145 | ;;; compile time. Sigh.) |
| 146 | |
| 147 | dsWSize equ 36+zlib1222add |
| 148 | dsWMask equ 44+zlib1222add |
| 149 | dsWindow equ 48+zlib1222add |
| 150 | dsPrev equ 56+zlib1222add |
| 151 | dsMatchLen equ 88+zlib1222add |
| 152 | dsPrevMatch equ 92+zlib1222add |
| 153 | dsStrStart equ 100+zlib1222add |
| 154 | dsMatchStart equ 104+zlib1222add |
| 155 | dsLookahead equ 108+zlib1222add |
| 156 | dsPrevLen equ 112+zlib1222add |
| 157 | dsMaxChainLen equ 116+zlib1222add |
| 158 | dsGoodMatch equ 132+zlib1222add |
| 159 | dsNiceMatch equ 136+zlib1222add |
| 160 | |
| 161 | |
| 162 | ;;; match686.asm -- Pentium-Pro-optimized version of longest_match() |
| 163 | ;;; Written for zlib 1.1.2 |
| 164 | ;;; Copyright (C) 1998 Brian Raiter <[email protected]> |
| 165 | ;;; You can look at http://www.muppetlabs.com/~breadbox/software/assembly.html |
| 166 | ;;; |
| 167 | ;; |
| 168 | ;; This software is provided 'as-is', without any express or implied |
| 169 | ;; warranty. In no event will the authors be held liable for any damages |
| 170 | ;; arising from the use of this software. |
| 171 | ;; |
| 172 | ;; Permission is granted to anyone to use this software for any purpose, |
| 173 | ;; including commercial applications, and to alter it and redistribute it |
| 174 | ;; freely, subject to the following restrictions: |
| 175 | ;; |
| 176 | ;; 1. The origin of this software must not be misrepresented; you must not |
| 177 | ;; claim that you wrote the original software. If you use this software |
| 178 | ;; in a product, an acknowledgment in the product documentation would be |
| 179 | ;; appreciated but is not required. |
| 180 | ;; 2. Altered source versions must be plainly marked as such, and must not be |
| 181 | ;; misrepresented as being the original software |
| 182 | ;; 3. This notice may not be removed or altered from any source distribution. |
| 183 | ;; |
| 184 | |
| 185 | ;GLOBAL _longest_match, _match_init |
| 186 | |
| 187 | |
| 188 | ;SECTION .text |
| 189 | |
| 190 | ;;; uInt longest_match(deflate_state *deflatestate, IPos curmatch) |
| 191 | |
| 192 | ;_longest_match: |
| 193 | IFDEF NOUNDERLINE |
| 194 | longest_match proc near |
| 195 | ELSE |
| 196 | _longest_match proc near |
| 197 | ENDIF |
| 198 | .FPO (9, 4, 0, 0, 1, 0) |
| 199 | |
| 200 | ;;; Save registers that the compiler may be using, and adjust esp to |
| 201 | ;;; make room for our stack frame. |
| 202 | |
| 203 | push ebp |
| 204 | push edi |
| 205 | push esi |
| 206 | push ebx |
| 207 | sub esp, LocalVarsSize |
| 208 | |
| 209 | ;;; Retrieve the function arguments. ecx will hold cur_match |
| 210 | ;;; throughout the entire function. edx will hold the pointer to the |
| 211 | ;;; deflate_state structure during the function's setup (before |
| 212 | ;;; entering the main loop. |
| 213 | |
| 214 | mov edx, [deflatestate] |
| 215 | mov ecx, [curmatch] |
| 216 | |
| 217 | ;;; uInt wmask = s->w_mask; |
| 218 | ;;; unsigned chain_length = s->max_chain_length; |
| 219 | ;;; if (s->prev_length >= s->good_match) { |
| 220 | ;;; chain_length >>= 2; |
| 221 | ;;; } |
| 222 | |
| 223 | mov eax, [edx + dsPrevLen] |
| 224 | mov ebx, [edx + dsGoodMatch] |
| 225 | cmp eax, ebx |
| 226 | mov eax, [edx + dsWMask] |
| 227 | mov ebx, [edx + dsMaxChainLen] |
| 228 | jl LastMatchGood |
| 229 | shr ebx, 2 |
| 230 | LastMatchGood: |
| 231 | |
| 232 | ;;; chainlen is decremented once beforehand so that the function can |
| 233 | ;;; use the sign flag instead of the zero flag for the exit test. |
| 234 | ;;; It is then shifted into the high word, to make room for the wmask |
| 235 | ;;; value, which it will always accompany. |
| 236 | |
| 237 | dec ebx |
| 238 | shl ebx, 16 |
| 239 | or ebx, eax |
| 240 | mov [chainlenwmask], ebx |
| 241 | |
| 242 | ;;; if ((uInt)nice_match > s->lookahead) nice_match = s->lookahead; |
| 243 | |
| 244 | mov eax, [edx + dsNiceMatch] |
| 245 | mov ebx, [edx + dsLookahead] |
| 246 | cmp ebx, eax |
| 247 | jl LookaheadLess |
| 248 | mov ebx, eax |
| 249 | LookaheadLess: mov [nicematch], ebx |
| 250 | |
| 251 | ;;; register Bytef *scan = s->window + s->strstart; |
| 252 | |
| 253 | mov esi, [edx + dsWindow] |
| 254 | mov [window], esi |
| 255 | mov ebp, [edx + dsStrStart] |
| 256 | lea edi, [esi + ebp] |
| 257 | mov [scan], edi |
| 258 | |
| 259 | ;;; Determine how many bytes the scan ptr is off from being |
| 260 | ;;; dword-aligned. |
| 261 | |
| 262 | mov eax, edi |
| 263 | neg eax |
| 264 | and eax, 3 |
| 265 | mov [scanalign], eax |
| 266 | |
| 267 | ;;; IPos limit = s->strstart > (IPos)MAX_DIST(s) ? |
| 268 | ;;; s->strstart - (IPos)MAX_DIST(s) : NIL; |
| 269 | |
| 270 | mov eax, [edx + dsWSize] |
| 271 | sub eax, MIN_LOOKAHEAD |
| 272 | sub ebp, eax |
| 273 | jg LimitPositive |
| 274 | xor ebp, ebp |
| 275 | LimitPositive: |
| 276 | |
| 277 | ;;; int best_len = s->prev_length; |
| 278 | |
| 279 | mov eax, [edx + dsPrevLen] |
| 280 | mov [bestlen], eax |
| 281 | |
| 282 | ;;; Store the sum of s->window + best_len in esi locally, and in esi. |
| 283 | |
| 284 | add esi, eax |
| 285 | mov [windowbestlen], esi |
| 286 | |
| 287 | ;;; register ush scan_start = *(ushf*)scan; |
| 288 | ;;; register ush scan_end = *(ushf*)(scan+best_len-1); |
| 289 | ;;; Posf *prev = s->prev; |
| 290 | |
| 291 | movzx ebx, word ptr [edi] |
| 292 | mov [scanstart], ebx |
| 293 | movzx ebx, word ptr [edi + eax - 1] |
| 294 | mov [scanend], ebx |
| 295 | mov edi, [edx + dsPrev] |
| 296 | |
| 297 | ;;; Jump into the main loop. |
| 298 | |
| 299 | mov edx, [chainlenwmask] |
| 300 | jmp short LoopEntry |
| 301 | |
| 302 | align 4 |
| 303 | |
| 304 | ;;; do { |
| 305 | ;;; match = s->window + cur_match; |
| 306 | ;;; if (*(ushf*)(match+best_len-1) != scan_end || |
| 307 | ;;; *(ushf*)match != scan_start) continue; |
| 308 | ;;; [...] |
| 309 | ;;; } while ((cur_match = prev[cur_match & wmask]) > limit |
| 310 | ;;; && --chain_length != 0); |
| 311 | ;;; |
| 312 | ;;; Here is the inner loop of the function. The function will spend the |
| 313 | ;;; majority of its time in this loop, and majority of that time will |
| 314 | ;;; be spent in the first ten instructions. |
| 315 | ;;; |
| 316 | ;;; Within this loop: |
| 317 | ;;; ebx = scanend |
| 318 | ;;; ecx = curmatch |
| 319 | ;;; edx = chainlenwmask - i.e., ((chainlen << 16) | wmask) |
| 320 | ;;; esi = windowbestlen - i.e., (window + bestlen) |
| 321 | ;;; edi = prev |
| 322 | ;;; ebp = limit |
| 323 | |
| 324 | LookupLoop: |
| 325 | and ecx, edx |
| 326 | movzx ecx, word ptr [edi + ecx*2] |
| 327 | cmp ecx, ebp |
| 328 | jbe LeaveNow |
| 329 | sub edx, 00010000h |
| 330 | js LeaveNow |
| 331 | LoopEntry: movzx eax, word ptr [esi + ecx - 1] |
| 332 | cmp eax, ebx |
| 333 | jnz LookupLoop |
| 334 | mov eax, [window] |
| 335 | movzx eax, word ptr [eax + ecx] |
| 336 | cmp eax, [scanstart] |
| 337 | jnz LookupLoop |
| 338 | |
| 339 | ;;; Store the current value of chainlen. |
| 340 | |
| 341 | mov [chainlenwmask], edx |
| 342 | |
| 343 | ;;; Point edi to the string under scrutiny, and esi to the string we |
| 344 | ;;; are hoping to match it up with. In actuality, esi and edi are |
| 345 | ;;; both pointed (MAX_MATCH_8 - scanalign) bytes ahead, and edx is |
| 346 | ;;; initialized to -(MAX_MATCH_8 - scanalign). |
| 347 | |
| 348 | mov esi, [window] |
| 349 | mov edi, [scan] |
| 350 | add esi, ecx |
| 351 | mov eax, [scanalign] |
| 352 | mov edx, 0fffffef8h; -(MAX_MATCH_8) |
| 353 | lea edi, [edi + eax + 0108h] ;MAX_MATCH_8] |
| 354 | lea esi, [esi + eax + 0108h] ;MAX_MATCH_8] |
| 355 | |
| 356 | ;;; Test the strings for equality, 8 bytes at a time. At the end, |
| 357 | ;;; adjust edx so that it is offset to the exact byte that mismatched. |
| 358 | ;;; |
| 359 | ;;; We already know at this point that the first three bytes of the |
| 360 | ;;; strings match each other, and they can be safely passed over before |
| 361 | ;;; starting the compare loop. So what this code does is skip over 0-3 |
| 362 | ;;; bytes, as much as necessary in order to dword-align the edi |
| 363 | ;;; pointer. (esi will still be misaligned three times out of four.) |
| 364 | ;;; |
| 365 | ;;; It should be confessed that this loop usually does not represent |
| 366 | ;;; much of the total running time. Replacing it with a more |
| 367 | ;;; straightforward "rep cmpsb" would not drastically degrade |
| 368 | ;;; performance. |
| 369 | |
| 370 | LoopCmps: |
| 371 | mov eax, [esi + edx] |
| 372 | xor eax, [edi + edx] |
| 373 | jnz LeaveLoopCmps |
| 374 | mov eax, [esi + edx + 4] |
| 375 | xor eax, [edi + edx + 4] |
| 376 | jnz LeaveLoopCmps4 |
| 377 | add edx, 8 |
| 378 | jnz LoopCmps |
| 379 | jmp short LenMaximum |
| 380 | LeaveLoopCmps4: add edx, 4 |
| 381 | LeaveLoopCmps: test eax, 0000FFFFh |
| 382 | jnz LenLower |
| 383 | add edx, 2 |
| 384 | shr eax, 16 |
| 385 | LenLower: sub al, 1 |
| 386 | adc edx, 0 |
| 387 | |
| 388 | ;;; Calculate the length of the match. If it is longer than MAX_MATCH, |
| 389 | ;;; then automatically accept it as the best possible match and leave. |
| 390 | |
| 391 | lea eax, [edi + edx] |
| 392 | mov edi, [scan] |
| 393 | sub eax, edi |
| 394 | cmp eax, MAX_MATCH |
| 395 | jge LenMaximum |
| 396 | |
| 397 | ;;; If the length of the match is not longer than the best match we |
| 398 | ;;; have so far, then forget it and return to the lookup loop. |
| 399 | |
| 400 | mov edx, [deflatestate] |
| 401 | mov ebx, [bestlen] |
| 402 | cmp eax, ebx |
| 403 | jg LongerMatch |
| 404 | mov esi, [windowbestlen] |
| 405 | mov edi, [edx + dsPrev] |
| 406 | mov ebx, [scanend] |
| 407 | mov edx, [chainlenwmask] |
| 408 | jmp LookupLoop |
| 409 | |
| 410 | ;;; s->match_start = cur_match; |
| 411 | ;;; best_len = len; |
| 412 | ;;; if (len >= nice_match) break; |
| 413 | ;;; scan_end = *(ushf*)(scan+best_len-1); |
| 414 | |
| 415 | LongerMatch: mov ebx, [nicematch] |
| 416 | mov [bestlen], eax |
| 417 | mov [edx + dsMatchStart], ecx |
| 418 | cmp eax, ebx |
| 419 | jge LeaveNow |
| 420 | mov esi, [window] |
| 421 | add esi, eax |
| 422 | mov [windowbestlen], esi |
| 423 | movzx ebx, word ptr [edi + eax - 1] |
| 424 | mov edi, [edx + dsPrev] |
| 425 | mov [scanend], ebx |
| 426 | mov edx, [chainlenwmask] |
| 427 | jmp LookupLoop |
| 428 | |
| 429 | ;;; Accept the current string, with the maximum possible length. |
| 430 | |
| 431 | LenMaximum: mov edx, [deflatestate] |
| 432 | mov dword ptr [bestlen], MAX_MATCH |
| 433 | mov [edx + dsMatchStart], ecx |
| 434 | |
| 435 | ;;; if ((uInt)best_len <= s->lookahead) return (uInt)best_len; |
| 436 | ;;; return s->lookahead; |
| 437 | |
| 438 | LeaveNow: |
| 439 | mov edx, [deflatestate] |
| 440 | mov ebx, [bestlen] |
| 441 | mov eax, [edx + dsLookahead] |
| 442 | cmp ebx, eax |
| 443 | jg LookaheadRet |
| 444 | mov eax, ebx |
| 445 | LookaheadRet: |
| 446 | |
| 447 | ;;; Restore the stack and return from whence we came. |
| 448 | |
| 449 | add esp, LocalVarsSize |
| 450 | pop ebx |
| 451 | pop esi |
| 452 | pop edi |
| 453 | pop ebp |
| 454 | |
| 455 | ret |
| 456 | ; please don't remove this string ! |
| 457 | ; Your can freely use match686 in any free or commercial app if you don't remove the string in the binary! |
| 458 | db 0dh,0ah,"asm686 with masm, optimised assembly code from Brian Raiter, written 1998",0dh,0ah |
| 459 | |
| 460 | |
| 461 | IFDEF NOUNDERLINE |
| 462 | longest_match endp |
| 463 | ELSE |
| 464 | _longest_match endp |
| 465 | ENDIF |
| 466 | |
| 467 | IFDEF NOUNDERLINE |
| 468 | match_init proc near |
| 469 | ret |
| 470 | match_init endp |
| 471 | ELSE |
| 472 | _match_init proc near |
| 473 | ret |
| 474 | _match_init endp |
| 475 | ENDIF |
| 476 | |
| 477 | |
| 478 | _TEXT ends |
| 479 | end |
| --- a/compat/zlib/contrib/masmx86/match686.asm | |
| +++ b/compat/zlib/contrib/masmx86/match686.asm | |
| @@ -1,479 +0,0 @@ | |
D
compat/zlib/contrib/masmx86/readme.txt
-24
| --- a/compat/zlib/contrib/masmx86/readme.txt | ||
| +++ b/compat/zlib/contrib/masmx86/readme.txt | ||
| @@ -1,27 +0,0 @@ | ||
| 1 | - | |
| 2 | -Summary | |
| -------- | ||
| 3 | -This directory contains ASM implementations of the functions | |
| 4 | -longest_match() and inflate_fast(). | |
| 5 | - | |
| 6 | - | |
| 7 | -Use instructions | |
| ----------------- | ||
| 8 | -Assemble using MASM, and copy the object files into the zlib source | |
| 9 | -directory, then run the appropriate makefile, as suggested below. You can | |
| 10 | -donwload MASM from here: | |
| 11 | - | |
| 12 | - http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7a1c9da0-0510-44a2-b042-7ef370530c64 | |
| 13 | - | |
| 14 | -You can also get objects files here: | |
| 15 | - | |
| 16 | - http://www.winimage.com/zLibDll/zlib124_masm_obj.zip | |
| 17 | - | |
| 18 | -Build instructions | |
| ------------------- | ||
| 19 | -* With Microsoft C and MASM: | |
| 20 | -nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA="match686.obj inffas32.obj" | |
| 21 | - | |
| 22 | -* With Borland C and TASM: | |
| 23 | -make -f win32/Makefile.bor LOCAL_ZLIB="-DASMV -DASMINF" OBJA="match686.obj inffas32.obj" OBJPA="+match686c.obj+match686.obj+inffas32.obj" | |
| 24 | - |
| --- a/compat/zlib/contrib/masmx86/readme.txt | |
| +++ b/compat/zlib/contrib/masmx86/readme.txt | |
| @@ -1,27 +0,0 @@ | |
| 1 | |
| 2 | Summary |
| -------- | |
| 3 | This directory contains ASM implementations of the functions |
| 4 | longest_match() and inflate_fast(). |
| 5 | |
| 6 | |
| 7 | Use instructions |
| ----------------- | |
| 8 | Assemble using MASM, and copy the object files into the zlib source |
| 9 | directory, then run the appropriate makefile, as suggested below. You can |
| 10 | donwload MASM from here: |
| 11 | |
| 12 | http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=7a1c9da0-0510-44a2-b042-7ef370530c64 |
| 13 | |
| 14 | You can also get objects files here: |
| 15 | |
| 16 | http://www.winimage.com/zLibDll/zlib124_masm_obj.zip |
| 17 | |
| 18 | Build instructions |
| ------------------- | |
| 19 | * With Microsoft C and MASM: |
| 20 | nmake -f win32/Makefile.msc LOC="-DASMV -DASMINF" OBJA="match686.obj inffas32.obj" |
| 21 | |
| 22 | * With Borland C and TASM: |
| 23 | make -f win32/Makefile.bor LOCAL_ZLIB="-DASMV -DASMINF" OBJA="match686.obj inffas32.obj" OBJPA="+match686c.obj+match686.obj+inffas32.obj" |
| 24 |
| --- a/compat/zlib/contrib/masmx86/readme.txt | |
| +++ b/compat/zlib/contrib/masmx86/readme.txt | |
| @@ -1,27 +0,0 @@ | |
| -------- | |
| ----------------- | |
| ------------------- | |
| --- compat/zlib/contrib/minizip/configure.ac | ||
| +++ compat/zlib/contrib/minizip/configure.ac | ||
| @@ -1,9 +1,9 @@ | ||
| 1 | 1 | # -*- Autoconf -*- |
| 2 | 2 | # Process this file with autoconf to produce a configure script. |
| 3 | 3 | |
| 4 | -AC_INIT([minizip], [1.2.12], [bugzilla.redhat.com]) | |
| 4 | +AC_INIT([minizip], [1.2.13], [bugzilla.redhat.com]) | |
| 5 | 5 | AC_CONFIG_SRCDIR([minizip.c]) |
| 6 | 6 | AM_INIT_AUTOMAKE([foreign]) |
| 7 | 7 | LT_INIT |
| 8 | 8 | |
| 9 | 9 | AC_MSG_CHECKING([whether to build example programs]) |
| 10 | 10 |
| --- compat/zlib/contrib/minizip/configure.ac | |
| +++ compat/zlib/contrib/minizip/configure.ac | |
| @@ -1,9 +1,9 @@ | |
| 1 | # -*- Autoconf -*- |
| 2 | # Process this file with autoconf to produce a configure script. |
| 3 | |
| 4 | AC_INIT([minizip], [1.2.12], [bugzilla.redhat.com]) |
| 5 | AC_CONFIG_SRCDIR([minizip.c]) |
| 6 | AM_INIT_AUTOMAKE([foreign]) |
| 7 | LT_INIT |
| 8 | |
| 9 | AC_MSG_CHECKING([whether to build example programs]) |
| 10 |
| --- compat/zlib/contrib/minizip/configure.ac | |
| +++ compat/zlib/contrib/minizip/configure.ac | |
| @@ -1,9 +1,9 @@ | |
| 1 | # -*- Autoconf -*- |
| 2 | # Process this file with autoconf to produce a configure script. |
| 3 | |
| 4 | AC_INIT([minizip], [1.2.13], [bugzilla.redhat.com]) |
| 5 | AC_CONFIG_SRCDIR([minizip.c]) |
| 6 | AM_INIT_AUTOMAKE([foreign]) |
| 7 | LT_INIT |
| 8 | |
| 9 | AC_MSG_CHECKING([whether to build example programs]) |
| 10 |
| --- compat/zlib/contrib/minizip/crypt.h | ||
| +++ compat/zlib/contrib/minizip/crypt.h | ||
| @@ -83,11 +83,11 @@ | ||
| 83 | 83 | #ifdef INCLUDECRYPTINGCODE_IFCRYPTALLOWED |
| 84 | 84 | |
| 85 | 85 | #define RAND_HEAD_LEN 12 |
| 86 | 86 | /* "last resort" source for second part of crypt seed pattern */ |
| 87 | 87 | # ifndef ZCR_SEED2 |
| 88 | -# define ZCR_SEED2 3141592654L /* use PI as default pattern */ | |
| 88 | +# define ZCR_SEED2 3141592654UL /* use PI as default pattern */ | |
| 89 | 89 | # endif |
| 90 | 90 | |
| 91 | 91 | static unsigned crypthead(const char* passwd, /* password string */ |
| 92 | 92 | unsigned char* buf, /* where to write header */ |
| 93 | 93 | int bufSize, |
| 94 | 94 |
| --- compat/zlib/contrib/minizip/crypt.h | |
| +++ compat/zlib/contrib/minizip/crypt.h | |
| @@ -83,11 +83,11 @@ | |
| 83 | #ifdef INCLUDECRYPTINGCODE_IFCRYPTALLOWED |
| 84 | |
| 85 | #define RAND_HEAD_LEN 12 |
| 86 | /* "last resort" source for second part of crypt seed pattern */ |
| 87 | # ifndef ZCR_SEED2 |
| 88 | # define ZCR_SEED2 3141592654L /* use PI as default pattern */ |
| 89 | # endif |
| 90 | |
| 91 | static unsigned crypthead(const char* passwd, /* password string */ |
| 92 | unsigned char* buf, /* where to write header */ |
| 93 | int bufSize, |
| 94 |
| --- compat/zlib/contrib/minizip/crypt.h | |
| +++ compat/zlib/contrib/minizip/crypt.h | |
| @@ -83,11 +83,11 @@ | |
| 83 | #ifdef INCLUDECRYPTINGCODE_IFCRYPTALLOWED |
| 84 | |
| 85 | #define RAND_HEAD_LEN 12 |
| 86 | /* "last resort" source for second part of crypt seed pattern */ |
| 87 | # ifndef ZCR_SEED2 |
| 88 | # define ZCR_SEED2 3141592654UL /* use PI as default pattern */ |
| 89 | # endif |
| 90 | |
| 91 | static unsigned crypthead(const char* passwd, /* password string */ |
| 92 | unsigned char* buf, /* where to write header */ |
| 93 | int bufSize, |
| 94 |
+11
-11
| --- compat/zlib/contrib/minizip/ioapi.c | ||
| +++ compat/zlib/contrib/minizip/ioapi.c | ||
| @@ -92,13 +92,13 @@ | ||
| 92 | 92 | static int ZCALLBACK fclose_file_func OF((voidpf opaque, voidpf stream)); |
| 93 | 93 | static int ZCALLBACK ferror_file_func OF((voidpf opaque, voidpf stream)); |
| 94 | 94 | |
| 95 | 95 | static voidpf ZCALLBACK fopen_file_func (voidpf opaque, const char* filename, int mode) |
| 96 | 96 | { |
| 97 | - (void)opaque; | |
| 98 | 97 | FILE* file = NULL; |
| 99 | 98 | const char* mode_fopen = NULL; |
| 99 | + (void)opaque; | |
| 100 | 100 | if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) |
| 101 | 101 | mode_fopen = "rb"; |
| 102 | 102 | else |
| 103 | 103 | if (mode & ZLIB_FILEFUNC_MODE_EXISTING) |
| 104 | 104 | mode_fopen = "r+b"; |
| @@ -111,13 +111,13 @@ | ||
| 111 | 111 | return file; |
| 112 | 112 | } |
| 113 | 113 | |
| 114 | 114 | static voidpf ZCALLBACK fopen64_file_func (voidpf opaque, const void* filename, int mode) |
| 115 | 115 | { |
| 116 | - (void)opaque; | |
| 117 | 116 | FILE* file = NULL; |
| 118 | 117 | const char* mode_fopen = NULL; |
| 118 | + (void)opaque; | |
| 119 | 119 | if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) |
| 120 | 120 | mode_fopen = "rb"; |
| 121 | 121 | else |
| 122 | 122 | if (mode & ZLIB_FILEFUNC_MODE_EXISTING) |
| 123 | 123 | mode_fopen = "r+b"; |
| @@ -131,46 +131,46 @@ | ||
| 131 | 131 | } |
| 132 | 132 | |
| 133 | 133 | |
| 134 | 134 | static uLong ZCALLBACK fread_file_func (voidpf opaque, voidpf stream, void* buf, uLong size) |
| 135 | 135 | { |
| 136 | - (void)opaque; | |
| 137 | 136 | uLong ret; |
| 137 | + (void)opaque; | |
| 138 | 138 | ret = (uLong)fread(buf, 1, (size_t)size, (FILE *)stream); |
| 139 | 139 | return ret; |
| 140 | 140 | } |
| 141 | 141 | |
| 142 | 142 | static uLong ZCALLBACK fwrite_file_func (voidpf opaque, voidpf stream, const void* buf, uLong size) |
| 143 | 143 | { |
| 144 | - (void)opaque; | |
| 145 | 144 | uLong ret; |
| 145 | + (void)opaque; | |
| 146 | 146 | ret = (uLong)fwrite(buf, 1, (size_t)size, (FILE *)stream); |
| 147 | 147 | return ret; |
| 148 | 148 | } |
| 149 | 149 | |
| 150 | 150 | static long ZCALLBACK ftell_file_func (voidpf opaque, voidpf stream) |
| 151 | 151 | { |
| 152 | - (void)opaque; | |
| 153 | 152 | long ret; |
| 153 | + (void)opaque; | |
| 154 | 154 | ret = ftell((FILE *)stream); |
| 155 | 155 | return ret; |
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | |
| 159 | 159 | static ZPOS64_T ZCALLBACK ftell64_file_func (voidpf opaque, voidpf stream) |
| 160 | 160 | { |
| 161 | - (void)opaque; | |
| 162 | 161 | ZPOS64_T ret; |
| 162 | + (void)opaque; | |
| 163 | 163 | ret = (ZPOS64_T)FTELLO_FUNC((FILE *)stream); |
| 164 | 164 | return ret; |
| 165 | 165 | } |
| 166 | 166 | |
| 167 | 167 | static long ZCALLBACK fseek_file_func (voidpf opaque, voidpf stream, uLong offset, int origin) |
| 168 | 168 | { |
| 169 | - (void)opaque; | |
| 170 | 169 | int fseek_origin=0; |
| 171 | 170 | long ret; |
| 171 | + (void)opaque; | |
| 172 | 172 | switch (origin) |
| 173 | 173 | { |
| 174 | 174 | case ZLIB_FILEFUNC_SEEK_CUR : |
| 175 | 175 | fseek_origin = SEEK_CUR; |
| 176 | 176 | break; |
| @@ -188,13 +188,13 @@ | ||
| 188 | 188 | return ret; |
| 189 | 189 | } |
| 190 | 190 | |
| 191 | 191 | static long ZCALLBACK fseek64_file_func (voidpf opaque, voidpf stream, ZPOS64_T offset, int origin) |
| 192 | 192 | { |
| 193 | - (void)opaque; | |
| 194 | 193 | int fseek_origin=0; |
| 195 | 194 | long ret; |
| 195 | + (void)opaque; | |
| 196 | 196 | switch (origin) |
| 197 | 197 | { |
| 198 | 198 | case ZLIB_FILEFUNC_SEEK_CUR : |
| 199 | 199 | fseek_origin = SEEK_CUR; |
| 200 | 200 | break; |
| @@ -206,29 +206,29 @@ | ||
| 206 | 206 | break; |
| 207 | 207 | default: return -1; |
| 208 | 208 | } |
| 209 | 209 | ret = 0; |
| 210 | 210 | |
| 211 | - if(FSEEKO_FUNC((FILE *)stream, (long)offset, fseek_origin) != 0) | |
| 211 | + if(FSEEKO_FUNC((FILE *)stream, (z_off_t)offset, fseek_origin) != 0) | |
| 212 | 212 | ret = -1; |
| 213 | 213 | |
| 214 | 214 | return ret; |
| 215 | 215 | } |
| 216 | 216 | |
| 217 | 217 | |
| 218 | 218 | static int ZCALLBACK fclose_file_func (voidpf opaque, voidpf stream) |
| 219 | 219 | { |
| 220 | - (void)opaque; | |
| 221 | 220 | int ret; |
| 221 | + (void)opaque; | |
| 222 | 222 | ret = fclose((FILE *)stream); |
| 223 | 223 | return ret; |
| 224 | 224 | } |
| 225 | 225 | |
| 226 | 226 | static int ZCALLBACK ferror_file_func (voidpf opaque, voidpf stream) |
| 227 | 227 | { |
| 228 | - (void)opaque; | |
| 229 | 228 | int ret; |
| 229 | + (void)opaque; | |
| 230 | 230 | ret = ferror((FILE *)stream); |
| 231 | 231 | return ret; |
| 232 | 232 | } |
| 233 | 233 | |
| 234 | 234 | void fill_fopen_filefunc (pzlib_filefunc_def) |
| 235 | 235 |
| --- compat/zlib/contrib/minizip/ioapi.c | |
| +++ compat/zlib/contrib/minizip/ioapi.c | |
| @@ -92,13 +92,13 @@ | |
| 92 | static int ZCALLBACK fclose_file_func OF((voidpf opaque, voidpf stream)); |
| 93 | static int ZCALLBACK ferror_file_func OF((voidpf opaque, voidpf stream)); |
| 94 | |
| 95 | static voidpf ZCALLBACK fopen_file_func (voidpf opaque, const char* filename, int mode) |
| 96 | { |
| 97 | (void)opaque; |
| 98 | FILE* file = NULL; |
| 99 | const char* mode_fopen = NULL; |
| 100 | if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) |
| 101 | mode_fopen = "rb"; |
| 102 | else |
| 103 | if (mode & ZLIB_FILEFUNC_MODE_EXISTING) |
| 104 | mode_fopen = "r+b"; |
| @@ -111,13 +111,13 @@ | |
| 111 | return file; |
| 112 | } |
| 113 | |
| 114 | static voidpf ZCALLBACK fopen64_file_func (voidpf opaque, const void* filename, int mode) |
| 115 | { |
| 116 | (void)opaque; |
| 117 | FILE* file = NULL; |
| 118 | const char* mode_fopen = NULL; |
| 119 | if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) |
| 120 | mode_fopen = "rb"; |
| 121 | else |
| 122 | if (mode & ZLIB_FILEFUNC_MODE_EXISTING) |
| 123 | mode_fopen = "r+b"; |
| @@ -131,46 +131,46 @@ | |
| 131 | } |
| 132 | |
| 133 | |
| 134 | static uLong ZCALLBACK fread_file_func (voidpf opaque, voidpf stream, void* buf, uLong size) |
| 135 | { |
| 136 | (void)opaque; |
| 137 | uLong ret; |
| 138 | ret = (uLong)fread(buf, 1, (size_t)size, (FILE *)stream); |
| 139 | return ret; |
| 140 | } |
| 141 | |
| 142 | static uLong ZCALLBACK fwrite_file_func (voidpf opaque, voidpf stream, const void* buf, uLong size) |
| 143 | { |
| 144 | (void)opaque; |
| 145 | uLong ret; |
| 146 | ret = (uLong)fwrite(buf, 1, (size_t)size, (FILE *)stream); |
| 147 | return ret; |
| 148 | } |
| 149 | |
| 150 | static long ZCALLBACK ftell_file_func (voidpf opaque, voidpf stream) |
| 151 | { |
| 152 | (void)opaque; |
| 153 | long ret; |
| 154 | ret = ftell((FILE *)stream); |
| 155 | return ret; |
| 156 | } |
| 157 | |
| 158 | |
| 159 | static ZPOS64_T ZCALLBACK ftell64_file_func (voidpf opaque, voidpf stream) |
| 160 | { |
| 161 | (void)opaque; |
| 162 | ZPOS64_T ret; |
| 163 | ret = (ZPOS64_T)FTELLO_FUNC((FILE *)stream); |
| 164 | return ret; |
| 165 | } |
| 166 | |
| 167 | static long ZCALLBACK fseek_file_func (voidpf opaque, voidpf stream, uLong offset, int origin) |
| 168 | { |
| 169 | (void)opaque; |
| 170 | int fseek_origin=0; |
| 171 | long ret; |
| 172 | switch (origin) |
| 173 | { |
| 174 | case ZLIB_FILEFUNC_SEEK_CUR : |
| 175 | fseek_origin = SEEK_CUR; |
| 176 | break; |
| @@ -188,13 +188,13 @@ | |
| 188 | return ret; |
| 189 | } |
| 190 | |
| 191 | static long ZCALLBACK fseek64_file_func (voidpf opaque, voidpf stream, ZPOS64_T offset, int origin) |
| 192 | { |
| 193 | (void)opaque; |
| 194 | int fseek_origin=0; |
| 195 | long ret; |
| 196 | switch (origin) |
| 197 | { |
| 198 | case ZLIB_FILEFUNC_SEEK_CUR : |
| 199 | fseek_origin = SEEK_CUR; |
| 200 | break; |
| @@ -206,29 +206,29 @@ | |
| 206 | break; |
| 207 | default: return -1; |
| 208 | } |
| 209 | ret = 0; |
| 210 | |
| 211 | if(FSEEKO_FUNC((FILE *)stream, (long)offset, fseek_origin) != 0) |
| 212 | ret = -1; |
| 213 | |
| 214 | return ret; |
| 215 | } |
| 216 | |
| 217 | |
| 218 | static int ZCALLBACK fclose_file_func (voidpf opaque, voidpf stream) |
| 219 | { |
| 220 | (void)opaque; |
| 221 | int ret; |
| 222 | ret = fclose((FILE *)stream); |
| 223 | return ret; |
| 224 | } |
| 225 | |
| 226 | static int ZCALLBACK ferror_file_func (voidpf opaque, voidpf stream) |
| 227 | { |
| 228 | (void)opaque; |
| 229 | int ret; |
| 230 | ret = ferror((FILE *)stream); |
| 231 | return ret; |
| 232 | } |
| 233 | |
| 234 | void fill_fopen_filefunc (pzlib_filefunc_def) |
| 235 |
| --- compat/zlib/contrib/minizip/ioapi.c | |
| +++ compat/zlib/contrib/minizip/ioapi.c | |
| @@ -92,13 +92,13 @@ | |
| 92 | static int ZCALLBACK fclose_file_func OF((voidpf opaque, voidpf stream)); |
| 93 | static int ZCALLBACK ferror_file_func OF((voidpf opaque, voidpf stream)); |
| 94 | |
| 95 | static voidpf ZCALLBACK fopen_file_func (voidpf opaque, const char* filename, int mode) |
| 96 | { |
| 97 | FILE* file = NULL; |
| 98 | const char* mode_fopen = NULL; |
| 99 | (void)opaque; |
| 100 | if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) |
| 101 | mode_fopen = "rb"; |
| 102 | else |
| 103 | if (mode & ZLIB_FILEFUNC_MODE_EXISTING) |
| 104 | mode_fopen = "r+b"; |
| @@ -111,13 +111,13 @@ | |
| 111 | return file; |
| 112 | } |
| 113 | |
| 114 | static voidpf ZCALLBACK fopen64_file_func (voidpf opaque, const void* filename, int mode) |
| 115 | { |
| 116 | FILE* file = NULL; |
| 117 | const char* mode_fopen = NULL; |
| 118 | (void)opaque; |
| 119 | if ((mode & ZLIB_FILEFUNC_MODE_READWRITEFILTER)==ZLIB_FILEFUNC_MODE_READ) |
| 120 | mode_fopen = "rb"; |
| 121 | else |
| 122 | if (mode & ZLIB_FILEFUNC_MODE_EXISTING) |
| 123 | mode_fopen = "r+b"; |
| @@ -131,46 +131,46 @@ | |
| 131 | } |
| 132 | |
| 133 | |
| 134 | static uLong ZCALLBACK fread_file_func (voidpf opaque, voidpf stream, void* buf, uLong size) |
| 135 | { |
| 136 | uLong ret; |
| 137 | (void)opaque; |
| 138 | ret = (uLong)fread(buf, 1, (size_t)size, (FILE *)stream); |
| 139 | return ret; |
| 140 | } |
| 141 | |
| 142 | static uLong ZCALLBACK fwrite_file_func (voidpf opaque, voidpf stream, const void* buf, uLong size) |
| 143 | { |
| 144 | uLong ret; |
| 145 | (void)opaque; |
| 146 | ret = (uLong)fwrite(buf, 1, (size_t)size, (FILE *)stream); |
| 147 | return ret; |
| 148 | } |
| 149 | |
| 150 | static long ZCALLBACK ftell_file_func (voidpf opaque, voidpf stream) |
| 151 | { |
| 152 | long ret; |
| 153 | (void)opaque; |
| 154 | ret = ftell((FILE *)stream); |
| 155 | return ret; |
| 156 | } |
| 157 | |
| 158 | |
| 159 | static ZPOS64_T ZCALLBACK ftell64_file_func (voidpf opaque, voidpf stream) |
| 160 | { |
| 161 | ZPOS64_T ret; |
| 162 | (void)opaque; |
| 163 | ret = (ZPOS64_T)FTELLO_FUNC((FILE *)stream); |
| 164 | return ret; |
| 165 | } |
| 166 | |
| 167 | static long ZCALLBACK fseek_file_func (voidpf opaque, voidpf stream, uLong offset, int origin) |
| 168 | { |
| 169 | int fseek_origin=0; |
| 170 | long ret; |
| 171 | (void)opaque; |
| 172 | switch (origin) |
| 173 | { |
| 174 | case ZLIB_FILEFUNC_SEEK_CUR : |
| 175 | fseek_origin = SEEK_CUR; |
| 176 | break; |
| @@ -188,13 +188,13 @@ | |
| 188 | return ret; |
| 189 | } |
| 190 | |
| 191 | static long ZCALLBACK fseek64_file_func (voidpf opaque, voidpf stream, ZPOS64_T offset, int origin) |
| 192 | { |
| 193 | int fseek_origin=0; |
| 194 | long ret; |
| 195 | (void)opaque; |
| 196 | switch (origin) |
| 197 | { |
| 198 | case ZLIB_FILEFUNC_SEEK_CUR : |
| 199 | fseek_origin = SEEK_CUR; |
| 200 | break; |
| @@ -206,29 +206,29 @@ | |
| 206 | break; |
| 207 | default: return -1; |
| 208 | } |
| 209 | ret = 0; |
| 210 | |
| 211 | if(FSEEKO_FUNC((FILE *)stream, (z_off_t)offset, fseek_origin) != 0) |
| 212 | ret = -1; |
| 213 | |
| 214 | return ret; |
| 215 | } |
| 216 | |
| 217 | |
| 218 | static int ZCALLBACK fclose_file_func (voidpf opaque, voidpf stream) |
| 219 | { |
| 220 | int ret; |
| 221 | (void)opaque; |
| 222 | ret = fclose((FILE *)stream); |
| 223 | return ret; |
| 224 | } |
| 225 | |
| 226 | static int ZCALLBACK ferror_file_func (voidpf opaque, voidpf stream) |
| 227 | { |
| 228 | int ret; |
| 229 | (void)opaque; |
| 230 | ret = ferror((FILE *)stream); |
| 231 | return ret; |
| 232 | } |
| 233 | |
| 234 | void fill_fopen_filefunc (pzlib_filefunc_def) |
| 235 |
| --- compat/zlib/contrib/minizip/ioapi.h | ||
| +++ compat/zlib/contrib/minizip/ioapi.h | ||
| @@ -48,11 +48,11 @@ | ||
| 48 | 48 | #if defined(USE_FILE32API) |
| 49 | 49 | #define fopen64 fopen |
| 50 | 50 | #define ftello64 ftell |
| 51 | 51 | #define fseeko64 fseek |
| 52 | 52 | #else |
| 53 | -#ifdef __FreeBSD__ | |
| 53 | +#if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) | |
| 54 | 54 | #define fopen64 fopen |
| 55 | 55 | #define ftello64 ftello |
| 56 | 56 | #define fseeko64 fseeko |
| 57 | 57 | #endif |
| 58 | 58 | #ifdef _MSC_VER |
| 59 | 59 |
| --- compat/zlib/contrib/minizip/ioapi.h | |
| +++ compat/zlib/contrib/minizip/ioapi.h | |
| @@ -48,11 +48,11 @@ | |
| 48 | #if defined(USE_FILE32API) |
| 49 | #define fopen64 fopen |
| 50 | #define ftello64 ftell |
| 51 | #define fseeko64 fseek |
| 52 | #else |
| 53 | #ifdef __FreeBSD__ |
| 54 | #define fopen64 fopen |
| 55 | #define ftello64 ftello |
| 56 | #define fseeko64 fseeko |
| 57 | #endif |
| 58 | #ifdef _MSC_VER |
| 59 |
| --- compat/zlib/contrib/minizip/ioapi.h | |
| +++ compat/zlib/contrib/minizip/ioapi.h | |
| @@ -48,11 +48,11 @@ | |
| 48 | #if defined(USE_FILE32API) |
| 49 | #define fopen64 fopen |
| 50 | #define ftello64 ftell |
| 51 | #define fseeko64 fseek |
| 52 | #else |
| 53 | #if defined(__FreeBSD__) || defined(__OpenBSD__) || defined(__NetBSD__) |
| 54 | #define fopen64 fopen |
| 55 | #define ftello64 ftello |
| 56 | #define fseeko64 fseeko |
| 57 | #endif |
| 58 | #ifdef _MSC_VER |
| 59 |
| --- compat/zlib/contrib/minizip/iowin32.c | ||
| +++ compat/zlib/contrib/minizip/iowin32.c | ||
| @@ -26,10 +26,15 @@ | ||
| 26 | 26 | #endif |
| 27 | 27 | |
| 28 | 28 | |
| 29 | 29 | // see Include/shared/winapifamily.h in the Windows Kit |
| 30 | 30 | #if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API))) |
| 31 | + | |
| 32 | +#if !defined(WINAPI_FAMILY_ONE_PARTITION) | |
| 33 | +#define WINAPI_FAMILY_ONE_PARTITION(PartitionSet, Partition) ((WINAPI_FAMILY & PartitionSet) == Partition) | |
| 34 | +#endif | |
| 35 | + | |
| 31 | 36 | #if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY, WINAPI_PARTITION_APP) |
| 32 | 37 | #define IOWIN32_USING_WINRT_API 1 |
| 33 | 38 | #endif |
| 34 | 39 | #endif |
| 35 | 40 | |
| 36 | 41 |
| --- compat/zlib/contrib/minizip/iowin32.c | |
| +++ compat/zlib/contrib/minizip/iowin32.c | |
| @@ -26,10 +26,15 @@ | |
| 26 | #endif |
| 27 | |
| 28 | |
| 29 | // see Include/shared/winapifamily.h in the Windows Kit |
| 30 | #if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API))) |
| 31 | #if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY, WINAPI_PARTITION_APP) |
| 32 | #define IOWIN32_USING_WINRT_API 1 |
| 33 | #endif |
| 34 | #endif |
| 35 | |
| 36 |
| --- compat/zlib/contrib/minizip/iowin32.c | |
| +++ compat/zlib/contrib/minizip/iowin32.c | |
| @@ -26,10 +26,15 @@ | |
| 26 | #endif |
| 27 | |
| 28 | |
| 29 | // see Include/shared/winapifamily.h in the Windows Kit |
| 30 | #if defined(WINAPI_FAMILY_PARTITION) && (!(defined(IOWIN32_USING_WINRT_API))) |
| 31 | |
| 32 | #if !defined(WINAPI_FAMILY_ONE_PARTITION) |
| 33 | #define WINAPI_FAMILY_ONE_PARTITION(PartitionSet, Partition) ((WINAPI_FAMILY & PartitionSet) == Partition) |
| 34 | #endif |
| 35 | |
| 36 | #if WINAPI_FAMILY_ONE_PARTITION(WINAPI_FAMILY, WINAPI_PARTITION_APP) |
| 37 | #define IOWIN32_USING_WINRT_API 1 |
| 38 | #endif |
| 39 | #endif |
| 40 | |
| 41 |
| --- compat/zlib/contrib/minizip/miniunz.c | ||
| +++ compat/zlib/contrib/minizip/miniunz.c | ||
| @@ -562,11 +562,11 @@ | ||
| 562 | 562 | { |
| 563 | 563 | const char *p=argv[i]+1; |
| 564 | 564 | |
| 565 | 565 | while ((*p)!='\0') |
| 566 | 566 | { |
| 567 | - char c=*(p++);; | |
| 567 | + char c=*(p++); | |
| 568 | 568 | if ((c=='l') || (c=='L')) |
| 569 | 569 | opt_do_list = 1; |
| 570 | 570 | if ((c=='v') || (c=='V')) |
| 571 | 571 | opt_do_list = 1; |
| 572 | 572 | if ((c=='x') || (c=='X')) |
| 573 | 573 |
| --- compat/zlib/contrib/minizip/miniunz.c | |
| +++ compat/zlib/contrib/minizip/miniunz.c | |
| @@ -562,11 +562,11 @@ | |
| 562 | { |
| 563 | const char *p=argv[i]+1; |
| 564 | |
| 565 | while ((*p)!='\0') |
| 566 | { |
| 567 | char c=*(p++);; |
| 568 | if ((c=='l') || (c=='L')) |
| 569 | opt_do_list = 1; |
| 570 | if ((c=='v') || (c=='V')) |
| 571 | opt_do_list = 1; |
| 572 | if ((c=='x') || (c=='X')) |
| 573 |
| --- compat/zlib/contrib/minizip/miniunz.c | |
| +++ compat/zlib/contrib/minizip/miniunz.c | |
| @@ -562,11 +562,11 @@ | |
| 562 | { |
| 563 | const char *p=argv[i]+1; |
| 564 | |
| 565 | while ((*p)!='\0') |
| 566 | { |
| 567 | char c=*(p++); |
| 568 | if ((c=='l') || (c=='L')) |
| 569 | opt_do_list = 1; |
| 570 | if ((c=='v') || (c=='V')) |
| 571 | opt_do_list = 1; |
| 572 | if ((c=='x') || (c=='X')) |
| 573 |
| --- compat/zlib/contrib/minizip/minizip.c | ||
| +++ compat/zlib/contrib/minizip/minizip.c | ||
| @@ -188,11 +188,11 @@ | ||
| 188 | 188 | unsigned long calculate_crc=0; |
| 189 | 189 | int err=ZIP_OK; |
| 190 | 190 | FILE * fin = FOPEN_FUNC(filenameinzip,"rb"); |
| 191 | 191 | |
| 192 | 192 | unsigned long size_read = 0; |
| 193 | - unsigned long total_read = 0; | |
| 193 | + /* unsigned long total_read = 0; */ | |
| 194 | 194 | if (fin==NULL) |
| 195 | 195 | { |
| 196 | 196 | err = ZIP_ERRNO; |
| 197 | 197 | } |
| 198 | 198 | |
| @@ -208,11 +208,11 @@ | ||
| 208 | 208 | err = ZIP_ERRNO; |
| 209 | 209 | } |
| 210 | 210 | |
| 211 | 211 | if (size_read>0) |
| 212 | 212 | calculate_crc = crc32_z(calculate_crc,buf,size_read); |
| 213 | - total_read += size_read; | |
| 213 | + /* total_read += size_read; */ | |
| 214 | 214 | |
| 215 | 215 | } while ((err == ZIP_OK) && (size_read>0)); |
| 216 | 216 | |
| 217 | 217 | if (fin) |
| 218 | 218 | fclose(fin); |
| @@ -275,11 +275,11 @@ | ||
| 275 | 275 | { |
| 276 | 276 | const char *p=argv[i]+1; |
| 277 | 277 | |
| 278 | 278 | while ((*p)!='\0') |
| 279 | 279 | { |
| 280 | - char c=*(p++);; | |
| 280 | + char c=*(p++); | |
| 281 | 281 | if ((c=='o') || (c=='O')) |
| 282 | 282 | opt_overwrite = 1; |
| 283 | 283 | if ((c=='a') || (c=='A')) |
| 284 | 284 | opt_overwrite = 2; |
| 285 | 285 | if ((c>='0') && (c<='9')) |
| 286 | 286 |
| --- compat/zlib/contrib/minizip/minizip.c | |
| +++ compat/zlib/contrib/minizip/minizip.c | |
| @@ -188,11 +188,11 @@ | |
| 188 | unsigned long calculate_crc=0; |
| 189 | int err=ZIP_OK; |
| 190 | FILE * fin = FOPEN_FUNC(filenameinzip,"rb"); |
| 191 | |
| 192 | unsigned long size_read = 0; |
| 193 | unsigned long total_read = 0; |
| 194 | if (fin==NULL) |
| 195 | { |
| 196 | err = ZIP_ERRNO; |
| 197 | } |
| 198 | |
| @@ -208,11 +208,11 @@ | |
| 208 | err = ZIP_ERRNO; |
| 209 | } |
| 210 | |
| 211 | if (size_read>0) |
| 212 | calculate_crc = crc32_z(calculate_crc,buf,size_read); |
| 213 | total_read += size_read; |
| 214 | |
| 215 | } while ((err == ZIP_OK) && (size_read>0)); |
| 216 | |
| 217 | if (fin) |
| 218 | fclose(fin); |
| @@ -275,11 +275,11 @@ | |
| 275 | { |
| 276 | const char *p=argv[i]+1; |
| 277 | |
| 278 | while ((*p)!='\0') |
| 279 | { |
| 280 | char c=*(p++);; |
| 281 | if ((c=='o') || (c=='O')) |
| 282 | opt_overwrite = 1; |
| 283 | if ((c=='a') || (c=='A')) |
| 284 | opt_overwrite = 2; |
| 285 | if ((c>='0') && (c<='9')) |
| 286 |
| --- compat/zlib/contrib/minizip/minizip.c | |
| +++ compat/zlib/contrib/minizip/minizip.c | |
| @@ -188,11 +188,11 @@ | |
| 188 | unsigned long calculate_crc=0; |
| 189 | int err=ZIP_OK; |
| 190 | FILE * fin = FOPEN_FUNC(filenameinzip,"rb"); |
| 191 | |
| 192 | unsigned long size_read = 0; |
| 193 | /* unsigned long total_read = 0; */ |
| 194 | if (fin==NULL) |
| 195 | { |
| 196 | err = ZIP_ERRNO; |
| 197 | } |
| 198 | |
| @@ -208,11 +208,11 @@ | |
| 208 | err = ZIP_ERRNO; |
| 209 | } |
| 210 | |
| 211 | if (size_read>0) |
| 212 | calculate_crc = crc32_z(calculate_crc,buf,size_read); |
| 213 | /* total_read += size_read; */ |
| 214 | |
| 215 | } while ((err == ZIP_OK) && (size_read>0)); |
| 216 | |
| 217 | if (fin) |
| 218 | fclose(fin); |
| @@ -275,11 +275,11 @@ | |
| 275 | { |
| 276 | const char *p=argv[i]+1; |
| 277 | |
| 278 | while ((*p)!='\0') |
| 279 | { |
| 280 | char c=*(p++); |
| 281 | if ((c=='o') || (c=='O')) |
| 282 | opt_overwrite = 1; |
| 283 | if ((c=='a') || (c=='A')) |
| 284 | opt_overwrite = 2; |
| 285 | if ((c>='0') && (c<='9')) |
| 286 |
| --- compat/zlib/contrib/minizip/unzip.c | ||
| +++ compat/zlib/contrib/minizip/unzip.c | ||
| @@ -110,11 +110,11 @@ | ||
| 110 | 110 | |
| 111 | 111 | #ifndef ALLOC |
| 112 | 112 | # define ALLOC(size) (malloc(size)) |
| 113 | 113 | #endif |
| 114 | 114 | #ifndef TRYFREE |
| 115 | -# define TRYFREE(p) {if (p) free(p);} | |
| 115 | +# define TRYFREE(p) { free(p);} | |
| 116 | 116 | #endif |
| 117 | 117 | |
| 118 | 118 | #define SIZECENTRALDIRITEM (0x2e) |
| 119 | 119 | #define SIZEZIPLOCALHEADER (0x1e) |
| 120 | 120 | |
| @@ -1564,10 +1564,11 @@ | ||
| 1564 | 1564 | err=BZ2_bzDecompressInit(&pfile_in_zip_read_info->bstream, 0, 0); |
| 1565 | 1565 | if (err == Z_OK) |
| 1566 | 1566 | pfile_in_zip_read_info->stream_initialised=Z_BZIP2ED; |
| 1567 | 1567 | else |
| 1568 | 1568 | { |
| 1569 | + TRYFREE(pfile_in_zip_read_info->read_buffer); | |
| 1569 | 1570 | TRYFREE(pfile_in_zip_read_info); |
| 1570 | 1571 | return err; |
| 1571 | 1572 | } |
| 1572 | 1573 | #else |
| 1573 | 1574 | pfile_in_zip_read_info->raw=1; |
| @@ -1584,10 +1585,11 @@ | ||
| 1584 | 1585 | err=inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); |
| 1585 | 1586 | if (err == Z_OK) |
| 1586 | 1587 | pfile_in_zip_read_info->stream_initialised=Z_DEFLATED; |
| 1587 | 1588 | else |
| 1588 | 1589 | { |
| 1590 | + TRYFREE(pfile_in_zip_read_info->read_buffer); | |
| 1589 | 1591 | TRYFREE(pfile_in_zip_read_info); |
| 1590 | 1592 | return err; |
| 1591 | 1593 | } |
| 1592 | 1594 | /* windowBits is passed < 0 to tell that there is no zlib header. |
| 1593 | 1595 | * Note that in this case inflate *requires* an extra "dummy" byte |
| 1594 | 1596 |
| --- compat/zlib/contrib/minizip/unzip.c | |
| +++ compat/zlib/contrib/minizip/unzip.c | |
| @@ -110,11 +110,11 @@ | |
| 110 | |
| 111 | #ifndef ALLOC |
| 112 | # define ALLOC(size) (malloc(size)) |
| 113 | #endif |
| 114 | #ifndef TRYFREE |
| 115 | # define TRYFREE(p) {if (p) free(p);} |
| 116 | #endif |
| 117 | |
| 118 | #define SIZECENTRALDIRITEM (0x2e) |
| 119 | #define SIZEZIPLOCALHEADER (0x1e) |
| 120 | |
| @@ -1564,10 +1564,11 @@ | |
| 1564 | err=BZ2_bzDecompressInit(&pfile_in_zip_read_info->bstream, 0, 0); |
| 1565 | if (err == Z_OK) |
| 1566 | pfile_in_zip_read_info->stream_initialised=Z_BZIP2ED; |
| 1567 | else |
| 1568 | { |
| 1569 | TRYFREE(pfile_in_zip_read_info); |
| 1570 | return err; |
| 1571 | } |
| 1572 | #else |
| 1573 | pfile_in_zip_read_info->raw=1; |
| @@ -1584,10 +1585,11 @@ | |
| 1584 | err=inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); |
| 1585 | if (err == Z_OK) |
| 1586 | pfile_in_zip_read_info->stream_initialised=Z_DEFLATED; |
| 1587 | else |
| 1588 | { |
| 1589 | TRYFREE(pfile_in_zip_read_info); |
| 1590 | return err; |
| 1591 | } |
| 1592 | /* windowBits is passed < 0 to tell that there is no zlib header. |
| 1593 | * Note that in this case inflate *requires* an extra "dummy" byte |
| 1594 |
| --- compat/zlib/contrib/minizip/unzip.c | |
| +++ compat/zlib/contrib/minizip/unzip.c | |
| @@ -110,11 +110,11 @@ | |
| 110 | |
| 111 | #ifndef ALLOC |
| 112 | # define ALLOC(size) (malloc(size)) |
| 113 | #endif |
| 114 | #ifndef TRYFREE |
| 115 | # define TRYFREE(p) { free(p);} |
| 116 | #endif |
| 117 | |
| 118 | #define SIZECENTRALDIRITEM (0x2e) |
| 119 | #define SIZEZIPLOCALHEADER (0x1e) |
| 120 | |
| @@ -1564,10 +1564,11 @@ | |
| 1564 | err=BZ2_bzDecompressInit(&pfile_in_zip_read_info->bstream, 0, 0); |
| 1565 | if (err == Z_OK) |
| 1566 | pfile_in_zip_read_info->stream_initialised=Z_BZIP2ED; |
| 1567 | else |
| 1568 | { |
| 1569 | TRYFREE(pfile_in_zip_read_info->read_buffer); |
| 1570 | TRYFREE(pfile_in_zip_read_info); |
| 1571 | return err; |
| 1572 | } |
| 1573 | #else |
| 1574 | pfile_in_zip_read_info->raw=1; |
| @@ -1584,10 +1585,11 @@ | |
| 1585 | err=inflateInit2(&pfile_in_zip_read_info->stream, -MAX_WBITS); |
| 1586 | if (err == Z_OK) |
| 1587 | pfile_in_zip_read_info->stream_initialised=Z_DEFLATED; |
| 1588 | else |
| 1589 | { |
| 1590 | TRYFREE(pfile_in_zip_read_info->read_buffer); |
| 1591 | TRYFREE(pfile_in_zip_read_info); |
| 1592 | return err; |
| 1593 | } |
| 1594 | /* windowBits is passed < 0 to tell that there is no zlib header. |
| 1595 | * Note that in this case inflate *requires* an extra "dummy" byte |
| 1596 |
| --- compat/zlib/contrib/minizip/zip.c | ||
| +++ compat/zlib/contrib/minizip/zip.c | ||
| @@ -1469,15 +1469,10 @@ | ||
| 1469 | 1469 | |
| 1470 | 1470 | if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) |
| 1471 | 1471 | { |
| 1472 | 1472 | uLong uTotalOutBefore = zi->ci.stream.total_out; |
| 1473 | 1473 | err=deflate(&zi->ci.stream, Z_NO_FLUSH); |
| 1474 | - if(uTotalOutBefore > zi->ci.stream.total_out) | |
| 1475 | - { | |
| 1476 | - int bBreak = 0; | |
| 1477 | - bBreak++; | |
| 1478 | - } | |
| 1479 | 1474 | |
| 1480 | 1475 | zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; |
| 1481 | 1476 | } |
| 1482 | 1477 | else |
| 1483 | 1478 | { |
| @@ -1957,11 +1952,11 @@ | ||
| 1957 | 1952 | short header; |
| 1958 | 1953 | short dataSize; |
| 1959 | 1954 | |
| 1960 | 1955 | int retVal = ZIP_OK; |
| 1961 | 1956 | |
| 1962 | - if(pData == NULL || *dataLen < 4) | |
| 1957 | + if(pData == NULL || dataLen == NULL || *dataLen < 4) | |
| 1963 | 1958 | return ZIP_PARAMERROR; |
| 1964 | 1959 | |
| 1965 | 1960 | pNewHeader = (char*)ALLOC((unsigned)*dataLen); |
| 1966 | 1961 | pTmp = pNewHeader; |
| 1967 | 1962 | |
| 1968 | 1963 |
| --- compat/zlib/contrib/minizip/zip.c | |
| +++ compat/zlib/contrib/minizip/zip.c | |
| @@ -1469,15 +1469,10 @@ | |
| 1469 | |
| 1470 | if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) |
| 1471 | { |
| 1472 | uLong uTotalOutBefore = zi->ci.stream.total_out; |
| 1473 | err=deflate(&zi->ci.stream, Z_NO_FLUSH); |
| 1474 | if(uTotalOutBefore > zi->ci.stream.total_out) |
| 1475 | { |
| 1476 | int bBreak = 0; |
| 1477 | bBreak++; |
| 1478 | } |
| 1479 | |
| 1480 | zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; |
| 1481 | } |
| 1482 | else |
| 1483 | { |
| @@ -1957,11 +1952,11 @@ | |
| 1957 | short header; |
| 1958 | short dataSize; |
| 1959 | |
| 1960 | int retVal = ZIP_OK; |
| 1961 | |
| 1962 | if(pData == NULL || *dataLen < 4) |
| 1963 | return ZIP_PARAMERROR; |
| 1964 | |
| 1965 | pNewHeader = (char*)ALLOC((unsigned)*dataLen); |
| 1966 | pTmp = pNewHeader; |
| 1967 | |
| 1968 |
| --- compat/zlib/contrib/minizip/zip.c | |
| +++ compat/zlib/contrib/minizip/zip.c | |
| @@ -1469,15 +1469,10 @@ | |
| 1469 | |
| 1470 | if ((zi->ci.method == Z_DEFLATED) && (!zi->ci.raw)) |
| 1471 | { |
| 1472 | uLong uTotalOutBefore = zi->ci.stream.total_out; |
| 1473 | err=deflate(&zi->ci.stream, Z_NO_FLUSH); |
| 1474 | |
| 1475 | zi->ci.pos_in_buffered_data += (uInt)(zi->ci.stream.total_out - uTotalOutBefore) ; |
| 1476 | } |
| 1477 | else |
| 1478 | { |
| @@ -1957,11 +1952,11 @@ | |
| 1952 | short header; |
| 1953 | short dataSize; |
| 1954 | |
| 1955 | int retVal = ZIP_OK; |
| 1956 | |
| 1957 | if(pData == NULL || dataLen == NULL || *dataLen < 4) |
| 1958 | return ZIP_PARAMERROR; |
| 1959 | |
| 1960 | pNewHeader = (char*)ALLOC((unsigned)*dataLen); |
| 1961 | pTmp = pNewHeader; |
| 1962 | |
| 1963 |
| --- compat/zlib/contrib/pascal/zlibpas.pas | ||
| +++ compat/zlib/contrib/pascal/zlibpas.pas | ||
| @@ -8,11 +8,11 @@ | ||
| 8 | 8 | unit zlibpas; |
| 9 | 9 | |
| 10 | 10 | interface |
| 11 | 11 | |
| 12 | 12 | const |
| 13 | - ZLIB_VERSION = '1.2.12'; | |
| 13 | + ZLIB_VERSION = '1.2.13'; | |
| 14 | 14 | ZLIB_VERNUM = $12a0; |
| 15 | 15 | |
| 16 | 16 | type |
| 17 | 17 | alloc_func = function(opaque: Pointer; items, size: Integer): Pointer; |
| 18 | 18 | cdecl; |
| 19 | 19 |
| --- compat/zlib/contrib/pascal/zlibpas.pas | |
| +++ compat/zlib/contrib/pascal/zlibpas.pas | |
| @@ -8,11 +8,11 @@ | |
| 8 | unit zlibpas; |
| 9 | |
| 10 | interface |
| 11 | |
| 12 | const |
| 13 | ZLIB_VERSION = '1.2.12'; |
| 14 | ZLIB_VERNUM = $12a0; |
| 15 | |
| 16 | type |
| 17 | alloc_func = function(opaque: Pointer; items, size: Integer): Pointer; |
| 18 | cdecl; |
| 19 |
| --- compat/zlib/contrib/pascal/zlibpas.pas | |
| +++ compat/zlib/contrib/pascal/zlibpas.pas | |
| @@ -8,11 +8,11 @@ | |
| 8 | unit zlibpas; |
| 9 | |
| 10 | interface |
| 11 | |
| 12 | const |
| 13 | ZLIB_VERSION = '1.2.13'; |
| 14 | ZLIB_VERNUM = $12a0; |
| 15 | |
| 16 | type |
| 17 | alloc_func = function(opaque: Pointer; items, size: Integer): Pointer; |
| 18 | cdecl; |
| 19 |
+1
-1
| --- compat/zlib/contrib/puff/README | ||
| +++ compat/zlib/contrib/puff/README | ||
| @@ -36,11 +36,11 @@ | ||
| 36 | 36 | |
| 37 | 37 | Then you can call puff() to decompress a deflate stream that is in memory in |
| 38 | 38 | its entirety at source, to a sufficiently sized block of memory for the |
| 39 | 39 | decompressed data at dest. puff() is the only external symbol in puff.c The |
| 40 | 40 | only C library functions that puff.c needs are setjmp() and longjmp(), which |
| 41 | -are used to simplify error checking in the code to improve readabilty. puff.c | |
| 41 | +are used to simplify error checking in the code to improve readability. puff.c | |
| 42 | 42 | does no memory allocation, and uses less than 2K bytes off of the stack. |
| 43 | 43 | |
| 44 | 44 | If destlen is not enough space for the uncompressed data, then inflate will |
| 45 | 45 | return an error without writing more than destlen bytes. Note that this means |
| 46 | 46 | that in order to decompress the deflate data successfully, you need to know |
| 47 | 47 |
| --- compat/zlib/contrib/puff/README | |
| +++ compat/zlib/contrib/puff/README | |
| @@ -36,11 +36,11 @@ | |
| 36 | |
| 37 | Then you can call puff() to decompress a deflate stream that is in memory in |
| 38 | its entirety at source, to a sufficiently sized block of memory for the |
| 39 | decompressed data at dest. puff() is the only external symbol in puff.c The |
| 40 | only C library functions that puff.c needs are setjmp() and longjmp(), which |
| 41 | are used to simplify error checking in the code to improve readabilty. puff.c |
| 42 | does no memory allocation, and uses less than 2K bytes off of the stack. |
| 43 | |
| 44 | If destlen is not enough space for the uncompressed data, then inflate will |
| 45 | return an error without writing more than destlen bytes. Note that this means |
| 46 | that in order to decompress the deflate data successfully, you need to know |
| 47 |
| --- compat/zlib/contrib/puff/README | |
| +++ compat/zlib/contrib/puff/README | |
| @@ -36,11 +36,11 @@ | |
| 36 | |
| 37 | Then you can call puff() to decompress a deflate stream that is in memory in |
| 38 | its entirety at source, to a sufficiently sized block of memory for the |
| 39 | decompressed data at dest. puff() is the only external symbol in puff.c The |
| 40 | only C library functions that puff.c needs are setjmp() and longjmp(), which |
| 41 | are used to simplify error checking in the code to improve readability. puff.c |
| 42 | does no memory allocation, and uses less than 2K bytes off of the stack. |
| 43 | |
| 44 | If destlen is not enough space for the uncompressed data, then inflate will |
| 45 | return an error without writing more than destlen bytes. Note that this means |
| 46 | that in order to decompress the deflate data successfully, you need to know |
| 47 |
+2
-2
| --- compat/zlib/contrib/puff/puff.c | ||
| +++ compat/zlib/contrib/puff/puff.c | ||
| @@ -41,11 +41,11 @@ | ||
| 41 | 41 | * maintain easy readability |
| 42 | 42 | * - Use short data type for large arrays |
| 43 | 43 | * - Use pointers instead of long to specify source and |
| 44 | 44 | * destination sizes to avoid arbitrary 4 GB limits |
| 45 | 45 | * 1.2 17 Mar 2002 - Add faster version of decode(), doubles speed (!), |
| 46 | - * but leave simple version for readabilty | |
| 46 | + * but leave simple version for readability | |
| 47 | 47 | * - Make sure invalid distances detected if pointers |
| 48 | 48 | * are 16 bits |
| 49 | 49 | * - Fix fixed codes table error |
| 50 | 50 | * - Provide a scanning mode for determining size of |
| 51 | 51 | * uncompressed data |
| @@ -622,11 +622,11 @@ | ||
| 622 | 622 | * |
| 623 | 623 | * - The list of up to 286 length/literal lengths and up to 30 distance lengths |
| 624 | 624 | * are themselves compressed using Huffman codes and run-length encoding. In |
| 625 | 625 | * the list of code lengths, a 0 symbol means no code, a 1..15 symbol means |
| 626 | 626 | * that length, and the symbols 16, 17, and 18 are run-length instructions. |
| 627 | - * Each of 16, 17, and 18 are follwed by extra bits to define the length of | |
| 627 | + * Each of 16, 17, and 18 are followed by extra bits to define the length of | |
| 628 | 628 | * the run. 16 copies the last length 3 to 6 times. 17 represents 3 to 10 |
| 629 | 629 | * zero lengths, and 18 represents 11 to 138 zero lengths. Unused symbols |
| 630 | 630 | * are common, hence the special coding for zero lengths. |
| 631 | 631 | * |
| 632 | 632 | * - The symbols for 0..18 are Huffman coded, and so that code must be |
| 633 | 633 |
| --- compat/zlib/contrib/puff/puff.c | |
| +++ compat/zlib/contrib/puff/puff.c | |
| @@ -41,11 +41,11 @@ | |
| 41 | * maintain easy readability |
| 42 | * - Use short data type for large arrays |
| 43 | * - Use pointers instead of long to specify source and |
| 44 | * destination sizes to avoid arbitrary 4 GB limits |
| 45 | * 1.2 17 Mar 2002 - Add faster version of decode(), doubles speed (!), |
| 46 | * but leave simple version for readabilty |
| 47 | * - Make sure invalid distances detected if pointers |
| 48 | * are 16 bits |
| 49 | * - Fix fixed codes table error |
| 50 | * - Provide a scanning mode for determining size of |
| 51 | * uncompressed data |
| @@ -622,11 +622,11 @@ | |
| 622 | * |
| 623 | * - The list of up to 286 length/literal lengths and up to 30 distance lengths |
| 624 | * are themselves compressed using Huffman codes and run-length encoding. In |
| 625 | * the list of code lengths, a 0 symbol means no code, a 1..15 symbol means |
| 626 | * that length, and the symbols 16, 17, and 18 are run-length instructions. |
| 627 | * Each of 16, 17, and 18 are follwed by extra bits to define the length of |
| 628 | * the run. 16 copies the last length 3 to 6 times. 17 represents 3 to 10 |
| 629 | * zero lengths, and 18 represents 11 to 138 zero lengths. Unused symbols |
| 630 | * are common, hence the special coding for zero lengths. |
| 631 | * |
| 632 | * - The symbols for 0..18 are Huffman coded, and so that code must be |
| 633 |
| --- compat/zlib/contrib/puff/puff.c | |
| +++ compat/zlib/contrib/puff/puff.c | |
| @@ -41,11 +41,11 @@ | |
| 41 | * maintain easy readability |
| 42 | * - Use short data type for large arrays |
| 43 | * - Use pointers instead of long to specify source and |
| 44 | * destination sizes to avoid arbitrary 4 GB limits |
| 45 | * 1.2 17 Mar 2002 - Add faster version of decode(), doubles speed (!), |
| 46 | * but leave simple version for readability |
| 47 | * - Make sure invalid distances detected if pointers |
| 48 | * are 16 bits |
| 49 | * - Fix fixed codes table error |
| 50 | * - Provide a scanning mode for determining size of |
| 51 | * uncompressed data |
| @@ -622,11 +622,11 @@ | |
| 622 | * |
| 623 | * - The list of up to 286 length/literal lengths and up to 30 distance lengths |
| 624 | * are themselves compressed using Huffman codes and run-length encoding. In |
| 625 | * the list of code lengths, a 0 symbol means no code, a 1..15 symbol means |
| 626 | * that length, and the symbols 16, 17, and 18 are run-length instructions. |
| 627 | * Each of 16, 17, and 18 are followed by extra bits to define the length of |
| 628 | * the run. 16 copies the last length 3 to 6 times. 17 represents 3 to 10 |
| 629 | * zero lengths, and 18 represents 11 to 138 zero lengths. Unused symbols |
| 630 | * are common, hence the special coding for zero lengths. |
| 631 | * |
| 632 | * - The symbols for 0..18 are Huffman coded, and so that code must be |
| 633 |
| --- compat/zlib/contrib/puff/pufftest.c | ||
| +++ compat/zlib/contrib/puff/pufftest.c | ||
| @@ -141,11 +141,11 @@ | ||
| 141 | 141 | fprintf(stderr, "puff() succeeded uncompressing %lu bytes\n", destlen); |
| 142 | 142 | if (sourcelen < len) fprintf(stderr, "%lu compressed bytes unused\n", |
| 143 | 143 | len - sourcelen); |
| 144 | 144 | } |
| 145 | 145 | |
| 146 | - /* if requested, inflate again and write decompressd data to stdout */ | |
| 146 | + /* if requested, inflate again and write decompressed data to stdout */ | |
| 147 | 147 | if (put && ret == 0) { |
| 148 | 148 | if (fail) |
| 149 | 149 | destlen >>= 1; |
| 150 | 150 | dest = malloc(destlen); |
| 151 | 151 | if (dest == NULL) { |
| 152 | 152 |
| --- compat/zlib/contrib/puff/pufftest.c | |
| +++ compat/zlib/contrib/puff/pufftest.c | |
| @@ -141,11 +141,11 @@ | |
| 141 | fprintf(stderr, "puff() succeeded uncompressing %lu bytes\n", destlen); |
| 142 | if (sourcelen < len) fprintf(stderr, "%lu compressed bytes unused\n", |
| 143 | len - sourcelen); |
| 144 | } |
| 145 | |
| 146 | /* if requested, inflate again and write decompressd data to stdout */ |
| 147 | if (put && ret == 0) { |
| 148 | if (fail) |
| 149 | destlen >>= 1; |
| 150 | dest = malloc(destlen); |
| 151 | if (dest == NULL) { |
| 152 |
| --- compat/zlib/contrib/puff/pufftest.c | |
| +++ compat/zlib/contrib/puff/pufftest.c | |
| @@ -141,11 +141,11 @@ | |
| 141 | fprintf(stderr, "puff() succeeded uncompressing %lu bytes\n", destlen); |
| 142 | if (sourcelen < len) fprintf(stderr, "%lu compressed bytes unused\n", |
| 143 | len - sourcelen); |
| 144 | } |
| 145 | |
| 146 | /* if requested, inflate again and write decompressed data to stdout */ |
| 147 | if (put && ret == 0) { |
| 148 | if (fail) |
| 149 | destlen >>= 1; |
| 150 | dest = malloc(destlen); |
| 151 | if (dest == NULL) { |
| 152 |
| --- compat/zlib/contrib/vstudio/readme.txt | ||
| +++ compat/zlib/contrib/vstudio/readme.txt | ||
| @@ -1,6 +1,6 @@ | ||
| 1 | -Building instructions for the DLL versions of Zlib 1.2.12 | |
| 1 | +Building instructions for the DLL versions of Zlib 1.2.13 | |
| 2 | 2 | ======================================================== |
| 3 | 3 | |
| 4 | 4 | This directory contains projects that build zlib and minizip using |
| 5 | 5 | Microsoft Visual C++ 9.0/10.0. |
| 6 | 6 | |
| @@ -15,13 +15,10 @@ | ||
| 15 | 15 | |
| 16 | 16 | |
| 17 | 17 | Build instructions for Visual Studio 2008 (32 bits or 64 bits) |
| 18 | 18 | -------------------------------------------------------------- |
| 19 | 19 | - Decompress current zlib, including all contrib/* files |
| 20 | -- Compile assembly code (with Visual Studio Command Prompt) by running: | |
| 21 | - bld_ml64.bat (in contrib\masmx64) | |
| 22 | - bld_ml32.bat (in contrib\masmx86) | |
| 23 | 20 | - Open contrib\vstudio\vc9\zlibvc.sln with Microsoft Visual C++ 2008 |
| 24 | 21 | - Or run: vcbuild /rebuild contrib\vstudio\vc9\zlibvc.sln "Release|Win32" |
| 25 | 22 | |
| 26 | 23 | Build instructions for Visual Studio 2010 (32 bits or 64 bits) |
| 27 | 24 | -------------------------------------------------------------- |
| 28 | 25 |
| --- compat/zlib/contrib/vstudio/readme.txt | |
| +++ compat/zlib/contrib/vstudio/readme.txt | |
| @@ -1,6 +1,6 @@ | |
| 1 | Building instructions for the DLL versions of Zlib 1.2.12 |
| 2 | ======================================================== |
| 3 | |
| 4 | This directory contains projects that build zlib and minizip using |
| 5 | Microsoft Visual C++ 9.0/10.0. |
| 6 | |
| @@ -15,13 +15,10 @@ | |
| 15 | |
| 16 | |
| 17 | Build instructions for Visual Studio 2008 (32 bits or 64 bits) |
| 18 | -------------------------------------------------------------- |
| 19 | - Decompress current zlib, including all contrib/* files |
| 20 | - Compile assembly code (with Visual Studio Command Prompt) by running: |
| 21 | bld_ml64.bat (in contrib\masmx64) |
| 22 | bld_ml32.bat (in contrib\masmx86) |
| 23 | - Open contrib\vstudio\vc9\zlibvc.sln with Microsoft Visual C++ 2008 |
| 24 | - Or run: vcbuild /rebuild contrib\vstudio\vc9\zlibvc.sln "Release|Win32" |
| 25 | |
| 26 | Build instructions for Visual Studio 2010 (32 bits or 64 bits) |
| 27 | -------------------------------------------------------------- |
| 28 |
| --- compat/zlib/contrib/vstudio/readme.txt | |
| +++ compat/zlib/contrib/vstudio/readme.txt | |
| @@ -1,6 +1,6 @@ | |
| 1 | Building instructions for the DLL versions of Zlib 1.2.13 |
| 2 | ======================================================== |
| 3 | |
| 4 | This directory contains projects that build zlib and minizip using |
| 5 | Microsoft Visual C++ 9.0/10.0. |
| 6 | |
| @@ -15,13 +15,10 @@ | |
| 15 | |
| 16 | |
| 17 | Build instructions for Visual Studio 2008 (32 bits or 64 bits) |
| 18 | -------------------------------------------------------------- |
| 19 | - Decompress current zlib, including all contrib/* files |
| 20 | - Open contrib\vstudio\vc9\zlibvc.sln with Microsoft Visual C++ 2008 |
| 21 | - Or run: vcbuild /rebuild contrib\vstudio\vc9\zlibvc.sln "Release|Win32" |
| 22 | |
| 23 | Build instructions for Visual Studio 2010 (32 bits or 64 bits) |
| 24 | -------------------------------------------------------------- |
| 25 |
| --- compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters | ||
| +++ compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | 3 | <ItemGroup> |
| 4 | 4 | <Filter Include="Source Files"> |
| 5 | 5 | <UniqueIdentifier>{048af943-022b-4db6-beeb-a54c34774ee2}</UniqueIdentifier> |
| 6 | - <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> | |
| 6 | + <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> | |
| 7 | 7 | </Filter> |
| 8 | 8 | <Filter Include="Header Files"> |
| 9 | 9 | <UniqueIdentifier>{c1d600d2-888f-4aea-b73e-8b0dd9befa0c}</UniqueIdentifier> |
| 10 | 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | 11 | </Filter> |
| 12 | 12 |
| --- compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{048af943-022b-4db6-beeb-a54c34774ee2}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{c1d600d2-888f-4aea-b73e-8b0dd9befa0c}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| 12 |
| --- compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/miniunz.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{048af943-022b-4db6-beeb-a54c34774ee2}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{c1d600d2-888f-4aea-b73e-8b0dd9befa0c}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| 12 |
| --- compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters | ||
| +++ compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | 3 | <ItemGroup> |
| 4 | 4 | <Filter Include="Source Files"> |
| 5 | 5 | <UniqueIdentifier>{c0419b40-bf50-40da-b153-ff74215b79de}</UniqueIdentifier> |
| 6 | - <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> | |
| 6 | + <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> | |
| 7 | 7 | </Filter> |
| 8 | 8 | <Filter Include="Header Files"> |
| 9 | 9 | <UniqueIdentifier>{bb87b070-735b-478e-92ce-7383abb2f36c}</UniqueIdentifier> |
| 10 | 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | 11 | </Filter> |
| 12 | 12 |
| --- compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{c0419b40-bf50-40da-b153-ff74215b79de}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{bb87b070-735b-478e-92ce-7383abb2f36c}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| 12 |
| --- compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/minizip.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{c0419b40-bf50-40da-b153-ff74215b79de}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{bb87b070-735b-478e-92ce-7383abb2f36c}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| 12 |
| --- compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj | ||
| @@ -179,11 +179,11 @@ | ||
| 179 | 179 | </PropertyGroup> |
| 180 | 180 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 181 | 181 | <ClCompile> |
| 182 | 182 | <Optimization>Disabled</Optimization> |
| 183 | 183 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 184 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 184 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 185 | 185 | <MinimalRebuild>true</MinimalRebuild> |
| 186 | 186 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 187 | 187 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 188 | 188 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 189 | 189 | <PrecompiledHeader> |
| @@ -192,11 +192,11 @@ | ||
| 192 | 192 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 193 | 193 | <WarningLevel>Level3</WarningLevel> |
| 194 | 194 | <DebugInformationFormat>EditAndContinue</DebugInformationFormat> |
| 195 | 195 | </ClCompile> |
| 196 | 196 | <Link> |
| 197 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 197 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 198 | 198 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 199 | 199 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 200 | 200 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 201 | 201 | <SubSystem>Console</SubSystem> |
| 202 | 202 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -239,11 +239,11 @@ | ||
| 239 | 239 | <ClCompile> |
| 240 | 240 | <Optimization>MaxSpeed</Optimization> |
| 241 | 241 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 242 | 242 | <OmitFramePointers>true</OmitFramePointers> |
| 243 | 243 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 244 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 244 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 245 | 245 | <StringPooling>true</StringPooling> |
| 246 | 246 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 247 | 247 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 248 | 248 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 249 | 249 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -252,11 +252,11 @@ | ||
| 252 | 252 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 253 | 253 | <WarningLevel>Level3</WarningLevel> |
| 254 | 254 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 255 | 255 | </ClCompile> |
| 256 | 256 | <Link> |
| 257 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 257 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 258 | 258 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 259 | 259 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 260 | 260 | <SubSystem>Console</SubSystem> |
| 261 | 261 | <OptimizeReferences>true</OptimizeReferences> |
| 262 | 262 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -267,18 +267,18 @@ | ||
| 267 | 267 | </Link> |
| 268 | 268 | </ItemDefinitionGroup> |
| 269 | 269 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 270 | 270 | <ClCompile> |
| 271 | 271 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 272 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 272 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 273 | 273 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 274 | 274 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 275 | 275 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 276 | 276 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 277 | 277 | </ClCompile> |
| 278 | 278 | <Link> |
| 279 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 279 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 280 | 280 | </Link> |
| 281 | 281 | </ItemDefinitionGroup> |
| 282 | 282 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 283 | 283 | <Midl> |
| 284 | 284 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -350,18 +350,18 @@ | ||
| 350 | 350 | </Link> |
| 351 | 351 | </ItemDefinitionGroup> |
| 352 | 352 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 353 | 353 | <ClCompile> |
| 354 | 354 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 355 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 355 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 356 | 356 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 357 | 357 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 358 | 358 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 359 | 359 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 360 | 360 | </ClCompile> |
| 361 | 361 | <Link> |
| 362 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 362 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 363 | 363 | </Link> |
| 364 | 364 | </ItemDefinitionGroup> |
| 365 | 365 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 366 | 366 | <Midl> |
| 367 | 367 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -396,18 +396,10 @@ | ||
| 396 | 396 | <ClCompile Include="..\..\..\adler32.c" /> |
| 397 | 397 | <ClCompile Include="..\..\..\compress.c" /> |
| 398 | 398 | <ClCompile Include="..\..\..\crc32.c" /> |
| 399 | 399 | <ClCompile Include="..\..\..\deflate.c" /> |
| 400 | 400 | <ClCompile Include="..\..\..\infback.c" /> |
| 401 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 402 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 403 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 404 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 405 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 406 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 407 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 408 | - </ClCompile> | |
| 409 | 401 | <ClCompile Include="..\..\..\inffast.c" /> |
| 410 | 402 | <ClCompile Include="..\..\..\inflate.c" /> |
| 411 | 403 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 412 | 404 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 413 | 405 | <ClCompile Include="..\..\..\trees.c" /> |
| 414 | 406 |
| --- compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj | |
| @@ -179,11 +179,11 @@ | |
| 179 | </PropertyGroup> |
| 180 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 181 | <ClCompile> |
| 182 | <Optimization>Disabled</Optimization> |
| 183 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 184 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 185 | <MinimalRebuild>true</MinimalRebuild> |
| 186 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 187 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 188 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 189 | <PrecompiledHeader> |
| @@ -192,11 +192,11 @@ | |
| 192 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 193 | <WarningLevel>Level3</WarningLevel> |
| 194 | <DebugInformationFormat>EditAndContinue</DebugInformationFormat> |
| 195 | </ClCompile> |
| 196 | <Link> |
| 197 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 198 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 199 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 200 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 201 | <SubSystem>Console</SubSystem> |
| 202 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -239,11 +239,11 @@ | |
| 239 | <ClCompile> |
| 240 | <Optimization>MaxSpeed</Optimization> |
| 241 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 242 | <OmitFramePointers>true</OmitFramePointers> |
| 243 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 244 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 245 | <StringPooling>true</StringPooling> |
| 246 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 247 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 248 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 249 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -252,11 +252,11 @@ | |
| 252 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 253 | <WarningLevel>Level3</WarningLevel> |
| 254 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 255 | </ClCompile> |
| 256 | <Link> |
| 257 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 258 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 259 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 260 | <SubSystem>Console</SubSystem> |
| 261 | <OptimizeReferences>true</OptimizeReferences> |
| 262 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -267,18 +267,18 @@ | |
| 267 | </Link> |
| 268 | </ItemDefinitionGroup> |
| 269 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 270 | <ClCompile> |
| 271 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 272 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 273 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 274 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 275 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 276 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 277 | </ClCompile> |
| 278 | <Link> |
| 279 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 280 | </Link> |
| 281 | </ItemDefinitionGroup> |
| 282 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 283 | <Midl> |
| 284 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -350,18 +350,18 @@ | |
| 350 | </Link> |
| 351 | </ItemDefinitionGroup> |
| 352 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 353 | <ClCompile> |
| 354 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 355 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 356 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 357 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 358 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 359 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 360 | </ClCompile> |
| 361 | <Link> |
| 362 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 363 | </Link> |
| 364 | </ItemDefinitionGroup> |
| 365 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 366 | <Midl> |
| 367 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -396,18 +396,10 @@ | |
| 396 | <ClCompile Include="..\..\..\adler32.c" /> |
| 397 | <ClCompile Include="..\..\..\compress.c" /> |
| 398 | <ClCompile Include="..\..\..\crc32.c" /> |
| 399 | <ClCompile Include="..\..\..\deflate.c" /> |
| 400 | <ClCompile Include="..\..\..\infback.c" /> |
| 401 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 402 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 403 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 404 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 405 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 406 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 407 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 408 | </ClCompile> |
| 409 | <ClCompile Include="..\..\..\inffast.c" /> |
| 410 | <ClCompile Include="..\..\..\inflate.c" /> |
| 411 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 412 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 413 | <ClCompile Include="..\..\..\trees.c" /> |
| 414 |
| --- compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj | |
| @@ -179,11 +179,11 @@ | |
| 179 | </PropertyGroup> |
| 180 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 181 | <ClCompile> |
| 182 | <Optimization>Disabled</Optimization> |
| 183 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 184 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 185 | <MinimalRebuild>true</MinimalRebuild> |
| 186 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 187 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 188 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 189 | <PrecompiledHeader> |
| @@ -192,11 +192,11 @@ | |
| 192 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 193 | <WarningLevel>Level3</WarningLevel> |
| 194 | <DebugInformationFormat>EditAndContinue</DebugInformationFormat> |
| 195 | </ClCompile> |
| 196 | <Link> |
| 197 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 198 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 199 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 200 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 201 | <SubSystem>Console</SubSystem> |
| 202 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -239,11 +239,11 @@ | |
| 239 | <ClCompile> |
| 240 | <Optimization>MaxSpeed</Optimization> |
| 241 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 242 | <OmitFramePointers>true</OmitFramePointers> |
| 243 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 244 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 245 | <StringPooling>true</StringPooling> |
| 246 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 247 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 248 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 249 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -252,11 +252,11 @@ | |
| 252 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 253 | <WarningLevel>Level3</WarningLevel> |
| 254 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 255 | </ClCompile> |
| 256 | <Link> |
| 257 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 258 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 259 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 260 | <SubSystem>Console</SubSystem> |
| 261 | <OptimizeReferences>true</OptimizeReferences> |
| 262 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -267,18 +267,18 @@ | |
| 267 | </Link> |
| 268 | </ItemDefinitionGroup> |
| 269 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 270 | <ClCompile> |
| 271 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 272 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 273 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 274 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 275 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 276 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 277 | </ClCompile> |
| 278 | <Link> |
| 279 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 280 | </Link> |
| 281 | </ItemDefinitionGroup> |
| 282 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 283 | <Midl> |
| 284 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -350,18 +350,18 @@ | |
| 350 | </Link> |
| 351 | </ItemDefinitionGroup> |
| 352 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 353 | <ClCompile> |
| 354 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 355 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 356 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 357 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 358 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 359 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 360 | </ClCompile> |
| 361 | <Link> |
| 362 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 363 | </Link> |
| 364 | </ItemDefinitionGroup> |
| 365 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 366 | <Midl> |
| 367 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -396,18 +396,10 @@ | |
| 396 | <ClCompile Include="..\..\..\adler32.c" /> |
| 397 | <ClCompile Include="..\..\..\compress.c" /> |
| 398 | <ClCompile Include="..\..\..\crc32.c" /> |
| 399 | <ClCompile Include="..\..\..\deflate.c" /> |
| 400 | <ClCompile Include="..\..\..\infback.c" /> |
| 401 | <ClCompile Include="..\..\..\inffast.c" /> |
| 402 | <ClCompile Include="..\..\..\inflate.c" /> |
| 403 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 404 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 405 | <ClCompile Include="..\..\..\trees.c" /> |
| 406 |
| --- compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters | ||
| +++ compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | 3 | <ItemGroup> |
| 4 | 4 | <Filter Include="Source Files"> |
| 5 | 5 | <UniqueIdentifier>{c1f6a2e3-5da5-4955-8653-310d3efe05a9}</UniqueIdentifier> |
| 6 | - <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> | |
| 6 | + <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> | |
| 7 | 7 | </Filter> |
| 8 | 8 | <Filter Include="Header Files"> |
| 9 | 9 | <UniqueIdentifier>{c2aaffdc-2c95-4d6f-8466-4bec5890af2c}</UniqueIdentifier> |
| 10 | 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | 11 | </Filter> |
| @@ -28,13 +28,10 @@ | ||
| 28 | 28 | <Filter>Source Files</Filter> |
| 29 | 29 | </ClCompile> |
| 30 | 30 | <ClCompile Include="..\..\..\infback.c"> |
| 31 | 31 | <Filter>Source Files</Filter> |
| 32 | 32 | </ClCompile> |
| 33 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 34 | - <Filter>Source Files</Filter> | |
| 35 | - </ClCompile> | |
| 36 | 33 | <ClCompile Include="..\..\..\inffast.c"> |
| 37 | 34 | <Filter>Source Files</Filter> |
| 38 | 35 | </ClCompile> |
| 39 | 36 | <ClCompile Include="..\..\..\inflate.c"> |
| 40 | 37 | <Filter>Source Files</Filter> |
| 41 | 38 |
| --- compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{c1f6a2e3-5da5-4955-8653-310d3efe05a9}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{c2aaffdc-2c95-4d6f-8466-4bec5890af2c}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| @@ -28,13 +28,10 @@ | |
| 28 | <Filter>Source Files</Filter> |
| 29 | </ClCompile> |
| 30 | <ClCompile Include="..\..\..\infback.c"> |
| 31 | <Filter>Source Files</Filter> |
| 32 | </ClCompile> |
| 33 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 34 | <Filter>Source Files</Filter> |
| 35 | </ClCompile> |
| 36 | <ClCompile Include="..\..\..\inffast.c"> |
| 37 | <Filter>Source Files</Filter> |
| 38 | </ClCompile> |
| 39 | <ClCompile Include="..\..\..\inflate.c"> |
| 40 | <Filter>Source Files</Filter> |
| 41 |
| --- compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/testzlib.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{c1f6a2e3-5da5-4955-8653-310d3efe05a9}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{c2aaffdc-2c95-4d6f-8466-4bec5890af2c}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| @@ -28,13 +28,10 @@ | |
| 28 | <Filter>Source Files</Filter> |
| 29 | </ClCompile> |
| 30 | <ClCompile Include="..\..\..\infback.c"> |
| 31 | <Filter>Source Files</Filter> |
| 32 | </ClCompile> |
| 33 | <ClCompile Include="..\..\..\inffast.c"> |
| 34 | <Filter>Source Files</Filter> |
| 35 | </ClCompile> |
| 36 | <ClCompile Include="..\..\..\inflate.c"> |
| 37 | <Filter>Source Files</Filter> |
| 38 |
| --- compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters | ||
| +++ compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | 3 | <ItemGroup> |
| 4 | 4 | <Filter Include="Source Files"> |
| 5 | 5 | <UniqueIdentifier>{fa61a89f-93fc-4c89-b29e-36224b7592f4}</UniqueIdentifier> |
| 6 | - <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> | |
| 6 | + <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> | |
| 7 | 7 | </Filter> |
| 8 | 8 | <Filter Include="Header Files"> |
| 9 | 9 | <UniqueIdentifier>{d4b85da0-2ba2-4934-b57f-e2584e3848ee}</UniqueIdentifier> |
| 10 | 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | 11 | </Filter> |
| 12 | 12 |
| --- compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{fa61a89f-93fc-4c89-b29e-36224b7592f4}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat;asm</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{d4b85da0-2ba2-4934-b57f-e2584e3848ee}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| 12 |
| --- compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/testzlibdll.vcxproj.filters | |
| @@ -1,11 +1,11 @@ | |
| 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> |
| 3 | <ItemGroup> |
| 4 | <Filter Include="Source Files"> |
| 5 | <UniqueIdentifier>{fa61a89f-93fc-4c89-b29e-36224b7592f4}</UniqueIdentifier> |
| 6 | <Extensions>cpp;c;cxx;def;odl;idl;hpj;bat</Extensions> |
| 7 | </Filter> |
| 8 | <Filter Include="Header Files"> |
| 9 | <UniqueIdentifier>{d4b85da0-2ba2-4934-b57f-e2584e3848ee}</UniqueIdentifier> |
| 10 | <Extensions>h;hpp;hxx;hm;inl;inc</Extensions> |
| 11 | </Filter> |
| 12 |
| --- compat/zlib/contrib/vstudio/vc10/zlib.rc | ||
| +++ compat/zlib/contrib/vstudio/vc10/zlib.rc | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | #include <windows.h> |
| 2 | 2 | |
| 3 | 3 | #define IDR_VERSION1 1 |
| 4 | 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | - FILEVERSION 1, 2, 12, 0 | |
| 6 | - PRODUCTVERSION 1, 2, 12, 0 | |
| 5 | + FILEVERSION 1, 2, 13, 0 | |
| 6 | + PRODUCTVERSION 1, 2, 13, 0 | |
| 7 | 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | 8 | FILEFLAGS 0 |
| 9 | 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | 10 | FILETYPE VFT_DLL |
| 11 | 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | ||
| 15 | 15 | BLOCK "040904E4" |
| 16 | 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | 17 | |
| 18 | 18 | BEGIN |
| 19 | 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | - VALUE "FileVersion", "1.2.12\0" | |
| 20 | + VALUE "FileVersion", "1.2.13\0" | |
| 21 | 21 | VALUE "InternalName", "zlib\0" |
| 22 | 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 | 26 |
| --- compat/zlib/contrib/vstudio/vc10/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc10/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 12, 0 |
| 6 | PRODUCTVERSION 1, 2, 12, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.12\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc10/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc10/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 13, 0 |
| 6 | PRODUCTVERSION 1, 2, 13, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.13\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj | ||
| @@ -158,11 +158,11 @@ | ||
| 158 | 158 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 159 | 159 | </PropertyGroup> |
| 160 | 160 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 161 | 161 | <ClCompile> |
| 162 | 162 | <Optimization>Disabled</Optimization> |
| 163 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 163 | + <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 164 | 164 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 165 | 165 | <ExceptionHandling> |
| 166 | 166 | </ExceptionHandling> |
| 167 | 167 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 168 | 168 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -180,20 +180,16 @@ | ||
| 180 | 180 | <Lib> |
| 181 | 181 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 182 | 182 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 183 | 183 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 184 | 184 | </Lib> |
| 185 | - <PreBuildEvent> | |
| 186 | - <Command>cd ..\..\masmx86 | |
| 187 | -bld_ml32.bat</Command> | |
| 188 | - </PreBuildEvent> | |
| 189 | 185 | </ItemDefinitionGroup> |
| 190 | 186 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 191 | 187 | <ClCompile> |
| 192 | 188 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 193 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 194 | - <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 189 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 190 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 195 | 191 | <StringPooling>true</StringPooling> |
| 196 | 192 | <ExceptionHandling> |
| 197 | 193 | </ExceptionHandling> |
| 198 | 194 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 199 | 195 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -208,23 +204,19 @@ | ||
| 208 | 204 | <ResourceCompile> |
| 209 | 205 | <Culture>0x040c</Culture> |
| 210 | 206 | </ResourceCompile> |
| 211 | 207 | <Lib> |
| 212 | 208 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 213 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 209 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 214 | 210 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 215 | 211 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 216 | 212 | </Lib> |
| 217 | - <PreBuildEvent> | |
| 218 | - <Command>cd ..\..\masmx86 | |
| 219 | -bld_ml32.bat</Command> | |
| 220 | - </PreBuildEvent> | |
| 221 | 213 | </ItemDefinitionGroup> |
| 222 | 214 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 223 | 215 | <ClCompile> |
| 224 | 216 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 225 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 217 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 226 | 218 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 227 | 219 | <StringPooling>true</StringPooling> |
| 228 | 220 | <ExceptionHandling> |
| 229 | 221 | </ExceptionHandling> |
| 230 | 222 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -250,11 +242,11 @@ | ||
| 250 | 242 | <Midl> |
| 251 | 243 | <TargetEnvironment>X64</TargetEnvironment> |
| 252 | 244 | </Midl> |
| 253 | 245 | <ClCompile> |
| 254 | 246 | <Optimization>Disabled</Optimization> |
| 255 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 247 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 256 | 248 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 257 | 249 | <ExceptionHandling> |
| 258 | 250 | </ExceptionHandling> |
| 259 | 251 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 260 | 252 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -272,22 +264,18 @@ | ||
| 272 | 264 | <Lib> |
| 273 | 265 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 274 | 266 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 275 | 267 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 276 | 268 | </Lib> |
| 277 | - <PreBuildEvent> | |
| 278 | - <Command>cd ..\..\masmx64 | |
| 279 | -bld_ml64.bat</Command> | |
| 280 | - </PreBuildEvent> | |
| 281 | 269 | </ItemDefinitionGroup> |
| 282 | 270 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 283 | 271 | <Midl> |
| 284 | 272 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 285 | 273 | </Midl> |
| 286 | 274 | <ClCompile> |
| 287 | 275 | <Optimization>Disabled</Optimization> |
| 288 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 276 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 289 | 277 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 290 | 278 | <ExceptionHandling> |
| 291 | 279 | </ExceptionHandling> |
| 292 | 280 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 293 | 281 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -312,12 +300,12 @@ | ||
| 312 | 300 | <Midl> |
| 313 | 301 | <TargetEnvironment>X64</TargetEnvironment> |
| 314 | 302 | </Midl> |
| 315 | 303 | <ClCompile> |
| 316 | 304 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 317 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 318 | - <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 305 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 306 | + <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 319 | 307 | <StringPooling>true</StringPooling> |
| 320 | 308 | <ExceptionHandling> |
| 321 | 309 | </ExceptionHandling> |
| 322 | 310 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 323 | 311 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -332,26 +320,22 @@ | ||
| 332 | 320 | <ResourceCompile> |
| 333 | 321 | <Culture>0x040c</Culture> |
| 334 | 322 | </ResourceCompile> |
| 335 | 323 | <Lib> |
| 336 | 324 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 337 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 325 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 338 | 326 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 339 | 327 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 340 | 328 | </Lib> |
| 341 | - <PreBuildEvent> | |
| 342 | - <Command>cd ..\..\masmx64 | |
| 343 | -bld_ml64.bat</Command> | |
| 344 | - </PreBuildEvent> | |
| 345 | 329 | </ItemDefinitionGroup> |
| 346 | 330 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 347 | 331 | <Midl> |
| 348 | 332 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 349 | 333 | </Midl> |
| 350 | 334 | <ClCompile> |
| 351 | 335 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 352 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 336 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 353 | 337 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 354 | 338 | <StringPooling>true</StringPooling> |
| 355 | 339 | <ExceptionHandling> |
| 356 | 340 | </ExceptionHandling> |
| 357 | 341 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -377,11 +361,11 @@ | ||
| 377 | 361 | <Midl> |
| 378 | 362 | <TargetEnvironment>X64</TargetEnvironment> |
| 379 | 363 | </Midl> |
| 380 | 364 | <ClCompile> |
| 381 | 365 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 382 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 366 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 383 | 367 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 384 | 368 | <StringPooling>true</StringPooling> |
| 385 | 369 | <ExceptionHandling> |
| 386 | 370 | </ExceptionHandling> |
| 387 | 371 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -407,11 +391,11 @@ | ||
| 407 | 391 | <Midl> |
| 408 | 392 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 409 | 393 | </Midl> |
| 410 | 394 | <ClCompile> |
| 411 | 395 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 412 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 396 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 413 | 397 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 414 | 398 | <StringPooling>true</StringPooling> |
| 415 | 399 | <ExceptionHandling> |
| 416 | 400 | </ExceptionHandling> |
| 417 | 401 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -441,18 +425,10 @@ | ||
| 441 | 425 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 442 | 426 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 443 | 427 | <ClCompile Include="..\..\..\gzread.c" /> |
| 444 | 428 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 445 | 429 | <ClCompile Include="..\..\..\infback.c" /> |
| 446 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 447 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 448 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 449 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 450 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 451 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 452 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 453 | - </ClCompile> | |
| 454 | 430 | <ClCompile Include="..\..\..\inffast.c" /> |
| 455 | 431 | <ClCompile Include="..\..\..\inflate.c" /> |
| 456 | 432 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 457 | 433 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 458 | 434 | <ClCompile Include="..\..\..\trees.c" /> |
| 459 | 435 |
| --- compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj | |
| @@ -158,11 +158,11 @@ | |
| 158 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 159 | </PropertyGroup> |
| 160 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 161 | <ClCompile> |
| 162 | <Optimization>Disabled</Optimization> |
| 163 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 164 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 165 | <ExceptionHandling> |
| 166 | </ExceptionHandling> |
| 167 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 168 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -180,20 +180,16 @@ | |
| 180 | <Lib> |
| 181 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 182 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 183 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 184 | </Lib> |
| 185 | <PreBuildEvent> |
| 186 | <Command>cd ..\..\masmx86 |
| 187 | bld_ml32.bat</Command> |
| 188 | </PreBuildEvent> |
| 189 | </ItemDefinitionGroup> |
| 190 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 191 | <ClCompile> |
| 192 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 193 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 194 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 195 | <StringPooling>true</StringPooling> |
| 196 | <ExceptionHandling> |
| 197 | </ExceptionHandling> |
| 198 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 199 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -208,23 +204,19 @@ | |
| 208 | <ResourceCompile> |
| 209 | <Culture>0x040c</Culture> |
| 210 | </ResourceCompile> |
| 211 | <Lib> |
| 212 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 213 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 214 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 215 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 216 | </Lib> |
| 217 | <PreBuildEvent> |
| 218 | <Command>cd ..\..\masmx86 |
| 219 | bld_ml32.bat</Command> |
| 220 | </PreBuildEvent> |
| 221 | </ItemDefinitionGroup> |
| 222 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 223 | <ClCompile> |
| 224 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 225 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 226 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 227 | <StringPooling>true</StringPooling> |
| 228 | <ExceptionHandling> |
| 229 | </ExceptionHandling> |
| 230 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -250,11 +242,11 @@ | |
| 250 | <Midl> |
| 251 | <TargetEnvironment>X64</TargetEnvironment> |
| 252 | </Midl> |
| 253 | <ClCompile> |
| 254 | <Optimization>Disabled</Optimization> |
| 255 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 256 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 257 | <ExceptionHandling> |
| 258 | </ExceptionHandling> |
| 259 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 260 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -272,22 +264,18 @@ | |
| 272 | <Lib> |
| 273 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 274 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 275 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 276 | </Lib> |
| 277 | <PreBuildEvent> |
| 278 | <Command>cd ..\..\masmx64 |
| 279 | bld_ml64.bat</Command> |
| 280 | </PreBuildEvent> |
| 281 | </ItemDefinitionGroup> |
| 282 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 283 | <Midl> |
| 284 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 285 | </Midl> |
| 286 | <ClCompile> |
| 287 | <Optimization>Disabled</Optimization> |
| 288 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 289 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 290 | <ExceptionHandling> |
| 291 | </ExceptionHandling> |
| 292 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 293 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -312,12 +300,12 @@ | |
| 312 | <Midl> |
| 313 | <TargetEnvironment>X64</TargetEnvironment> |
| 314 | </Midl> |
| 315 | <ClCompile> |
| 316 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 317 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 318 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 319 | <StringPooling>true</StringPooling> |
| 320 | <ExceptionHandling> |
| 321 | </ExceptionHandling> |
| 322 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 323 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -332,26 +320,22 @@ | |
| 332 | <ResourceCompile> |
| 333 | <Culture>0x040c</Culture> |
| 334 | </ResourceCompile> |
| 335 | <Lib> |
| 336 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 337 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 338 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 339 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 340 | </Lib> |
| 341 | <PreBuildEvent> |
| 342 | <Command>cd ..\..\masmx64 |
| 343 | bld_ml64.bat</Command> |
| 344 | </PreBuildEvent> |
| 345 | </ItemDefinitionGroup> |
| 346 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 347 | <Midl> |
| 348 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 349 | </Midl> |
| 350 | <ClCompile> |
| 351 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 352 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 353 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 354 | <StringPooling>true</StringPooling> |
| 355 | <ExceptionHandling> |
| 356 | </ExceptionHandling> |
| 357 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -377,11 +361,11 @@ | |
| 377 | <Midl> |
| 378 | <TargetEnvironment>X64</TargetEnvironment> |
| 379 | </Midl> |
| 380 | <ClCompile> |
| 381 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 382 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 383 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 384 | <StringPooling>true</StringPooling> |
| 385 | <ExceptionHandling> |
| 386 | </ExceptionHandling> |
| 387 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -407,11 +391,11 @@ | |
| 407 | <Midl> |
| 408 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 409 | </Midl> |
| 410 | <ClCompile> |
| 411 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 412 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 413 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 414 | <StringPooling>true</StringPooling> |
| 415 | <ExceptionHandling> |
| 416 | </ExceptionHandling> |
| 417 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -441,18 +425,10 @@ | |
| 441 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 442 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 443 | <ClCompile Include="..\..\..\gzread.c" /> |
| 444 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 445 | <ClCompile Include="..\..\..\infback.c" /> |
| 446 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 447 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 448 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 449 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 450 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 451 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 452 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 453 | </ClCompile> |
| 454 | <ClCompile Include="..\..\..\inffast.c" /> |
| 455 | <ClCompile Include="..\..\..\inflate.c" /> |
| 456 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 457 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 458 | <ClCompile Include="..\..\..\trees.c" /> |
| 459 |
| --- compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj | |
| @@ -158,11 +158,11 @@ | |
| 158 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 159 | </PropertyGroup> |
| 160 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 161 | <ClCompile> |
| 162 | <Optimization>Disabled</Optimization> |
| 163 | <AdditionalIncludeDirectories>%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 164 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 165 | <ExceptionHandling> |
| 166 | </ExceptionHandling> |
| 167 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 168 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -180,20 +180,16 @@ | |
| 180 | <Lib> |
| 181 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 182 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 183 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 184 | </Lib> |
| 185 | </ItemDefinitionGroup> |
| 186 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 187 | <ClCompile> |
| 188 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 189 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 190 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 191 | <StringPooling>true</StringPooling> |
| 192 | <ExceptionHandling> |
| 193 | </ExceptionHandling> |
| 194 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 195 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -208,23 +204,19 @@ | |
| 204 | <ResourceCompile> |
| 205 | <Culture>0x040c</Culture> |
| 206 | </ResourceCompile> |
| 207 | <Lib> |
| 208 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 209 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 210 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 211 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 212 | </Lib> |
| 213 | </ItemDefinitionGroup> |
| 214 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 215 | <ClCompile> |
| 216 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 217 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 218 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 219 | <StringPooling>true</StringPooling> |
| 220 | <ExceptionHandling> |
| 221 | </ExceptionHandling> |
| 222 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -250,11 +242,11 @@ | |
| 242 | <Midl> |
| 243 | <TargetEnvironment>X64</TargetEnvironment> |
| 244 | </Midl> |
| 245 | <ClCompile> |
| 246 | <Optimization>Disabled</Optimization> |
| 247 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 248 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 249 | <ExceptionHandling> |
| 250 | </ExceptionHandling> |
| 251 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 252 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -272,22 +264,18 @@ | |
| 264 | <Lib> |
| 265 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 266 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 267 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 268 | </Lib> |
| 269 | </ItemDefinitionGroup> |
| 270 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 271 | <Midl> |
| 272 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 273 | </Midl> |
| 274 | <ClCompile> |
| 275 | <Optimization>Disabled</Optimization> |
| 276 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 277 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 278 | <ExceptionHandling> |
| 279 | </ExceptionHandling> |
| 280 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 281 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -312,12 +300,12 @@ | |
| 300 | <Midl> |
| 301 | <TargetEnvironment>X64</TargetEnvironment> |
| 302 | </Midl> |
| 303 | <ClCompile> |
| 304 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 305 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 306 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 307 | <StringPooling>true</StringPooling> |
| 308 | <ExceptionHandling> |
| 309 | </ExceptionHandling> |
| 310 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 311 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -332,26 +320,22 @@ | |
| 320 | <ResourceCompile> |
| 321 | <Culture>0x040c</Culture> |
| 322 | </ResourceCompile> |
| 323 | <Lib> |
| 324 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 325 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 326 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 327 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 328 | </Lib> |
| 329 | </ItemDefinitionGroup> |
| 330 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 331 | <Midl> |
| 332 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 333 | </Midl> |
| 334 | <ClCompile> |
| 335 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 336 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 337 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 338 | <StringPooling>true</StringPooling> |
| 339 | <ExceptionHandling> |
| 340 | </ExceptionHandling> |
| 341 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -377,11 +361,11 @@ | |
| 361 | <Midl> |
| 362 | <TargetEnvironment>X64</TargetEnvironment> |
| 363 | </Midl> |
| 364 | <ClCompile> |
| 365 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 366 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 367 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 368 | <StringPooling>true</StringPooling> |
| 369 | <ExceptionHandling> |
| 370 | </ExceptionHandling> |
| 371 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -407,11 +391,11 @@ | |
| 391 | <Midl> |
| 392 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 393 | </Midl> |
| 394 | <ClCompile> |
| 395 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 396 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 397 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 398 | <StringPooling>true</StringPooling> |
| 399 | <ExceptionHandling> |
| 400 | </ExceptionHandling> |
| 401 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -441,18 +425,10 @@ | |
| 425 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 426 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 427 | <ClCompile Include="..\..\..\gzread.c" /> |
| 428 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 429 | <ClCompile Include="..\..\..\infback.c" /> |
| 430 | <ClCompile Include="..\..\..\inffast.c" /> |
| 431 | <ClCompile Include="..\..\..\inflate.c" /> |
| 432 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 433 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 434 | <ClCompile Include="..\..\..\trees.c" /> |
| 435 |
| --- compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters | ||
| +++ compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters | ||
| @@ -31,13 +31,10 @@ | ||
| 31 | 31 | <Filter>Source Files</Filter> |
| 32 | 32 | </ClCompile> |
| 33 | 33 | <ClCompile Include="..\..\..\infback.c"> |
| 34 | 34 | <Filter>Source Files</Filter> |
| 35 | 35 | </ClCompile> |
| 36 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 37 | - <Filter>Source Files</Filter> | |
| 38 | - </ClCompile> | |
| 39 | 36 | <ClCompile Include="..\..\..\inffast.c"> |
| 40 | 37 | <Filter>Source Files</Filter> |
| 41 | 38 | </ClCompile> |
| 42 | 39 | <ClCompile Include="..\..\..\inflate.c"> |
| 43 | 40 | <Filter>Source Files</Filter> |
| 44 | 41 |
| --- compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters | |
| @@ -31,13 +31,10 @@ | |
| 31 | <Filter>Source Files</Filter> |
| 32 | </ClCompile> |
| 33 | <ClCompile Include="..\..\..\infback.c"> |
| 34 | <Filter>Source Files</Filter> |
| 35 | </ClCompile> |
| 36 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 37 | <Filter>Source Files</Filter> |
| 38 | </ClCompile> |
| 39 | <ClCompile Include="..\..\..\inffast.c"> |
| 40 | <Filter>Source Files</Filter> |
| 41 | </ClCompile> |
| 42 | <ClCompile Include="..\..\..\inflate.c"> |
| 43 | <Filter>Source Files</Filter> |
| 44 |
| --- compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibstat.vcxproj.filters | |
| @@ -31,13 +31,10 @@ | |
| 31 | <Filter>Source Files</Filter> |
| 32 | </ClCompile> |
| 33 | <ClCompile Include="..\..\..\infback.c"> |
| 34 | <Filter>Source Files</Filter> |
| 35 | </ClCompile> |
| 36 | <ClCompile Include="..\..\..\inffast.c"> |
| 37 | <Filter>Source Files</Filter> |
| 38 | </ClCompile> |
| 39 | <ClCompile Include="..\..\..\inflate.c"> |
| 40 | <Filter>Source Files</Filter> |
| 41 |
| --- compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj | ||
| @@ -195,12 +195,12 @@ | ||
| 195 | 195 | <TargetEnvironment>Win32</TargetEnvironment> |
| 196 | 196 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 197 | 197 | </Midl> |
| 198 | 198 | <ClCompile> |
| 199 | 199 | <Optimization>Disabled</Optimization> |
| 200 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 201 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 200 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 201 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 202 | 202 | <ExceptionHandling> |
| 203 | 203 | </ExceptionHandling> |
| 204 | 204 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 205 | 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 206 | 206 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -217,24 +217,20 @@ | ||
| 217 | 217 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 218 | 218 | <Culture>0x040c</Culture> |
| 219 | 219 | </ResourceCompile> |
| 220 | 220 | <Link> |
| 221 | 221 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 222 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 222 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 223 | 223 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 224 | 224 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 225 | 225 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 226 | 226 | <GenerateMapFile>true</GenerateMapFile> |
| 227 | 227 | <SubSystem>Windows</SubSystem> |
| 228 | 228 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 229 | 229 | <DataExecutionPrevention> |
| 230 | 230 | </DataExecutionPrevention> |
| 231 | 231 | </Link> |
| 232 | - <PreBuildEvent> | |
| 233 | - <Command>cd ..\..\masmx86 | |
| 234 | -bld_ml32.bat</Command> | |
| 235 | - </PreBuildEvent> | |
| 236 | 232 | </ItemDefinitionGroup> |
| 237 | 233 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 238 | 234 | <Midl> |
| 239 | 235 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 240 | 236 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -242,11 +238,11 @@ | ||
| 242 | 238 | <TargetEnvironment>Win32</TargetEnvironment> |
| 243 | 239 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 244 | 240 | </Midl> |
| 245 | 241 | <ClCompile> |
| 246 | 242 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 247 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 243 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 248 | 244 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 249 | 245 | <StringPooling>true</StringPooling> |
| 250 | 246 | <ExceptionHandling> |
| 251 | 247 | </ExceptionHandling> |
| 252 | 248 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -286,12 +282,12 @@ | ||
| 286 | 282 | <TargetEnvironment>Win32</TargetEnvironment> |
| 287 | 283 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 288 | 284 | </Midl> |
| 289 | 285 | <ClCompile> |
| 290 | 286 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 291 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 292 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 287 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 288 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 293 | 289 | <StringPooling>true</StringPooling> |
| 294 | 290 | <ExceptionHandling> |
| 295 | 291 | </ExceptionHandling> |
| 296 | 292 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 297 | 293 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,24 +306,20 @@ | ||
| 310 | 306 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 311 | 307 | <Culture>0x040c</Culture> |
| 312 | 308 | </ResourceCompile> |
| 313 | 309 | <Link> |
| 314 | 310 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 315 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 311 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 316 | 312 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 317 | 313 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 318 | 314 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 319 | 315 | <GenerateMapFile>true</GenerateMapFile> |
| 320 | 316 | <SubSystem>Windows</SubSystem> |
| 321 | 317 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 322 | 318 | <DataExecutionPrevention> |
| 323 | 319 | </DataExecutionPrevention> |
| 324 | 320 | </Link> |
| 325 | - <PreBuildEvent> | |
| 326 | - <Command>cd ..\..\masmx86 | |
| 327 | -bld_ml32.bat</Command> | |
| 328 | - </PreBuildEvent> | |
| 329 | 321 | </ItemDefinitionGroup> |
| 330 | 322 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 331 | 323 | <Midl> |
| 332 | 324 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 333 | 325 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -335,12 +327,12 @@ | ||
| 335 | 327 | <TargetEnvironment>X64</TargetEnvironment> |
| 336 | 328 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 337 | 329 | </Midl> |
| 338 | 330 | <ClCompile> |
| 339 | 331 | <Optimization>Disabled</Optimization> |
| 340 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 341 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 332 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 333 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 342 | 334 | <ExceptionHandling> |
| 343 | 335 | </ExceptionHandling> |
| 344 | 336 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 345 | 337 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 346 | 338 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -356,22 +348,18 @@ | ||
| 356 | 348 | <ResourceCompile> |
| 357 | 349 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 358 | 350 | <Culture>0x040c</Culture> |
| 359 | 351 | </ResourceCompile> |
| 360 | 352 | <Link> |
| 361 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 353 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 362 | 354 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 363 | 355 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 364 | 356 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 365 | 357 | <GenerateMapFile>true</GenerateMapFile> |
| 366 | 358 | <SubSystem>Windows</SubSystem> |
| 367 | 359 | <TargetMachine>MachineX64</TargetMachine> |
| 368 | 360 | </Link> |
| 369 | - <PreBuildEvent> | |
| 370 | - <Command>cd ..\..\masmx64 | |
| 371 | -bld_ml64.bat</Command> | |
| 372 | - </PreBuildEvent> | |
| 373 | 361 | </ItemDefinitionGroup> |
| 374 | 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 375 | 363 | <Midl> |
| 376 | 364 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 377 | 365 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -379,11 +367,11 @@ | ||
| 379 | 367 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 380 | 368 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 381 | 369 | </Midl> |
| 382 | 370 | <ClCompile> |
| 383 | 371 | <Optimization>Disabled</Optimization> |
| 384 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 372 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 385 | 373 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 386 | 374 | <ExceptionHandling> |
| 387 | 375 | </ExceptionHandling> |
| 388 | 376 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 389 | 377 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -422,11 +410,11 @@ | ||
| 422 | 410 | <TargetEnvironment>X64</TargetEnvironment> |
| 423 | 411 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 424 | 412 | </Midl> |
| 425 | 413 | <ClCompile> |
| 426 | 414 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 427 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 415 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 428 | 416 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 429 | 417 | <StringPooling>true</StringPooling> |
| 430 | 418 | <ExceptionHandling> |
| 431 | 419 | </ExceptionHandling> |
| 432 | 420 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -463,11 +451,11 @@ | ||
| 463 | 451 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 464 | 452 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 465 | 453 | </Midl> |
| 466 | 454 | <ClCompile> |
| 467 | 455 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 468 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 456 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 469 | 457 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 470 | 458 | <StringPooling>true</StringPooling> |
| 471 | 459 | <ExceptionHandling> |
| 472 | 460 | </ExceptionHandling> |
| 473 | 461 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -508,12 +496,12 @@ | ||
| 508 | 496 | <TargetEnvironment>X64</TargetEnvironment> |
| 509 | 497 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 510 | 498 | </Midl> |
| 511 | 499 | <ClCompile> |
| 512 | 500 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 513 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 514 | - <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 501 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 502 | + <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 515 | 503 | <StringPooling>true</StringPooling> |
| 516 | 504 | <ExceptionHandling> |
| 517 | 505 | </ExceptionHandling> |
| 518 | 506 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 519 | 507 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -531,22 +519,18 @@ | ||
| 531 | 519 | <ResourceCompile> |
| 532 | 520 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 533 | 521 | <Culture>0x040c</Culture> |
| 534 | 522 | </ResourceCompile> |
| 535 | 523 | <Link> |
| 536 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 524 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 537 | 525 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 538 | 526 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 539 | 527 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 540 | 528 | <GenerateMapFile>true</GenerateMapFile> |
| 541 | 529 | <SubSystem>Windows</SubSystem> |
| 542 | 530 | <TargetMachine>MachineX64</TargetMachine> |
| 543 | 531 | </Link> |
| 544 | - <PreBuildEvent> | |
| 545 | - <Command>cd ..\..\masmx64 | |
| 546 | -bld_ml64.bat</Command> | |
| 547 | - </PreBuildEvent> | |
| 548 | 532 | </ItemDefinitionGroup> |
| 549 | 533 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 550 | 534 | <Midl> |
| 551 | 535 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 552 | 536 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -554,11 +538,11 @@ | ||
| 554 | 538 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 555 | 539 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 556 | 540 | </Midl> |
| 557 | 541 | <ClCompile> |
| 558 | 542 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 559 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 543 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 560 | 544 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 561 | 545 | <StringPooling>true</StringPooling> |
| 562 | 546 | <ExceptionHandling> |
| 563 | 547 | </ExceptionHandling> |
| 564 | 548 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -599,18 +583,10 @@ | ||
| 599 | 583 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 600 | 584 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 601 | 585 | <ClCompile Include="..\..\..\gzread.c" /> |
| 602 | 586 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 603 | 587 | <ClCompile Include="..\..\..\infback.c" /> |
| 604 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 605 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 606 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 607 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 608 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 609 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 610 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 611 | - </ClCompile> | |
| 612 | 588 | <ClCompile Include="..\..\..\inffast.c" /> |
| 613 | 589 | <ClCompile Include="..\..\..\inflate.c" /> |
| 614 | 590 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 615 | 591 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 616 | 592 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 617 | 593 |
| --- compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj | |
| @@ -195,12 +195,12 @@ | |
| 195 | <TargetEnvironment>Win32</TargetEnvironment> |
| 196 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 197 | </Midl> |
| 198 | <ClCompile> |
| 199 | <Optimization>Disabled</Optimization> |
| 200 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 201 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 202 | <ExceptionHandling> |
| 203 | </ExceptionHandling> |
| 204 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 206 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -217,24 +217,20 @@ | |
| 217 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 218 | <Culture>0x040c</Culture> |
| 219 | </ResourceCompile> |
| 220 | <Link> |
| 221 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 222 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 223 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 224 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 225 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 226 | <GenerateMapFile>true</GenerateMapFile> |
| 227 | <SubSystem>Windows</SubSystem> |
| 228 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 229 | <DataExecutionPrevention> |
| 230 | </DataExecutionPrevention> |
| 231 | </Link> |
| 232 | <PreBuildEvent> |
| 233 | <Command>cd ..\..\masmx86 |
| 234 | bld_ml32.bat</Command> |
| 235 | </PreBuildEvent> |
| 236 | </ItemDefinitionGroup> |
| 237 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 238 | <Midl> |
| 239 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 240 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -242,11 +238,11 @@ | |
| 242 | <TargetEnvironment>Win32</TargetEnvironment> |
| 243 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 244 | </Midl> |
| 245 | <ClCompile> |
| 246 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 247 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 248 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 249 | <StringPooling>true</StringPooling> |
| 250 | <ExceptionHandling> |
| 251 | </ExceptionHandling> |
| 252 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -286,12 +282,12 @@ | |
| 286 | <TargetEnvironment>Win32</TargetEnvironment> |
| 287 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 288 | </Midl> |
| 289 | <ClCompile> |
| 290 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 291 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 292 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 293 | <StringPooling>true</StringPooling> |
| 294 | <ExceptionHandling> |
| 295 | </ExceptionHandling> |
| 296 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 297 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,24 +306,20 @@ | |
| 310 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 311 | <Culture>0x040c</Culture> |
| 312 | </ResourceCompile> |
| 313 | <Link> |
| 314 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 315 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 316 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 317 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 318 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 319 | <GenerateMapFile>true</GenerateMapFile> |
| 320 | <SubSystem>Windows</SubSystem> |
| 321 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 322 | <DataExecutionPrevention> |
| 323 | </DataExecutionPrevention> |
| 324 | </Link> |
| 325 | <PreBuildEvent> |
| 326 | <Command>cd ..\..\masmx86 |
| 327 | bld_ml32.bat</Command> |
| 328 | </PreBuildEvent> |
| 329 | </ItemDefinitionGroup> |
| 330 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 331 | <Midl> |
| 332 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 333 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -335,12 +327,12 @@ | |
| 335 | <TargetEnvironment>X64</TargetEnvironment> |
| 336 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 337 | </Midl> |
| 338 | <ClCompile> |
| 339 | <Optimization>Disabled</Optimization> |
| 340 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 341 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 342 | <ExceptionHandling> |
| 343 | </ExceptionHandling> |
| 344 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 345 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 346 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -356,22 +348,18 @@ | |
| 356 | <ResourceCompile> |
| 357 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 358 | <Culture>0x040c</Culture> |
| 359 | </ResourceCompile> |
| 360 | <Link> |
| 361 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 362 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 363 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 364 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 365 | <GenerateMapFile>true</GenerateMapFile> |
| 366 | <SubSystem>Windows</SubSystem> |
| 367 | <TargetMachine>MachineX64</TargetMachine> |
| 368 | </Link> |
| 369 | <PreBuildEvent> |
| 370 | <Command>cd ..\..\masmx64 |
| 371 | bld_ml64.bat</Command> |
| 372 | </PreBuildEvent> |
| 373 | </ItemDefinitionGroup> |
| 374 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 375 | <Midl> |
| 376 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 377 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -379,11 +367,11 @@ | |
| 379 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 380 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 381 | </Midl> |
| 382 | <ClCompile> |
| 383 | <Optimization>Disabled</Optimization> |
| 384 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 385 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 386 | <ExceptionHandling> |
| 387 | </ExceptionHandling> |
| 388 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 389 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -422,11 +410,11 @@ | |
| 422 | <TargetEnvironment>X64</TargetEnvironment> |
| 423 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 424 | </Midl> |
| 425 | <ClCompile> |
| 426 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 427 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 428 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 429 | <StringPooling>true</StringPooling> |
| 430 | <ExceptionHandling> |
| 431 | </ExceptionHandling> |
| 432 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -463,11 +451,11 @@ | |
| 463 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 464 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 465 | </Midl> |
| 466 | <ClCompile> |
| 467 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 468 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 469 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 470 | <StringPooling>true</StringPooling> |
| 471 | <ExceptionHandling> |
| 472 | </ExceptionHandling> |
| 473 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -508,12 +496,12 @@ | |
| 508 | <TargetEnvironment>X64</TargetEnvironment> |
| 509 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 510 | </Midl> |
| 511 | <ClCompile> |
| 512 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 513 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 514 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 515 | <StringPooling>true</StringPooling> |
| 516 | <ExceptionHandling> |
| 517 | </ExceptionHandling> |
| 518 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 519 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -531,22 +519,18 @@ | |
| 531 | <ResourceCompile> |
| 532 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 533 | <Culture>0x040c</Culture> |
| 534 | </ResourceCompile> |
| 535 | <Link> |
| 536 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 537 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 538 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 539 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 540 | <GenerateMapFile>true</GenerateMapFile> |
| 541 | <SubSystem>Windows</SubSystem> |
| 542 | <TargetMachine>MachineX64</TargetMachine> |
| 543 | </Link> |
| 544 | <PreBuildEvent> |
| 545 | <Command>cd ..\..\masmx64 |
| 546 | bld_ml64.bat</Command> |
| 547 | </PreBuildEvent> |
| 548 | </ItemDefinitionGroup> |
| 549 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 550 | <Midl> |
| 551 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 552 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -554,11 +538,11 @@ | |
| 554 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 555 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 556 | </Midl> |
| 557 | <ClCompile> |
| 558 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 559 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 560 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 561 | <StringPooling>true</StringPooling> |
| 562 | <ExceptionHandling> |
| 563 | </ExceptionHandling> |
| 564 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -599,18 +583,10 @@ | |
| 599 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 600 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 601 | <ClCompile Include="..\..\..\gzread.c" /> |
| 602 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 603 | <ClCompile Include="..\..\..\infback.c" /> |
| 604 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 605 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 606 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 607 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 608 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 609 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 610 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 611 | </ClCompile> |
| 612 | <ClCompile Include="..\..\..\inffast.c" /> |
| 613 | <ClCompile Include="..\..\..\inflate.c" /> |
| 614 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 615 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 616 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 617 |
| --- compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj | |
| @@ -195,12 +195,12 @@ | |
| 195 | <TargetEnvironment>Win32</TargetEnvironment> |
| 196 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 197 | </Midl> |
| 198 | <ClCompile> |
| 199 | <Optimization>Disabled</Optimization> |
| 200 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 201 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 202 | <ExceptionHandling> |
| 203 | </ExceptionHandling> |
| 204 | <RuntimeLibrary>MultiThreadedDebug</RuntimeLibrary> |
| 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 206 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -217,24 +217,20 @@ | |
| 217 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 218 | <Culture>0x040c</Culture> |
| 219 | </ResourceCompile> |
| 220 | <Link> |
| 221 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 222 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 223 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 224 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 225 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 226 | <GenerateMapFile>true</GenerateMapFile> |
| 227 | <SubSystem>Windows</SubSystem> |
| 228 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 229 | <DataExecutionPrevention> |
| 230 | </DataExecutionPrevention> |
| 231 | </Link> |
| 232 | </ItemDefinitionGroup> |
| 233 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 234 | <Midl> |
| 235 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 236 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -242,11 +238,11 @@ | |
| 238 | <TargetEnvironment>Win32</TargetEnvironment> |
| 239 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 240 | </Midl> |
| 241 | <ClCompile> |
| 242 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 243 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 244 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 245 | <StringPooling>true</StringPooling> |
| 246 | <ExceptionHandling> |
| 247 | </ExceptionHandling> |
| 248 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -286,12 +282,12 @@ | |
| 282 | <TargetEnvironment>Win32</TargetEnvironment> |
| 283 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 284 | </Midl> |
| 285 | <ClCompile> |
| 286 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 287 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 288 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 289 | <StringPooling>true</StringPooling> |
| 290 | <ExceptionHandling> |
| 291 | </ExceptionHandling> |
| 292 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 293 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,24 +306,20 @@ | |
| 306 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 307 | <Culture>0x040c</Culture> |
| 308 | </ResourceCompile> |
| 309 | <Link> |
| 310 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 311 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 312 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 313 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 314 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 315 | <GenerateMapFile>true</GenerateMapFile> |
| 316 | <SubSystem>Windows</SubSystem> |
| 317 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 318 | <DataExecutionPrevention> |
| 319 | </DataExecutionPrevention> |
| 320 | </Link> |
| 321 | </ItemDefinitionGroup> |
| 322 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 323 | <Midl> |
| 324 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 325 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -335,12 +327,12 @@ | |
| 327 | <TargetEnvironment>X64</TargetEnvironment> |
| 328 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 329 | </Midl> |
| 330 | <ClCompile> |
| 331 | <Optimization>Disabled</Optimization> |
| 332 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 333 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 334 | <ExceptionHandling> |
| 335 | </ExceptionHandling> |
| 336 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 337 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 338 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -356,22 +348,18 @@ | |
| 348 | <ResourceCompile> |
| 349 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 350 | <Culture>0x040c</Culture> |
| 351 | </ResourceCompile> |
| 352 | <Link> |
| 353 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 354 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 355 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 356 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 357 | <GenerateMapFile>true</GenerateMapFile> |
| 358 | <SubSystem>Windows</SubSystem> |
| 359 | <TargetMachine>MachineX64</TargetMachine> |
| 360 | </Link> |
| 361 | </ItemDefinitionGroup> |
| 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 363 | <Midl> |
| 364 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 365 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -379,11 +367,11 @@ | |
| 367 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 368 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 369 | </Midl> |
| 370 | <ClCompile> |
| 371 | <Optimization>Disabled</Optimization> |
| 372 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 373 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 374 | <ExceptionHandling> |
| 375 | </ExceptionHandling> |
| 376 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 377 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -422,11 +410,11 @@ | |
| 410 | <TargetEnvironment>X64</TargetEnvironment> |
| 411 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 412 | </Midl> |
| 413 | <ClCompile> |
| 414 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 415 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 416 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 417 | <StringPooling>true</StringPooling> |
| 418 | <ExceptionHandling> |
| 419 | </ExceptionHandling> |
| 420 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -463,11 +451,11 @@ | |
| 451 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 452 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 453 | </Midl> |
| 454 | <ClCompile> |
| 455 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 456 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 457 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 458 | <StringPooling>true</StringPooling> |
| 459 | <ExceptionHandling> |
| 460 | </ExceptionHandling> |
| 461 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -508,12 +496,12 @@ | |
| 496 | <TargetEnvironment>X64</TargetEnvironment> |
| 497 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 498 | </Midl> |
| 499 | <ClCompile> |
| 500 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 501 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 502 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 503 | <StringPooling>true</StringPooling> |
| 504 | <ExceptionHandling> |
| 505 | </ExceptionHandling> |
| 506 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 507 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -531,22 +519,18 @@ | |
| 519 | <ResourceCompile> |
| 520 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 521 | <Culture>0x040c</Culture> |
| 522 | </ResourceCompile> |
| 523 | <Link> |
| 524 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 525 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 526 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 527 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 528 | <GenerateMapFile>true</GenerateMapFile> |
| 529 | <SubSystem>Windows</SubSystem> |
| 530 | <TargetMachine>MachineX64</TargetMachine> |
| 531 | </Link> |
| 532 | </ItemDefinitionGroup> |
| 533 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 534 | <Midl> |
| 535 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 536 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -554,11 +538,11 @@ | |
| 538 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 539 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 540 | </Midl> |
| 541 | <ClCompile> |
| 542 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 543 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 544 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 545 | <StringPooling>true</StringPooling> |
| 546 | <ExceptionHandling> |
| 547 | </ExceptionHandling> |
| 548 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -599,18 +583,10 @@ | |
| 583 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 584 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 585 | <ClCompile Include="..\..\..\gzread.c" /> |
| 586 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 587 | <ClCompile Include="..\..\..\infback.c" /> |
| 588 | <ClCompile Include="..\..\..\inffast.c" /> |
| 589 | <ClCompile Include="..\..\..\inflate.c" /> |
| 590 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 591 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 592 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 593 |
| --- compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters | ||
| +++ compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters | ||
| @@ -40,13 +40,10 @@ | ||
| 40 | 40 | <Filter>Source Files</Filter> |
| 41 | 41 | </ClCompile> |
| 42 | 42 | <ClCompile Include="..\..\..\infback.c"> |
| 43 | 43 | <Filter>Source Files</Filter> |
| 44 | 44 | </ClCompile> |
| 45 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 46 | - <Filter>Source Files</Filter> | |
| 47 | - </ClCompile> | |
| 48 | 45 | <ClCompile Include="..\..\..\inffast.c"> |
| 49 | 46 | <Filter>Source Files</Filter> |
| 50 | 47 | </ClCompile> |
| 51 | 48 | <ClCompile Include="..\..\..\inflate.c"> |
| 52 | 49 | <Filter>Source Files</Filter> |
| 53 | 50 |
| --- compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters | |
| @@ -40,13 +40,10 @@ | |
| 40 | <Filter>Source Files</Filter> |
| 41 | </ClCompile> |
| 42 | <ClCompile Include="..\..\..\infback.c"> |
| 43 | <Filter>Source Files</Filter> |
| 44 | </ClCompile> |
| 45 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 46 | <Filter>Source Files</Filter> |
| 47 | </ClCompile> |
| 48 | <ClCompile Include="..\..\..\inffast.c"> |
| 49 | <Filter>Source Files</Filter> |
| 50 | </ClCompile> |
| 51 | <ClCompile Include="..\..\..\inflate.c"> |
| 52 | <Filter>Source Files</Filter> |
| 53 |
| --- compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters | |
| +++ compat/zlib/contrib/vstudio/vc10/zlibvc.vcxproj.filters | |
| @@ -40,13 +40,10 @@ | |
| 40 | <Filter>Source Files</Filter> |
| 41 | </ClCompile> |
| 42 | <ClCompile Include="..\..\..\infback.c"> |
| 43 | <Filter>Source Files</Filter> |
| 44 | </ClCompile> |
| 45 | <ClCompile Include="..\..\..\inffast.c"> |
| 46 | <Filter>Source Files</Filter> |
| 47 | </ClCompile> |
| 48 | <ClCompile Include="..\..\..\inflate.c"> |
| 49 | <Filter>Source Files</Filter> |
| 50 |
| --- compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj | ||
| @@ -185,11 +185,11 @@ | ||
| 185 | 185 | </PropertyGroup> |
| 186 | 186 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 187 | 187 | <ClCompile> |
| 188 | 188 | <Optimization>Disabled</Optimization> |
| 189 | 189 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 190 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 190 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 191 | 191 | <MinimalRebuild>true</MinimalRebuild> |
| 192 | 192 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 193 | 193 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 194 | 194 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 195 | 195 | <PrecompiledHeader> |
| @@ -198,11 +198,11 @@ | ||
| 198 | 198 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 199 | 199 | <WarningLevel>Level3</WarningLevel> |
| 200 | 200 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 201 | 201 | </ClCompile> |
| 202 | 202 | <Link> |
| 203 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 203 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 204 | 204 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 205 | 205 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 206 | 206 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 207 | 207 | <SubSystem>Console</SubSystem> |
| 208 | 208 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -245,11 +245,11 @@ | ||
| 245 | 245 | <ClCompile> |
| 246 | 246 | <Optimization>MaxSpeed</Optimization> |
| 247 | 247 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 248 | 248 | <OmitFramePointers>true</OmitFramePointers> |
| 249 | 249 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 250 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 250 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 251 | 251 | <StringPooling>true</StringPooling> |
| 252 | 252 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 253 | 253 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 254 | 254 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 255 | 255 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -258,11 +258,11 @@ | ||
| 258 | 258 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 259 | 259 | <WarningLevel>Level3</WarningLevel> |
| 260 | 260 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 261 | 261 | </ClCompile> |
| 262 | 262 | <Link> |
| 263 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 263 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 264 | 264 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 265 | 265 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 266 | 266 | <SubSystem>Console</SubSystem> |
| 267 | 267 | <OptimizeReferences>true</OptimizeReferences> |
| 268 | 268 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -273,18 +273,18 @@ | ||
| 273 | 273 | </Link> |
| 274 | 274 | </ItemDefinitionGroup> |
| 275 | 275 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 276 | 276 | <ClCompile> |
| 277 | 277 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 278 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 278 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 279 | 279 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 280 | 280 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 281 | 281 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 282 | 282 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 283 | 283 | </ClCompile> |
| 284 | 284 | <Link> |
| 285 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 285 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 286 | 286 | </Link> |
| 287 | 287 | </ItemDefinitionGroup> |
| 288 | 288 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 289 | 289 | <Midl> |
| 290 | 290 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -356,18 +356,18 @@ | ||
| 356 | 356 | </Link> |
| 357 | 357 | </ItemDefinitionGroup> |
| 358 | 358 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 359 | 359 | <ClCompile> |
| 360 | 360 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 361 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 361 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 362 | 362 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 363 | 363 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 364 | 364 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 365 | 365 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 366 | 366 | </ClCompile> |
| 367 | 367 | <Link> |
| 368 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 368 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 369 | 369 | </Link> |
| 370 | 370 | </ItemDefinitionGroup> |
| 371 | 371 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 372 | 372 | <Midl> |
| 373 | 373 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -402,18 +402,10 @@ | ||
| 402 | 402 | <ClCompile Include="..\..\..\adler32.c" /> |
| 403 | 403 | <ClCompile Include="..\..\..\compress.c" /> |
| 404 | 404 | <ClCompile Include="..\..\..\crc32.c" /> |
| 405 | 405 | <ClCompile Include="..\..\..\deflate.c" /> |
| 406 | 406 | <ClCompile Include="..\..\..\infback.c" /> |
| 407 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 408 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 409 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 410 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 411 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 412 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 413 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 414 | - </ClCompile> | |
| 415 | 407 | <ClCompile Include="..\..\..\inffast.c" /> |
| 416 | 408 | <ClCompile Include="..\..\..\inflate.c" /> |
| 417 | 409 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 418 | 410 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 419 | 411 | <ClCompile Include="..\..\..\trees.c" /> |
| 420 | 412 |
| --- compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj | |
| @@ -185,11 +185,11 @@ | |
| 185 | </PropertyGroup> |
| 186 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 187 | <ClCompile> |
| 188 | <Optimization>Disabled</Optimization> |
| 189 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 190 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 191 | <MinimalRebuild>true</MinimalRebuild> |
| 192 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 193 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 194 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 195 | <PrecompiledHeader> |
| @@ -198,11 +198,11 @@ | |
| 198 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 199 | <WarningLevel>Level3</WarningLevel> |
| 200 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 201 | </ClCompile> |
| 202 | <Link> |
| 203 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 204 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 205 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 206 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 207 | <SubSystem>Console</SubSystem> |
| 208 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -245,11 +245,11 @@ | |
| 245 | <ClCompile> |
| 246 | <Optimization>MaxSpeed</Optimization> |
| 247 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 248 | <OmitFramePointers>true</OmitFramePointers> |
| 249 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 250 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 251 | <StringPooling>true</StringPooling> |
| 252 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 253 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 254 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 255 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -258,11 +258,11 @@ | |
| 258 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 259 | <WarningLevel>Level3</WarningLevel> |
| 260 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 261 | </ClCompile> |
| 262 | <Link> |
| 263 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 264 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 265 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 266 | <SubSystem>Console</SubSystem> |
| 267 | <OptimizeReferences>true</OptimizeReferences> |
| 268 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -273,18 +273,18 @@ | |
| 273 | </Link> |
| 274 | </ItemDefinitionGroup> |
| 275 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 276 | <ClCompile> |
| 277 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 278 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 279 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 280 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 281 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 282 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 283 | </ClCompile> |
| 284 | <Link> |
| 285 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 286 | </Link> |
| 287 | </ItemDefinitionGroup> |
| 288 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 289 | <Midl> |
| 290 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -356,18 +356,18 @@ | |
| 356 | </Link> |
| 357 | </ItemDefinitionGroup> |
| 358 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 359 | <ClCompile> |
| 360 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 361 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 362 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 363 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 364 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 365 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 366 | </ClCompile> |
| 367 | <Link> |
| 368 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 369 | </Link> |
| 370 | </ItemDefinitionGroup> |
| 371 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 372 | <Midl> |
| 373 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -402,18 +402,10 @@ | |
| 402 | <ClCompile Include="..\..\..\adler32.c" /> |
| 403 | <ClCompile Include="..\..\..\compress.c" /> |
| 404 | <ClCompile Include="..\..\..\crc32.c" /> |
| 405 | <ClCompile Include="..\..\..\deflate.c" /> |
| 406 | <ClCompile Include="..\..\..\infback.c" /> |
| 407 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 408 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 409 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 410 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 411 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 412 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 413 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 414 | </ClCompile> |
| 415 | <ClCompile Include="..\..\..\inffast.c" /> |
| 416 | <ClCompile Include="..\..\..\inflate.c" /> |
| 417 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 418 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 419 | <ClCompile Include="..\..\..\trees.c" /> |
| 420 |
| --- compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc11/testzlib.vcxproj | |
| @@ -185,11 +185,11 @@ | |
| 185 | </PropertyGroup> |
| 186 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 187 | <ClCompile> |
| 188 | <Optimization>Disabled</Optimization> |
| 189 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 190 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 191 | <MinimalRebuild>true</MinimalRebuild> |
| 192 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 193 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 194 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 195 | <PrecompiledHeader> |
| @@ -198,11 +198,11 @@ | |
| 198 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 199 | <WarningLevel>Level3</WarningLevel> |
| 200 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 201 | </ClCompile> |
| 202 | <Link> |
| 203 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 204 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 205 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 206 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 207 | <SubSystem>Console</SubSystem> |
| 208 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -245,11 +245,11 @@ | |
| 245 | <ClCompile> |
| 246 | <Optimization>MaxSpeed</Optimization> |
| 247 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 248 | <OmitFramePointers>true</OmitFramePointers> |
| 249 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 250 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 251 | <StringPooling>true</StringPooling> |
| 252 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 253 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 254 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 255 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -258,11 +258,11 @@ | |
| 258 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 259 | <WarningLevel>Level3</WarningLevel> |
| 260 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 261 | </ClCompile> |
| 262 | <Link> |
| 263 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 264 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 265 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 266 | <SubSystem>Console</SubSystem> |
| 267 | <OptimizeReferences>true</OptimizeReferences> |
| 268 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -273,18 +273,18 @@ | |
| 273 | </Link> |
| 274 | </ItemDefinitionGroup> |
| 275 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 276 | <ClCompile> |
| 277 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 278 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 279 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 280 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 281 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 282 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 283 | </ClCompile> |
| 284 | <Link> |
| 285 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 286 | </Link> |
| 287 | </ItemDefinitionGroup> |
| 288 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 289 | <Midl> |
| 290 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -356,18 +356,18 @@ | |
| 356 | </Link> |
| 357 | </ItemDefinitionGroup> |
| 358 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 359 | <ClCompile> |
| 360 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 361 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 362 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 363 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 364 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 365 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 366 | </ClCompile> |
| 367 | <Link> |
| 368 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 369 | </Link> |
| 370 | </ItemDefinitionGroup> |
| 371 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 372 | <Midl> |
| 373 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -402,18 +402,10 @@ | |
| 402 | <ClCompile Include="..\..\..\adler32.c" /> |
| 403 | <ClCompile Include="..\..\..\compress.c" /> |
| 404 | <ClCompile Include="..\..\..\crc32.c" /> |
| 405 | <ClCompile Include="..\..\..\deflate.c" /> |
| 406 | <ClCompile Include="..\..\..\infback.c" /> |
| 407 | <ClCompile Include="..\..\..\inffast.c" /> |
| 408 | <ClCompile Include="..\..\..\inflate.c" /> |
| 409 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 410 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 411 | <ClCompile Include="..\..\..\trees.c" /> |
| 412 |
| --- compat/zlib/contrib/vstudio/vc11/zlib.rc | ||
| +++ compat/zlib/contrib/vstudio/vc11/zlib.rc | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | #include <windows.h> |
| 2 | 2 | |
| 3 | 3 | #define IDR_VERSION1 1 |
| 4 | 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | - FILEVERSION 1, 2, 12, 0 | |
| 6 | - PRODUCTVERSION 1, 2, 12, 0 | |
| 5 | + FILEVERSION 1, 2, 13, 0 | |
| 6 | + PRODUCTVERSION 1, 2, 13, 0 | |
| 7 | 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | 8 | FILEFLAGS 0 |
| 9 | 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | 10 | FILETYPE VFT_DLL |
| 11 | 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | ||
| 15 | 15 | BLOCK "040904E4" |
| 16 | 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | 17 | |
| 18 | 18 | BEGIN |
| 19 | 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | - VALUE "FileVersion", "1.2.12\0" | |
| 20 | + VALUE "FileVersion", "1.2.13\0" | |
| 21 | 21 | VALUE "InternalName", "zlib\0" |
| 22 | 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 | 26 |
| --- compat/zlib/contrib/vstudio/vc11/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc11/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 12, 0 |
| 6 | PRODUCTVERSION 1, 2, 12, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.12\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc11/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc11/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 13, 0 |
| 6 | PRODUCTVERSION 1, 2, 13, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.13\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj | ||
| @@ -165,11 +165,11 @@ | ||
| 165 | 165 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 166 | 166 | </PropertyGroup> |
| 167 | 167 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 168 | 168 | <ClCompile> |
| 169 | 169 | <Optimization>Disabled</Optimization> |
| 170 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 170 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 171 | 171 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 172 | 172 | <ExceptionHandling> |
| 173 | 173 | </ExceptionHandling> |
| 174 | 174 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 175 | 175 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -191,12 +191,12 @@ | ||
| 191 | 191 | </Lib> |
| 192 | 192 | </ItemDefinitionGroup> |
| 193 | 193 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 194 | 194 | <ClCompile> |
| 195 | 195 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 196 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 197 | - <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 196 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 197 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 198 | 198 | <StringPooling>true</StringPooling> |
| 199 | 199 | <ExceptionHandling> |
| 200 | 200 | </ExceptionHandling> |
| 201 | 201 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 202 | 202 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -211,19 +211,19 @@ | ||
| 211 | 211 | <ResourceCompile> |
| 212 | 212 | <Culture>0x040c</Culture> |
| 213 | 213 | </ResourceCompile> |
| 214 | 214 | <Lib> |
| 215 | 215 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 216 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 216 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 217 | 217 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 218 | 218 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 219 | 219 | </Lib> |
| 220 | 220 | </ItemDefinitionGroup> |
| 221 | 221 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 222 | 222 | <ClCompile> |
| 223 | 223 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 224 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 224 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 225 | 225 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 226 | 226 | <StringPooling>true</StringPooling> |
| 227 | 227 | <ExceptionHandling> |
| 228 | 228 | </ExceptionHandling> |
| 229 | 229 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -249,11 +249,11 @@ | ||
| 249 | 249 | <Midl> |
| 250 | 250 | <TargetEnvironment>X64</TargetEnvironment> |
| 251 | 251 | </Midl> |
| 252 | 252 | <ClCompile> |
| 253 | 253 | <Optimization>Disabled</Optimization> |
| 254 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 254 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 255 | 255 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 256 | 256 | <ExceptionHandling> |
| 257 | 257 | </ExceptionHandling> |
| 258 | 258 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 259 | 259 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -278,11 +278,11 @@ | ||
| 278 | 278 | <Midl> |
| 279 | 279 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 280 | 280 | </Midl> |
| 281 | 281 | <ClCompile> |
| 282 | 282 | <Optimization>Disabled</Optimization> |
| 283 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 283 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 284 | 284 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 285 | 285 | <ExceptionHandling> |
| 286 | 286 | </ExceptionHandling> |
| 287 | 287 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 288 | 288 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -307,12 +307,12 @@ | ||
| 307 | 307 | <Midl> |
| 308 | 308 | <TargetEnvironment>X64</TargetEnvironment> |
| 309 | 309 | </Midl> |
| 310 | 310 | <ClCompile> |
| 311 | 311 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 312 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 313 | - <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 312 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 313 | + <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 314 | 314 | <StringPooling>true</StringPooling> |
| 315 | 315 | <ExceptionHandling> |
| 316 | 316 | </ExceptionHandling> |
| 317 | 317 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 318 | 318 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -327,11 +327,11 @@ | ||
| 327 | 327 | <ResourceCompile> |
| 328 | 328 | <Culture>0x040c</Culture> |
| 329 | 329 | </ResourceCompile> |
| 330 | 330 | <Lib> |
| 331 | 331 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 332 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 332 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 333 | 333 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 334 | 334 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 335 | 335 | </Lib> |
| 336 | 336 | </ItemDefinitionGroup> |
| 337 | 337 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -338,11 +338,11 @@ | ||
| 338 | 338 | <Midl> |
| 339 | 339 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 340 | 340 | </Midl> |
| 341 | 341 | <ClCompile> |
| 342 | 342 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 343 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 343 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 344 | 344 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 345 | 345 | <StringPooling>true</StringPooling> |
| 346 | 346 | <ExceptionHandling> |
| 347 | 347 | </ExceptionHandling> |
| 348 | 348 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -368,11 +368,11 @@ | ||
| 368 | 368 | <Midl> |
| 369 | 369 | <TargetEnvironment>X64</TargetEnvironment> |
| 370 | 370 | </Midl> |
| 371 | 371 | <ClCompile> |
| 372 | 372 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 373 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 373 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 374 | 374 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 375 | 375 | <StringPooling>true</StringPooling> |
| 376 | 376 | <ExceptionHandling> |
| 377 | 377 | </ExceptionHandling> |
| 378 | 378 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -398,11 +398,11 @@ | ||
| 398 | 398 | <Midl> |
| 399 | 399 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 400 | 400 | </Midl> |
| 401 | 401 | <ClCompile> |
| 402 | 402 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 403 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 403 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 404 | 404 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 405 | 405 | <StringPooling>true</StringPooling> |
| 406 | 406 | <ExceptionHandling> |
| 407 | 407 | </ExceptionHandling> |
| 408 | 408 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -432,18 +432,10 @@ | ||
| 432 | 432 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 433 | 433 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 434 | 434 | <ClCompile Include="..\..\..\gzread.c" /> |
| 435 | 435 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 436 | 436 | <ClCompile Include="..\..\..\infback.c" /> |
| 437 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 438 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 439 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 440 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 441 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 442 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 443 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 444 | - </ClCompile> | |
| 445 | 437 | <ClCompile Include="..\..\..\inffast.c" /> |
| 446 | 438 | <ClCompile Include="..\..\..\inflate.c" /> |
| 447 | 439 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 448 | 440 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 449 | 441 | <ClCompile Include="..\..\..\trees.c" /> |
| 450 | 442 |
| --- compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj | |
| @@ -165,11 +165,11 @@ | |
| 165 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 166 | </PropertyGroup> |
| 167 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 168 | <ClCompile> |
| 169 | <Optimization>Disabled</Optimization> |
| 170 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 171 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 172 | <ExceptionHandling> |
| 173 | </ExceptionHandling> |
| 174 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 175 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -191,12 +191,12 @@ | |
| 191 | </Lib> |
| 192 | </ItemDefinitionGroup> |
| 193 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 194 | <ClCompile> |
| 195 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 196 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 197 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 198 | <StringPooling>true</StringPooling> |
| 199 | <ExceptionHandling> |
| 200 | </ExceptionHandling> |
| 201 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 202 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -211,19 +211,19 @@ | |
| 211 | <ResourceCompile> |
| 212 | <Culture>0x040c</Culture> |
| 213 | </ResourceCompile> |
| 214 | <Lib> |
| 215 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 216 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 217 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 218 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 219 | </Lib> |
| 220 | </ItemDefinitionGroup> |
| 221 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 222 | <ClCompile> |
| 223 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 224 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 225 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 226 | <StringPooling>true</StringPooling> |
| 227 | <ExceptionHandling> |
| 228 | </ExceptionHandling> |
| 229 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -249,11 +249,11 @@ | |
| 249 | <Midl> |
| 250 | <TargetEnvironment>X64</TargetEnvironment> |
| 251 | </Midl> |
| 252 | <ClCompile> |
| 253 | <Optimization>Disabled</Optimization> |
| 254 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 255 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 256 | <ExceptionHandling> |
| 257 | </ExceptionHandling> |
| 258 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 259 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -278,11 +278,11 @@ | |
| 278 | <Midl> |
| 279 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 280 | </Midl> |
| 281 | <ClCompile> |
| 282 | <Optimization>Disabled</Optimization> |
| 283 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 284 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 285 | <ExceptionHandling> |
| 286 | </ExceptionHandling> |
| 287 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 288 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -307,12 +307,12 @@ | |
| 307 | <Midl> |
| 308 | <TargetEnvironment>X64</TargetEnvironment> |
| 309 | </Midl> |
| 310 | <ClCompile> |
| 311 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 312 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 313 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 314 | <StringPooling>true</StringPooling> |
| 315 | <ExceptionHandling> |
| 316 | </ExceptionHandling> |
| 317 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 318 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -327,11 +327,11 @@ | |
| 327 | <ResourceCompile> |
| 328 | <Culture>0x040c</Culture> |
| 329 | </ResourceCompile> |
| 330 | <Lib> |
| 331 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 332 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 333 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 334 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 335 | </Lib> |
| 336 | </ItemDefinitionGroup> |
| 337 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -338,11 +338,11 @@ | |
| 338 | <Midl> |
| 339 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 340 | </Midl> |
| 341 | <ClCompile> |
| 342 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 343 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 344 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 345 | <StringPooling>true</StringPooling> |
| 346 | <ExceptionHandling> |
| 347 | </ExceptionHandling> |
| 348 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -368,11 +368,11 @@ | |
| 368 | <Midl> |
| 369 | <TargetEnvironment>X64</TargetEnvironment> |
| 370 | </Midl> |
| 371 | <ClCompile> |
| 372 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 373 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 374 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 375 | <StringPooling>true</StringPooling> |
| 376 | <ExceptionHandling> |
| 377 | </ExceptionHandling> |
| 378 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -398,11 +398,11 @@ | |
| 398 | <Midl> |
| 399 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 400 | </Midl> |
| 401 | <ClCompile> |
| 402 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 403 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 404 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 405 | <StringPooling>true</StringPooling> |
| 406 | <ExceptionHandling> |
| 407 | </ExceptionHandling> |
| 408 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -432,18 +432,10 @@ | |
| 432 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 433 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 434 | <ClCompile Include="..\..\..\gzread.c" /> |
| 435 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 436 | <ClCompile Include="..\..\..\infback.c" /> |
| 437 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 438 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 439 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 440 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 441 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 442 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 443 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 444 | </ClCompile> |
| 445 | <ClCompile Include="..\..\..\inffast.c" /> |
| 446 | <ClCompile Include="..\..\..\inflate.c" /> |
| 447 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 448 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 449 | <ClCompile Include="..\..\..\trees.c" /> |
| 450 |
| --- compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc11/zlibstat.vcxproj | |
| @@ -165,11 +165,11 @@ | |
| 165 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 166 | </PropertyGroup> |
| 167 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 168 | <ClCompile> |
| 169 | <Optimization>Disabled</Optimization> |
| 170 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 171 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 172 | <ExceptionHandling> |
| 173 | </ExceptionHandling> |
| 174 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 175 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -191,12 +191,12 @@ | |
| 191 | </Lib> |
| 192 | </ItemDefinitionGroup> |
| 193 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 194 | <ClCompile> |
| 195 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 196 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 197 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 198 | <StringPooling>true</StringPooling> |
| 199 | <ExceptionHandling> |
| 200 | </ExceptionHandling> |
| 201 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 202 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -211,19 +211,19 @@ | |
| 211 | <ResourceCompile> |
| 212 | <Culture>0x040c</Culture> |
| 213 | </ResourceCompile> |
| 214 | <Lib> |
| 215 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 216 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 217 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 218 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 219 | </Lib> |
| 220 | </ItemDefinitionGroup> |
| 221 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 222 | <ClCompile> |
| 223 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 224 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 225 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 226 | <StringPooling>true</StringPooling> |
| 227 | <ExceptionHandling> |
| 228 | </ExceptionHandling> |
| 229 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -249,11 +249,11 @@ | |
| 249 | <Midl> |
| 250 | <TargetEnvironment>X64</TargetEnvironment> |
| 251 | </Midl> |
| 252 | <ClCompile> |
| 253 | <Optimization>Disabled</Optimization> |
| 254 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 255 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 256 | <ExceptionHandling> |
| 257 | </ExceptionHandling> |
| 258 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 259 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -278,11 +278,11 @@ | |
| 278 | <Midl> |
| 279 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 280 | </Midl> |
| 281 | <ClCompile> |
| 282 | <Optimization>Disabled</Optimization> |
| 283 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 284 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 285 | <ExceptionHandling> |
| 286 | </ExceptionHandling> |
| 287 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 288 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -307,12 +307,12 @@ | |
| 307 | <Midl> |
| 308 | <TargetEnvironment>X64</TargetEnvironment> |
| 309 | </Midl> |
| 310 | <ClCompile> |
| 311 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 312 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 313 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 314 | <StringPooling>true</StringPooling> |
| 315 | <ExceptionHandling> |
| 316 | </ExceptionHandling> |
| 317 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 318 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -327,11 +327,11 @@ | |
| 327 | <ResourceCompile> |
| 328 | <Culture>0x040c</Culture> |
| 329 | </ResourceCompile> |
| 330 | <Lib> |
| 331 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 332 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 333 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 334 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 335 | </Lib> |
| 336 | </ItemDefinitionGroup> |
| 337 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -338,11 +338,11 @@ | |
| 338 | <Midl> |
| 339 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 340 | </Midl> |
| 341 | <ClCompile> |
| 342 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 343 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 344 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 345 | <StringPooling>true</StringPooling> |
| 346 | <ExceptionHandling> |
| 347 | </ExceptionHandling> |
| 348 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -368,11 +368,11 @@ | |
| 368 | <Midl> |
| 369 | <TargetEnvironment>X64</TargetEnvironment> |
| 370 | </Midl> |
| 371 | <ClCompile> |
| 372 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 373 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 374 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 375 | <StringPooling>true</StringPooling> |
| 376 | <ExceptionHandling> |
| 377 | </ExceptionHandling> |
| 378 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -398,11 +398,11 @@ | |
| 398 | <Midl> |
| 399 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 400 | </Midl> |
| 401 | <ClCompile> |
| 402 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 403 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 404 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 405 | <StringPooling>true</StringPooling> |
| 406 | <ExceptionHandling> |
| 407 | </ExceptionHandling> |
| 408 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -432,18 +432,10 @@ | |
| 432 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 433 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 434 | <ClCompile Include="..\..\..\gzread.c" /> |
| 435 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 436 | <ClCompile Include="..\..\..\infback.c" /> |
| 437 | <ClCompile Include="..\..\..\inffast.c" /> |
| 438 | <ClCompile Include="..\..\..\inflate.c" /> |
| 439 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 440 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 441 | <ClCompile Include="..\..\..\trees.c" /> |
| 442 |
| --- compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj | ||
| @@ -202,12 +202,12 @@ | ||
| 202 | 202 | <TargetEnvironment>Win32</TargetEnvironment> |
| 203 | 203 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 204 | 204 | </Midl> |
| 205 | 205 | <ClCompile> |
| 206 | 206 | <Optimization>Disabled</Optimization> |
| 207 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 208 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 207 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 208 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 209 | 209 | <ExceptionHandling> |
| 210 | 210 | </ExceptionHandling> |
| 211 | 211 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 212 | 212 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 213 | 213 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -224,11 +224,11 @@ | ||
| 224 | 224 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 225 | 225 | <Culture>0x040c</Culture> |
| 226 | 226 | </ResourceCompile> |
| 227 | 227 | <Link> |
| 228 | 228 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 229 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 229 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 230 | 230 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 231 | 231 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 232 | 232 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 233 | 233 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 234 | 234 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -238,14 +238,10 @@ | ||
| 238 | 238 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 239 | 239 | <DataExecutionPrevention> |
| 240 | 240 | </DataExecutionPrevention> |
| 241 | 241 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 242 | 242 | </Link> |
| 243 | - <PreBuildEvent> | |
| 244 | - <Command>cd ..\..\masmx86 | |
| 245 | -bld_ml32.bat</Command> | |
| 246 | - </PreBuildEvent> | |
| 247 | 243 | </ItemDefinitionGroup> |
| 248 | 244 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 249 | 245 | <Midl> |
| 250 | 246 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 251 | 247 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -253,11 +249,11 @@ | ||
| 253 | 249 | <TargetEnvironment>Win32</TargetEnvironment> |
| 254 | 250 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 255 | 251 | </Midl> |
| 256 | 252 | <ClCompile> |
| 257 | 253 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 258 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 254 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 259 | 255 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 260 | 256 | <StringPooling>true</StringPooling> |
| 261 | 257 | <ExceptionHandling> |
| 262 | 258 | </ExceptionHandling> |
| 263 | 259 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -301,12 +297,12 @@ | ||
| 301 | 297 | <TargetEnvironment>Win32</TargetEnvironment> |
| 302 | 298 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 303 | 299 | </Midl> |
| 304 | 300 | <ClCompile> |
| 305 | 301 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 306 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 307 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 302 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 303 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 308 | 304 | <StringPooling>true</StringPooling> |
| 309 | 305 | <ExceptionHandling> |
| 310 | 306 | </ExceptionHandling> |
| 311 | 307 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 312 | 308 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -325,11 +321,11 @@ | ||
| 325 | 321 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 326 | 322 | <Culture>0x040c</Culture> |
| 327 | 323 | </ResourceCompile> |
| 328 | 324 | <Link> |
| 329 | 325 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 330 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 326 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 331 | 327 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 332 | 328 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 333 | 329 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 334 | 330 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 335 | 331 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -339,14 +335,10 @@ | ||
| 339 | 335 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 340 | 336 | <DataExecutionPrevention> |
| 341 | 337 | </DataExecutionPrevention> |
| 342 | 338 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 343 | 339 | </Link> |
| 344 | - <PreBuildEvent> | |
| 345 | - <Command>cd ..\..\masmx86 | |
| 346 | -bld_ml32.bat</Command> | |
| 347 | - </PreBuildEvent> | |
| 348 | 340 | </ItemDefinitionGroup> |
| 349 | 341 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 350 | 342 | <Midl> |
| 351 | 343 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 352 | 344 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -354,12 +346,12 @@ | ||
| 354 | 346 | <TargetEnvironment>X64</TargetEnvironment> |
| 355 | 347 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 356 | 348 | </Midl> |
| 357 | 349 | <ClCompile> |
| 358 | 350 | <Optimization>Disabled</Optimization> |
| 359 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 360 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 351 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 352 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 361 | 353 | <ExceptionHandling> |
| 362 | 354 | </ExceptionHandling> |
| 363 | 355 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 364 | 356 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 365 | 357 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -375,11 +367,11 @@ | ||
| 375 | 367 | <ResourceCompile> |
| 376 | 368 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 377 | 369 | <Culture>0x040c</Culture> |
| 378 | 370 | </ResourceCompile> |
| 379 | 371 | <Link> |
| 380 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 372 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 381 | 373 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 382 | 374 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 383 | 375 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 384 | 376 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 385 | 377 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -387,14 +379,10 @@ | ||
| 387 | 379 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 388 | 380 | <SubSystem>Windows</SubSystem> |
| 389 | 381 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 390 | 382 | <TargetMachine>MachineX64</TargetMachine> |
| 391 | 383 | </Link> |
| 392 | - <PreBuildEvent> | |
| 393 | - <Command>cd ..\..\contrib\masmx64 | |
| 394 | -bld_ml64.bat</Command> | |
| 395 | - </PreBuildEvent> | |
| 396 | 384 | </ItemDefinitionGroup> |
| 397 | 385 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 398 | 386 | <Midl> |
| 399 | 387 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 400 | 388 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -402,11 +390,11 @@ | ||
| 402 | 390 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | 391 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 404 | 392 | </Midl> |
| 405 | 393 | <ClCompile> |
| 406 | 394 | <Optimization>Disabled</Optimization> |
| 407 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 395 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 408 | 396 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 409 | 397 | <ExceptionHandling> |
| 410 | 398 | </ExceptionHandling> |
| 411 | 399 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 412 | 400 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -445,11 +433,11 @@ | ||
| 445 | 433 | <TargetEnvironment>X64</TargetEnvironment> |
| 446 | 434 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 447 | 435 | </Midl> |
| 448 | 436 | <ClCompile> |
| 449 | 437 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 450 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 438 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 451 | 439 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 452 | 440 | <StringPooling>true</StringPooling> |
| 453 | 441 | <ExceptionHandling> |
| 454 | 442 | </ExceptionHandling> |
| 455 | 443 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -490,11 +478,11 @@ | ||
| 490 | 478 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 491 | 479 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 492 | 480 | </Midl> |
| 493 | 481 | <ClCompile> |
| 494 | 482 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 495 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 483 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 496 | 484 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 497 | 485 | <StringPooling>true</StringPooling> |
| 498 | 486 | <ExceptionHandling> |
| 499 | 487 | </ExceptionHandling> |
| 500 | 488 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -535,12 +523,12 @@ | ||
| 535 | 523 | <TargetEnvironment>X64</TargetEnvironment> |
| 536 | 524 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 537 | 525 | </Midl> |
| 538 | 526 | <ClCompile> |
| 539 | 527 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 540 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 541 | - <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 528 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 529 | + <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 542 | 530 | <StringPooling>true</StringPooling> |
| 543 | 531 | <ExceptionHandling> |
| 544 | 532 | </ExceptionHandling> |
| 545 | 533 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 546 | 534 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -558,11 +546,11 @@ | ||
| 558 | 546 | <ResourceCompile> |
| 559 | 547 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 560 | 548 | <Culture>0x040c</Culture> |
| 561 | 549 | </ResourceCompile> |
| 562 | 550 | <Link> |
| 563 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 551 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 564 | 552 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 565 | 553 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 566 | 554 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 567 | 555 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 568 | 556 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -570,14 +558,10 @@ | ||
| 570 | 558 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 571 | 559 | <SubSystem>Windows</SubSystem> |
| 572 | 560 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 573 | 561 | <TargetMachine>MachineX64</TargetMachine> |
| 574 | 562 | </Link> |
| 575 | - <PreBuildEvent> | |
| 576 | - <Command>cd ..\..\masmx64 | |
| 577 | -bld_ml64.bat</Command> | |
| 578 | - </PreBuildEvent> | |
| 579 | 563 | </ItemDefinitionGroup> |
| 580 | 564 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 581 | 565 | <Midl> |
| 582 | 566 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 583 | 567 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -585,11 +569,11 @@ | ||
| 585 | 569 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 586 | 570 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 587 | 571 | </Midl> |
| 588 | 572 | <ClCompile> |
| 589 | 573 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 590 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 574 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 591 | 575 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 592 | 576 | <StringPooling>true</StringPooling> |
| 593 | 577 | <ExceptionHandling> |
| 594 | 578 | </ExceptionHandling> |
| 595 | 579 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -630,18 +614,10 @@ | ||
| 630 | 614 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 631 | 615 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 632 | 616 | <ClCompile Include="..\..\..\gzread.c" /> |
| 633 | 617 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 634 | 618 | <ClCompile Include="..\..\..\infback.c" /> |
| 635 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 636 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 637 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 638 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 639 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 640 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 641 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 642 | - </ClCompile> | |
| 643 | 619 | <ClCompile Include="..\..\..\inffast.c" /> |
| 644 | 620 | <ClCompile Include="..\..\..\inflate.c" /> |
| 645 | 621 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 646 | 622 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 647 | 623 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 648 | 624 |
| --- compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj | |
| @@ -202,12 +202,12 @@ | |
| 202 | <TargetEnvironment>Win32</TargetEnvironment> |
| 203 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 204 | </Midl> |
| 205 | <ClCompile> |
| 206 | <Optimization>Disabled</Optimization> |
| 207 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 208 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 209 | <ExceptionHandling> |
| 210 | </ExceptionHandling> |
| 211 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 212 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 213 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -224,11 +224,11 @@ | |
| 224 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 225 | <Culture>0x040c</Culture> |
| 226 | </ResourceCompile> |
| 227 | <Link> |
| 228 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 229 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 230 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 231 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 232 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 233 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 234 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -238,14 +238,10 @@ | |
| 238 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 239 | <DataExecutionPrevention> |
| 240 | </DataExecutionPrevention> |
| 241 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 242 | </Link> |
| 243 | <PreBuildEvent> |
| 244 | <Command>cd ..\..\masmx86 |
| 245 | bld_ml32.bat</Command> |
| 246 | </PreBuildEvent> |
| 247 | </ItemDefinitionGroup> |
| 248 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 249 | <Midl> |
| 250 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 251 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -253,11 +249,11 @@ | |
| 253 | <TargetEnvironment>Win32</TargetEnvironment> |
| 254 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 255 | </Midl> |
| 256 | <ClCompile> |
| 257 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 258 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 259 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 260 | <StringPooling>true</StringPooling> |
| 261 | <ExceptionHandling> |
| 262 | </ExceptionHandling> |
| 263 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -301,12 +297,12 @@ | |
| 301 | <TargetEnvironment>Win32</TargetEnvironment> |
| 302 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 303 | </Midl> |
| 304 | <ClCompile> |
| 305 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 306 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 307 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 308 | <StringPooling>true</StringPooling> |
| 309 | <ExceptionHandling> |
| 310 | </ExceptionHandling> |
| 311 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 312 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -325,11 +321,11 @@ | |
| 325 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 326 | <Culture>0x040c</Culture> |
| 327 | </ResourceCompile> |
| 328 | <Link> |
| 329 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 330 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 331 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 332 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 333 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 334 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 335 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -339,14 +335,10 @@ | |
| 339 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 340 | <DataExecutionPrevention> |
| 341 | </DataExecutionPrevention> |
| 342 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 343 | </Link> |
| 344 | <PreBuildEvent> |
| 345 | <Command>cd ..\..\masmx86 |
| 346 | bld_ml32.bat</Command> |
| 347 | </PreBuildEvent> |
| 348 | </ItemDefinitionGroup> |
| 349 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 350 | <Midl> |
| 351 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 352 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -354,12 +346,12 @@ | |
| 354 | <TargetEnvironment>X64</TargetEnvironment> |
| 355 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 356 | </Midl> |
| 357 | <ClCompile> |
| 358 | <Optimization>Disabled</Optimization> |
| 359 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 360 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 361 | <ExceptionHandling> |
| 362 | </ExceptionHandling> |
| 363 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 364 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 365 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -375,11 +367,11 @@ | |
| 375 | <ResourceCompile> |
| 376 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 377 | <Culture>0x040c</Culture> |
| 378 | </ResourceCompile> |
| 379 | <Link> |
| 380 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 381 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 382 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 383 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 384 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 385 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -387,14 +379,10 @@ | |
| 387 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 388 | <SubSystem>Windows</SubSystem> |
| 389 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 390 | <TargetMachine>MachineX64</TargetMachine> |
| 391 | </Link> |
| 392 | <PreBuildEvent> |
| 393 | <Command>cd ..\..\contrib\masmx64 |
| 394 | bld_ml64.bat</Command> |
| 395 | </PreBuildEvent> |
| 396 | </ItemDefinitionGroup> |
| 397 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 398 | <Midl> |
| 399 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 400 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -402,11 +390,11 @@ | |
| 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 404 | </Midl> |
| 405 | <ClCompile> |
| 406 | <Optimization>Disabled</Optimization> |
| 407 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 408 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 409 | <ExceptionHandling> |
| 410 | </ExceptionHandling> |
| 411 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 412 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -445,11 +433,11 @@ | |
| 445 | <TargetEnvironment>X64</TargetEnvironment> |
| 446 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 447 | </Midl> |
| 448 | <ClCompile> |
| 449 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 450 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 451 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 452 | <StringPooling>true</StringPooling> |
| 453 | <ExceptionHandling> |
| 454 | </ExceptionHandling> |
| 455 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -490,11 +478,11 @@ | |
| 490 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 491 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 492 | </Midl> |
| 493 | <ClCompile> |
| 494 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 495 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 496 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 497 | <StringPooling>true</StringPooling> |
| 498 | <ExceptionHandling> |
| 499 | </ExceptionHandling> |
| 500 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -535,12 +523,12 @@ | |
| 535 | <TargetEnvironment>X64</TargetEnvironment> |
| 536 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 537 | </Midl> |
| 538 | <ClCompile> |
| 539 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 540 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 541 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 542 | <StringPooling>true</StringPooling> |
| 543 | <ExceptionHandling> |
| 544 | </ExceptionHandling> |
| 545 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 546 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -558,11 +546,11 @@ | |
| 558 | <ResourceCompile> |
| 559 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 560 | <Culture>0x040c</Culture> |
| 561 | </ResourceCompile> |
| 562 | <Link> |
| 563 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 564 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 565 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 566 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 567 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 568 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -570,14 +558,10 @@ | |
| 570 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 571 | <SubSystem>Windows</SubSystem> |
| 572 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 573 | <TargetMachine>MachineX64</TargetMachine> |
| 574 | </Link> |
| 575 | <PreBuildEvent> |
| 576 | <Command>cd ..\..\masmx64 |
| 577 | bld_ml64.bat</Command> |
| 578 | </PreBuildEvent> |
| 579 | </ItemDefinitionGroup> |
| 580 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 581 | <Midl> |
| 582 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 583 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -585,11 +569,11 @@ | |
| 585 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 586 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 587 | </Midl> |
| 588 | <ClCompile> |
| 589 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 590 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 591 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 592 | <StringPooling>true</StringPooling> |
| 593 | <ExceptionHandling> |
| 594 | </ExceptionHandling> |
| 595 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -630,18 +614,10 @@ | |
| 630 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 631 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 632 | <ClCompile Include="..\..\..\gzread.c" /> |
| 633 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 634 | <ClCompile Include="..\..\..\infback.c" /> |
| 635 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 636 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 637 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 638 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 639 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 640 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 641 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 642 | </ClCompile> |
| 643 | <ClCompile Include="..\..\..\inffast.c" /> |
| 644 | <ClCompile Include="..\..\..\inflate.c" /> |
| 645 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 646 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 647 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 648 |
| --- compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc11/zlibvc.vcxproj | |
| @@ -202,12 +202,12 @@ | |
| 202 | <TargetEnvironment>Win32</TargetEnvironment> |
| 203 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 204 | </Midl> |
| 205 | <ClCompile> |
| 206 | <Optimization>Disabled</Optimization> |
| 207 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 208 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 209 | <ExceptionHandling> |
| 210 | </ExceptionHandling> |
| 211 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 212 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 213 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -224,11 +224,11 @@ | |
| 224 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 225 | <Culture>0x040c</Culture> |
| 226 | </ResourceCompile> |
| 227 | <Link> |
| 228 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 229 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 230 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 231 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 232 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 233 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 234 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -238,14 +238,10 @@ | |
| 238 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 239 | <DataExecutionPrevention> |
| 240 | </DataExecutionPrevention> |
| 241 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 242 | </Link> |
| 243 | </ItemDefinitionGroup> |
| 244 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 245 | <Midl> |
| 246 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 247 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -253,11 +249,11 @@ | |
| 249 | <TargetEnvironment>Win32</TargetEnvironment> |
| 250 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 251 | </Midl> |
| 252 | <ClCompile> |
| 253 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 254 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 255 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 256 | <StringPooling>true</StringPooling> |
| 257 | <ExceptionHandling> |
| 258 | </ExceptionHandling> |
| 259 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -301,12 +297,12 @@ | |
| 297 | <TargetEnvironment>Win32</TargetEnvironment> |
| 298 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 299 | </Midl> |
| 300 | <ClCompile> |
| 301 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 302 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 303 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 304 | <StringPooling>true</StringPooling> |
| 305 | <ExceptionHandling> |
| 306 | </ExceptionHandling> |
| 307 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 308 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -325,11 +321,11 @@ | |
| 321 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 322 | <Culture>0x040c</Culture> |
| 323 | </ResourceCompile> |
| 324 | <Link> |
| 325 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 326 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 327 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 328 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 329 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 330 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 331 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -339,14 +335,10 @@ | |
| 335 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 336 | <DataExecutionPrevention> |
| 337 | </DataExecutionPrevention> |
| 338 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 339 | </Link> |
| 340 | </ItemDefinitionGroup> |
| 341 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 342 | <Midl> |
| 343 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 344 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -354,12 +346,12 @@ | |
| 346 | <TargetEnvironment>X64</TargetEnvironment> |
| 347 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 348 | </Midl> |
| 349 | <ClCompile> |
| 350 | <Optimization>Disabled</Optimization> |
| 351 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 352 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 353 | <ExceptionHandling> |
| 354 | </ExceptionHandling> |
| 355 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 356 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 357 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -375,11 +367,11 @@ | |
| 367 | <ResourceCompile> |
| 368 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 369 | <Culture>0x040c</Culture> |
| 370 | </ResourceCompile> |
| 371 | <Link> |
| 372 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 373 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 374 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 375 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 376 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 377 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -387,14 +379,10 @@ | |
| 379 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 380 | <SubSystem>Windows</SubSystem> |
| 381 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 382 | <TargetMachine>MachineX64</TargetMachine> |
| 383 | </Link> |
| 384 | </ItemDefinitionGroup> |
| 385 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 386 | <Midl> |
| 387 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 388 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -402,11 +390,11 @@ | |
| 390 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 391 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 392 | </Midl> |
| 393 | <ClCompile> |
| 394 | <Optimization>Disabled</Optimization> |
| 395 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 396 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 397 | <ExceptionHandling> |
| 398 | </ExceptionHandling> |
| 399 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 400 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -445,11 +433,11 @@ | |
| 433 | <TargetEnvironment>X64</TargetEnvironment> |
| 434 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 435 | </Midl> |
| 436 | <ClCompile> |
| 437 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 438 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 439 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 440 | <StringPooling>true</StringPooling> |
| 441 | <ExceptionHandling> |
| 442 | </ExceptionHandling> |
| 443 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -490,11 +478,11 @@ | |
| 478 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 479 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 480 | </Midl> |
| 481 | <ClCompile> |
| 482 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 483 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 484 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 485 | <StringPooling>true</StringPooling> |
| 486 | <ExceptionHandling> |
| 487 | </ExceptionHandling> |
| 488 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -535,12 +523,12 @@ | |
| 523 | <TargetEnvironment>X64</TargetEnvironment> |
| 524 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 525 | </Midl> |
| 526 | <ClCompile> |
| 527 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 528 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 529 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 530 | <StringPooling>true</StringPooling> |
| 531 | <ExceptionHandling> |
| 532 | </ExceptionHandling> |
| 533 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 534 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -558,11 +546,11 @@ | |
| 546 | <ResourceCompile> |
| 547 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 548 | <Culture>0x040c</Culture> |
| 549 | </ResourceCompile> |
| 550 | <Link> |
| 551 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 552 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 553 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 554 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 555 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 556 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -570,14 +558,10 @@ | |
| 558 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 559 | <SubSystem>Windows</SubSystem> |
| 560 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 561 | <TargetMachine>MachineX64</TargetMachine> |
| 562 | </Link> |
| 563 | </ItemDefinitionGroup> |
| 564 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 565 | <Midl> |
| 566 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 567 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -585,11 +569,11 @@ | |
| 569 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 570 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 571 | </Midl> |
| 572 | <ClCompile> |
| 573 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 574 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 575 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 576 | <StringPooling>true</StringPooling> |
| 577 | <ExceptionHandling> |
| 578 | </ExceptionHandling> |
| 579 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -630,18 +614,10 @@ | |
| 614 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 615 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 616 | <ClCompile Include="..\..\..\gzread.c" /> |
| 617 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 618 | <ClCompile Include="..\..\..\infback.c" /> |
| 619 | <ClCompile Include="..\..\..\inffast.c" /> |
| 620 | <ClCompile Include="..\..\..\inflate.c" /> |
| 621 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 622 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 623 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 624 |
| --- compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj | ||
| @@ -188,11 +188,11 @@ | ||
| 188 | 188 | </PropertyGroup> |
| 189 | 189 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 190 | 190 | <ClCompile> |
| 191 | 191 | <Optimization>Disabled</Optimization> |
| 192 | 192 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 193 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 193 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 194 | 194 | <MinimalRebuild>true</MinimalRebuild> |
| 195 | 195 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 196 | 196 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 197 | 197 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 198 | 198 | <PrecompiledHeader> |
| @@ -201,11 +201,11 @@ | ||
| 201 | 201 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 202 | 202 | <WarningLevel>Level3</WarningLevel> |
| 203 | 203 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 204 | 204 | </ClCompile> |
| 205 | 205 | <Link> |
| 206 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 206 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 207 | 207 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 208 | 208 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 209 | 209 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 210 | 210 | <SubSystem>Console</SubSystem> |
| 211 | 211 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -248,11 +248,11 @@ | ||
| 248 | 248 | <ClCompile> |
| 249 | 249 | <Optimization>MaxSpeed</Optimization> |
| 250 | 250 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 251 | 251 | <OmitFramePointers>true</OmitFramePointers> |
| 252 | 252 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 253 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 253 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 254 | 254 | <StringPooling>true</StringPooling> |
| 255 | 255 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 256 | 256 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 257 | 257 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 258 | 258 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -261,11 +261,11 @@ | ||
| 261 | 261 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 262 | 262 | <WarningLevel>Level3</WarningLevel> |
| 263 | 263 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 264 | 264 | </ClCompile> |
| 265 | 265 | <Link> |
| 266 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 266 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 267 | 267 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 268 | 268 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 269 | 269 | <SubSystem>Console</SubSystem> |
| 270 | 270 | <OptimizeReferences>true</OptimizeReferences> |
| 271 | 271 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -277,18 +277,18 @@ | ||
| 277 | 277 | </Link> |
| 278 | 278 | </ItemDefinitionGroup> |
| 279 | 279 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 280 | 280 | <ClCompile> |
| 281 | 281 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 282 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 282 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 283 | 283 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 284 | 284 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 285 | 285 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 286 | 286 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 287 | 287 | </ClCompile> |
| 288 | 288 | <Link> |
| 289 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 289 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 290 | 290 | </Link> |
| 291 | 291 | </ItemDefinitionGroup> |
| 292 | 292 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 293 | 293 | <Midl> |
| 294 | 294 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -360,18 +360,18 @@ | ||
| 360 | 360 | </Link> |
| 361 | 361 | </ItemDefinitionGroup> |
| 362 | 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 363 | 363 | <ClCompile> |
| 364 | 364 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 365 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 365 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 366 | 366 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 367 | 367 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 368 | 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | 369 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 370 | 370 | </ClCompile> |
| 371 | 371 | <Link> |
| 372 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 372 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 373 | 373 | </Link> |
| 374 | 374 | </ItemDefinitionGroup> |
| 375 | 375 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 376 | 376 | <Midl> |
| 377 | 377 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -406,18 +406,10 @@ | ||
| 406 | 406 | <ClCompile Include="..\..\..\adler32.c" /> |
| 407 | 407 | <ClCompile Include="..\..\..\compress.c" /> |
| 408 | 408 | <ClCompile Include="..\..\..\crc32.c" /> |
| 409 | 409 | <ClCompile Include="..\..\..\deflate.c" /> |
| 410 | 410 | <ClCompile Include="..\..\..\infback.c" /> |
| 411 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 412 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 413 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 414 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 415 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 416 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 417 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 418 | - </ClCompile> | |
| 419 | 411 | <ClCompile Include="..\..\..\inffast.c" /> |
| 420 | 412 | <ClCompile Include="..\..\..\inflate.c" /> |
| 421 | 413 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 422 | 414 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 423 | 415 | <ClCompile Include="..\..\..\trees.c" /> |
| 424 | 416 |
| --- compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj | |
| @@ -188,11 +188,11 @@ | |
| 188 | </PropertyGroup> |
| 189 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 190 | <ClCompile> |
| 191 | <Optimization>Disabled</Optimization> |
| 192 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 193 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 194 | <MinimalRebuild>true</MinimalRebuild> |
| 195 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 196 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 197 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 198 | <PrecompiledHeader> |
| @@ -201,11 +201,11 @@ | |
| 201 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 202 | <WarningLevel>Level3</WarningLevel> |
| 203 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 204 | </ClCompile> |
| 205 | <Link> |
| 206 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 207 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 208 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 209 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 210 | <SubSystem>Console</SubSystem> |
| 211 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -248,11 +248,11 @@ | |
| 248 | <ClCompile> |
| 249 | <Optimization>MaxSpeed</Optimization> |
| 250 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 251 | <OmitFramePointers>true</OmitFramePointers> |
| 252 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 253 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | <StringPooling>true</StringPooling> |
| 255 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 256 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 257 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 258 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -261,11 +261,11 @@ | |
| 261 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 262 | <WarningLevel>Level3</WarningLevel> |
| 263 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 264 | </ClCompile> |
| 265 | <Link> |
| 266 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 267 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 268 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 269 | <SubSystem>Console</SubSystem> |
| 270 | <OptimizeReferences>true</OptimizeReferences> |
| 271 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -277,18 +277,18 @@ | |
| 277 | </Link> |
| 278 | </ItemDefinitionGroup> |
| 279 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 280 | <ClCompile> |
| 281 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 282 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 283 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 284 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 285 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 286 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 287 | </ClCompile> |
| 288 | <Link> |
| 289 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 290 | </Link> |
| 291 | </ItemDefinitionGroup> |
| 292 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 293 | <Midl> |
| 294 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -360,18 +360,18 @@ | |
| 360 | </Link> |
| 361 | </ItemDefinitionGroup> |
| 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 363 | <ClCompile> |
| 364 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 365 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 366 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 367 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 370 | </ClCompile> |
| 371 | <Link> |
| 372 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 373 | </Link> |
| 374 | </ItemDefinitionGroup> |
| 375 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 376 | <Midl> |
| 377 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -406,18 +406,10 @@ | |
| 406 | <ClCompile Include="..\..\..\adler32.c" /> |
| 407 | <ClCompile Include="..\..\..\compress.c" /> |
| 408 | <ClCompile Include="..\..\..\crc32.c" /> |
| 409 | <ClCompile Include="..\..\..\deflate.c" /> |
| 410 | <ClCompile Include="..\..\..\infback.c" /> |
| 411 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 412 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 413 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 414 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 415 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 416 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 417 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 418 | </ClCompile> |
| 419 | <ClCompile Include="..\..\..\inffast.c" /> |
| 420 | <ClCompile Include="..\..\..\inflate.c" /> |
| 421 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 422 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 423 | <ClCompile Include="..\..\..\trees.c" /> |
| 424 |
| --- compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc12/testzlib.vcxproj | |
| @@ -188,11 +188,11 @@ | |
| 188 | </PropertyGroup> |
| 189 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 190 | <ClCompile> |
| 191 | <Optimization>Disabled</Optimization> |
| 192 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 193 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 194 | <MinimalRebuild>true</MinimalRebuild> |
| 195 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 196 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 197 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 198 | <PrecompiledHeader> |
| @@ -201,11 +201,11 @@ | |
| 201 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 202 | <WarningLevel>Level3</WarningLevel> |
| 203 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 204 | </ClCompile> |
| 205 | <Link> |
| 206 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 207 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 208 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 209 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 210 | <SubSystem>Console</SubSystem> |
| 211 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -248,11 +248,11 @@ | |
| 248 | <ClCompile> |
| 249 | <Optimization>MaxSpeed</Optimization> |
| 250 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 251 | <OmitFramePointers>true</OmitFramePointers> |
| 252 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 253 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | <StringPooling>true</StringPooling> |
| 255 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 256 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 257 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 258 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -261,11 +261,11 @@ | |
| 261 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 262 | <WarningLevel>Level3</WarningLevel> |
| 263 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 264 | </ClCompile> |
| 265 | <Link> |
| 266 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 267 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 268 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 269 | <SubSystem>Console</SubSystem> |
| 270 | <OptimizeReferences>true</OptimizeReferences> |
| 271 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -277,18 +277,18 @@ | |
| 277 | </Link> |
| 278 | </ItemDefinitionGroup> |
| 279 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 280 | <ClCompile> |
| 281 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 282 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 283 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 284 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 285 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 286 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 287 | </ClCompile> |
| 288 | <Link> |
| 289 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 290 | </Link> |
| 291 | </ItemDefinitionGroup> |
| 292 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 293 | <Midl> |
| 294 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -360,18 +360,18 @@ | |
| 360 | </Link> |
| 361 | </ItemDefinitionGroup> |
| 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 363 | <ClCompile> |
| 364 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 365 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 366 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 367 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 370 | </ClCompile> |
| 371 | <Link> |
| 372 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 373 | </Link> |
| 374 | </ItemDefinitionGroup> |
| 375 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 376 | <Midl> |
| 377 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -406,18 +406,10 @@ | |
| 406 | <ClCompile Include="..\..\..\adler32.c" /> |
| 407 | <ClCompile Include="..\..\..\compress.c" /> |
| 408 | <ClCompile Include="..\..\..\crc32.c" /> |
| 409 | <ClCompile Include="..\..\..\deflate.c" /> |
| 410 | <ClCompile Include="..\..\..\infback.c" /> |
| 411 | <ClCompile Include="..\..\..\inffast.c" /> |
| 412 | <ClCompile Include="..\..\..\inflate.c" /> |
| 413 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 414 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 415 | <ClCompile Include="..\..\..\trees.c" /> |
| 416 |
| --- compat/zlib/contrib/vstudio/vc12/zlib.rc | ||
| +++ compat/zlib/contrib/vstudio/vc12/zlib.rc | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | #include <windows.h> |
| 2 | 2 | |
| 3 | 3 | #define IDR_VERSION1 1 |
| 4 | 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | - FILEVERSION 1, 2, 12, 0 | |
| 6 | - PRODUCTVERSION 1, 2, 12, 0 | |
| 5 | + FILEVERSION 1, 2, 13, 0 | |
| 6 | + PRODUCTVERSION 1, 2, 13, 0 | |
| 7 | 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | 8 | FILEFLAGS 0 |
| 9 | 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | 10 | FILETYPE VFT_DLL |
| 11 | 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | ||
| 15 | 15 | BLOCK "040904E4" |
| 16 | 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | 17 | |
| 18 | 18 | BEGIN |
| 19 | 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | - VALUE "FileVersion", "1.2.12\0" | |
| 20 | + VALUE "FileVersion", "1.2.13\0" | |
| 21 | 21 | VALUE "InternalName", "zlib\0" |
| 22 | 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 | 26 |
| --- compat/zlib/contrib/vstudio/vc12/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc12/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 12, 0 |
| 6 | PRODUCTVERSION 1, 2, 12, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.12\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc12/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc12/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 13, 0 |
| 6 | PRODUCTVERSION 1, 2, 13, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.13\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj | ||
| @@ -168,11 +168,11 @@ | ||
| 168 | 168 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 169 | 169 | </PropertyGroup> |
| 170 | 170 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 171 | 171 | <ClCompile> |
| 172 | 172 | <Optimization>Disabled</Optimization> |
| 173 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 173 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 174 | 174 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 175 | 175 | <ExceptionHandling> |
| 176 | 176 | </ExceptionHandling> |
| 177 | 177 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 178 | 178 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -194,12 +194,12 @@ | ||
| 194 | 194 | </Lib> |
| 195 | 195 | </ItemDefinitionGroup> |
| 196 | 196 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 197 | 197 | <ClCompile> |
| 198 | 198 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 199 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 200 | - <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 199 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 200 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 201 | 201 | <StringPooling>true</StringPooling> |
| 202 | 202 | <ExceptionHandling> |
| 203 | 203 | </ExceptionHandling> |
| 204 | 204 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 205 | 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -214,19 +214,19 @@ | ||
| 214 | 214 | <ResourceCompile> |
| 215 | 215 | <Culture>0x040c</Culture> |
| 216 | 216 | </ResourceCompile> |
| 217 | 217 | <Lib> |
| 218 | 218 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 219 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 219 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 220 | 220 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 221 | 221 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 222 | 222 | </Lib> |
| 223 | 223 | </ItemDefinitionGroup> |
| 224 | 224 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 225 | 225 | <ClCompile> |
| 226 | 226 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 227 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 227 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 228 | 228 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 229 | 229 | <StringPooling>true</StringPooling> |
| 230 | 230 | <ExceptionHandling> |
| 231 | 231 | </ExceptionHandling> |
| 232 | 232 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -252,11 +252,11 @@ | ||
| 252 | 252 | <Midl> |
| 253 | 253 | <TargetEnvironment>X64</TargetEnvironment> |
| 254 | 254 | </Midl> |
| 255 | 255 | <ClCompile> |
| 256 | 256 | <Optimization>Disabled</Optimization> |
| 257 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 257 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 258 | 258 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | 259 | <ExceptionHandling> |
| 260 | 260 | </ExceptionHandling> |
| 261 | 261 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 262 | 262 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -281,11 +281,11 @@ | ||
| 281 | 281 | <Midl> |
| 282 | 282 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 283 | 283 | </Midl> |
| 284 | 284 | <ClCompile> |
| 285 | 285 | <Optimization>Disabled</Optimization> |
| 286 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 286 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 287 | 287 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 288 | 288 | <ExceptionHandling> |
| 289 | 289 | </ExceptionHandling> |
| 290 | 290 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 291 | 291 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,12 +310,12 @@ | ||
| 310 | 310 | <Midl> |
| 311 | 311 | <TargetEnvironment>X64</TargetEnvironment> |
| 312 | 312 | </Midl> |
| 313 | 313 | <ClCompile> |
| 314 | 314 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 315 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 316 | - <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 315 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 316 | + <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 317 | 317 | <StringPooling>true</StringPooling> |
| 318 | 318 | <ExceptionHandling> |
| 319 | 319 | </ExceptionHandling> |
| 320 | 320 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 321 | 321 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -330,11 +330,11 @@ | ||
| 330 | 330 | <ResourceCompile> |
| 331 | 331 | <Culture>0x040c</Culture> |
| 332 | 332 | </ResourceCompile> |
| 333 | 333 | <Lib> |
| 334 | 334 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 335 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 335 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 336 | 336 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 337 | 337 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 338 | 338 | </Lib> |
| 339 | 339 | </ItemDefinitionGroup> |
| 340 | 340 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -341,11 +341,11 @@ | ||
| 341 | 341 | <Midl> |
| 342 | 342 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 343 | 343 | </Midl> |
| 344 | 344 | <ClCompile> |
| 345 | 345 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 346 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 346 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 347 | 347 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | 348 | <StringPooling>true</StringPooling> |
| 349 | 349 | <ExceptionHandling> |
| 350 | 350 | </ExceptionHandling> |
| 351 | 351 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -371,11 +371,11 @@ | ||
| 371 | 371 | <Midl> |
| 372 | 372 | <TargetEnvironment>X64</TargetEnvironment> |
| 373 | 373 | </Midl> |
| 374 | 374 | <ClCompile> |
| 375 | 375 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 376 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 376 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 377 | 377 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 378 | 378 | <StringPooling>true</StringPooling> |
| 379 | 379 | <ExceptionHandling> |
| 380 | 380 | </ExceptionHandling> |
| 381 | 381 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -401,11 +401,11 @@ | ||
| 401 | 401 | <Midl> |
| 402 | 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | 403 | </Midl> |
| 404 | 404 | <ClCompile> |
| 405 | 405 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 406 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 406 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 407 | 407 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 408 | 408 | <StringPooling>true</StringPooling> |
| 409 | 409 | <ExceptionHandling> |
| 410 | 410 | </ExceptionHandling> |
| 411 | 411 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -435,18 +435,10 @@ | ||
| 435 | 435 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 436 | 436 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 437 | 437 | <ClCompile Include="..\..\..\gzread.c" /> |
| 438 | 438 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 439 | 439 | <ClCompile Include="..\..\..\infback.c" /> |
| 440 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 441 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 442 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 443 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 444 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 445 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 446 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 447 | - </ClCompile> | |
| 448 | 440 | <ClCompile Include="..\..\..\inffast.c" /> |
| 449 | 441 | <ClCompile Include="..\..\..\inflate.c" /> |
| 450 | 442 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 451 | 443 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 452 | 444 | <ClCompile Include="..\..\..\trees.c" /> |
| 453 | 445 |
| --- compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj | |
| @@ -168,11 +168,11 @@ | |
| 168 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 169 | </PropertyGroup> |
| 170 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 171 | <ClCompile> |
| 172 | <Optimization>Disabled</Optimization> |
| 173 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 174 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 175 | <ExceptionHandling> |
| 176 | </ExceptionHandling> |
| 177 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 178 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -194,12 +194,12 @@ | |
| 194 | </Lib> |
| 195 | </ItemDefinitionGroup> |
| 196 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 197 | <ClCompile> |
| 198 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 199 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 200 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 201 | <StringPooling>true</StringPooling> |
| 202 | <ExceptionHandling> |
| 203 | </ExceptionHandling> |
| 204 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -214,19 +214,19 @@ | |
| 214 | <ResourceCompile> |
| 215 | <Culture>0x040c</Culture> |
| 216 | </ResourceCompile> |
| 217 | <Lib> |
| 218 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 219 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 220 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 221 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 222 | </Lib> |
| 223 | </ItemDefinitionGroup> |
| 224 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 225 | <ClCompile> |
| 226 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 227 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 228 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 229 | <StringPooling>true</StringPooling> |
| 230 | <ExceptionHandling> |
| 231 | </ExceptionHandling> |
| 232 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -252,11 +252,11 @@ | |
| 252 | <Midl> |
| 253 | <TargetEnvironment>X64</TargetEnvironment> |
| 254 | </Midl> |
| 255 | <ClCompile> |
| 256 | <Optimization>Disabled</Optimization> |
| 257 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 258 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | <ExceptionHandling> |
| 260 | </ExceptionHandling> |
| 261 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 262 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -281,11 +281,11 @@ | |
| 281 | <Midl> |
| 282 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 283 | </Midl> |
| 284 | <ClCompile> |
| 285 | <Optimization>Disabled</Optimization> |
| 286 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 287 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 288 | <ExceptionHandling> |
| 289 | </ExceptionHandling> |
| 290 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 291 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,12 +310,12 @@ | |
| 310 | <Midl> |
| 311 | <TargetEnvironment>X64</TargetEnvironment> |
| 312 | </Midl> |
| 313 | <ClCompile> |
| 314 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 315 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 316 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 317 | <StringPooling>true</StringPooling> |
| 318 | <ExceptionHandling> |
| 319 | </ExceptionHandling> |
| 320 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 321 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -330,11 +330,11 @@ | |
| 330 | <ResourceCompile> |
| 331 | <Culture>0x040c</Culture> |
| 332 | </ResourceCompile> |
| 333 | <Lib> |
| 334 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 335 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 336 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 337 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 338 | </Lib> |
| 339 | </ItemDefinitionGroup> |
| 340 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -341,11 +341,11 @@ | |
| 341 | <Midl> |
| 342 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 343 | </Midl> |
| 344 | <ClCompile> |
| 345 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 346 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 347 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | <StringPooling>true</StringPooling> |
| 349 | <ExceptionHandling> |
| 350 | </ExceptionHandling> |
| 351 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -371,11 +371,11 @@ | |
| 371 | <Midl> |
| 372 | <TargetEnvironment>X64</TargetEnvironment> |
| 373 | </Midl> |
| 374 | <ClCompile> |
| 375 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 376 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 377 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 378 | <StringPooling>true</StringPooling> |
| 379 | <ExceptionHandling> |
| 380 | </ExceptionHandling> |
| 381 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -401,11 +401,11 @@ | |
| 401 | <Midl> |
| 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | </Midl> |
| 404 | <ClCompile> |
| 405 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 406 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 407 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 408 | <StringPooling>true</StringPooling> |
| 409 | <ExceptionHandling> |
| 410 | </ExceptionHandling> |
| 411 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -435,18 +435,10 @@ | |
| 435 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 436 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 437 | <ClCompile Include="..\..\..\gzread.c" /> |
| 438 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 439 | <ClCompile Include="..\..\..\infback.c" /> |
| 440 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 441 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 442 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 443 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 444 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 445 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 446 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 447 | </ClCompile> |
| 448 | <ClCompile Include="..\..\..\inffast.c" /> |
| 449 | <ClCompile Include="..\..\..\inflate.c" /> |
| 450 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 451 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 452 | <ClCompile Include="..\..\..\trees.c" /> |
| 453 |
| --- compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc12/zlibstat.vcxproj | |
| @@ -168,11 +168,11 @@ | |
| 168 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 169 | </PropertyGroup> |
| 170 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 171 | <ClCompile> |
| 172 | <Optimization>Disabled</Optimization> |
| 173 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 174 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 175 | <ExceptionHandling> |
| 176 | </ExceptionHandling> |
| 177 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 178 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -194,12 +194,12 @@ | |
| 194 | </Lib> |
| 195 | </ItemDefinitionGroup> |
| 196 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 197 | <ClCompile> |
| 198 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 199 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 200 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 201 | <StringPooling>true</StringPooling> |
| 202 | <ExceptionHandling> |
| 203 | </ExceptionHandling> |
| 204 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -214,19 +214,19 @@ | |
| 214 | <ResourceCompile> |
| 215 | <Culture>0x040c</Culture> |
| 216 | </ResourceCompile> |
| 217 | <Lib> |
| 218 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 219 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 220 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 221 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 222 | </Lib> |
| 223 | </ItemDefinitionGroup> |
| 224 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 225 | <ClCompile> |
| 226 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 227 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 228 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 229 | <StringPooling>true</StringPooling> |
| 230 | <ExceptionHandling> |
| 231 | </ExceptionHandling> |
| 232 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -252,11 +252,11 @@ | |
| 252 | <Midl> |
| 253 | <TargetEnvironment>X64</TargetEnvironment> |
| 254 | </Midl> |
| 255 | <ClCompile> |
| 256 | <Optimization>Disabled</Optimization> |
| 257 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 258 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | <ExceptionHandling> |
| 260 | </ExceptionHandling> |
| 261 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 262 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -281,11 +281,11 @@ | |
| 281 | <Midl> |
| 282 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 283 | </Midl> |
| 284 | <ClCompile> |
| 285 | <Optimization>Disabled</Optimization> |
| 286 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 287 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 288 | <ExceptionHandling> |
| 289 | </ExceptionHandling> |
| 290 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 291 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,12 +310,12 @@ | |
| 310 | <Midl> |
| 311 | <TargetEnvironment>X64</TargetEnvironment> |
| 312 | </Midl> |
| 313 | <ClCompile> |
| 314 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 315 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 316 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 317 | <StringPooling>true</StringPooling> |
| 318 | <ExceptionHandling> |
| 319 | </ExceptionHandling> |
| 320 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 321 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -330,11 +330,11 @@ | |
| 330 | <ResourceCompile> |
| 331 | <Culture>0x040c</Culture> |
| 332 | </ResourceCompile> |
| 333 | <Lib> |
| 334 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 335 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 336 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 337 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 338 | </Lib> |
| 339 | </ItemDefinitionGroup> |
| 340 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -341,11 +341,11 @@ | |
| 341 | <Midl> |
| 342 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 343 | </Midl> |
| 344 | <ClCompile> |
| 345 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 346 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 347 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | <StringPooling>true</StringPooling> |
| 349 | <ExceptionHandling> |
| 350 | </ExceptionHandling> |
| 351 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -371,11 +371,11 @@ | |
| 371 | <Midl> |
| 372 | <TargetEnvironment>X64</TargetEnvironment> |
| 373 | </Midl> |
| 374 | <ClCompile> |
| 375 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 376 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 377 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 378 | <StringPooling>true</StringPooling> |
| 379 | <ExceptionHandling> |
| 380 | </ExceptionHandling> |
| 381 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -401,11 +401,11 @@ | |
| 401 | <Midl> |
| 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | </Midl> |
| 404 | <ClCompile> |
| 405 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 406 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 407 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 408 | <StringPooling>true</StringPooling> |
| 409 | <ExceptionHandling> |
| 410 | </ExceptionHandling> |
| 411 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -435,18 +435,10 @@ | |
| 435 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 436 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 437 | <ClCompile Include="..\..\..\gzread.c" /> |
| 438 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 439 | <ClCompile Include="..\..\..\infback.c" /> |
| 440 | <ClCompile Include="..\..\..\inffast.c" /> |
| 441 | <ClCompile Include="..\..\..\inflate.c" /> |
| 442 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 443 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 444 | <ClCompile Include="..\..\..\trees.c" /> |
| 445 |
| --- compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj | ||
| @@ -205,12 +205,12 @@ | ||
| 205 | 205 | <TargetEnvironment>Win32</TargetEnvironment> |
| 206 | 206 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 207 | 207 | </Midl> |
| 208 | 208 | <ClCompile> |
| 209 | 209 | <Optimization>Disabled</Optimization> |
| 210 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 211 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 210 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 211 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 212 | 212 | <ExceptionHandling> |
| 213 | 213 | </ExceptionHandling> |
| 214 | 214 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 215 | 215 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 216 | 216 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -227,11 +227,11 @@ | ||
| 227 | 227 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 228 | 228 | <Culture>0x040c</Culture> |
| 229 | 229 | </ResourceCompile> |
| 230 | 230 | <Link> |
| 231 | 231 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 232 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 232 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 233 | 233 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 234 | 234 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 235 | 235 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 236 | 236 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 237 | 237 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -241,14 +241,10 @@ | ||
| 241 | 241 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 242 | 242 | <DataExecutionPrevention> |
| 243 | 243 | </DataExecutionPrevention> |
| 244 | 244 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 245 | 245 | </Link> |
| 246 | - <PreBuildEvent> | |
| 247 | - <Command>cd ..\..\masmx86 | |
| 248 | -bld_ml32.bat</Command> | |
| 249 | - </PreBuildEvent> | |
| 250 | 246 | </ItemDefinitionGroup> |
| 251 | 247 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 252 | 248 | <Midl> |
| 253 | 249 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | 250 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -256,11 +252,11 @@ | ||
| 256 | 252 | <TargetEnvironment>Win32</TargetEnvironment> |
| 257 | 253 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 258 | 254 | </Midl> |
| 259 | 255 | <ClCompile> |
| 260 | 256 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 261 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 257 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 262 | 258 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 263 | 259 | <StringPooling>true</StringPooling> |
| 264 | 260 | <ExceptionHandling> |
| 265 | 261 | </ExceptionHandling> |
| 266 | 262 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -304,12 +300,12 @@ | ||
| 304 | 300 | <TargetEnvironment>Win32</TargetEnvironment> |
| 305 | 301 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 306 | 302 | </Midl> |
| 307 | 303 | <ClCompile> |
| 308 | 304 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 309 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 310 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 305 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 306 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 311 | 307 | <StringPooling>true</StringPooling> |
| 312 | 308 | <ExceptionHandling> |
| 313 | 309 | </ExceptionHandling> |
| 314 | 310 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 315 | 311 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -328,11 +324,11 @@ | ||
| 328 | 324 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 329 | 325 | <Culture>0x040c</Culture> |
| 330 | 326 | </ResourceCompile> |
| 331 | 327 | <Link> |
| 332 | 328 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 333 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 329 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 334 | 330 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 335 | 331 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 336 | 332 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 337 | 333 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 338 | 334 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -343,14 +339,10 @@ | ||
| 343 | 339 | <DataExecutionPrevention> |
| 344 | 340 | </DataExecutionPrevention> |
| 345 | 341 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 346 | 342 | <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> |
| 347 | 343 | </Link> |
| 348 | - <PreBuildEvent> | |
| 349 | - <Command>cd ..\..\masmx86 | |
| 350 | -bld_ml32.bat</Command> | |
| 351 | - </PreBuildEvent> | |
| 352 | 344 | </ItemDefinitionGroup> |
| 353 | 345 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 354 | 346 | <Midl> |
| 355 | 347 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 356 | 348 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -358,12 +350,12 @@ | ||
| 358 | 350 | <TargetEnvironment>X64</TargetEnvironment> |
| 359 | 351 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 360 | 352 | </Midl> |
| 361 | 353 | <ClCompile> |
| 362 | 354 | <Optimization>Disabled</Optimization> |
| 363 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 364 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 355 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 356 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 365 | 357 | <ExceptionHandling> |
| 366 | 358 | </ExceptionHandling> |
| 367 | 359 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 368 | 360 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | 361 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -379,11 +371,11 @@ | ||
| 379 | 371 | <ResourceCompile> |
| 380 | 372 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 381 | 373 | <Culture>0x040c</Culture> |
| 382 | 374 | </ResourceCompile> |
| 383 | 375 | <Link> |
| 384 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 376 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 385 | 377 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 386 | 378 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 387 | 379 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 388 | 380 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 389 | 381 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -391,14 +383,10 @@ | ||
| 391 | 383 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 392 | 384 | <SubSystem>Windows</SubSystem> |
| 393 | 385 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 394 | 386 | <TargetMachine>MachineX64</TargetMachine> |
| 395 | 387 | </Link> |
| 396 | - <PreBuildEvent> | |
| 397 | - <Command>cd ..\..\contrib\masmx64 | |
| 398 | -bld_ml64.bat</Command> | |
| 399 | - </PreBuildEvent> | |
| 400 | 388 | </ItemDefinitionGroup> |
| 401 | 389 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 402 | 390 | <Midl> |
| 403 | 391 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 404 | 392 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -406,11 +394,11 @@ | ||
| 406 | 394 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 407 | 395 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 408 | 396 | </Midl> |
| 409 | 397 | <ClCompile> |
| 410 | 398 | <Optimization>Disabled</Optimization> |
| 411 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 399 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 412 | 400 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 413 | 401 | <ExceptionHandling> |
| 414 | 402 | </ExceptionHandling> |
| 415 | 403 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 416 | 404 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -449,11 +437,11 @@ | ||
| 449 | 437 | <TargetEnvironment>X64</TargetEnvironment> |
| 450 | 438 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 451 | 439 | </Midl> |
| 452 | 440 | <ClCompile> |
| 453 | 441 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 454 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 442 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 455 | 443 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 456 | 444 | <StringPooling>true</StringPooling> |
| 457 | 445 | <ExceptionHandling> |
| 458 | 446 | </ExceptionHandling> |
| 459 | 447 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -494,11 +482,11 @@ | ||
| 494 | 482 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 495 | 483 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 496 | 484 | </Midl> |
| 497 | 485 | <ClCompile> |
| 498 | 486 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 499 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 487 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 500 | 488 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 501 | 489 | <StringPooling>true</StringPooling> |
| 502 | 490 | <ExceptionHandling> |
| 503 | 491 | </ExceptionHandling> |
| 504 | 492 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -539,12 +527,12 @@ | ||
| 539 | 527 | <TargetEnvironment>X64</TargetEnvironment> |
| 540 | 528 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 541 | 529 | </Midl> |
| 542 | 530 | <ClCompile> |
| 543 | 531 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 544 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 545 | - <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 532 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 533 | + <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 546 | 534 | <StringPooling>true</StringPooling> |
| 547 | 535 | <ExceptionHandling> |
| 548 | 536 | </ExceptionHandling> |
| 549 | 537 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 550 | 538 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -562,11 +550,11 @@ | ||
| 562 | 550 | <ResourceCompile> |
| 563 | 551 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 564 | 552 | <Culture>0x040c</Culture> |
| 565 | 553 | </ResourceCompile> |
| 566 | 554 | <Link> |
| 567 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 555 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 568 | 556 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 569 | 557 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 570 | 558 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 571 | 559 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 572 | 560 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -574,14 +562,10 @@ | ||
| 574 | 562 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 575 | 563 | <SubSystem>Windows</SubSystem> |
| 576 | 564 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 577 | 565 | <TargetMachine>MachineX64</TargetMachine> |
| 578 | 566 | </Link> |
| 579 | - <PreBuildEvent> | |
| 580 | - <Command>cd ..\..\masmx64 | |
| 581 | -bld_ml64.bat</Command> | |
| 582 | - </PreBuildEvent> | |
| 583 | 567 | </ItemDefinitionGroup> |
| 584 | 568 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 585 | 569 | <Midl> |
| 586 | 570 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 587 | 571 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -589,11 +573,11 @@ | ||
| 589 | 573 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 590 | 574 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 591 | 575 | </Midl> |
| 592 | 576 | <ClCompile> |
| 593 | 577 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 594 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 578 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 595 | 579 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 596 | 580 | <StringPooling>true</StringPooling> |
| 597 | 581 | <ExceptionHandling> |
| 598 | 582 | </ExceptionHandling> |
| 599 | 583 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -634,18 +618,10 @@ | ||
| 634 | 618 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 635 | 619 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 636 | 620 | <ClCompile Include="..\..\..\gzread.c" /> |
| 637 | 621 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 638 | 622 | <ClCompile Include="..\..\..\infback.c" /> |
| 639 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 640 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 641 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 642 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 643 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 644 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 645 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 646 | - </ClCompile> | |
| 647 | 623 | <ClCompile Include="..\..\..\inffast.c" /> |
| 648 | 624 | <ClCompile Include="..\..\..\inflate.c" /> |
| 649 | 625 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 650 | 626 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 651 | 627 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 652 | 628 |
| --- compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj | |
| @@ -205,12 +205,12 @@ | |
| 205 | <TargetEnvironment>Win32</TargetEnvironment> |
| 206 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 207 | </Midl> |
| 208 | <ClCompile> |
| 209 | <Optimization>Disabled</Optimization> |
| 210 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 211 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 212 | <ExceptionHandling> |
| 213 | </ExceptionHandling> |
| 214 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 215 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 216 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -227,11 +227,11 @@ | |
| 227 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 228 | <Culture>0x040c</Culture> |
| 229 | </ResourceCompile> |
| 230 | <Link> |
| 231 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 232 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 233 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 234 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 235 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 236 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 237 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -241,14 +241,10 @@ | |
| 241 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 242 | <DataExecutionPrevention> |
| 243 | </DataExecutionPrevention> |
| 244 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 245 | </Link> |
| 246 | <PreBuildEvent> |
| 247 | <Command>cd ..\..\masmx86 |
| 248 | bld_ml32.bat</Command> |
| 249 | </PreBuildEvent> |
| 250 | </ItemDefinitionGroup> |
| 251 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 252 | <Midl> |
| 253 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -256,11 +252,11 @@ | |
| 256 | <TargetEnvironment>Win32</TargetEnvironment> |
| 257 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 258 | </Midl> |
| 259 | <ClCompile> |
| 260 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 261 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 262 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 263 | <StringPooling>true</StringPooling> |
| 264 | <ExceptionHandling> |
| 265 | </ExceptionHandling> |
| 266 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -304,12 +300,12 @@ | |
| 304 | <TargetEnvironment>Win32</TargetEnvironment> |
| 305 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 306 | </Midl> |
| 307 | <ClCompile> |
| 308 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 309 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 310 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 311 | <StringPooling>true</StringPooling> |
| 312 | <ExceptionHandling> |
| 313 | </ExceptionHandling> |
| 314 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 315 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -328,11 +324,11 @@ | |
| 328 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 329 | <Culture>0x040c</Culture> |
| 330 | </ResourceCompile> |
| 331 | <Link> |
| 332 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 333 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 334 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 335 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 336 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 337 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 338 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -343,14 +339,10 @@ | |
| 343 | <DataExecutionPrevention> |
| 344 | </DataExecutionPrevention> |
| 345 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 346 | <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> |
| 347 | </Link> |
| 348 | <PreBuildEvent> |
| 349 | <Command>cd ..\..\masmx86 |
| 350 | bld_ml32.bat</Command> |
| 351 | </PreBuildEvent> |
| 352 | </ItemDefinitionGroup> |
| 353 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 354 | <Midl> |
| 355 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 356 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -358,12 +350,12 @@ | |
| 358 | <TargetEnvironment>X64</TargetEnvironment> |
| 359 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 360 | </Midl> |
| 361 | <ClCompile> |
| 362 | <Optimization>Disabled</Optimization> |
| 363 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 364 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 365 | <ExceptionHandling> |
| 366 | </ExceptionHandling> |
| 367 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -379,11 +371,11 @@ | |
| 379 | <ResourceCompile> |
| 380 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 381 | <Culture>0x040c</Culture> |
| 382 | </ResourceCompile> |
| 383 | <Link> |
| 384 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 385 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 386 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 387 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 388 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 389 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -391,14 +383,10 @@ | |
| 391 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 392 | <SubSystem>Windows</SubSystem> |
| 393 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 394 | <TargetMachine>MachineX64</TargetMachine> |
| 395 | </Link> |
| 396 | <PreBuildEvent> |
| 397 | <Command>cd ..\..\contrib\masmx64 |
| 398 | bld_ml64.bat</Command> |
| 399 | </PreBuildEvent> |
| 400 | </ItemDefinitionGroup> |
| 401 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 402 | <Midl> |
| 403 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 404 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -406,11 +394,11 @@ | |
| 406 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 407 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 408 | </Midl> |
| 409 | <ClCompile> |
| 410 | <Optimization>Disabled</Optimization> |
| 411 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 412 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 413 | <ExceptionHandling> |
| 414 | </ExceptionHandling> |
| 415 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 416 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -449,11 +437,11 @@ | |
| 449 | <TargetEnvironment>X64</TargetEnvironment> |
| 450 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 451 | </Midl> |
| 452 | <ClCompile> |
| 453 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 454 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 455 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 456 | <StringPooling>true</StringPooling> |
| 457 | <ExceptionHandling> |
| 458 | </ExceptionHandling> |
| 459 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -494,11 +482,11 @@ | |
| 494 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 495 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 496 | </Midl> |
| 497 | <ClCompile> |
| 498 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 499 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 500 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 501 | <StringPooling>true</StringPooling> |
| 502 | <ExceptionHandling> |
| 503 | </ExceptionHandling> |
| 504 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -539,12 +527,12 @@ | |
| 539 | <TargetEnvironment>X64</TargetEnvironment> |
| 540 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 541 | </Midl> |
| 542 | <ClCompile> |
| 543 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 544 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 545 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 546 | <StringPooling>true</StringPooling> |
| 547 | <ExceptionHandling> |
| 548 | </ExceptionHandling> |
| 549 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 550 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -562,11 +550,11 @@ | |
| 562 | <ResourceCompile> |
| 563 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 564 | <Culture>0x040c</Culture> |
| 565 | </ResourceCompile> |
| 566 | <Link> |
| 567 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 568 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 569 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 570 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 571 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 572 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -574,14 +562,10 @@ | |
| 574 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 575 | <SubSystem>Windows</SubSystem> |
| 576 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 577 | <TargetMachine>MachineX64</TargetMachine> |
| 578 | </Link> |
| 579 | <PreBuildEvent> |
| 580 | <Command>cd ..\..\masmx64 |
| 581 | bld_ml64.bat</Command> |
| 582 | </PreBuildEvent> |
| 583 | </ItemDefinitionGroup> |
| 584 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 585 | <Midl> |
| 586 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 587 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -589,11 +573,11 @@ | |
| 589 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 590 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 591 | </Midl> |
| 592 | <ClCompile> |
| 593 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 594 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 595 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 596 | <StringPooling>true</StringPooling> |
| 597 | <ExceptionHandling> |
| 598 | </ExceptionHandling> |
| 599 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -634,18 +618,10 @@ | |
| 634 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 635 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 636 | <ClCompile Include="..\..\..\gzread.c" /> |
| 637 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 638 | <ClCompile Include="..\..\..\infback.c" /> |
| 639 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 640 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 641 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 642 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 643 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 644 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 645 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 646 | </ClCompile> |
| 647 | <ClCompile Include="..\..\..\inffast.c" /> |
| 648 | <ClCompile Include="..\..\..\inflate.c" /> |
| 649 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 650 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 651 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 652 |
| --- compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc12/zlibvc.vcxproj | |
| @@ -205,12 +205,12 @@ | |
| 205 | <TargetEnvironment>Win32</TargetEnvironment> |
| 206 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 207 | </Midl> |
| 208 | <ClCompile> |
| 209 | <Optimization>Disabled</Optimization> |
| 210 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 211 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 212 | <ExceptionHandling> |
| 213 | </ExceptionHandling> |
| 214 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 215 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 216 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -227,11 +227,11 @@ | |
| 227 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 228 | <Culture>0x040c</Culture> |
| 229 | </ResourceCompile> |
| 230 | <Link> |
| 231 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 232 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 233 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 234 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 235 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 236 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 237 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -241,14 +241,10 @@ | |
| 241 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 242 | <DataExecutionPrevention> |
| 243 | </DataExecutionPrevention> |
| 244 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 245 | </Link> |
| 246 | </ItemDefinitionGroup> |
| 247 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 248 | <Midl> |
| 249 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 250 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -256,11 +252,11 @@ | |
| 252 | <TargetEnvironment>Win32</TargetEnvironment> |
| 253 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 254 | </Midl> |
| 255 | <ClCompile> |
| 256 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 257 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 258 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | <StringPooling>true</StringPooling> |
| 260 | <ExceptionHandling> |
| 261 | </ExceptionHandling> |
| 262 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -304,12 +300,12 @@ | |
| 300 | <TargetEnvironment>Win32</TargetEnvironment> |
| 301 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 302 | </Midl> |
| 303 | <ClCompile> |
| 304 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 305 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 306 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 307 | <StringPooling>true</StringPooling> |
| 308 | <ExceptionHandling> |
| 309 | </ExceptionHandling> |
| 310 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 311 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -328,11 +324,11 @@ | |
| 324 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 325 | <Culture>0x040c</Culture> |
| 326 | </ResourceCompile> |
| 327 | <Link> |
| 328 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 329 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 330 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 331 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 332 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 333 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 334 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -343,14 +339,10 @@ | |
| 339 | <DataExecutionPrevention> |
| 340 | </DataExecutionPrevention> |
| 341 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 342 | <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> |
| 343 | </Link> |
| 344 | </ItemDefinitionGroup> |
| 345 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 346 | <Midl> |
| 347 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -358,12 +350,12 @@ | |
| 350 | <TargetEnvironment>X64</TargetEnvironment> |
| 351 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 352 | </Midl> |
| 353 | <ClCompile> |
| 354 | <Optimization>Disabled</Optimization> |
| 355 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 356 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 357 | <ExceptionHandling> |
| 358 | </ExceptionHandling> |
| 359 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 360 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 361 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -379,11 +371,11 @@ | |
| 371 | <ResourceCompile> |
| 372 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 373 | <Culture>0x040c</Culture> |
| 374 | </ResourceCompile> |
| 375 | <Link> |
| 376 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 377 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 378 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 379 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 380 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 381 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -391,14 +383,10 @@ | |
| 383 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 384 | <SubSystem>Windows</SubSystem> |
| 385 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 386 | <TargetMachine>MachineX64</TargetMachine> |
| 387 | </Link> |
| 388 | </ItemDefinitionGroup> |
| 389 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 390 | <Midl> |
| 391 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 392 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -406,11 +394,11 @@ | |
| 394 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 395 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 396 | </Midl> |
| 397 | <ClCompile> |
| 398 | <Optimization>Disabled</Optimization> |
| 399 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 400 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 401 | <ExceptionHandling> |
| 402 | </ExceptionHandling> |
| 403 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 404 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -449,11 +437,11 @@ | |
| 437 | <TargetEnvironment>X64</TargetEnvironment> |
| 438 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 439 | </Midl> |
| 440 | <ClCompile> |
| 441 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 442 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 443 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 444 | <StringPooling>true</StringPooling> |
| 445 | <ExceptionHandling> |
| 446 | </ExceptionHandling> |
| 447 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -494,11 +482,11 @@ | |
| 482 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 483 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 484 | </Midl> |
| 485 | <ClCompile> |
| 486 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 487 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 488 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 489 | <StringPooling>true</StringPooling> |
| 490 | <ExceptionHandling> |
| 491 | </ExceptionHandling> |
| 492 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -539,12 +527,12 @@ | |
| 527 | <TargetEnvironment>X64</TargetEnvironment> |
| 528 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 529 | </Midl> |
| 530 | <ClCompile> |
| 531 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 532 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 533 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 534 | <StringPooling>true</StringPooling> |
| 535 | <ExceptionHandling> |
| 536 | </ExceptionHandling> |
| 537 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 538 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -562,11 +550,11 @@ | |
| 550 | <ResourceCompile> |
| 551 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 552 | <Culture>0x040c</Culture> |
| 553 | </ResourceCompile> |
| 554 | <Link> |
| 555 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 556 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 557 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 558 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 559 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 560 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -574,14 +562,10 @@ | |
| 562 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 563 | <SubSystem>Windows</SubSystem> |
| 564 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 565 | <TargetMachine>MachineX64</TargetMachine> |
| 566 | </Link> |
| 567 | </ItemDefinitionGroup> |
| 568 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 569 | <Midl> |
| 570 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 571 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -589,11 +573,11 @@ | |
| 573 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 574 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 575 | </Midl> |
| 576 | <ClCompile> |
| 577 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 578 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 579 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 580 | <StringPooling>true</StringPooling> |
| 581 | <ExceptionHandling> |
| 582 | </ExceptionHandling> |
| 583 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -634,18 +618,10 @@ | |
| 618 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 619 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 620 | <ClCompile Include="..\..\..\gzread.c" /> |
| 621 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 622 | <ClCompile Include="..\..\..\infback.c" /> |
| 623 | <ClCompile Include="..\..\..\inffast.c" /> |
| 624 | <ClCompile Include="..\..\..\inflate.c" /> |
| 625 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 626 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 627 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 628 |
| --- compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj | ||
| @@ -188,11 +188,11 @@ | ||
| 188 | 188 | </PropertyGroup> |
| 189 | 189 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 190 | 190 | <ClCompile> |
| 191 | 191 | <Optimization>Disabled</Optimization> |
| 192 | 192 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 193 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 193 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 194 | 194 | <MinimalRebuild>true</MinimalRebuild> |
| 195 | 195 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 196 | 196 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 197 | 197 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 198 | 198 | <PrecompiledHeader> |
| @@ -201,11 +201,11 @@ | ||
| 201 | 201 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 202 | 202 | <WarningLevel>Level3</WarningLevel> |
| 203 | 203 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 204 | 204 | </ClCompile> |
| 205 | 205 | <Link> |
| 206 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 206 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 207 | 207 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 208 | 208 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 209 | 209 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 210 | 210 | <SubSystem>Console</SubSystem> |
| 211 | 211 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -248,11 +248,11 @@ | ||
| 248 | 248 | <ClCompile> |
| 249 | 249 | <Optimization>MaxSpeed</Optimization> |
| 250 | 250 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 251 | 251 | <OmitFramePointers>true</OmitFramePointers> |
| 252 | 252 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 253 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 253 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 254 | 254 | <StringPooling>true</StringPooling> |
| 255 | 255 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 256 | 256 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 257 | 257 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 258 | 258 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -261,11 +261,11 @@ | ||
| 261 | 261 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 262 | 262 | <WarningLevel>Level3</WarningLevel> |
| 263 | 263 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 264 | 264 | </ClCompile> |
| 265 | 265 | <Link> |
| 266 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 266 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 267 | 267 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 268 | 268 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 269 | 269 | <SubSystem>Console</SubSystem> |
| 270 | 270 | <OptimizeReferences>true</OptimizeReferences> |
| 271 | 271 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -277,18 +277,18 @@ | ||
| 277 | 277 | </Link> |
| 278 | 278 | </ItemDefinitionGroup> |
| 279 | 279 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 280 | 280 | <ClCompile> |
| 281 | 281 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 282 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 282 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 283 | 283 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 284 | 284 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 285 | 285 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 286 | 286 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 287 | 287 | </ClCompile> |
| 288 | 288 | <Link> |
| 289 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 289 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 290 | 290 | </Link> |
| 291 | 291 | </ItemDefinitionGroup> |
| 292 | 292 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 293 | 293 | <Midl> |
| 294 | 294 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -360,18 +360,18 @@ | ||
| 360 | 360 | </Link> |
| 361 | 361 | </ItemDefinitionGroup> |
| 362 | 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 363 | 363 | <ClCompile> |
| 364 | 364 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 365 | - <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 365 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 366 | 366 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 367 | 367 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 368 | 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | 369 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 370 | 370 | </ClCompile> |
| 371 | 371 | <Link> |
| 372 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 372 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 373 | 373 | </Link> |
| 374 | 374 | </ItemDefinitionGroup> |
| 375 | 375 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 376 | 376 | <Midl> |
| 377 | 377 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -406,18 +406,10 @@ | ||
| 406 | 406 | <ClCompile Include="..\..\..\adler32.c" /> |
| 407 | 407 | <ClCompile Include="..\..\..\compress.c" /> |
| 408 | 408 | <ClCompile Include="..\..\..\crc32.c" /> |
| 409 | 409 | <ClCompile Include="..\..\..\deflate.c" /> |
| 410 | 410 | <ClCompile Include="..\..\..\infback.c" /> |
| 411 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 412 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 413 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 414 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 415 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 416 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 417 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 418 | - </ClCompile> | |
| 419 | 411 | <ClCompile Include="..\..\..\inffast.c" /> |
| 420 | 412 | <ClCompile Include="..\..\..\inflate.c" /> |
| 421 | 413 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 422 | 414 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 423 | 415 | <ClCompile Include="..\..\..\trees.c" /> |
| 424 | 416 |
| --- compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj | |
| @@ -188,11 +188,11 @@ | |
| 188 | </PropertyGroup> |
| 189 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 190 | <ClCompile> |
| 191 | <Optimization>Disabled</Optimization> |
| 192 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 193 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 194 | <MinimalRebuild>true</MinimalRebuild> |
| 195 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 196 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 197 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 198 | <PrecompiledHeader> |
| @@ -201,11 +201,11 @@ | |
| 201 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 202 | <WarningLevel>Level3</WarningLevel> |
| 203 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 204 | </ClCompile> |
| 205 | <Link> |
| 206 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 207 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 208 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 209 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 210 | <SubSystem>Console</SubSystem> |
| 211 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -248,11 +248,11 @@ | |
| 248 | <ClCompile> |
| 249 | <Optimization>MaxSpeed</Optimization> |
| 250 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 251 | <OmitFramePointers>true</OmitFramePointers> |
| 252 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 253 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | <StringPooling>true</StringPooling> |
| 255 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 256 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 257 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 258 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -261,11 +261,11 @@ | |
| 261 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 262 | <WarningLevel>Level3</WarningLevel> |
| 263 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 264 | </ClCompile> |
| 265 | <Link> |
| 266 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 267 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 268 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 269 | <SubSystem>Console</SubSystem> |
| 270 | <OptimizeReferences>true</OptimizeReferences> |
| 271 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -277,18 +277,18 @@ | |
| 277 | </Link> |
| 278 | </ItemDefinitionGroup> |
| 279 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 280 | <ClCompile> |
| 281 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 282 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 283 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 284 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 285 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 286 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 287 | </ClCompile> |
| 288 | <Link> |
| 289 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 290 | </Link> |
| 291 | </ItemDefinitionGroup> |
| 292 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 293 | <Midl> |
| 294 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -360,18 +360,18 @@ | |
| 360 | </Link> |
| 361 | </ItemDefinitionGroup> |
| 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 363 | <ClCompile> |
| 364 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 365 | <PreprocessorDefinitions>ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 366 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 367 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 370 | </ClCompile> |
| 371 | <Link> |
| 372 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 373 | </Link> |
| 374 | </ItemDefinitionGroup> |
| 375 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 376 | <Midl> |
| 377 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -406,18 +406,10 @@ | |
| 406 | <ClCompile Include="..\..\..\adler32.c" /> |
| 407 | <ClCompile Include="..\..\..\compress.c" /> |
| 408 | <ClCompile Include="..\..\..\crc32.c" /> |
| 409 | <ClCompile Include="..\..\..\deflate.c" /> |
| 410 | <ClCompile Include="..\..\..\infback.c" /> |
| 411 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 412 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 413 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 414 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 415 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 416 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 417 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 418 | </ClCompile> |
| 419 | <ClCompile Include="..\..\..\inffast.c" /> |
| 420 | <ClCompile Include="..\..\..\inflate.c" /> |
| 421 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 422 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 423 | <ClCompile Include="..\..\..\trees.c" /> |
| 424 |
| --- compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc14/testzlib.vcxproj | |
| @@ -188,11 +188,11 @@ | |
| 188 | </PropertyGroup> |
| 189 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 190 | <ClCompile> |
| 191 | <Optimization>Disabled</Optimization> |
| 192 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 193 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 194 | <MinimalRebuild>true</MinimalRebuild> |
| 195 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 196 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 197 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 198 | <PrecompiledHeader> |
| @@ -201,11 +201,11 @@ | |
| 201 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 202 | <WarningLevel>Level3</WarningLevel> |
| 203 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 204 | </ClCompile> |
| 205 | <Link> |
| 206 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 207 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 208 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 209 | <ProgramDatabaseFile>$(OutDir)testzlib.pdb</ProgramDatabaseFile> |
| 210 | <SubSystem>Console</SubSystem> |
| 211 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| @@ -248,11 +248,11 @@ | |
| 248 | <ClCompile> |
| 249 | <Optimization>MaxSpeed</Optimization> |
| 250 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 251 | <OmitFramePointers>true</OmitFramePointers> |
| 252 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 253 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | <StringPooling>true</StringPooling> |
| 255 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 256 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 257 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 258 | <FunctionLevelLinking>true</FunctionLevelLinking> |
| @@ -261,11 +261,11 @@ | |
| 261 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 262 | <WarningLevel>Level3</WarningLevel> |
| 263 | <DebugInformationFormat>ProgramDatabase</DebugInformationFormat> |
| 264 | </ClCompile> |
| 265 | <Link> |
| 266 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 267 | <OutputFile>$(OutDir)testzlib.exe</OutputFile> |
| 268 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 269 | <SubSystem>Console</SubSystem> |
| 270 | <OptimizeReferences>true</OptimizeReferences> |
| 271 | <EnableCOMDATFolding>true</EnableCOMDATFolding> |
| @@ -277,18 +277,18 @@ | |
| 277 | </Link> |
| 278 | </ItemDefinitionGroup> |
| 279 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 280 | <ClCompile> |
| 281 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 282 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 283 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 284 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 285 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 286 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 287 | </ClCompile> |
| 288 | <Link> |
| 289 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 290 | </Link> |
| 291 | </ItemDefinitionGroup> |
| 292 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 293 | <Midl> |
| 294 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -360,18 +360,18 @@ | |
| 360 | </Link> |
| 361 | </ItemDefinitionGroup> |
| 362 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'"> |
| 363 | <ClCompile> |
| 364 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 365 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 366 | <BasicRuntimeChecks>Default</BasicRuntimeChecks> |
| 367 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | <AssemblerListingLocation>$(IntDir)</AssemblerListingLocation> |
| 370 | </ClCompile> |
| 371 | <Link> |
| 372 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 373 | </Link> |
| 374 | </ItemDefinitionGroup> |
| 375 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 376 | <Midl> |
| 377 | <TargetEnvironment>Itanium</TargetEnvironment> |
| @@ -406,18 +406,10 @@ | |
| 406 | <ClCompile Include="..\..\..\adler32.c" /> |
| 407 | <ClCompile Include="..\..\..\compress.c" /> |
| 408 | <ClCompile Include="..\..\..\crc32.c" /> |
| 409 | <ClCompile Include="..\..\..\deflate.c" /> |
| 410 | <ClCompile Include="..\..\..\infback.c" /> |
| 411 | <ClCompile Include="..\..\..\inffast.c" /> |
| 412 | <ClCompile Include="..\..\..\inflate.c" /> |
| 413 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 414 | <ClCompile Include="..\..\testzlib\testzlib.c" /> |
| 415 | <ClCompile Include="..\..\..\trees.c" /> |
| 416 |
| --- compat/zlib/contrib/vstudio/vc14/zlib.rc | ||
| +++ compat/zlib/contrib/vstudio/vc14/zlib.rc | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | #include <windows.h> |
| 2 | 2 | |
| 3 | 3 | #define IDR_VERSION1 1 |
| 4 | 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | - FILEVERSION 1, 2, 12, 0 | |
| 6 | - PRODUCTVERSION 1, 2, 12, 0 | |
| 5 | + FILEVERSION 1, 2, 13, 0 | |
| 6 | + PRODUCTVERSION 1, 2, 13, 0 | |
| 7 | 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | 8 | FILEFLAGS 0 |
| 9 | 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | 10 | FILETYPE VFT_DLL |
| 11 | 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | ||
| 15 | 15 | BLOCK "040904E4" |
| 16 | 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | 17 | |
| 18 | 18 | BEGIN |
| 19 | 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | - VALUE "FileVersion", "1.2.12\0" | |
| 20 | + VALUE "FileVersion", "1.2.13\0" | |
| 21 | 21 | VALUE "InternalName", "zlib\0" |
| 22 | 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 | 26 |
| --- compat/zlib/contrib/vstudio/vc14/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc14/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 12, 0 |
| 6 | PRODUCTVERSION 1, 2, 12, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.12\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc14/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc14/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 13, 0 |
| 6 | PRODUCTVERSION 1, 2, 13, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.13\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj | ||
| @@ -168,11 +168,11 @@ | ||
| 168 | 168 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 169 | 169 | </PropertyGroup> |
| 170 | 170 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 171 | 171 | <ClCompile> |
| 172 | 172 | <Optimization>Disabled</Optimization> |
| 173 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 173 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 174 | 174 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 175 | 175 | <ExceptionHandling> |
| 176 | 176 | </ExceptionHandling> |
| 177 | 177 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 178 | 178 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -194,12 +194,12 @@ | ||
| 194 | 194 | </Lib> |
| 195 | 195 | </ItemDefinitionGroup> |
| 196 | 196 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 197 | 197 | <ClCompile> |
| 198 | 198 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 199 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 200 | - <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 199 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 200 | + <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 201 | 201 | <StringPooling>true</StringPooling> |
| 202 | 202 | <ExceptionHandling> |
| 203 | 203 | </ExceptionHandling> |
| 204 | 204 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 205 | 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -214,19 +214,19 @@ | ||
| 214 | 214 | <ResourceCompile> |
| 215 | 215 | <Culture>0x040c</Culture> |
| 216 | 216 | </ResourceCompile> |
| 217 | 217 | <Lib> |
| 218 | 218 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 219 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 219 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 220 | 220 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 221 | 221 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 222 | 222 | </Lib> |
| 223 | 223 | </ItemDefinitionGroup> |
| 224 | 224 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 225 | 225 | <ClCompile> |
| 226 | 226 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 227 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 227 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 228 | 228 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 229 | 229 | <StringPooling>true</StringPooling> |
| 230 | 230 | <ExceptionHandling> |
| 231 | 231 | </ExceptionHandling> |
| 232 | 232 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -252,11 +252,11 @@ | ||
| 252 | 252 | <Midl> |
| 253 | 253 | <TargetEnvironment>X64</TargetEnvironment> |
| 254 | 254 | </Midl> |
| 255 | 255 | <ClCompile> |
| 256 | 256 | <Optimization>Disabled</Optimization> |
| 257 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 257 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 258 | 258 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | 259 | <ExceptionHandling> |
| 260 | 260 | </ExceptionHandling> |
| 261 | 261 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 262 | 262 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -281,11 +281,11 @@ | ||
| 281 | 281 | <Midl> |
| 282 | 282 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 283 | 283 | </Midl> |
| 284 | 284 | <ClCompile> |
| 285 | 285 | <Optimization>Disabled</Optimization> |
| 286 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 286 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 287 | 287 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 288 | 288 | <ExceptionHandling> |
| 289 | 289 | </ExceptionHandling> |
| 290 | 290 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 291 | 291 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,12 +310,12 @@ | ||
| 310 | 310 | <Midl> |
| 311 | 311 | <TargetEnvironment>X64</TargetEnvironment> |
| 312 | 312 | </Midl> |
| 313 | 313 | <ClCompile> |
| 314 | 314 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 315 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 316 | - <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 315 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 316 | + <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 317 | 317 | <StringPooling>true</StringPooling> |
| 318 | 318 | <ExceptionHandling> |
| 319 | 319 | </ExceptionHandling> |
| 320 | 320 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 321 | 321 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -330,11 +330,11 @@ | ||
| 330 | 330 | <ResourceCompile> |
| 331 | 331 | <Culture>0x040c</Culture> |
| 332 | 332 | </ResourceCompile> |
| 333 | 333 | <Lib> |
| 334 | 334 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 335 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 335 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 336 | 336 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 337 | 337 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 338 | 338 | </Lib> |
| 339 | 339 | </ItemDefinitionGroup> |
| 340 | 340 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -341,11 +341,11 @@ | ||
| 341 | 341 | <Midl> |
| 342 | 342 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 343 | 343 | </Midl> |
| 344 | 344 | <ClCompile> |
| 345 | 345 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 346 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 346 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 347 | 347 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | 348 | <StringPooling>true</StringPooling> |
| 349 | 349 | <ExceptionHandling> |
| 350 | 350 | </ExceptionHandling> |
| 351 | 351 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -371,11 +371,11 @@ | ||
| 371 | 371 | <Midl> |
| 372 | 372 | <TargetEnvironment>X64</TargetEnvironment> |
| 373 | 373 | </Midl> |
| 374 | 374 | <ClCompile> |
| 375 | 375 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 376 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 376 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 377 | 377 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 378 | 378 | <StringPooling>true</StringPooling> |
| 379 | 379 | <ExceptionHandling> |
| 380 | 380 | </ExceptionHandling> |
| 381 | 381 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -401,11 +401,11 @@ | ||
| 401 | 401 | <Midl> |
| 402 | 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | 403 | </Midl> |
| 404 | 404 | <ClCompile> |
| 405 | 405 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 406 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 406 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 407 | 407 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 408 | 408 | <StringPooling>true</StringPooling> |
| 409 | 409 | <ExceptionHandling> |
| 410 | 410 | </ExceptionHandling> |
| 411 | 411 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -435,18 +435,10 @@ | ||
| 435 | 435 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 436 | 436 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 437 | 437 | <ClCompile Include="..\..\..\gzread.c" /> |
| 438 | 438 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 439 | 439 | <ClCompile Include="..\..\..\infback.c" /> |
| 440 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 441 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 442 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 443 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 444 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 445 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 446 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 447 | - </ClCompile> | |
| 448 | 440 | <ClCompile Include="..\..\..\inffast.c" /> |
| 449 | 441 | <ClCompile Include="..\..\..\inflate.c" /> |
| 450 | 442 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 451 | 443 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 452 | 444 | <ClCompile Include="..\..\..\trees.c" /> |
| 453 | 445 |
| --- compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj | |
| @@ -168,11 +168,11 @@ | |
| 168 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 169 | </PropertyGroup> |
| 170 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 171 | <ClCompile> |
| 172 | <Optimization>Disabled</Optimization> |
| 173 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 174 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 175 | <ExceptionHandling> |
| 176 | </ExceptionHandling> |
| 177 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 178 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -194,12 +194,12 @@ | |
| 194 | </Lib> |
| 195 | </ItemDefinitionGroup> |
| 196 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 197 | <ClCompile> |
| 198 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 199 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 200 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 201 | <StringPooling>true</StringPooling> |
| 202 | <ExceptionHandling> |
| 203 | </ExceptionHandling> |
| 204 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -214,19 +214,19 @@ | |
| 214 | <ResourceCompile> |
| 215 | <Culture>0x040c</Culture> |
| 216 | </ResourceCompile> |
| 217 | <Lib> |
| 218 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 219 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 220 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 221 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 222 | </Lib> |
| 223 | </ItemDefinitionGroup> |
| 224 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 225 | <ClCompile> |
| 226 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 227 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 228 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 229 | <StringPooling>true</StringPooling> |
| 230 | <ExceptionHandling> |
| 231 | </ExceptionHandling> |
| 232 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -252,11 +252,11 @@ | |
| 252 | <Midl> |
| 253 | <TargetEnvironment>X64</TargetEnvironment> |
| 254 | </Midl> |
| 255 | <ClCompile> |
| 256 | <Optimization>Disabled</Optimization> |
| 257 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 258 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | <ExceptionHandling> |
| 260 | </ExceptionHandling> |
| 261 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 262 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -281,11 +281,11 @@ | |
| 281 | <Midl> |
| 282 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 283 | </Midl> |
| 284 | <ClCompile> |
| 285 | <Optimization>Disabled</Optimization> |
| 286 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 287 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 288 | <ExceptionHandling> |
| 289 | </ExceptionHandling> |
| 290 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 291 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,12 +310,12 @@ | |
| 310 | <Midl> |
| 311 | <TargetEnvironment>X64</TargetEnvironment> |
| 312 | </Midl> |
| 313 | <ClCompile> |
| 314 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 315 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 316 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 317 | <StringPooling>true</StringPooling> |
| 318 | <ExceptionHandling> |
| 319 | </ExceptionHandling> |
| 320 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 321 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -330,11 +330,11 @@ | |
| 330 | <ResourceCompile> |
| 331 | <Culture>0x040c</Culture> |
| 332 | </ResourceCompile> |
| 333 | <Lib> |
| 334 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 335 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 336 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 337 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 338 | </Lib> |
| 339 | </ItemDefinitionGroup> |
| 340 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -341,11 +341,11 @@ | |
| 341 | <Midl> |
| 342 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 343 | </Midl> |
| 344 | <ClCompile> |
| 345 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 346 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 347 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | <StringPooling>true</StringPooling> |
| 349 | <ExceptionHandling> |
| 350 | </ExceptionHandling> |
| 351 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -371,11 +371,11 @@ | |
| 371 | <Midl> |
| 372 | <TargetEnvironment>X64</TargetEnvironment> |
| 373 | </Midl> |
| 374 | <ClCompile> |
| 375 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 376 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 377 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 378 | <StringPooling>true</StringPooling> |
| 379 | <ExceptionHandling> |
| 380 | </ExceptionHandling> |
| 381 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -401,11 +401,11 @@ | |
| 401 | <Midl> |
| 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | </Midl> |
| 404 | <ClCompile> |
| 405 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 406 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 407 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 408 | <StringPooling>true</StringPooling> |
| 409 | <ExceptionHandling> |
| 410 | </ExceptionHandling> |
| 411 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -435,18 +435,10 @@ | |
| 435 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 436 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 437 | <ClCompile Include="..\..\..\gzread.c" /> |
| 438 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 439 | <ClCompile Include="..\..\..\infback.c" /> |
| 440 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 441 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 442 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 443 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 444 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 445 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 446 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 447 | </ClCompile> |
| 448 | <ClCompile Include="..\..\..\inffast.c" /> |
| 449 | <ClCompile Include="..\..\..\inflate.c" /> |
| 450 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 451 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 452 | <ClCompile Include="..\..\..\trees.c" /> |
| 453 |
| --- compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc14/zlibstat.vcxproj | |
| @@ -168,11 +168,11 @@ | |
| 168 | <CodeAnalysisRuleAssemblies Condition="'$(Configuration)|$(Platform)'=='Release|x64'" /> |
| 169 | </PropertyGroup> |
| 170 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'"> |
| 171 | <ClCompile> |
| 172 | <Optimization>Disabled</Optimization> |
| 173 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 174 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 175 | <ExceptionHandling> |
| 176 | </ExceptionHandling> |
| 177 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 178 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -194,12 +194,12 @@ | |
| 194 | </Lib> |
| 195 | </ItemDefinitionGroup> |
| 196 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'"> |
| 197 | <ClCompile> |
| 198 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 199 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 200 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 201 | <StringPooling>true</StringPooling> |
| 202 | <ExceptionHandling> |
| 203 | </ExceptionHandling> |
| 204 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 205 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -214,19 +214,19 @@ | |
| 214 | <ResourceCompile> |
| 215 | <Culture>0x040c</Culture> |
| 216 | </ResourceCompile> |
| 217 | <Lib> |
| 218 | <AdditionalOptions>/MACHINE:X86 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 219 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 220 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 221 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 222 | </Lib> |
| 223 | </ItemDefinitionGroup> |
| 224 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 225 | <ClCompile> |
| 226 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 227 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 228 | <PreprocessorDefinitions>WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 229 | <StringPooling>true</StringPooling> |
| 230 | <ExceptionHandling> |
| 231 | </ExceptionHandling> |
| 232 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| @@ -252,11 +252,11 @@ | |
| 252 | <Midl> |
| 253 | <TargetEnvironment>X64</TargetEnvironment> |
| 254 | </Midl> |
| 255 | <ClCompile> |
| 256 | <Optimization>Disabled</Optimization> |
| 257 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 258 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | <ExceptionHandling> |
| 260 | </ExceptionHandling> |
| 261 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 262 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -281,11 +281,11 @@ | |
| 281 | <Midl> |
| 282 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 283 | </Midl> |
| 284 | <ClCompile> |
| 285 | <Optimization>Disabled</Optimization> |
| 286 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 287 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 288 | <ExceptionHandling> |
| 289 | </ExceptionHandling> |
| 290 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 291 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -310,12 +310,12 @@ | |
| 310 | <Midl> |
| 311 | <TargetEnvironment>X64</TargetEnvironment> |
| 312 | </Midl> |
| 313 | <ClCompile> |
| 314 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 315 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 316 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 317 | <StringPooling>true</StringPooling> |
| 318 | <ExceptionHandling> |
| 319 | </ExceptionHandling> |
| 320 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 321 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -330,11 +330,11 @@ | |
| 330 | <ResourceCompile> |
| 331 | <Culture>0x040c</Culture> |
| 332 | </ResourceCompile> |
| 333 | <Lib> |
| 334 | <AdditionalOptions>/MACHINE:AMD64 /NODEFAULTLIB %(AdditionalOptions)</AdditionalOptions> |
| 335 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 336 | <OutputFile>$(OutDir)zlibstat.lib</OutputFile> |
| 337 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 338 | </Lib> |
| 339 | </ItemDefinitionGroup> |
| 340 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| @@ -341,11 +341,11 @@ | |
| 341 | <Midl> |
| 342 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 343 | </Midl> |
| 344 | <ClCompile> |
| 345 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 346 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 347 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | <StringPooling>true</StringPooling> |
| 349 | <ExceptionHandling> |
| 350 | </ExceptionHandling> |
| 351 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -371,11 +371,11 @@ | |
| 371 | <Midl> |
| 372 | <TargetEnvironment>X64</TargetEnvironment> |
| 373 | </Midl> |
| 374 | <ClCompile> |
| 375 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 376 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 377 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 378 | <StringPooling>true</StringPooling> |
| 379 | <ExceptionHandling> |
| 380 | </ExceptionHandling> |
| 381 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -401,11 +401,11 @@ | |
| 401 | <Midl> |
| 402 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 403 | </Midl> |
| 404 | <ClCompile> |
| 405 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 406 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 407 | <PreprocessorDefinitions>ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 408 | <StringPooling>true</StringPooling> |
| 409 | <ExceptionHandling> |
| 410 | </ExceptionHandling> |
| 411 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -435,18 +435,10 @@ | |
| 435 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 436 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 437 | <ClCompile Include="..\..\..\gzread.c" /> |
| 438 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 439 | <ClCompile Include="..\..\..\infback.c" /> |
| 440 | <ClCompile Include="..\..\..\inffast.c" /> |
| 441 | <ClCompile Include="..\..\..\inflate.c" /> |
| 442 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 443 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 444 | <ClCompile Include="..\..\..\trees.c" /> |
| 445 |
| --- compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj | ||
| +++ compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj | ||
| @@ -205,12 +205,12 @@ | ||
| 205 | 205 | <TargetEnvironment>Win32</TargetEnvironment> |
| 206 | 206 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 207 | 207 | </Midl> |
| 208 | 208 | <ClCompile> |
| 209 | 209 | <Optimization>Disabled</Optimization> |
| 210 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 211 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 210 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 211 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 212 | 212 | <ExceptionHandling> |
| 213 | 213 | </ExceptionHandling> |
| 214 | 214 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 215 | 215 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 216 | 216 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -227,11 +227,11 @@ | ||
| 227 | 227 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 228 | 228 | <Culture>0x040c</Culture> |
| 229 | 229 | </ResourceCompile> |
| 230 | 230 | <Link> |
| 231 | 231 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 232 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 232 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 233 | 233 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 234 | 234 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 235 | 235 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 236 | 236 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 237 | 237 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -241,14 +241,10 @@ | ||
| 241 | 241 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 242 | 242 | <DataExecutionPrevention> |
| 243 | 243 | </DataExecutionPrevention> |
| 244 | 244 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 245 | 245 | </Link> |
| 246 | - <PreBuildEvent> | |
| 247 | - <Command>cd ..\..\masmx86 | |
| 248 | -bld_ml32.bat</Command> | |
| 249 | - </PreBuildEvent> | |
| 250 | 246 | </ItemDefinitionGroup> |
| 251 | 247 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 252 | 248 | <Midl> |
| 253 | 249 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | 250 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -256,11 +252,11 @@ | ||
| 256 | 252 | <TargetEnvironment>Win32</TargetEnvironment> |
| 257 | 253 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 258 | 254 | </Midl> |
| 259 | 255 | <ClCompile> |
| 260 | 256 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 261 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 257 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 262 | 258 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 263 | 259 | <StringPooling>true</StringPooling> |
| 264 | 260 | <ExceptionHandling> |
| 265 | 261 | </ExceptionHandling> |
| 266 | 262 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -304,12 +300,12 @@ | ||
| 304 | 300 | <TargetEnvironment>Win32</TargetEnvironment> |
| 305 | 301 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 306 | 302 | </Midl> |
| 307 | 303 | <ClCompile> |
| 308 | 304 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 309 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 310 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 305 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 306 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 311 | 307 | <StringPooling>true</StringPooling> |
| 312 | 308 | <ExceptionHandling> |
| 313 | 309 | </ExceptionHandling> |
| 314 | 310 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 315 | 311 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -328,11 +324,11 @@ | ||
| 328 | 324 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 329 | 325 | <Culture>0x040c</Culture> |
| 330 | 326 | </ResourceCompile> |
| 331 | 327 | <Link> |
| 332 | 328 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 333 | - <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 329 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 334 | 330 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 335 | 331 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 336 | 332 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 337 | 333 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 338 | 334 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -343,14 +339,10 @@ | ||
| 343 | 339 | <DataExecutionPrevention> |
| 344 | 340 | </DataExecutionPrevention> |
| 345 | 341 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 346 | 342 | <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> |
| 347 | 343 | </Link> |
| 348 | - <PreBuildEvent> | |
| 349 | - <Command>cd ..\..\masmx86 | |
| 350 | -bld_ml32.bat</Command> | |
| 351 | - </PreBuildEvent> | |
| 352 | 344 | </ItemDefinitionGroup> |
| 353 | 345 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 354 | 346 | <Midl> |
| 355 | 347 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 356 | 348 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -358,12 +350,12 @@ | ||
| 358 | 350 | <TargetEnvironment>X64</TargetEnvironment> |
| 359 | 351 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 360 | 352 | </Midl> |
| 361 | 353 | <ClCompile> |
| 362 | 354 | <Optimization>Disabled</Optimization> |
| 363 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 364 | - <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 355 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 356 | + <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 365 | 357 | <ExceptionHandling> |
| 366 | 358 | </ExceptionHandling> |
| 367 | 359 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 368 | 360 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | 361 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -379,11 +371,11 @@ | ||
| 379 | 371 | <ResourceCompile> |
| 380 | 372 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 381 | 373 | <Culture>0x040c</Culture> |
| 382 | 374 | </ResourceCompile> |
| 383 | 375 | <Link> |
| 384 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 376 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 385 | 377 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 386 | 378 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 387 | 379 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 388 | 380 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 389 | 381 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -391,14 +383,10 @@ | ||
| 391 | 383 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 392 | 384 | <SubSystem>Windows</SubSystem> |
| 393 | 385 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 394 | 386 | <TargetMachine>MachineX64</TargetMachine> |
| 395 | 387 | </Link> |
| 396 | - <PreBuildEvent> | |
| 397 | - <Command>cd ..\..\contrib\masmx64 | |
| 398 | -bld_ml64.bat</Command> | |
| 399 | - </PreBuildEvent> | |
| 400 | 388 | </ItemDefinitionGroup> |
| 401 | 389 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 402 | 390 | <Midl> |
| 403 | 391 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 404 | 392 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -406,11 +394,11 @@ | ||
| 406 | 394 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 407 | 395 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 408 | 396 | </Midl> |
| 409 | 397 | <ClCompile> |
| 410 | 398 | <Optimization>Disabled</Optimization> |
| 411 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 399 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 412 | 400 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 413 | 401 | <ExceptionHandling> |
| 414 | 402 | </ExceptionHandling> |
| 415 | 403 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 416 | 404 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -449,11 +437,11 @@ | ||
| 449 | 437 | <TargetEnvironment>X64</TargetEnvironment> |
| 450 | 438 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 451 | 439 | </Midl> |
| 452 | 440 | <ClCompile> |
| 453 | 441 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 454 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 442 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 455 | 443 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 456 | 444 | <StringPooling>true</StringPooling> |
| 457 | 445 | <ExceptionHandling> |
| 458 | 446 | </ExceptionHandling> |
| 459 | 447 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -494,11 +482,11 @@ | ||
| 494 | 482 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 495 | 483 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 496 | 484 | </Midl> |
| 497 | 485 | <ClCompile> |
| 498 | 486 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 499 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 487 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 500 | 488 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 501 | 489 | <StringPooling>true</StringPooling> |
| 502 | 490 | <ExceptionHandling> |
| 503 | 491 | </ExceptionHandling> |
| 504 | 492 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -539,12 +527,12 @@ | ||
| 539 | 527 | <TargetEnvironment>X64</TargetEnvironment> |
| 540 | 528 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 541 | 529 | </Midl> |
| 542 | 530 | <ClCompile> |
| 543 | 531 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 544 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 545 | - <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 532 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 533 | + <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> | |
| 546 | 534 | <StringPooling>true</StringPooling> |
| 547 | 535 | <ExceptionHandling> |
| 548 | 536 | </ExceptionHandling> |
| 549 | 537 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 550 | 538 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -562,11 +550,11 @@ | ||
| 562 | 550 | <ResourceCompile> |
| 563 | 551 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 564 | 552 | <Culture>0x040c</Culture> |
| 565 | 553 | </ResourceCompile> |
| 566 | 554 | <Link> |
| 567 | - <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> | |
| 555 | + <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> | |
| 568 | 556 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 569 | 557 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 570 | 558 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 571 | 559 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 572 | 560 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -574,14 +562,10 @@ | ||
| 574 | 562 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 575 | 563 | <SubSystem>Windows</SubSystem> |
| 576 | 564 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 577 | 565 | <TargetMachine>MachineX64</TargetMachine> |
| 578 | 566 | </Link> |
| 579 | - <PreBuildEvent> | |
| 580 | - <Command>cd ..\..\masmx64 | |
| 581 | -bld_ml64.bat</Command> | |
| 582 | - </PreBuildEvent> | |
| 583 | 567 | </ItemDefinitionGroup> |
| 584 | 568 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 585 | 569 | <Midl> |
| 586 | 570 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 587 | 571 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -589,11 +573,11 @@ | ||
| 589 | 573 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 590 | 574 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 591 | 575 | </Midl> |
| 592 | 576 | <ClCompile> |
| 593 | 577 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 594 | - <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 578 | + <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> | |
| 595 | 579 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 596 | 580 | <StringPooling>true</StringPooling> |
| 597 | 581 | <ExceptionHandling> |
| 598 | 582 | </ExceptionHandling> |
| 599 | 583 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -634,18 +618,10 @@ | ||
| 634 | 618 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 635 | 619 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 636 | 620 | <ClCompile Include="..\..\..\gzread.c" /> |
| 637 | 621 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 638 | 622 | <ClCompile Include="..\..\..\infback.c" /> |
| 639 | - <ClCompile Include="..\..\masmx64\inffas8664.c"> | |
| 640 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> | |
| 641 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> | |
| 642 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> | |
| 643 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> | |
| 644 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> | |
| 645 | - <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> | |
| 646 | - </ClCompile> | |
| 647 | 623 | <ClCompile Include="..\..\..\inffast.c" /> |
| 648 | 624 | <ClCompile Include="..\..\..\inflate.c" /> |
| 649 | 625 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 650 | 626 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 651 | 627 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 652 | 628 |
| --- compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj | |
| @@ -205,12 +205,12 @@ | |
| 205 | <TargetEnvironment>Win32</TargetEnvironment> |
| 206 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 207 | </Midl> |
| 208 | <ClCompile> |
| 209 | <Optimization>Disabled</Optimization> |
| 210 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 211 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 212 | <ExceptionHandling> |
| 213 | </ExceptionHandling> |
| 214 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 215 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 216 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -227,11 +227,11 @@ | |
| 227 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 228 | <Culture>0x040c</Culture> |
| 229 | </ResourceCompile> |
| 230 | <Link> |
| 231 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 232 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 233 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 234 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 235 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 236 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 237 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -241,14 +241,10 @@ | |
| 241 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 242 | <DataExecutionPrevention> |
| 243 | </DataExecutionPrevention> |
| 244 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 245 | </Link> |
| 246 | <PreBuildEvent> |
| 247 | <Command>cd ..\..\masmx86 |
| 248 | bld_ml32.bat</Command> |
| 249 | </PreBuildEvent> |
| 250 | </ItemDefinitionGroup> |
| 251 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 252 | <Midl> |
| 253 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 254 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -256,11 +252,11 @@ | |
| 256 | <TargetEnvironment>Win32</TargetEnvironment> |
| 257 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 258 | </Midl> |
| 259 | <ClCompile> |
| 260 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 261 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 262 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 263 | <StringPooling>true</StringPooling> |
| 264 | <ExceptionHandling> |
| 265 | </ExceptionHandling> |
| 266 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -304,12 +300,12 @@ | |
| 304 | <TargetEnvironment>Win32</TargetEnvironment> |
| 305 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 306 | </Midl> |
| 307 | <ClCompile> |
| 308 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 309 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 310 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 311 | <StringPooling>true</StringPooling> |
| 312 | <ExceptionHandling> |
| 313 | </ExceptionHandling> |
| 314 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 315 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -328,11 +324,11 @@ | |
| 328 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 329 | <Culture>0x040c</Culture> |
| 330 | </ResourceCompile> |
| 331 | <Link> |
| 332 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 333 | <AdditionalDependencies>..\..\masmx86\match686.obj;..\..\masmx86\inffas32.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 334 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 335 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 336 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 337 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 338 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -343,14 +339,10 @@ | |
| 343 | <DataExecutionPrevention> |
| 344 | </DataExecutionPrevention> |
| 345 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 346 | <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> |
| 347 | </Link> |
| 348 | <PreBuildEvent> |
| 349 | <Command>cd ..\..\masmx86 |
| 350 | bld_ml32.bat</Command> |
| 351 | </PreBuildEvent> |
| 352 | </ItemDefinitionGroup> |
| 353 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 354 | <Midl> |
| 355 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 356 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -358,12 +350,12 @@ | |
| 358 | <TargetEnvironment>X64</TargetEnvironment> |
| 359 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 360 | </Midl> |
| 361 | <ClCompile> |
| 362 | <Optimization>Disabled</Optimization> |
| 363 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 364 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 365 | <ExceptionHandling> |
| 366 | </ExceptionHandling> |
| 367 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 368 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 369 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -379,11 +371,11 @@ | |
| 379 | <ResourceCompile> |
| 380 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 381 | <Culture>0x040c</Culture> |
| 382 | </ResourceCompile> |
| 383 | <Link> |
| 384 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 385 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 386 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 387 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 388 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 389 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -391,14 +383,10 @@ | |
| 391 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 392 | <SubSystem>Windows</SubSystem> |
| 393 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 394 | <TargetMachine>MachineX64</TargetMachine> |
| 395 | </Link> |
| 396 | <PreBuildEvent> |
| 397 | <Command>cd ..\..\contrib\masmx64 |
| 398 | bld_ml64.bat</Command> |
| 399 | </PreBuildEvent> |
| 400 | </ItemDefinitionGroup> |
| 401 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 402 | <Midl> |
| 403 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 404 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -406,11 +394,11 @@ | |
| 406 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 407 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 408 | </Midl> |
| 409 | <ClCompile> |
| 410 | <Optimization>Disabled</Optimization> |
| 411 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 412 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 413 | <ExceptionHandling> |
| 414 | </ExceptionHandling> |
| 415 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 416 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -449,11 +437,11 @@ | |
| 449 | <TargetEnvironment>X64</TargetEnvironment> |
| 450 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 451 | </Midl> |
| 452 | <ClCompile> |
| 453 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 454 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 455 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 456 | <StringPooling>true</StringPooling> |
| 457 | <ExceptionHandling> |
| 458 | </ExceptionHandling> |
| 459 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -494,11 +482,11 @@ | |
| 494 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 495 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 496 | </Midl> |
| 497 | <ClCompile> |
| 498 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 499 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 500 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 501 | <StringPooling>true</StringPooling> |
| 502 | <ExceptionHandling> |
| 503 | </ExceptionHandling> |
| 504 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -539,12 +527,12 @@ | |
| 539 | <TargetEnvironment>X64</TargetEnvironment> |
| 540 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 541 | </Midl> |
| 542 | <ClCompile> |
| 543 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 544 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 545 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 546 | <StringPooling>true</StringPooling> |
| 547 | <ExceptionHandling> |
| 548 | </ExceptionHandling> |
| 549 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 550 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -562,11 +550,11 @@ | |
| 562 | <ResourceCompile> |
| 563 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 564 | <Culture>0x040c</Culture> |
| 565 | </ResourceCompile> |
| 566 | <Link> |
| 567 | <AdditionalDependencies>..\..\masmx64\gvmat64.obj;..\..\masmx64\inffasx64.obj;%(AdditionalDependencies)</AdditionalDependencies> |
| 568 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 569 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 570 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 571 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 572 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -574,14 +562,10 @@ | |
| 574 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 575 | <SubSystem>Windows</SubSystem> |
| 576 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 577 | <TargetMachine>MachineX64</TargetMachine> |
| 578 | </Link> |
| 579 | <PreBuildEvent> |
| 580 | <Command>cd ..\..\masmx64 |
| 581 | bld_ml64.bat</Command> |
| 582 | </PreBuildEvent> |
| 583 | </ItemDefinitionGroup> |
| 584 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 585 | <Midl> |
| 586 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 587 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -589,11 +573,11 @@ | |
| 589 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 590 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 591 | </Midl> |
| 592 | <ClCompile> |
| 593 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 594 | <AdditionalIncludeDirectories>..\..\..;..\..\masmx86;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 595 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 596 | <StringPooling>true</StringPooling> |
| 597 | <ExceptionHandling> |
| 598 | </ExceptionHandling> |
| 599 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -634,18 +618,10 @@ | |
| 634 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 635 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 636 | <ClCompile Include="..\..\..\gzread.c" /> |
| 637 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 638 | <ClCompile Include="..\..\..\infback.c" /> |
| 639 | <ClCompile Include="..\..\masmx64\inffas8664.c"> |
| 640 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'">true</ExcludedFromBuild> |
| 641 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild> |
| 642 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Itanium'">true</ExcludedFromBuild> |
| 643 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'">true</ExcludedFromBuild> |
| 644 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'">true</ExcludedFromBuild> |
| 645 | <ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild> |
| 646 | </ClCompile> |
| 647 | <ClCompile Include="..\..\..\inffast.c" /> |
| 648 | <ClCompile Include="..\..\..\inflate.c" /> |
| 649 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 650 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 651 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 652 |
| --- compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj | |
| +++ compat/zlib/contrib/vstudio/vc14/zlibvc.vcxproj | |
| @@ -205,12 +205,12 @@ | |
| 205 | <TargetEnvironment>Win32</TargetEnvironment> |
| 206 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 207 | </Midl> |
| 208 | <ClCompile> |
| 209 | <Optimization>Disabled</Optimization> |
| 210 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 211 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 212 | <ExceptionHandling> |
| 213 | </ExceptionHandling> |
| 214 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 215 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 216 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -227,11 +227,11 @@ | |
| 227 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 228 | <Culture>0x040c</Culture> |
| 229 | </ResourceCompile> |
| 230 | <Link> |
| 231 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 232 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 233 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 234 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 235 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 236 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 237 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -241,14 +241,10 @@ | |
| 241 | <RandomizedBaseAddress>false</RandomizedBaseAddress> |
| 242 | <DataExecutionPrevention> |
| 243 | </DataExecutionPrevention> |
| 244 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 245 | </Link> |
| 246 | </ItemDefinitionGroup> |
| 247 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='ReleaseWithoutAsm|Win32'"> |
| 248 | <Midl> |
| 249 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 250 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -256,11 +252,11 @@ | |
| 252 | <TargetEnvironment>Win32</TargetEnvironment> |
| 253 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 254 | </Midl> |
| 255 | <ClCompile> |
| 256 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 257 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 258 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 259 | <StringPooling>true</StringPooling> |
| 260 | <ExceptionHandling> |
| 261 | </ExceptionHandling> |
| 262 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -304,12 +300,12 @@ | |
| 300 | <TargetEnvironment>Win32</TargetEnvironment> |
| 301 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 302 | </Midl> |
| 303 | <ClCompile> |
| 304 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 305 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 306 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 307 | <StringPooling>true</StringPooling> |
| 308 | <ExceptionHandling> |
| 309 | </ExceptionHandling> |
| 310 | <RuntimeLibrary>MultiThreaded</RuntimeLibrary> |
| 311 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -328,11 +324,11 @@ | |
| 324 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 325 | <Culture>0x040c</Culture> |
| 326 | </ResourceCompile> |
| 327 | <Link> |
| 328 | <AdditionalOptions>/MACHINE:I386 %(AdditionalOptions)</AdditionalOptions> |
| 329 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 330 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 331 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 332 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 333 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 334 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -343,14 +339,10 @@ | |
| 339 | <DataExecutionPrevention> |
| 340 | </DataExecutionPrevention> |
| 341 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 342 | <ImageHasSafeExceptionHandlers>false</ImageHasSafeExceptionHandlers> |
| 343 | </Link> |
| 344 | </ItemDefinitionGroup> |
| 345 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'"> |
| 346 | <Midl> |
| 347 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 348 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -358,12 +350,12 @@ | |
| 350 | <TargetEnvironment>X64</TargetEnvironment> |
| 351 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 352 | </Midl> |
| 353 | <ClCompile> |
| 354 | <Optimization>Disabled</Optimization> |
| 355 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 356 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 357 | <ExceptionHandling> |
| 358 | </ExceptionHandling> |
| 359 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 360 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| 361 | <PrecompiledHeaderOutputFile>$(IntDir)zlibvc.pch</PrecompiledHeaderOutputFile> |
| @@ -379,11 +371,11 @@ | |
| 371 | <ResourceCompile> |
| 372 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 373 | <Culture>0x040c</Culture> |
| 374 | </ResourceCompile> |
| 375 | <Link> |
| 376 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 377 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 378 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 379 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 380 | <GenerateDebugInformation>true</GenerateDebugInformation> |
| 381 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -391,14 +383,10 @@ | |
| 383 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 384 | <SubSystem>Windows</SubSystem> |
| 385 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 386 | <TargetMachine>MachineX64</TargetMachine> |
| 387 | </Link> |
| 388 | </ItemDefinitionGroup> |
| 389 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Itanium'"> |
| 390 | <Midl> |
| 391 | <PreprocessorDefinitions>_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 392 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -406,11 +394,11 @@ | |
| 394 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 395 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 396 | </Midl> |
| 397 | <ClCompile> |
| 398 | <Optimization>Disabled</Optimization> |
| 399 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 400 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 401 | <ExceptionHandling> |
| 402 | </ExceptionHandling> |
| 403 | <RuntimeLibrary>MultiThreadedDebugDLL</RuntimeLibrary> |
| 404 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -449,11 +437,11 @@ | |
| 437 | <TargetEnvironment>X64</TargetEnvironment> |
| 438 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 439 | </Midl> |
| 440 | <ClCompile> |
| 441 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 442 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 443 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 444 | <StringPooling>true</StringPooling> |
| 445 | <ExceptionHandling> |
| 446 | </ExceptionHandling> |
| 447 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -494,11 +482,11 @@ | |
| 482 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 483 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 484 | </Midl> |
| 485 | <ClCompile> |
| 486 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 487 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 488 | <PreprocessorDefinitions>WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 489 | <StringPooling>true</StringPooling> |
| 490 | <ExceptionHandling> |
| 491 | </ExceptionHandling> |
| 492 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -539,12 +527,12 @@ | |
| 527 | <TargetEnvironment>X64</TargetEnvironment> |
| 528 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 529 | </Midl> |
| 530 | <ClCompile> |
| 531 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 532 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 533 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 534 | <StringPooling>true</StringPooling> |
| 535 | <ExceptionHandling> |
| 536 | </ExceptionHandling> |
| 537 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| 538 | <BufferSecurityCheck>false</BufferSecurityCheck> |
| @@ -562,11 +550,11 @@ | |
| 550 | <ResourceCompile> |
| 551 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 552 | <Culture>0x040c</Culture> |
| 553 | </ResourceCompile> |
| 554 | <Link> |
| 555 | <AdditionalDependencies>%(AdditionalDependencies)</AdditionalDependencies> |
| 556 | <OutputFile>$(OutDir)zlibwapi.dll</OutputFile> |
| 557 | <SuppressStartupBanner>true</SuppressStartupBanner> |
| 558 | <IgnoreAllDefaultLibraries>false</IgnoreAllDefaultLibraries> |
| 559 | <ModuleDefinitionFile>.\zlibvc.def</ModuleDefinitionFile> |
| 560 | <ProgramDatabaseFile>$(OutDir)zlibwapi.pdb</ProgramDatabaseFile> |
| @@ -574,14 +562,10 @@ | |
| 562 | <MapFileName>$(OutDir)zlibwapi.map</MapFileName> |
| 563 | <SubSystem>Windows</SubSystem> |
| 564 | <ImportLibrary>$(OutDir)zlibwapi.lib</ImportLibrary> |
| 565 | <TargetMachine>MachineX64</TargetMachine> |
| 566 | </Link> |
| 567 | </ItemDefinitionGroup> |
| 568 | <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Itanium'"> |
| 569 | <Midl> |
| 570 | <PreprocessorDefinitions>NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 571 | <MkTypLibCompatible>true</MkTypLibCompatible> |
| @@ -589,11 +573,11 @@ | |
| 573 | <TargetEnvironment>Itanium</TargetEnvironment> |
| 574 | <TypeLibraryName>$(OutDir)zlibvc.tlb</TypeLibraryName> |
| 575 | </Midl> |
| 576 | <ClCompile> |
| 577 | <InlineFunctionExpansion>OnlyExplicitInline</InlineFunctionExpansion> |
| 578 | <AdditionalIncludeDirectories>..\..\..;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories> |
| 579 | <PreprocessorDefinitions>_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64;%(PreprocessorDefinitions)</PreprocessorDefinitions> |
| 580 | <StringPooling>true</StringPooling> |
| 581 | <ExceptionHandling> |
| 582 | </ExceptionHandling> |
| 583 | <RuntimeLibrary>MultiThreadedDLL</RuntimeLibrary> |
| @@ -634,18 +618,10 @@ | |
| 618 | <ClCompile Include="..\..\..\gzclose.c" /> |
| 619 | <ClCompile Include="..\..\..\gzlib.c" /> |
| 620 | <ClCompile Include="..\..\..\gzread.c" /> |
| 621 | <ClCompile Include="..\..\..\gzwrite.c" /> |
| 622 | <ClCompile Include="..\..\..\infback.c" /> |
| 623 | <ClCompile Include="..\..\..\inffast.c" /> |
| 624 | <ClCompile Include="..\..\..\inflate.c" /> |
| 625 | <ClCompile Include="..\..\..\inftrees.c" /> |
| 626 | <ClCompile Include="..\..\minizip\ioapi.c" /> |
| 627 | <ClCompile Include="..\..\minizip\iowin32.c" /> |
| 628 |
| --- compat/zlib/contrib/vstudio/vc9/miniunz.vcproj | ||
| +++ compat/zlib/contrib/vstudio/vc9/miniunz.vcproj | ||
| @@ -540,11 +540,11 @@ | ||
| 540 | 540 | <References> |
| 541 | 541 | </References> |
| 542 | 542 | <Files> |
| 543 | 543 | <Filter |
| 544 | 544 | Name="Source Files" |
| 545 | - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" | |
| 545 | + Filter="cpp;c;cxx;def;odl;idl;hpj;bat" | |
| 546 | 546 | > |
| 547 | 547 | <File |
| 548 | 548 | RelativePath="..\..\minizip\miniunz.c" |
| 549 | 549 | > |
| 550 | 550 | </File> |
| 551 | 551 |
| --- compat/zlib/contrib/vstudio/vc9/miniunz.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/miniunz.vcproj | |
| @@ -540,11 +540,11 @@ | |
| 540 | <References> |
| 541 | </References> |
| 542 | <Files> |
| 543 | <Filter |
| 544 | Name="Source Files" |
| 545 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" |
| 546 | > |
| 547 | <File |
| 548 | RelativePath="..\..\minizip\miniunz.c" |
| 549 | > |
| 550 | </File> |
| 551 |
| --- compat/zlib/contrib/vstudio/vc9/miniunz.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/miniunz.vcproj | |
| @@ -540,11 +540,11 @@ | |
| 540 | <References> |
| 541 | </References> |
| 542 | <Files> |
| 543 | <Filter |
| 544 | Name="Source Files" |
| 545 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat" |
| 546 | > |
| 547 | <File |
| 548 | RelativePath="..\..\minizip\miniunz.c" |
| 549 | > |
| 550 | </File> |
| 551 |
| --- compat/zlib/contrib/vstudio/vc9/minizip.vcproj | ||
| +++ compat/zlib/contrib/vstudio/vc9/minizip.vcproj | ||
| @@ -537,11 +537,11 @@ | ||
| 537 | 537 | <References> |
| 538 | 538 | </References> |
| 539 | 539 | <Files> |
| 540 | 540 | <Filter |
| 541 | 541 | Name="Source Files" |
| 542 | - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" | |
| 542 | + Filter="cpp;c;cxx;def;odl;idl;hpj;bat" | |
| 543 | 543 | > |
| 544 | 544 | <File |
| 545 | 545 | RelativePath="..\..\minizip\minizip.c" |
| 546 | 546 | > |
| 547 | 547 | </File> |
| 548 | 548 |
| --- compat/zlib/contrib/vstudio/vc9/minizip.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/minizip.vcproj | |
| @@ -537,11 +537,11 @@ | |
| 537 | <References> |
| 538 | </References> |
| 539 | <Files> |
| 540 | <Filter |
| 541 | Name="Source Files" |
| 542 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" |
| 543 | > |
| 544 | <File |
| 545 | RelativePath="..\..\minizip\minizip.c" |
| 546 | > |
| 547 | </File> |
| 548 |
| --- compat/zlib/contrib/vstudio/vc9/minizip.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/minizip.vcproj | |
| @@ -537,11 +537,11 @@ | |
| 537 | <References> |
| 538 | </References> |
| 539 | <Files> |
| 540 | <Filter |
| 541 | Name="Source Files" |
| 542 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat" |
| 543 | > |
| 544 | <File |
| 545 | RelativePath="..\..\minizip\minizip.c" |
| 546 | > |
| 547 | </File> |
| 548 |
| --- compat/zlib/contrib/vstudio/vc9/testzlib.vcproj | ||
| +++ compat/zlib/contrib/vstudio/vc9/testzlib.vcproj | ||
| @@ -46,11 +46,11 @@ | ||
| 46 | 46 | /> |
| 47 | 47 | <Tool |
| 48 | 48 | Name="VCCLCompilerTool" |
| 49 | 49 | Optimization="0" |
| 50 | 50 | AdditionalIncludeDirectories="..\..\.." |
| 51 | - PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 51 | + PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 52 | 52 | MinimalRebuild="true" |
| 53 | 53 | BasicRuntimeChecks="0" |
| 54 | 54 | RuntimeLibrary="1" |
| 55 | 55 | BufferSecurityCheck="false" |
| 56 | 56 | UsePrecompiledHeader="0" |
| @@ -69,11 +69,10 @@ | ||
| 69 | 69 | <Tool |
| 70 | 70 | Name="VCPreLinkEventTool" |
| 71 | 71 | /> |
| 72 | 72 | <Tool |
| 73 | 73 | Name="VCLinkerTool" |
| 74 | - AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj" | |
| 75 | 74 | OutputFile="$(OutDir)/testzlib.exe" |
| 76 | 75 | LinkIncremental="2" |
| 77 | 76 | GenerateManifest="false" |
| 78 | 77 | GenerateDebugInformation="true" |
| 79 | 78 | ProgramDatabaseFile="$(OutDir)/testzlib.pdb" |
| @@ -126,11 +125,11 @@ | ||
| 126 | 125 | Name="VCMIDLTool" |
| 127 | 126 | /> |
| 128 | 127 | <Tool |
| 129 | 128 | Name="VCCLCompilerTool" |
| 130 | 129 | AdditionalIncludeDirectories="..\..\.." |
| 131 | - PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 130 | + PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 132 | 131 | BasicRuntimeChecks="0" |
| 133 | 132 | RuntimeLibrary="3" |
| 134 | 133 | BufferSecurityCheck="false" |
| 135 | 134 | AssemblerListingLocation="$(IntDir)\" |
| 136 | 135 | /> |
| @@ -143,11 +142,10 @@ | ||
| 143 | 142 | <Tool |
| 144 | 143 | Name="VCPreLinkEventTool" |
| 145 | 144 | /> |
| 146 | 145 | <Tool |
| 147 | 146 | Name="VCLinkerTool" |
| 148 | - AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj" | |
| 149 | 147 | GenerateManifest="false" |
| 150 | 148 | /> |
| 151 | 149 | <Tool |
| 152 | 150 | Name="VCALinkTool" |
| 153 | 151 | /> |
| @@ -515,11 +513,11 @@ | ||
| 515 | 513 | Name="VCCLCompilerTool" |
| 516 | 514 | Optimization="2" |
| 517 | 515 | InlineFunctionExpansion="1" |
| 518 | 516 | OmitFramePointers="true" |
| 519 | 517 | AdditionalIncludeDirectories="..\..\.." |
| 520 | - PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 518 | + PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 521 | 519 | StringPooling="true" |
| 522 | 520 | BasicRuntimeChecks="0" |
| 523 | 521 | RuntimeLibrary="0" |
| 524 | 522 | BufferSecurityCheck="false" |
| 525 | 523 | EnableFunctionLevelLinking="true" |
| @@ -538,11 +536,10 @@ | ||
| 538 | 536 | <Tool |
| 539 | 537 | Name="VCPreLinkEventTool" |
| 540 | 538 | /> |
| 541 | 539 | <Tool |
| 542 | 540 | Name="VCLinkerTool" |
| 543 | - AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj" | |
| 544 | 541 | OutputFile="$(OutDir)/testzlib.exe" |
| 545 | 542 | LinkIncremental="1" |
| 546 | 543 | GenerateManifest="false" |
| 547 | 544 | GenerateDebugInformation="true" |
| 548 | 545 | SubSystem="1" |
| @@ -598,11 +595,11 @@ | ||
| 598 | 595 | Name="VCMIDLTool" |
| 599 | 596 | /> |
| 600 | 597 | <Tool |
| 601 | 598 | Name="VCCLCompilerTool" |
| 602 | 599 | AdditionalIncludeDirectories="..\..\.." |
| 603 | - PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 600 | + PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 604 | 601 | BasicRuntimeChecks="0" |
| 605 | 602 | RuntimeLibrary="0" |
| 606 | 603 | BufferSecurityCheck="false" |
| 607 | 604 | AssemblerListingLocation="$(IntDir)\" |
| 608 | 605 | /> |
| @@ -615,11 +612,10 @@ | ||
| 615 | 612 | <Tool |
| 616 | 613 | Name="VCPreLinkEventTool" |
| 617 | 614 | /> |
| 618 | 615 | <Tool |
| 619 | 616 | Name="VCLinkerTool" |
| 620 | - AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj" | |
| 621 | 617 | GenerateManifest="false" |
| 622 | 618 | /> |
| 623 | 619 | <Tool |
| 624 | 620 | Name="VCALinkTool" |
| 625 | 621 | /> |
| @@ -731,11 +727,11 @@ | ||
| 731 | 727 | <References> |
| 732 | 728 | </References> |
| 733 | 729 | <Files> |
| 734 | 730 | <Filter |
| 735 | 731 | Name="Source Files" |
| 736 | - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" | |
| 732 | + Filter="cpp;c;cxx;def;odl;idl;hpj;bat" | |
| 737 | 733 | > |
| 738 | 734 | <File |
| 739 | 735 | RelativePath="..\..\..\adler32.c" |
| 740 | 736 | > |
| 741 | 737 | </File> |
| @@ -754,62 +750,10 @@ | ||
| 754 | 750 | <File |
| 755 | 751 | RelativePath="..\..\..\infback.c" |
| 756 | 752 | > |
| 757 | 753 | </File> |
| 758 | 754 | <File |
| 759 | - RelativePath="..\..\masmx64\inffas8664.c" | |
| 760 | - > | |
| 761 | - <FileConfiguration | |
| 762 | - Name="Debug|Win32" | |
| 763 | - ExcludedFromBuild="true" | |
| 764 | - > | |
| 765 | - <Tool | |
| 766 | - Name="VCCLCompilerTool" | |
| 767 | - /> | |
| 768 | - </FileConfiguration> | |
| 769 | - <FileConfiguration | |
| 770 | - Name="Debug|Itanium" | |
| 771 | - ExcludedFromBuild="true" | |
| 772 | - > | |
| 773 | - <Tool | |
| 774 | - Name="VCCLCompilerTool" | |
| 775 | - /> | |
| 776 | - </FileConfiguration> | |
| 777 | - <FileConfiguration | |
| 778 | - Name="ReleaseWithoutAsm|Win32" | |
| 779 | - ExcludedFromBuild="true" | |
| 780 | - > | |
| 781 | - <Tool | |
| 782 | - Name="VCCLCompilerTool" | |
| 783 | - /> | |
| 784 | - </FileConfiguration> | |
| 785 | - <FileConfiguration | |
| 786 | - Name="ReleaseWithoutAsm|Itanium" | |
| 787 | - ExcludedFromBuild="true" | |
| 788 | - > | |
| 789 | - <Tool | |
| 790 | - Name="VCCLCompilerTool" | |
| 791 | - /> | |
| 792 | - </FileConfiguration> | |
| 793 | - <FileConfiguration | |
| 794 | - Name="Release|Win32" | |
| 795 | - ExcludedFromBuild="true" | |
| 796 | - > | |
| 797 | - <Tool | |
| 798 | - Name="VCCLCompilerTool" | |
| 799 | - /> | |
| 800 | - </FileConfiguration> | |
| 801 | - <FileConfiguration | |
| 802 | - Name="Release|Itanium" | |
| 803 | - ExcludedFromBuild="true" | |
| 804 | - > | |
| 805 | - <Tool | |
| 806 | - Name="VCCLCompilerTool" | |
| 807 | - /> | |
| 808 | - </FileConfiguration> | |
| 809 | - </File> | |
| 810 | - <File | |
| 811 | 755 | RelativePath="..\..\..\inffast.c" |
| 812 | 756 | > |
| 813 | 757 | </File> |
| 814 | 758 | <File |
| 815 | 759 | RelativePath="..\..\..\inflate.c" |
| 816 | 760 |
| --- compat/zlib/contrib/vstudio/vc9/testzlib.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/testzlib.vcproj | |
| @@ -46,11 +46,11 @@ | |
| 46 | /> |
| 47 | <Tool |
| 48 | Name="VCCLCompilerTool" |
| 49 | Optimization="0" |
| 50 | AdditionalIncludeDirectories="..\..\.." |
| 51 | PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 52 | MinimalRebuild="true" |
| 53 | BasicRuntimeChecks="0" |
| 54 | RuntimeLibrary="1" |
| 55 | BufferSecurityCheck="false" |
| 56 | UsePrecompiledHeader="0" |
| @@ -69,11 +69,10 @@ | |
| 69 | <Tool |
| 70 | Name="VCPreLinkEventTool" |
| 71 | /> |
| 72 | <Tool |
| 73 | Name="VCLinkerTool" |
| 74 | AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj" |
| 75 | OutputFile="$(OutDir)/testzlib.exe" |
| 76 | LinkIncremental="2" |
| 77 | GenerateManifest="false" |
| 78 | GenerateDebugInformation="true" |
| 79 | ProgramDatabaseFile="$(OutDir)/testzlib.pdb" |
| @@ -126,11 +125,11 @@ | |
| 126 | Name="VCMIDLTool" |
| 127 | /> |
| 128 | <Tool |
| 129 | Name="VCCLCompilerTool" |
| 130 | AdditionalIncludeDirectories="..\..\.." |
| 131 | PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 132 | BasicRuntimeChecks="0" |
| 133 | RuntimeLibrary="3" |
| 134 | BufferSecurityCheck="false" |
| 135 | AssemblerListingLocation="$(IntDir)\" |
| 136 | /> |
| @@ -143,11 +142,10 @@ | |
| 143 | <Tool |
| 144 | Name="VCPreLinkEventTool" |
| 145 | /> |
| 146 | <Tool |
| 147 | Name="VCLinkerTool" |
| 148 | AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj" |
| 149 | GenerateManifest="false" |
| 150 | /> |
| 151 | <Tool |
| 152 | Name="VCALinkTool" |
| 153 | /> |
| @@ -515,11 +513,11 @@ | |
| 515 | Name="VCCLCompilerTool" |
| 516 | Optimization="2" |
| 517 | InlineFunctionExpansion="1" |
| 518 | OmitFramePointers="true" |
| 519 | AdditionalIncludeDirectories="..\..\.." |
| 520 | PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 521 | StringPooling="true" |
| 522 | BasicRuntimeChecks="0" |
| 523 | RuntimeLibrary="0" |
| 524 | BufferSecurityCheck="false" |
| 525 | EnableFunctionLevelLinking="true" |
| @@ -538,11 +536,10 @@ | |
| 538 | <Tool |
| 539 | Name="VCPreLinkEventTool" |
| 540 | /> |
| 541 | <Tool |
| 542 | Name="VCLinkerTool" |
| 543 | AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj" |
| 544 | OutputFile="$(OutDir)/testzlib.exe" |
| 545 | LinkIncremental="1" |
| 546 | GenerateManifest="false" |
| 547 | GenerateDebugInformation="true" |
| 548 | SubSystem="1" |
| @@ -598,11 +595,11 @@ | |
| 598 | Name="VCMIDLTool" |
| 599 | /> |
| 600 | <Tool |
| 601 | Name="VCCLCompilerTool" |
| 602 | AdditionalIncludeDirectories="..\..\.." |
| 603 | PreprocessorDefinitions="ASMV;ASMINF;WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 604 | BasicRuntimeChecks="0" |
| 605 | RuntimeLibrary="0" |
| 606 | BufferSecurityCheck="false" |
| 607 | AssemblerListingLocation="$(IntDir)\" |
| 608 | /> |
| @@ -615,11 +612,10 @@ | |
| 615 | <Tool |
| 616 | Name="VCPreLinkEventTool" |
| 617 | /> |
| 618 | <Tool |
| 619 | Name="VCLinkerTool" |
| 620 | AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj" |
| 621 | GenerateManifest="false" |
| 622 | /> |
| 623 | <Tool |
| 624 | Name="VCALinkTool" |
| 625 | /> |
| @@ -731,11 +727,11 @@ | |
| 731 | <References> |
| 732 | </References> |
| 733 | <Files> |
| 734 | <Filter |
| 735 | Name="Source Files" |
| 736 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" |
| 737 | > |
| 738 | <File |
| 739 | RelativePath="..\..\..\adler32.c" |
| 740 | > |
| 741 | </File> |
| @@ -754,62 +750,10 @@ | |
| 754 | <File |
| 755 | RelativePath="..\..\..\infback.c" |
| 756 | > |
| 757 | </File> |
| 758 | <File |
| 759 | RelativePath="..\..\masmx64\inffas8664.c" |
| 760 | > |
| 761 | <FileConfiguration |
| 762 | Name="Debug|Win32" |
| 763 | ExcludedFromBuild="true" |
| 764 | > |
| 765 | <Tool |
| 766 | Name="VCCLCompilerTool" |
| 767 | /> |
| 768 | </FileConfiguration> |
| 769 | <FileConfiguration |
| 770 | Name="Debug|Itanium" |
| 771 | ExcludedFromBuild="true" |
| 772 | > |
| 773 | <Tool |
| 774 | Name="VCCLCompilerTool" |
| 775 | /> |
| 776 | </FileConfiguration> |
| 777 | <FileConfiguration |
| 778 | Name="ReleaseWithoutAsm|Win32" |
| 779 | ExcludedFromBuild="true" |
| 780 | > |
| 781 | <Tool |
| 782 | Name="VCCLCompilerTool" |
| 783 | /> |
| 784 | </FileConfiguration> |
| 785 | <FileConfiguration |
| 786 | Name="ReleaseWithoutAsm|Itanium" |
| 787 | ExcludedFromBuild="true" |
| 788 | > |
| 789 | <Tool |
| 790 | Name="VCCLCompilerTool" |
| 791 | /> |
| 792 | </FileConfiguration> |
| 793 | <FileConfiguration |
| 794 | Name="Release|Win32" |
| 795 | ExcludedFromBuild="true" |
| 796 | > |
| 797 | <Tool |
| 798 | Name="VCCLCompilerTool" |
| 799 | /> |
| 800 | </FileConfiguration> |
| 801 | <FileConfiguration |
| 802 | Name="Release|Itanium" |
| 803 | ExcludedFromBuild="true" |
| 804 | > |
| 805 | <Tool |
| 806 | Name="VCCLCompilerTool" |
| 807 | /> |
| 808 | </FileConfiguration> |
| 809 | </File> |
| 810 | <File |
| 811 | RelativePath="..\..\..\inffast.c" |
| 812 | > |
| 813 | </File> |
| 814 | <File |
| 815 | RelativePath="..\..\..\inflate.c" |
| 816 |
| --- compat/zlib/contrib/vstudio/vc9/testzlib.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/testzlib.vcproj | |
| @@ -46,11 +46,11 @@ | |
| 46 | /> |
| 47 | <Tool |
| 48 | Name="VCCLCompilerTool" |
| 49 | Optimization="0" |
| 50 | AdditionalIncludeDirectories="..\..\.." |
| 51 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 52 | MinimalRebuild="true" |
| 53 | BasicRuntimeChecks="0" |
| 54 | RuntimeLibrary="1" |
| 55 | BufferSecurityCheck="false" |
| 56 | UsePrecompiledHeader="0" |
| @@ -69,11 +69,10 @@ | |
| 69 | <Tool |
| 70 | Name="VCPreLinkEventTool" |
| 71 | /> |
| 72 | <Tool |
| 73 | Name="VCLinkerTool" |
| 74 | OutputFile="$(OutDir)/testzlib.exe" |
| 75 | LinkIncremental="2" |
| 76 | GenerateManifest="false" |
| 77 | GenerateDebugInformation="true" |
| 78 | ProgramDatabaseFile="$(OutDir)/testzlib.pdb" |
| @@ -126,11 +125,11 @@ | |
| 125 | Name="VCMIDLTool" |
| 126 | /> |
| 127 | <Tool |
| 128 | Name="VCCLCompilerTool" |
| 129 | AdditionalIncludeDirectories="..\..\.." |
| 130 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_DEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 131 | BasicRuntimeChecks="0" |
| 132 | RuntimeLibrary="3" |
| 133 | BufferSecurityCheck="false" |
| 134 | AssemblerListingLocation="$(IntDir)\" |
| 135 | /> |
| @@ -143,11 +142,10 @@ | |
| 142 | <Tool |
| 143 | Name="VCPreLinkEventTool" |
| 144 | /> |
| 145 | <Tool |
| 146 | Name="VCLinkerTool" |
| 147 | GenerateManifest="false" |
| 148 | /> |
| 149 | <Tool |
| 150 | Name="VCALinkTool" |
| 151 | /> |
| @@ -515,11 +513,11 @@ | |
| 513 | Name="VCCLCompilerTool" |
| 514 | Optimization="2" |
| 515 | InlineFunctionExpansion="1" |
| 516 | OmitFramePointers="true" |
| 517 | AdditionalIncludeDirectories="..\..\.." |
| 518 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 519 | StringPooling="true" |
| 520 | BasicRuntimeChecks="0" |
| 521 | RuntimeLibrary="0" |
| 522 | BufferSecurityCheck="false" |
| 523 | EnableFunctionLevelLinking="true" |
| @@ -538,11 +536,10 @@ | |
| 536 | <Tool |
| 537 | Name="VCPreLinkEventTool" |
| 538 | /> |
| 539 | <Tool |
| 540 | Name="VCLinkerTool" |
| 541 | OutputFile="$(OutDir)/testzlib.exe" |
| 542 | LinkIncremental="1" |
| 543 | GenerateManifest="false" |
| 544 | GenerateDebugInformation="true" |
| 545 | SubSystem="1" |
| @@ -598,11 +595,11 @@ | |
| 595 | Name="VCMIDLTool" |
| 596 | /> |
| 597 | <Tool |
| 598 | Name="VCCLCompilerTool" |
| 599 | AdditionalIncludeDirectories="..\..\.." |
| 600 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;NDEBUG;_CONSOLE;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 601 | BasicRuntimeChecks="0" |
| 602 | RuntimeLibrary="0" |
| 603 | BufferSecurityCheck="false" |
| 604 | AssemblerListingLocation="$(IntDir)\" |
| 605 | /> |
| @@ -615,11 +612,10 @@ | |
| 612 | <Tool |
| 613 | Name="VCPreLinkEventTool" |
| 614 | /> |
| 615 | <Tool |
| 616 | Name="VCLinkerTool" |
| 617 | GenerateManifest="false" |
| 618 | /> |
| 619 | <Tool |
| 620 | Name="VCALinkTool" |
| 621 | /> |
| @@ -731,11 +727,11 @@ | |
| 727 | <References> |
| 728 | </References> |
| 729 | <Files> |
| 730 | <Filter |
| 731 | Name="Source Files" |
| 732 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat" |
| 733 | > |
| 734 | <File |
| 735 | RelativePath="..\..\..\adler32.c" |
| 736 | > |
| 737 | </File> |
| @@ -754,62 +750,10 @@ | |
| 750 | <File |
| 751 | RelativePath="..\..\..\infback.c" |
| 752 | > |
| 753 | </File> |
| 754 | <File |
| 755 | RelativePath="..\..\..\inffast.c" |
| 756 | > |
| 757 | </File> |
| 758 | <File |
| 759 | RelativePath="..\..\..\inflate.c" |
| 760 |
| --- compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj | ||
| +++ compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj | ||
| @@ -540,11 +540,11 @@ | ||
| 540 | 540 | <References> |
| 541 | 541 | </References> |
| 542 | 542 | <Files> |
| 543 | 543 | <Filter |
| 544 | 544 | Name="Source Files" |
| 545 | - Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" | |
| 545 | + Filter="cpp;c;cxx;def;odl;idl;hpj;bat" | |
| 546 | 546 | > |
| 547 | 547 | <File |
| 548 | 548 | RelativePath="..\..\testzlib\testzlib.c" |
| 549 | 549 | > |
| 550 | 550 | </File> |
| 551 | 551 |
| --- compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj | |
| @@ -540,11 +540,11 @@ | |
| 540 | <References> |
| 541 | </References> |
| 542 | <Files> |
| 543 | <Filter |
| 544 | Name="Source Files" |
| 545 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat;asm" |
| 546 | > |
| 547 | <File |
| 548 | RelativePath="..\..\testzlib\testzlib.c" |
| 549 | > |
| 550 | </File> |
| 551 |
| --- compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/testzlibdll.vcproj | |
| @@ -540,11 +540,11 @@ | |
| 540 | <References> |
| 541 | </References> |
| 542 | <Files> |
| 543 | <Filter |
| 544 | Name="Source Files" |
| 545 | Filter="cpp;c;cxx;def;odl;idl;hpj;bat" |
| 546 | > |
| 547 | <File |
| 548 | RelativePath="..\..\testzlib\testzlib.c" |
| 549 | > |
| 550 | </File> |
| 551 |
| --- compat/zlib/contrib/vstudio/vc9/zlib.rc | ||
| +++ compat/zlib/contrib/vstudio/vc9/zlib.rc | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | 1 | #include <windows.h> |
| 2 | 2 | |
| 3 | 3 | #define IDR_VERSION1 1 |
| 4 | 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | - FILEVERSION 1, 2, 12, 0 | |
| 6 | - PRODUCTVERSION 1, 2, 12, 0 | |
| 5 | + FILEVERSION 1, 2, 13, 0 | |
| 6 | + PRODUCTVERSION 1, 2, 13, 0 | |
| 7 | 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | 8 | FILEFLAGS 0 |
| 9 | 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | 10 | FILETYPE VFT_DLL |
| 11 | 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | ||
| 15 | 15 | BLOCK "040904E4" |
| 16 | 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | 17 | |
| 18 | 18 | BEGIN |
| 19 | 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | - VALUE "FileVersion", "1.2.12\0" | |
| 20 | + VALUE "FileVersion", "1.2.13\0" | |
| 21 | 21 | VALUE "InternalName", "zlib\0" |
| 22 | 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 | 26 |
| --- compat/zlib/contrib/vstudio/vc9/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc9/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 12, 0 |
| 6 | PRODUCTVERSION 1, 2, 12, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.12\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc9/zlib.rc | |
| +++ compat/zlib/contrib/vstudio/vc9/zlib.rc | |
| @@ -1,11 +1,11 @@ | |
| 1 | #include <windows.h> |
| 2 | |
| 3 | #define IDR_VERSION1 1 |
| 4 | IDR_VERSION1 VERSIONINFO MOVEABLE IMPURE LOADONCALL DISCARDABLE |
| 5 | FILEVERSION 1, 2, 13, 0 |
| 6 | PRODUCTVERSION 1, 2, 13, 0 |
| 7 | FILEFLAGSMASK VS_FFI_FILEFLAGSMASK |
| 8 | FILEFLAGS 0 |
| 9 | FILEOS VOS_DOS_WINDOWS32 |
| 10 | FILETYPE VFT_DLL |
| 11 | FILESUBTYPE 0 // not used |
| @@ -15,11 +15,11 @@ | |
| 15 | BLOCK "040904E4" |
| 16 | //language ID = U.S. English, char set = Windows, Multilingual |
| 17 | |
| 18 | BEGIN |
| 19 | VALUE "FileDescription", "zlib data compression and ZIP file I/O library\0" |
| 20 | VALUE "FileVersion", "1.2.13\0" |
| 21 | VALUE "InternalName", "zlib\0" |
| 22 | VALUE "OriginalFilename", "zlibwapi.dll\0" |
| 23 | VALUE "ProductName", "ZLib.DLL\0" |
| 24 | VALUE "Comments","DLL support by Alessandro Iacopetti & Gilles Vollant\0" |
| 25 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 26 |
| --- compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj | ||
| +++ compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj | ||
| @@ -45,11 +45,11 @@ | ||
| 45 | 45 | Name="VCMIDLTool" |
| 46 | 46 | /> |
| 47 | 47 | <Tool |
| 48 | 48 | Name="VCCLCompilerTool" |
| 49 | 49 | Optimization="0" |
| 50 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 50 | + AdditionalIncludeDirectories="..\..\.." | |
| 51 | 51 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 52 | 52 | ExceptionHandling="0" |
| 53 | 53 | RuntimeLibrary="1" |
| 54 | 54 | BufferSecurityCheck="false" |
| 55 | 55 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -119,11 +119,11 @@ | ||
| 119 | 119 | TargetEnvironment="3" |
| 120 | 120 | /> |
| 121 | 121 | <Tool |
| 122 | 122 | Name="VCCLCompilerTool" |
| 123 | 123 | Optimization="0" |
| 124 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 124 | + AdditionalIncludeDirectories="..\..\.." | |
| 125 | 125 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 126 | 126 | ExceptionHandling="0" |
| 127 | 127 | RuntimeLibrary="3" |
| 128 | 128 | BufferSecurityCheck="false" |
| 129 | 129 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -193,11 +193,11 @@ | ||
| 193 | 193 | TargetEnvironment="2" |
| 194 | 194 | /> |
| 195 | 195 | <Tool |
| 196 | 196 | Name="VCCLCompilerTool" |
| 197 | 197 | Optimization="0" |
| 198 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 198 | + AdditionalIncludeDirectories="..\..\.." | |
| 199 | 199 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 200 | 200 | ExceptionHandling="0" |
| 201 | 201 | RuntimeLibrary="3" |
| 202 | 202 | BufferSecurityCheck="false" |
| 203 | 203 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -266,12 +266,12 @@ | ||
| 266 | 266 | Name="VCMIDLTool" |
| 267 | 267 | /> |
| 268 | 268 | <Tool |
| 269 | 269 | Name="VCCLCompilerTool" |
| 270 | 270 | InlineFunctionExpansion="1" |
| 271 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 272 | - PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF" | |
| 271 | + AdditionalIncludeDirectories="..\..\.." | |
| 272 | + PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" | |
| 273 | 273 | StringPooling="true" |
| 274 | 274 | ExceptionHandling="0" |
| 275 | 275 | RuntimeLibrary="0" |
| 276 | 276 | BufferSecurityCheck="false" |
| 277 | 277 | EnableFunctionLevelLinking="true" |
| @@ -293,11 +293,10 @@ | ||
| 293 | 293 | Name="VCPreLinkEventTool" |
| 294 | 294 | /> |
| 295 | 295 | <Tool |
| 296 | 296 | Name="VCLibrarianTool" |
| 297 | 297 | AdditionalOptions="/MACHINE:X86 /NODEFAULTLIB" |
| 298 | - AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj " | |
| 299 | 298 | OutputFile="$(OutDir)\zlibstat.lib" |
| 300 | 299 | SuppressStartupBanner="true" |
| 301 | 300 | /> |
| 302 | 301 | <Tool |
| 303 | 302 | Name="VCALinkTool" |
| @@ -341,12 +340,12 @@ | ||
| 341 | 340 | TargetEnvironment="3" |
| 342 | 341 | /> |
| 343 | 342 | <Tool |
| 344 | 343 | Name="VCCLCompilerTool" |
| 345 | 344 | InlineFunctionExpansion="1" |
| 346 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 347 | - PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64" | |
| 345 | + AdditionalIncludeDirectories="..\..\.." | |
| 346 | + PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" | |
| 348 | 347 | StringPooling="true" |
| 349 | 348 | ExceptionHandling="0" |
| 350 | 349 | RuntimeLibrary="2" |
| 351 | 350 | BufferSecurityCheck="false" |
| 352 | 351 | EnableFunctionLevelLinking="true" |
| @@ -368,11 +367,10 @@ | ||
| 368 | 367 | Name="VCPreLinkEventTool" |
| 369 | 368 | /> |
| 370 | 369 | <Tool |
| 371 | 370 | Name="VCLibrarianTool" |
| 372 | 371 | AdditionalOptions="/MACHINE:AMD64 /NODEFAULTLIB" |
| 373 | - AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj " | |
| 374 | 372 | OutputFile="$(OutDir)\zlibstat.lib" |
| 375 | 373 | SuppressStartupBanner="true" |
| 376 | 374 | /> |
| 377 | 375 | <Tool |
| 378 | 376 | Name="VCALinkTool" |
| @@ -416,11 +414,11 @@ | ||
| 416 | 414 | TargetEnvironment="2" |
| 417 | 415 | /> |
| 418 | 416 | <Tool |
| 419 | 417 | Name="VCCLCompilerTool" |
| 420 | 418 | InlineFunctionExpansion="1" |
| 421 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 419 | + AdditionalIncludeDirectories="..\..\.." | |
| 422 | 420 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 423 | 421 | StringPooling="true" |
| 424 | 422 | ExceptionHandling="0" |
| 425 | 423 | RuntimeLibrary="2" |
| 426 | 424 | BufferSecurityCheck="false" |
| @@ -489,11 +487,11 @@ | ||
| 489 | 487 | Name="VCMIDLTool" |
| 490 | 488 | /> |
| 491 | 489 | <Tool |
| 492 | 490 | Name="VCCLCompilerTool" |
| 493 | 491 | InlineFunctionExpansion="1" |
| 494 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 492 | + AdditionalIncludeDirectories="..\..\.." | |
| 495 | 493 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 496 | 494 | StringPooling="true" |
| 497 | 495 | ExceptionHandling="0" |
| 498 | 496 | RuntimeLibrary="0" |
| 499 | 497 | BufferSecurityCheck="false" |
| @@ -563,11 +561,11 @@ | ||
| 563 | 561 | TargetEnvironment="3" |
| 564 | 562 | /> |
| 565 | 563 | <Tool |
| 566 | 564 | Name="VCCLCompilerTool" |
| 567 | 565 | InlineFunctionExpansion="1" |
| 568 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 566 | + AdditionalIncludeDirectories="..\..\.." | |
| 569 | 567 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 570 | 568 | StringPooling="true" |
| 571 | 569 | ExceptionHandling="0" |
| 572 | 570 | RuntimeLibrary="2" |
| 573 | 571 | BufferSecurityCheck="false" |
| @@ -637,11 +635,11 @@ | ||
| 637 | 635 | TargetEnvironment="2" |
| 638 | 636 | /> |
| 639 | 637 | <Tool |
| 640 | 638 | Name="VCCLCompilerTool" |
| 641 | 639 | InlineFunctionExpansion="1" |
| 642 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 640 | + AdditionalIncludeDirectories="..\..\.." | |
| 643 | 641 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 644 | 642 | StringPooling="true" |
| 645 | 643 | ExceptionHandling="0" |
| 646 | 644 | RuntimeLibrary="2" |
| 647 | 645 | BufferSecurityCheck="false" |
| @@ -731,62 +729,10 @@ | ||
| 731 | 729 | <File |
| 732 | 730 | RelativePath="..\..\..\infback.c" |
| 733 | 731 | > |
| 734 | 732 | </File> |
| 735 | 733 | <File |
| 736 | - RelativePath="..\..\masmx64\inffas8664.c" | |
| 737 | - > | |
| 738 | - <FileConfiguration | |
| 739 | - Name="Debug|Win32" | |
| 740 | - ExcludedFromBuild="true" | |
| 741 | - > | |
| 742 | - <Tool | |
| 743 | - Name="VCCLCompilerTool" | |
| 744 | - /> | |
| 745 | - </FileConfiguration> | |
| 746 | - <FileConfiguration | |
| 747 | - Name="Debug|Itanium" | |
| 748 | - ExcludedFromBuild="true" | |
| 749 | - > | |
| 750 | - <Tool | |
| 751 | - Name="VCCLCompilerTool" | |
| 752 | - /> | |
| 753 | - </FileConfiguration> | |
| 754 | - <FileConfiguration | |
| 755 | - Name="Release|Win32" | |
| 756 | - ExcludedFromBuild="true" | |
| 757 | - > | |
| 758 | - <Tool | |
| 759 | - Name="VCCLCompilerTool" | |
| 760 | - /> | |
| 761 | - </FileConfiguration> | |
| 762 | - <FileConfiguration | |
| 763 | - Name="Release|Itanium" | |
| 764 | - ExcludedFromBuild="true" | |
| 765 | - > | |
| 766 | - <Tool | |
| 767 | - Name="VCCLCompilerTool" | |
| 768 | - /> | |
| 769 | - </FileConfiguration> | |
| 770 | - <FileConfiguration | |
| 771 | - Name="ReleaseWithoutAsm|Win32" | |
| 772 | - ExcludedFromBuild="true" | |
| 773 | - > | |
| 774 | - <Tool | |
| 775 | - Name="VCCLCompilerTool" | |
| 776 | - /> | |
| 777 | - </FileConfiguration> | |
| 778 | - <FileConfiguration | |
| 779 | - Name="ReleaseWithoutAsm|Itanium" | |
| 780 | - ExcludedFromBuild="true" | |
| 781 | - > | |
| 782 | - <Tool | |
| 783 | - Name="VCCLCompilerTool" | |
| 784 | - /> | |
| 785 | - </FileConfiguration> | |
| 786 | - </File> | |
| 787 | - <File | |
| 788 | 734 | RelativePath="..\..\..\inffast.c" |
| 789 | 735 | > |
| 790 | 736 | </File> |
| 791 | 737 | <File |
| 792 | 738 | RelativePath="..\..\..\inflate.c" |
| 793 | 739 |
| --- compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj | |
| @@ -45,11 +45,11 @@ | |
| 45 | Name="VCMIDLTool" |
| 46 | /> |
| 47 | <Tool |
| 48 | Name="VCCLCompilerTool" |
| 49 | Optimization="0" |
| 50 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 51 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 52 | ExceptionHandling="0" |
| 53 | RuntimeLibrary="1" |
| 54 | BufferSecurityCheck="false" |
| 55 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -119,11 +119,11 @@ | |
| 119 | TargetEnvironment="3" |
| 120 | /> |
| 121 | <Tool |
| 122 | Name="VCCLCompilerTool" |
| 123 | Optimization="0" |
| 124 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 125 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 126 | ExceptionHandling="0" |
| 127 | RuntimeLibrary="3" |
| 128 | BufferSecurityCheck="false" |
| 129 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -193,11 +193,11 @@ | |
| 193 | TargetEnvironment="2" |
| 194 | /> |
| 195 | <Tool |
| 196 | Name="VCCLCompilerTool" |
| 197 | Optimization="0" |
| 198 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 199 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 200 | ExceptionHandling="0" |
| 201 | RuntimeLibrary="3" |
| 202 | BufferSecurityCheck="false" |
| 203 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -266,12 +266,12 @@ | |
| 266 | Name="VCMIDLTool" |
| 267 | /> |
| 268 | <Tool |
| 269 | Name="VCCLCompilerTool" |
| 270 | InlineFunctionExpansion="1" |
| 271 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 272 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF" |
| 273 | StringPooling="true" |
| 274 | ExceptionHandling="0" |
| 275 | RuntimeLibrary="0" |
| 276 | BufferSecurityCheck="false" |
| 277 | EnableFunctionLevelLinking="true" |
| @@ -293,11 +293,10 @@ | |
| 293 | Name="VCPreLinkEventTool" |
| 294 | /> |
| 295 | <Tool |
| 296 | Name="VCLibrarianTool" |
| 297 | AdditionalOptions="/MACHINE:X86 /NODEFAULTLIB" |
| 298 | AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj " |
| 299 | OutputFile="$(OutDir)\zlibstat.lib" |
| 300 | SuppressStartupBanner="true" |
| 301 | /> |
| 302 | <Tool |
| 303 | Name="VCALinkTool" |
| @@ -341,12 +340,12 @@ | |
| 341 | TargetEnvironment="3" |
| 342 | /> |
| 343 | <Tool |
| 344 | Name="VCCLCompilerTool" |
| 345 | InlineFunctionExpansion="1" |
| 346 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 347 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ASMV;ASMINF;WIN64" |
| 348 | StringPooling="true" |
| 349 | ExceptionHandling="0" |
| 350 | RuntimeLibrary="2" |
| 351 | BufferSecurityCheck="false" |
| 352 | EnableFunctionLevelLinking="true" |
| @@ -368,11 +367,10 @@ | |
| 368 | Name="VCPreLinkEventTool" |
| 369 | /> |
| 370 | <Tool |
| 371 | Name="VCLibrarianTool" |
| 372 | AdditionalOptions="/MACHINE:AMD64 /NODEFAULTLIB" |
| 373 | AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj " |
| 374 | OutputFile="$(OutDir)\zlibstat.lib" |
| 375 | SuppressStartupBanner="true" |
| 376 | /> |
| 377 | <Tool |
| 378 | Name="VCALinkTool" |
| @@ -416,11 +414,11 @@ | |
| 416 | TargetEnvironment="2" |
| 417 | /> |
| 418 | <Tool |
| 419 | Name="VCCLCompilerTool" |
| 420 | InlineFunctionExpansion="1" |
| 421 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 422 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 423 | StringPooling="true" |
| 424 | ExceptionHandling="0" |
| 425 | RuntimeLibrary="2" |
| 426 | BufferSecurityCheck="false" |
| @@ -489,11 +487,11 @@ | |
| 489 | Name="VCMIDLTool" |
| 490 | /> |
| 491 | <Tool |
| 492 | Name="VCCLCompilerTool" |
| 493 | InlineFunctionExpansion="1" |
| 494 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 495 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 496 | StringPooling="true" |
| 497 | ExceptionHandling="0" |
| 498 | RuntimeLibrary="0" |
| 499 | BufferSecurityCheck="false" |
| @@ -563,11 +561,11 @@ | |
| 563 | TargetEnvironment="3" |
| 564 | /> |
| 565 | <Tool |
| 566 | Name="VCCLCompilerTool" |
| 567 | InlineFunctionExpansion="1" |
| 568 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 569 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 570 | StringPooling="true" |
| 571 | ExceptionHandling="0" |
| 572 | RuntimeLibrary="2" |
| 573 | BufferSecurityCheck="false" |
| @@ -637,11 +635,11 @@ | |
| 637 | TargetEnvironment="2" |
| 638 | /> |
| 639 | <Tool |
| 640 | Name="VCCLCompilerTool" |
| 641 | InlineFunctionExpansion="1" |
| 642 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 643 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 644 | StringPooling="true" |
| 645 | ExceptionHandling="0" |
| 646 | RuntimeLibrary="2" |
| 647 | BufferSecurityCheck="false" |
| @@ -731,62 +729,10 @@ | |
| 731 | <File |
| 732 | RelativePath="..\..\..\infback.c" |
| 733 | > |
| 734 | </File> |
| 735 | <File |
| 736 | RelativePath="..\..\masmx64\inffas8664.c" |
| 737 | > |
| 738 | <FileConfiguration |
| 739 | Name="Debug|Win32" |
| 740 | ExcludedFromBuild="true" |
| 741 | > |
| 742 | <Tool |
| 743 | Name="VCCLCompilerTool" |
| 744 | /> |
| 745 | </FileConfiguration> |
| 746 | <FileConfiguration |
| 747 | Name="Debug|Itanium" |
| 748 | ExcludedFromBuild="true" |
| 749 | > |
| 750 | <Tool |
| 751 | Name="VCCLCompilerTool" |
| 752 | /> |
| 753 | </FileConfiguration> |
| 754 | <FileConfiguration |
| 755 | Name="Release|Win32" |
| 756 | ExcludedFromBuild="true" |
| 757 | > |
| 758 | <Tool |
| 759 | Name="VCCLCompilerTool" |
| 760 | /> |
| 761 | </FileConfiguration> |
| 762 | <FileConfiguration |
| 763 | Name="Release|Itanium" |
| 764 | ExcludedFromBuild="true" |
| 765 | > |
| 766 | <Tool |
| 767 | Name="VCCLCompilerTool" |
| 768 | /> |
| 769 | </FileConfiguration> |
| 770 | <FileConfiguration |
| 771 | Name="ReleaseWithoutAsm|Win32" |
| 772 | ExcludedFromBuild="true" |
| 773 | > |
| 774 | <Tool |
| 775 | Name="VCCLCompilerTool" |
| 776 | /> |
| 777 | </FileConfiguration> |
| 778 | <FileConfiguration |
| 779 | Name="ReleaseWithoutAsm|Itanium" |
| 780 | ExcludedFromBuild="true" |
| 781 | > |
| 782 | <Tool |
| 783 | Name="VCCLCompilerTool" |
| 784 | /> |
| 785 | </FileConfiguration> |
| 786 | </File> |
| 787 | <File |
| 788 | RelativePath="..\..\..\inffast.c" |
| 789 | > |
| 790 | </File> |
| 791 | <File |
| 792 | RelativePath="..\..\..\inflate.c" |
| 793 |
| --- compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/zlibstat.vcproj | |
| @@ -45,11 +45,11 @@ | |
| 45 | Name="VCMIDLTool" |
| 46 | /> |
| 47 | <Tool |
| 48 | Name="VCCLCompilerTool" |
| 49 | Optimization="0" |
| 50 | AdditionalIncludeDirectories="..\..\.." |
| 51 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 52 | ExceptionHandling="0" |
| 53 | RuntimeLibrary="1" |
| 54 | BufferSecurityCheck="false" |
| 55 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -119,11 +119,11 @@ | |
| 119 | TargetEnvironment="3" |
| 120 | /> |
| 121 | <Tool |
| 122 | Name="VCCLCompilerTool" |
| 123 | Optimization="0" |
| 124 | AdditionalIncludeDirectories="..\..\.." |
| 125 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 126 | ExceptionHandling="0" |
| 127 | RuntimeLibrary="3" |
| 128 | BufferSecurityCheck="false" |
| 129 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -193,11 +193,11 @@ | |
| 193 | TargetEnvironment="2" |
| 194 | /> |
| 195 | <Tool |
| 196 | Name="VCCLCompilerTool" |
| 197 | Optimization="0" |
| 198 | AdditionalIncludeDirectories="..\..\.." |
| 199 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 200 | ExceptionHandling="0" |
| 201 | RuntimeLibrary="3" |
| 202 | BufferSecurityCheck="false" |
| 203 | PrecompiledHeaderFile="$(IntDir)/zlibstat.pch" |
| @@ -266,12 +266,12 @@ | |
| 266 | Name="VCMIDLTool" |
| 267 | /> |
| 268 | <Tool |
| 269 | Name="VCCLCompilerTool" |
| 270 | InlineFunctionExpansion="1" |
| 271 | AdditionalIncludeDirectories="..\..\.." |
| 272 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 273 | StringPooling="true" |
| 274 | ExceptionHandling="0" |
| 275 | RuntimeLibrary="0" |
| 276 | BufferSecurityCheck="false" |
| 277 | EnableFunctionLevelLinking="true" |
| @@ -293,11 +293,10 @@ | |
| 293 | Name="VCPreLinkEventTool" |
| 294 | /> |
| 295 | <Tool |
| 296 | Name="VCLibrarianTool" |
| 297 | AdditionalOptions="/MACHINE:X86 /NODEFAULTLIB" |
| 298 | OutputFile="$(OutDir)\zlibstat.lib" |
| 299 | SuppressStartupBanner="true" |
| 300 | /> |
| 301 | <Tool |
| 302 | Name="VCALinkTool" |
| @@ -341,12 +340,12 @@ | |
| 340 | TargetEnvironment="3" |
| 341 | /> |
| 342 | <Tool |
| 343 | Name="VCCLCompilerTool" |
| 344 | InlineFunctionExpansion="1" |
| 345 | AdditionalIncludeDirectories="..\..\.." |
| 346 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 347 | StringPooling="true" |
| 348 | ExceptionHandling="0" |
| 349 | RuntimeLibrary="2" |
| 350 | BufferSecurityCheck="false" |
| 351 | EnableFunctionLevelLinking="true" |
| @@ -368,11 +367,10 @@ | |
| 367 | Name="VCPreLinkEventTool" |
| 368 | /> |
| 369 | <Tool |
| 370 | Name="VCLibrarianTool" |
| 371 | AdditionalOptions="/MACHINE:AMD64 /NODEFAULTLIB" |
| 372 | OutputFile="$(OutDir)\zlibstat.lib" |
| 373 | SuppressStartupBanner="true" |
| 374 | /> |
| 375 | <Tool |
| 376 | Name="VCALinkTool" |
| @@ -416,11 +414,11 @@ | |
| 414 | TargetEnvironment="2" |
| 415 | /> |
| 416 | <Tool |
| 417 | Name="VCCLCompilerTool" |
| 418 | InlineFunctionExpansion="1" |
| 419 | AdditionalIncludeDirectories="..\..\.." |
| 420 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 421 | StringPooling="true" |
| 422 | ExceptionHandling="0" |
| 423 | RuntimeLibrary="2" |
| 424 | BufferSecurityCheck="false" |
| @@ -489,11 +487,11 @@ | |
| 487 | Name="VCMIDLTool" |
| 488 | /> |
| 489 | <Tool |
| 490 | Name="VCCLCompilerTool" |
| 491 | InlineFunctionExpansion="1" |
| 492 | AdditionalIncludeDirectories="..\..\.." |
| 493 | PreprocessorDefinitions="WIN32;ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS" |
| 494 | StringPooling="true" |
| 495 | ExceptionHandling="0" |
| 496 | RuntimeLibrary="0" |
| 497 | BufferSecurityCheck="false" |
| @@ -563,11 +561,11 @@ | |
| 561 | TargetEnvironment="3" |
| 562 | /> |
| 563 | <Tool |
| 564 | Name="VCCLCompilerTool" |
| 565 | InlineFunctionExpansion="1" |
| 566 | AdditionalIncludeDirectories="..\..\.." |
| 567 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 568 | StringPooling="true" |
| 569 | ExceptionHandling="0" |
| 570 | RuntimeLibrary="2" |
| 571 | BufferSecurityCheck="false" |
| @@ -637,11 +635,11 @@ | |
| 635 | TargetEnvironment="2" |
| 636 | /> |
| 637 | <Tool |
| 638 | Name="VCCLCompilerTool" |
| 639 | InlineFunctionExpansion="1" |
| 640 | AdditionalIncludeDirectories="..\..\.." |
| 641 | PreprocessorDefinitions="ZLIB_WINAPI;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;WIN64" |
| 642 | StringPooling="true" |
| 643 | ExceptionHandling="0" |
| 644 | RuntimeLibrary="2" |
| 645 | BufferSecurityCheck="false" |
| @@ -731,62 +729,10 @@ | |
| 729 | <File |
| 730 | RelativePath="..\..\..\infback.c" |
| 731 | > |
| 732 | </File> |
| 733 | <File |
| 734 | RelativePath="..\..\..\inffast.c" |
| 735 | > |
| 736 | </File> |
| 737 | <File |
| 738 | RelativePath="..\..\..\inflate.c" |
| 739 |
| --- compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj | ||
| +++ compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj | ||
| @@ -51,12 +51,12 @@ | ||
| 51 | 51 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 52 | 52 | /> |
| 53 | 53 | <Tool |
| 54 | 54 | Name="VCCLCompilerTool" |
| 55 | 55 | Optimization="0" |
| 56 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 57 | - PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF" | |
| 56 | + AdditionalIncludeDirectories="..\..\.." | |
| 57 | + PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" | |
| 58 | 58 | ExceptionHandling="0" |
| 59 | 59 | RuntimeLibrary="1" |
| 60 | 60 | BufferSecurityCheck="false" |
| 61 | 61 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| 62 | 62 | AssemblerListingLocation="$(IntDir)\" |
| @@ -79,11 +79,10 @@ | ||
| 79 | 79 | Name="VCPreLinkEventTool" |
| 80 | 80 | /> |
| 81 | 81 | <Tool |
| 82 | 82 | Name="VCLinkerTool" |
| 83 | 83 | AdditionalOptions="/MACHINE:I386" |
| 84 | - AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj" | |
| 85 | 84 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 86 | 85 | LinkIncremental="2" |
| 87 | 86 | SuppressStartupBanner="true" |
| 88 | 87 | GenerateManifest="false" |
| 89 | 88 | ModuleDefinitionFile=".\zlibvc.def" |
| @@ -148,12 +147,12 @@ | ||
| 148 | 147 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 149 | 148 | /> |
| 150 | 149 | <Tool |
| 151 | 150 | Name="VCCLCompilerTool" |
| 152 | 151 | Optimization="0" |
| 153 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 154 | - PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64" | |
| 152 | + AdditionalIncludeDirectories="..\..\.." | |
| 153 | + PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" | |
| 155 | 154 | ExceptionHandling="0" |
| 156 | 155 | RuntimeLibrary="3" |
| 157 | 156 | BufferSecurityCheck="false" |
| 158 | 157 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| 159 | 158 | AssemblerListingLocation="$(IntDir)\" |
| @@ -175,11 +174,10 @@ | ||
| 175 | 174 | <Tool |
| 176 | 175 | Name="VCPreLinkEventTool" |
| 177 | 176 | /> |
| 178 | 177 | <Tool |
| 179 | 178 | Name="VCLinkerTool" |
| 180 | - AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj " | |
| 181 | 179 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 182 | 180 | LinkIncremental="2" |
| 183 | 181 | SuppressStartupBanner="true" |
| 184 | 182 | GenerateManifest="false" |
| 185 | 183 | ModuleDefinitionFile=".\zlibvc.def" |
| @@ -243,11 +241,11 @@ | ||
| 243 | 241 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 244 | 242 | /> |
| 245 | 243 | <Tool |
| 246 | 244 | Name="VCCLCompilerTool" |
| 247 | 245 | Optimization="0" |
| 248 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 246 | + AdditionalIncludeDirectories="..\..\.." | |
| 249 | 247 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 250 | 248 | ExceptionHandling="0" |
| 251 | 249 | RuntimeLibrary="3" |
| 252 | 250 | BufferSecurityCheck="false" |
| 253 | 251 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| @@ -338,11 +336,11 @@ | ||
| 338 | 336 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 339 | 337 | /> |
| 340 | 338 | <Tool |
| 341 | 339 | Name="VCCLCompilerTool" |
| 342 | 340 | InlineFunctionExpansion="1" |
| 343 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 341 | + AdditionalIncludeDirectories="..\..\.." | |
| 344 | 342 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" |
| 345 | 343 | StringPooling="true" |
| 346 | 344 | ExceptionHandling="0" |
| 347 | 345 | RuntimeLibrary="2" |
| 348 | 346 | BufferSecurityCheck="false" |
| @@ -438,11 +436,11 @@ | ||
| 438 | 436 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 439 | 437 | /> |
| 440 | 438 | <Tool |
| 441 | 439 | Name="VCCLCompilerTool" |
| 442 | 440 | InlineFunctionExpansion="1" |
| 443 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 441 | + AdditionalIncludeDirectories="..\..\.." | |
| 444 | 442 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 445 | 443 | StringPooling="true" |
| 446 | 444 | ExceptionHandling="0" |
| 447 | 445 | RuntimeLibrary="2" |
| 448 | 446 | BufferSecurityCheck="false" |
| @@ -536,11 +534,11 @@ | ||
| 536 | 534 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 537 | 535 | /> |
| 538 | 536 | <Tool |
| 539 | 537 | Name="VCCLCompilerTool" |
| 540 | 538 | InlineFunctionExpansion="1" |
| 541 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 539 | + AdditionalIncludeDirectories="..\..\.." | |
| 542 | 540 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 543 | 541 | StringPooling="true" |
| 544 | 542 | ExceptionHandling="0" |
| 545 | 543 | RuntimeLibrary="2" |
| 546 | 544 | BufferSecurityCheck="false" |
| @@ -634,12 +632,12 @@ | ||
| 634 | 632 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 635 | 633 | /> |
| 636 | 634 | <Tool |
| 637 | 635 | Name="VCCLCompilerTool" |
| 638 | 636 | InlineFunctionExpansion="1" |
| 639 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 640 | - PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF" | |
| 637 | + AdditionalIncludeDirectories="..\..\.." | |
| 638 | + PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" | |
| 641 | 639 | StringPooling="true" |
| 642 | 640 | ExceptionHandling="0" |
| 643 | 641 | RuntimeLibrary="0" |
| 644 | 642 | BufferSecurityCheck="false" |
| 645 | 643 | EnableFunctionLevelLinking="true" |
| @@ -664,11 +662,10 @@ | ||
| 664 | 662 | Name="VCPreLinkEventTool" |
| 665 | 663 | /> |
| 666 | 664 | <Tool |
| 667 | 665 | Name="VCLinkerTool" |
| 668 | 666 | AdditionalOptions="/MACHINE:I386" |
| 669 | - AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj " | |
| 670 | 667 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 671 | 668 | LinkIncremental="1" |
| 672 | 669 | SuppressStartupBanner="true" |
| 673 | 670 | GenerateManifest="false" |
| 674 | 671 | IgnoreAllDefaultLibraries="false" |
| @@ -735,12 +732,12 @@ | ||
| 735 | 732 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 736 | 733 | /> |
| 737 | 734 | <Tool |
| 738 | 735 | Name="VCCLCompilerTool" |
| 739 | 736 | InlineFunctionExpansion="1" |
| 740 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 741 | - PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64" | |
| 737 | + AdditionalIncludeDirectories="..\..\.." | |
| 738 | + PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" | |
| 742 | 739 | StringPooling="true" |
| 743 | 740 | ExceptionHandling="0" |
| 744 | 741 | RuntimeLibrary="2" |
| 745 | 742 | BufferSecurityCheck="false" |
| 746 | 743 | EnableFunctionLevelLinking="true" |
| @@ -764,11 +761,10 @@ | ||
| 764 | 761 | <Tool |
| 765 | 762 | Name="VCPreLinkEventTool" |
| 766 | 763 | /> |
| 767 | 764 | <Tool |
| 768 | 765 | Name="VCLinkerTool" |
| 769 | - AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj " | |
| 770 | 766 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 771 | 767 | LinkIncremental="1" |
| 772 | 768 | SuppressStartupBanner="true" |
| 773 | 769 | GenerateManifest="false" |
| 774 | 770 | IgnoreAllDefaultLibraries="false" |
| @@ -834,11 +830,11 @@ | ||
| 834 | 830 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 835 | 831 | /> |
| 836 | 832 | <Tool |
| 837 | 833 | Name="VCCLCompilerTool" |
| 838 | 834 | InlineFunctionExpansion="1" |
| 839 | - AdditionalIncludeDirectories="..\..\..;..\..\masmx86" | |
| 835 | + AdditionalIncludeDirectories="..\..\.." | |
| 840 | 836 | PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 841 | 837 | StringPooling="true" |
| 842 | 838 | ExceptionHandling="0" |
| 843 | 839 | RuntimeLibrary="2" |
| 844 | 840 | BufferSecurityCheck="false" |
| @@ -948,62 +944,10 @@ | ||
| 948 | 944 | <File |
| 949 | 945 | RelativePath="..\..\..\infback.c" |
| 950 | 946 | > |
| 951 | 947 | </File> |
| 952 | 948 | <File |
| 953 | - RelativePath="..\..\masmx64\inffas8664.c" | |
| 954 | - > | |
| 955 | - <FileConfiguration | |
| 956 | - Name="Debug|Win32" | |
| 957 | - ExcludedFromBuild="true" | |
| 958 | - > | |
| 959 | - <Tool | |
| 960 | - Name="VCCLCompilerTool" | |
| 961 | - /> | |
| 962 | - </FileConfiguration> | |
| 963 | - <FileConfiguration | |
| 964 | - Name="Debug|Itanium" | |
| 965 | - ExcludedFromBuild="true" | |
| 966 | - > | |
| 967 | - <Tool | |
| 968 | - Name="VCCLCompilerTool" | |
| 969 | - /> | |
| 970 | - </FileConfiguration> | |
| 971 | - <FileConfiguration | |
| 972 | - Name="ReleaseWithoutAsm|Win32" | |
| 973 | - ExcludedFromBuild="true" | |
| 974 | - > | |
| 975 | - <Tool | |
| 976 | - Name="VCCLCompilerTool" | |
| 977 | - /> | |
| 978 | - </FileConfiguration> | |
| 979 | - <FileConfiguration | |
| 980 | - Name="ReleaseWithoutAsm|Itanium" | |
| 981 | - ExcludedFromBuild="true" | |
| 982 | - > | |
| 983 | - <Tool | |
| 984 | - Name="VCCLCompilerTool" | |
| 985 | - /> | |
| 986 | - </FileConfiguration> | |
| 987 | - <FileConfiguration | |
| 988 | - Name="Release|Win32" | |
| 989 | - ExcludedFromBuild="true" | |
| 990 | - > | |
| 991 | - <Tool | |
| 992 | - Name="VCCLCompilerTool" | |
| 993 | - /> | |
| 994 | - </FileConfiguration> | |
| 995 | - <FileConfiguration | |
| 996 | - Name="Release|Itanium" | |
| 997 | - ExcludedFromBuild="true" | |
| 998 | - > | |
| 999 | - <Tool | |
| 1000 | - Name="VCCLCompilerTool" | |
| 1001 | - /> | |
| 1002 | - </FileConfiguration> | |
| 1003 | - </File> | |
| 1004 | - <File | |
| 1005 | 949 | RelativePath="..\..\..\inffast.c" |
| 1006 | 950 | > |
| 1007 | 951 | </File> |
| 1008 | 952 | <File |
| 1009 | 953 | RelativePath="..\..\..\inflate.c" |
| 1010 | 954 |
| --- compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj | |
| @@ -51,12 +51,12 @@ | |
| 51 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 52 | /> |
| 53 | <Tool |
| 54 | Name="VCCLCompilerTool" |
| 55 | Optimization="0" |
| 56 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 57 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF" |
| 58 | ExceptionHandling="0" |
| 59 | RuntimeLibrary="1" |
| 60 | BufferSecurityCheck="false" |
| 61 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| 62 | AssemblerListingLocation="$(IntDir)\" |
| @@ -79,11 +79,10 @@ | |
| 79 | Name="VCPreLinkEventTool" |
| 80 | /> |
| 81 | <Tool |
| 82 | Name="VCLinkerTool" |
| 83 | AdditionalOptions="/MACHINE:I386" |
| 84 | AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj" |
| 85 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 86 | LinkIncremental="2" |
| 87 | SuppressStartupBanner="true" |
| 88 | GenerateManifest="false" |
| 89 | ModuleDefinitionFile=".\zlibvc.def" |
| @@ -148,12 +147,12 @@ | |
| 148 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 149 | /> |
| 150 | <Tool |
| 151 | Name="VCCLCompilerTool" |
| 152 | Optimization="0" |
| 153 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 154 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64" |
| 155 | ExceptionHandling="0" |
| 156 | RuntimeLibrary="3" |
| 157 | BufferSecurityCheck="false" |
| 158 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| 159 | AssemblerListingLocation="$(IntDir)\" |
| @@ -175,11 +174,10 @@ | |
| 175 | <Tool |
| 176 | Name="VCPreLinkEventTool" |
| 177 | /> |
| 178 | <Tool |
| 179 | Name="VCLinkerTool" |
| 180 | AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj " |
| 181 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 182 | LinkIncremental="2" |
| 183 | SuppressStartupBanner="true" |
| 184 | GenerateManifest="false" |
| 185 | ModuleDefinitionFile=".\zlibvc.def" |
| @@ -243,11 +241,11 @@ | |
| 243 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 244 | /> |
| 245 | <Tool |
| 246 | Name="VCCLCompilerTool" |
| 247 | Optimization="0" |
| 248 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 249 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 250 | ExceptionHandling="0" |
| 251 | RuntimeLibrary="3" |
| 252 | BufferSecurityCheck="false" |
| 253 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| @@ -338,11 +336,11 @@ | |
| 338 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 339 | /> |
| 340 | <Tool |
| 341 | Name="VCCLCompilerTool" |
| 342 | InlineFunctionExpansion="1" |
| 343 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 344 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" |
| 345 | StringPooling="true" |
| 346 | ExceptionHandling="0" |
| 347 | RuntimeLibrary="2" |
| 348 | BufferSecurityCheck="false" |
| @@ -438,11 +436,11 @@ | |
| 438 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 439 | /> |
| 440 | <Tool |
| 441 | Name="VCCLCompilerTool" |
| 442 | InlineFunctionExpansion="1" |
| 443 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 444 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 445 | StringPooling="true" |
| 446 | ExceptionHandling="0" |
| 447 | RuntimeLibrary="2" |
| 448 | BufferSecurityCheck="false" |
| @@ -536,11 +534,11 @@ | |
| 536 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 537 | /> |
| 538 | <Tool |
| 539 | Name="VCCLCompilerTool" |
| 540 | InlineFunctionExpansion="1" |
| 541 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 542 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 543 | StringPooling="true" |
| 544 | ExceptionHandling="0" |
| 545 | RuntimeLibrary="2" |
| 546 | BufferSecurityCheck="false" |
| @@ -634,12 +632,12 @@ | |
| 634 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 635 | /> |
| 636 | <Tool |
| 637 | Name="VCCLCompilerTool" |
| 638 | InlineFunctionExpansion="1" |
| 639 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 640 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF" |
| 641 | StringPooling="true" |
| 642 | ExceptionHandling="0" |
| 643 | RuntimeLibrary="0" |
| 644 | BufferSecurityCheck="false" |
| 645 | EnableFunctionLevelLinking="true" |
| @@ -664,11 +662,10 @@ | |
| 664 | Name="VCPreLinkEventTool" |
| 665 | /> |
| 666 | <Tool |
| 667 | Name="VCLinkerTool" |
| 668 | AdditionalOptions="/MACHINE:I386" |
| 669 | AdditionalDependencies="..\..\masmx86\match686.obj ..\..\masmx86\inffas32.obj " |
| 670 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 671 | LinkIncremental="1" |
| 672 | SuppressStartupBanner="true" |
| 673 | GenerateManifest="false" |
| 674 | IgnoreAllDefaultLibraries="false" |
| @@ -735,12 +732,12 @@ | |
| 735 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 736 | /> |
| 737 | <Tool |
| 738 | Name="VCCLCompilerTool" |
| 739 | InlineFunctionExpansion="1" |
| 740 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 741 | PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;ASMV;ASMINF;WIN64" |
| 742 | StringPooling="true" |
| 743 | ExceptionHandling="0" |
| 744 | RuntimeLibrary="2" |
| 745 | BufferSecurityCheck="false" |
| 746 | EnableFunctionLevelLinking="true" |
| @@ -764,11 +761,10 @@ | |
| 764 | <Tool |
| 765 | Name="VCPreLinkEventTool" |
| 766 | /> |
| 767 | <Tool |
| 768 | Name="VCLinkerTool" |
| 769 | AdditionalDependencies="..\..\masmx64\gvmat64.obj ..\..\masmx64\inffasx64.obj " |
| 770 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 771 | LinkIncremental="1" |
| 772 | SuppressStartupBanner="true" |
| 773 | GenerateManifest="false" |
| 774 | IgnoreAllDefaultLibraries="false" |
| @@ -834,11 +830,11 @@ | |
| 834 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 835 | /> |
| 836 | <Tool |
| 837 | Name="VCCLCompilerTool" |
| 838 | InlineFunctionExpansion="1" |
| 839 | AdditionalIncludeDirectories="..\..\..;..\..\masmx86" |
| 840 | PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 841 | StringPooling="true" |
| 842 | ExceptionHandling="0" |
| 843 | RuntimeLibrary="2" |
| 844 | BufferSecurityCheck="false" |
| @@ -948,62 +944,10 @@ | |
| 948 | <File |
| 949 | RelativePath="..\..\..\infback.c" |
| 950 | > |
| 951 | </File> |
| 952 | <File |
| 953 | RelativePath="..\..\masmx64\inffas8664.c" |
| 954 | > |
| 955 | <FileConfiguration |
| 956 | Name="Debug|Win32" |
| 957 | ExcludedFromBuild="true" |
| 958 | > |
| 959 | <Tool |
| 960 | Name="VCCLCompilerTool" |
| 961 | /> |
| 962 | </FileConfiguration> |
| 963 | <FileConfiguration |
| 964 | Name="Debug|Itanium" |
| 965 | ExcludedFromBuild="true" |
| 966 | > |
| 967 | <Tool |
| 968 | Name="VCCLCompilerTool" |
| 969 | /> |
| 970 | </FileConfiguration> |
| 971 | <FileConfiguration |
| 972 | Name="ReleaseWithoutAsm|Win32" |
| 973 | ExcludedFromBuild="true" |
| 974 | > |
| 975 | <Tool |
| 976 | Name="VCCLCompilerTool" |
| 977 | /> |
| 978 | </FileConfiguration> |
| 979 | <FileConfiguration |
| 980 | Name="ReleaseWithoutAsm|Itanium" |
| 981 | ExcludedFromBuild="true" |
| 982 | > |
| 983 | <Tool |
| 984 | Name="VCCLCompilerTool" |
| 985 | /> |
| 986 | </FileConfiguration> |
| 987 | <FileConfiguration |
| 988 | Name="Release|Win32" |
| 989 | ExcludedFromBuild="true" |
| 990 | > |
| 991 | <Tool |
| 992 | Name="VCCLCompilerTool" |
| 993 | /> |
| 994 | </FileConfiguration> |
| 995 | <FileConfiguration |
| 996 | Name="Release|Itanium" |
| 997 | ExcludedFromBuild="true" |
| 998 | > |
| 999 | <Tool |
| 1000 | Name="VCCLCompilerTool" |
| 1001 | /> |
| 1002 | </FileConfiguration> |
| 1003 | </File> |
| 1004 | <File |
| 1005 | RelativePath="..\..\..\inffast.c" |
| 1006 | > |
| 1007 | </File> |
| 1008 | <File |
| 1009 | RelativePath="..\..\..\inflate.c" |
| 1010 |
| --- compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj | |
| +++ compat/zlib/contrib/vstudio/vc9/zlibvc.vcproj | |
| @@ -51,12 +51,12 @@ | |
| 51 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 52 | /> |
| 53 | <Tool |
| 54 | Name="VCCLCompilerTool" |
| 55 | Optimization="0" |
| 56 | AdditionalIncludeDirectories="..\..\.." |
| 57 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" |
| 58 | ExceptionHandling="0" |
| 59 | RuntimeLibrary="1" |
| 60 | BufferSecurityCheck="false" |
| 61 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| 62 | AssemblerListingLocation="$(IntDir)\" |
| @@ -79,11 +79,10 @@ | |
| 79 | Name="VCPreLinkEventTool" |
| 80 | /> |
| 81 | <Tool |
| 82 | Name="VCLinkerTool" |
| 83 | AdditionalOptions="/MACHINE:I386" |
| 84 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 85 | LinkIncremental="2" |
| 86 | SuppressStartupBanner="true" |
| 87 | GenerateManifest="false" |
| 88 | ModuleDefinitionFile=".\zlibvc.def" |
| @@ -148,12 +147,12 @@ | |
| 147 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 148 | /> |
| 149 | <Tool |
| 150 | Name="VCCLCompilerTool" |
| 151 | Optimization="0" |
| 152 | AdditionalIncludeDirectories="..\..\.." |
| 153 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 154 | ExceptionHandling="0" |
| 155 | RuntimeLibrary="3" |
| 156 | BufferSecurityCheck="false" |
| 157 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| 158 | AssemblerListingLocation="$(IntDir)\" |
| @@ -175,11 +174,10 @@ | |
| 174 | <Tool |
| 175 | Name="VCPreLinkEventTool" |
| 176 | /> |
| 177 | <Tool |
| 178 | Name="VCLinkerTool" |
| 179 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 180 | LinkIncremental="2" |
| 181 | SuppressStartupBanner="true" |
| 182 | GenerateManifest="false" |
| 183 | ModuleDefinitionFile=".\zlibvc.def" |
| @@ -243,11 +241,11 @@ | |
| 241 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 242 | /> |
| 243 | <Tool |
| 244 | Name="VCCLCompilerTool" |
| 245 | Optimization="0" |
| 246 | AdditionalIncludeDirectories="..\..\.." |
| 247 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 248 | ExceptionHandling="0" |
| 249 | RuntimeLibrary="3" |
| 250 | BufferSecurityCheck="false" |
| 251 | PrecompiledHeaderFile="$(IntDir)/zlibvc.pch" |
| @@ -338,11 +336,11 @@ | |
| 336 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 337 | /> |
| 338 | <Tool |
| 339 | Name="VCCLCompilerTool" |
| 340 | InlineFunctionExpansion="1" |
| 341 | AdditionalIncludeDirectories="..\..\.." |
| 342 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" |
| 343 | StringPooling="true" |
| 344 | ExceptionHandling="0" |
| 345 | RuntimeLibrary="2" |
| 346 | BufferSecurityCheck="false" |
| @@ -438,11 +436,11 @@ | |
| 436 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 437 | /> |
| 438 | <Tool |
| 439 | Name="VCCLCompilerTool" |
| 440 | InlineFunctionExpansion="1" |
| 441 | AdditionalIncludeDirectories="..\..\.." |
| 442 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 443 | StringPooling="true" |
| 444 | ExceptionHandling="0" |
| 445 | RuntimeLibrary="2" |
| 446 | BufferSecurityCheck="false" |
| @@ -536,11 +534,11 @@ | |
| 534 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 535 | /> |
| 536 | <Tool |
| 537 | Name="VCCLCompilerTool" |
| 538 | InlineFunctionExpansion="1" |
| 539 | AdditionalIncludeDirectories="..\..\.." |
| 540 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 541 | StringPooling="true" |
| 542 | ExceptionHandling="0" |
| 543 | RuntimeLibrary="2" |
| 544 | BufferSecurityCheck="false" |
| @@ -634,12 +632,12 @@ | |
| 632 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 633 | /> |
| 634 | <Tool |
| 635 | Name="VCCLCompilerTool" |
| 636 | InlineFunctionExpansion="1" |
| 637 | AdditionalIncludeDirectories="..\..\.." |
| 638 | PreprocessorDefinitions="WIN32;_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI" |
| 639 | StringPooling="true" |
| 640 | ExceptionHandling="0" |
| 641 | RuntimeLibrary="0" |
| 642 | BufferSecurityCheck="false" |
| 643 | EnableFunctionLevelLinking="true" |
| @@ -664,11 +662,10 @@ | |
| 662 | Name="VCPreLinkEventTool" |
| 663 | /> |
| 664 | <Tool |
| 665 | Name="VCLinkerTool" |
| 666 | AdditionalOptions="/MACHINE:I386" |
| 667 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 668 | LinkIncremental="1" |
| 669 | SuppressStartupBanner="true" |
| 670 | GenerateManifest="false" |
| 671 | IgnoreAllDefaultLibraries="false" |
| @@ -735,12 +732,12 @@ | |
| 732 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 733 | /> |
| 734 | <Tool |
| 735 | Name="VCCLCompilerTool" |
| 736 | InlineFunctionExpansion="1" |
| 737 | AdditionalIncludeDirectories="..\..\.." |
| 738 | PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 739 | StringPooling="true" |
| 740 | ExceptionHandling="0" |
| 741 | RuntimeLibrary="2" |
| 742 | BufferSecurityCheck="false" |
| 743 | EnableFunctionLevelLinking="true" |
| @@ -764,11 +761,10 @@ | |
| 761 | <Tool |
| 762 | Name="VCPreLinkEventTool" |
| 763 | /> |
| 764 | <Tool |
| 765 | Name="VCLinkerTool" |
| 766 | OutputFile="$(OutDir)\zlibwapi.dll" |
| 767 | LinkIncremental="1" |
| 768 | SuppressStartupBanner="true" |
| 769 | GenerateManifest="false" |
| 770 | IgnoreAllDefaultLibraries="false" |
| @@ -834,11 +830,11 @@ | |
| 830 | TypeLibraryName="$(OutDir)/zlibvc.tlb" |
| 831 | /> |
| 832 | <Tool |
| 833 | Name="VCCLCompilerTool" |
| 834 | InlineFunctionExpansion="1" |
| 835 | AdditionalIncludeDirectories="..\..\.." |
| 836 | PreprocessorDefinitions="_CRT_NONSTDC_NO_DEPRECATE;_CRT_SECURE_NO_DEPRECATE;_CRT_NONSTDC_NO_WARNINGS;ZLIB_WINAPI;WIN64" |
| 837 | StringPooling="true" |
| 838 | ExceptionHandling="0" |
| 839 | RuntimeLibrary="2" |
| 840 | BufferSecurityCheck="false" |
| @@ -948,62 +944,10 @@ | |
| 944 | <File |
| 945 | RelativePath="..\..\..\infback.c" |
| 946 | > |
| 947 | </File> |
| 948 | <File |
| 949 | RelativePath="..\..\..\inffast.c" |
| 950 | > |
| 951 | </File> |
| 952 | <File |
| 953 | RelativePath="..\..\..\inflate.c" |
| 954 |
+21
-12
| --- compat/zlib/crc32.c | ||
| +++ compat/zlib/crc32.c | ||
| @@ -95,18 +95,27 @@ | ||
| 95 | 95 | typedef Z_U4 z_word_t; |
| 96 | 96 | # else |
| 97 | 97 | # undef W |
| 98 | 98 | # endif |
| 99 | 99 | #endif |
| 100 | + | |
| 101 | +/* If available, use the ARM processor CRC32 instruction. */ | |
| 102 | +#if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && W == 8 | |
| 103 | +# define ARMCRC32 | |
| 104 | +#endif | |
| 100 | 105 | |
| 101 | 106 | /* Local functions. */ |
| 102 | 107 | local z_crc_t multmodp OF((z_crc_t a, z_crc_t b)); |
| 103 | 108 | local z_crc_t x2nmodp OF((z_off64_t n, unsigned k)); |
| 104 | 109 | |
| 105 | -/* If available, use the ARM processor CRC32 instruction. */ | |
| 106 | -#if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && W == 8 | |
| 107 | -# define ARMCRC32 | |
| 110 | +#if defined(W) && (!defined(ARMCRC32) || defined(DYNAMIC_CRC_TABLE)) | |
| 111 | + local z_word_t byte_swap OF((z_word_t word)); | |
| 112 | +#endif | |
| 113 | + | |
| 114 | +#if defined(W) && !defined(ARMCRC32) | |
| 115 | + local z_crc_t crc_word OF((z_word_t data)); | |
| 116 | + local z_word_t crc_word_big OF((z_word_t data)); | |
| 108 | 117 | #endif |
| 109 | 118 | |
| 110 | 119 | #if defined(W) && (!defined(ARMCRC32) || defined(DYNAMIC_CRC_TABLE)) |
| 111 | 120 | /* |
| 112 | 121 | Swap the bytes in a z_word_t to convert between little and big endian. Any |
| @@ -628,11 +637,11 @@ | ||
| 628 | 637 | #ifdef DYNAMIC_CRC_TABLE |
| 629 | 638 | once(&made, make_crc_table); |
| 630 | 639 | #endif /* DYNAMIC_CRC_TABLE */ |
| 631 | 640 | |
| 632 | 641 | /* Pre-condition the CRC */ |
| 633 | - crc ^= 0xffffffff; | |
| 642 | + crc = (~crc) & 0xffffffff; | |
| 634 | 643 | |
| 635 | 644 | /* Compute the CRC up to a word boundary. */ |
| 636 | 645 | while (len && ((z_size_t)buf & 7) != 0) { |
| 637 | 646 | len--; |
| 638 | 647 | val = *buf++; |
| @@ -643,12 +652,12 @@ | ||
| 643 | 652 | word = (z_word_t const *)buf; |
| 644 | 653 | num = len >> 3; |
| 645 | 654 | len &= 7; |
| 646 | 655 | |
| 647 | 656 | /* Do three interleaved CRCs to realize the throughput of one crc32x |
| 648 | - instruction per cycle. Each CRC is calcuated on Z_BATCH words. The three | |
| 649 | - CRCs are combined into a single CRC after each set of batches. */ | |
| 657 | + instruction per cycle. Each CRC is calculated on Z_BATCH words. The | |
| 658 | + three CRCs are combined into a single CRC after each set of batches. */ | |
| 650 | 659 | while (num >= 3 * Z_BATCH) { |
| 651 | 660 | crc1 = 0; |
| 652 | 661 | crc2 = 0; |
| 653 | 662 | for (i = 0; i < Z_BATCH; i++) { |
| 654 | 663 | val0 = word[i]; |
| @@ -747,11 +756,11 @@ | ||
| 747 | 756 | #ifdef DYNAMIC_CRC_TABLE |
| 748 | 757 | once(&made, make_crc_table); |
| 749 | 758 | #endif /* DYNAMIC_CRC_TABLE */ |
| 750 | 759 | |
| 751 | 760 | /* Pre-condition the CRC */ |
| 752 | - crc ^= 0xffffffff; | |
| 761 | + crc = (~crc) & 0xffffffff; | |
| 753 | 762 | |
| 754 | 763 | #ifdef W |
| 755 | 764 | |
| 756 | 765 | /* If provided enough bytes, do a braided CRC calculation. */ |
| 757 | 766 | if (len >= N * W + W - 1) { |
| @@ -1075,20 +1084,20 @@ | ||
| 1075 | 1084 | z_off64_t len2; |
| 1076 | 1085 | { |
| 1077 | 1086 | #ifdef DYNAMIC_CRC_TABLE |
| 1078 | 1087 | once(&made, make_crc_table); |
| 1079 | 1088 | #endif /* DYNAMIC_CRC_TABLE */ |
| 1080 | - return multmodp(x2nmodp(len2, 3), crc1) ^ crc2; | |
| 1089 | + return multmodp(x2nmodp(len2, 3), crc1) ^ (crc2 & 0xffffffff); | |
| 1081 | 1090 | } |
| 1082 | 1091 | |
| 1083 | 1092 | /* ========================================================================= */ |
| 1084 | 1093 | uLong ZEXPORT crc32_combine(crc1, crc2, len2) |
| 1085 | 1094 | uLong crc1; |
| 1086 | 1095 | uLong crc2; |
| 1087 | 1096 | z_off_t len2; |
| 1088 | 1097 | { |
| 1089 | - return crc32_combine64(crc1, crc2, len2); | |
| 1098 | + return crc32_combine64(crc1, crc2, (z_off64_t)len2); | |
| 1090 | 1099 | } |
| 1091 | 1100 | |
| 1092 | 1101 | /* ========================================================================= */ |
| 1093 | 1102 | uLong ZEXPORT crc32_combine_gen64(len2) |
| 1094 | 1103 | z_off64_t len2; |
| @@ -1101,16 +1110,16 @@ | ||
| 1101 | 1110 | |
| 1102 | 1111 | /* ========================================================================= */ |
| 1103 | 1112 | uLong ZEXPORT crc32_combine_gen(len2) |
| 1104 | 1113 | z_off_t len2; |
| 1105 | 1114 | { |
| 1106 | - return crc32_combine_gen64(len2); | |
| 1115 | + return crc32_combine_gen64((z_off64_t)len2); | |
| 1107 | 1116 | } |
| 1108 | 1117 | |
| 1109 | 1118 | /* ========================================================================= */ |
| 1110 | -uLong crc32_combine_op(crc1, crc2, op) | |
| 1119 | +uLong ZEXPORT crc32_combine_op(crc1, crc2, op) | |
| 1111 | 1120 | uLong crc1; |
| 1112 | 1121 | uLong crc2; |
| 1113 | 1122 | uLong op; |
| 1114 | 1123 | { |
| 1115 | - return multmodp(op, crc1) ^ crc2; | |
| 1124 | + return multmodp(op, crc1) ^ (crc2 & 0xffffffff); | |
| 1116 | 1125 | } |
| 1117 | 1126 |
| --- compat/zlib/crc32.c | |
| +++ compat/zlib/crc32.c | |
| @@ -95,18 +95,27 @@ | |
| 95 | typedef Z_U4 z_word_t; |
| 96 | # else |
| 97 | # undef W |
| 98 | # endif |
| 99 | #endif |
| 100 | |
| 101 | /* Local functions. */ |
| 102 | local z_crc_t multmodp OF((z_crc_t a, z_crc_t b)); |
| 103 | local z_crc_t x2nmodp OF((z_off64_t n, unsigned k)); |
| 104 | |
| 105 | /* If available, use the ARM processor CRC32 instruction. */ |
| 106 | #if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && W == 8 |
| 107 | # define ARMCRC32 |
| 108 | #endif |
| 109 | |
| 110 | #if defined(W) && (!defined(ARMCRC32) || defined(DYNAMIC_CRC_TABLE)) |
| 111 | /* |
| 112 | Swap the bytes in a z_word_t to convert between little and big endian. Any |
| @@ -628,11 +637,11 @@ | |
| 628 | #ifdef DYNAMIC_CRC_TABLE |
| 629 | once(&made, make_crc_table); |
| 630 | #endif /* DYNAMIC_CRC_TABLE */ |
| 631 | |
| 632 | /* Pre-condition the CRC */ |
| 633 | crc ^= 0xffffffff; |
| 634 | |
| 635 | /* Compute the CRC up to a word boundary. */ |
| 636 | while (len && ((z_size_t)buf & 7) != 0) { |
| 637 | len--; |
| 638 | val = *buf++; |
| @@ -643,12 +652,12 @@ | |
| 643 | word = (z_word_t const *)buf; |
| 644 | num = len >> 3; |
| 645 | len &= 7; |
| 646 | |
| 647 | /* Do three interleaved CRCs to realize the throughput of one crc32x |
| 648 | instruction per cycle. Each CRC is calcuated on Z_BATCH words. The three |
| 649 | CRCs are combined into a single CRC after each set of batches. */ |
| 650 | while (num >= 3 * Z_BATCH) { |
| 651 | crc1 = 0; |
| 652 | crc2 = 0; |
| 653 | for (i = 0; i < Z_BATCH; i++) { |
| 654 | val0 = word[i]; |
| @@ -747,11 +756,11 @@ | |
| 747 | #ifdef DYNAMIC_CRC_TABLE |
| 748 | once(&made, make_crc_table); |
| 749 | #endif /* DYNAMIC_CRC_TABLE */ |
| 750 | |
| 751 | /* Pre-condition the CRC */ |
| 752 | crc ^= 0xffffffff; |
| 753 | |
| 754 | #ifdef W |
| 755 | |
| 756 | /* If provided enough bytes, do a braided CRC calculation. */ |
| 757 | if (len >= N * W + W - 1) { |
| @@ -1075,20 +1084,20 @@ | |
| 1075 | z_off64_t len2; |
| 1076 | { |
| 1077 | #ifdef DYNAMIC_CRC_TABLE |
| 1078 | once(&made, make_crc_table); |
| 1079 | #endif /* DYNAMIC_CRC_TABLE */ |
| 1080 | return multmodp(x2nmodp(len2, 3), crc1) ^ crc2; |
| 1081 | } |
| 1082 | |
| 1083 | /* ========================================================================= */ |
| 1084 | uLong ZEXPORT crc32_combine(crc1, crc2, len2) |
| 1085 | uLong crc1; |
| 1086 | uLong crc2; |
| 1087 | z_off_t len2; |
| 1088 | { |
| 1089 | return crc32_combine64(crc1, crc2, len2); |
| 1090 | } |
| 1091 | |
| 1092 | /* ========================================================================= */ |
| 1093 | uLong ZEXPORT crc32_combine_gen64(len2) |
| 1094 | z_off64_t len2; |
| @@ -1101,16 +1110,16 @@ | |
| 1101 | |
| 1102 | /* ========================================================================= */ |
| 1103 | uLong ZEXPORT crc32_combine_gen(len2) |
| 1104 | z_off_t len2; |
| 1105 | { |
| 1106 | return crc32_combine_gen64(len2); |
| 1107 | } |
| 1108 | |
| 1109 | /* ========================================================================= */ |
| 1110 | uLong crc32_combine_op(crc1, crc2, op) |
| 1111 | uLong crc1; |
| 1112 | uLong crc2; |
| 1113 | uLong op; |
| 1114 | { |
| 1115 | return multmodp(op, crc1) ^ crc2; |
| 1116 | } |
| 1117 |
| --- compat/zlib/crc32.c | |
| +++ compat/zlib/crc32.c | |
| @@ -95,18 +95,27 @@ | |
| 95 | typedef Z_U4 z_word_t; |
| 96 | # else |
| 97 | # undef W |
| 98 | # endif |
| 99 | #endif |
| 100 | |
| 101 | /* If available, use the ARM processor CRC32 instruction. */ |
| 102 | #if defined(__aarch64__) && defined(__ARM_FEATURE_CRC32) && W == 8 |
| 103 | # define ARMCRC32 |
| 104 | #endif |
| 105 | |
| 106 | /* Local functions. */ |
| 107 | local z_crc_t multmodp OF((z_crc_t a, z_crc_t b)); |
| 108 | local z_crc_t x2nmodp OF((z_off64_t n, unsigned k)); |
| 109 | |
| 110 | #if defined(W) && (!defined(ARMCRC32) || defined(DYNAMIC_CRC_TABLE)) |
| 111 | local z_word_t byte_swap OF((z_word_t word)); |
| 112 | #endif |
| 113 | |
| 114 | #if defined(W) && !defined(ARMCRC32) |
| 115 | local z_crc_t crc_word OF((z_word_t data)); |
| 116 | local z_word_t crc_word_big OF((z_word_t data)); |
| 117 | #endif |
| 118 | |
| 119 | #if defined(W) && (!defined(ARMCRC32) || defined(DYNAMIC_CRC_TABLE)) |
| 120 | /* |
| 121 | Swap the bytes in a z_word_t to convert between little and big endian. Any |
| @@ -628,11 +637,11 @@ | |
| 637 | #ifdef DYNAMIC_CRC_TABLE |
| 638 | once(&made, make_crc_table); |
| 639 | #endif /* DYNAMIC_CRC_TABLE */ |
| 640 | |
| 641 | /* Pre-condition the CRC */ |
| 642 | crc = (~crc) & 0xffffffff; |
| 643 | |
| 644 | /* Compute the CRC up to a word boundary. */ |
| 645 | while (len && ((z_size_t)buf & 7) != 0) { |
| 646 | len--; |
| 647 | val = *buf++; |
| @@ -643,12 +652,12 @@ | |
| 652 | word = (z_word_t const *)buf; |
| 653 | num = len >> 3; |
| 654 | len &= 7; |
| 655 | |
| 656 | /* Do three interleaved CRCs to realize the throughput of one crc32x |
| 657 | instruction per cycle. Each CRC is calculated on Z_BATCH words. The |
| 658 | three CRCs are combined into a single CRC after each set of batches. */ |
| 659 | while (num >= 3 * Z_BATCH) { |
| 660 | crc1 = 0; |
| 661 | crc2 = 0; |
| 662 | for (i = 0; i < Z_BATCH; i++) { |
| 663 | val0 = word[i]; |
| @@ -747,11 +756,11 @@ | |
| 756 | #ifdef DYNAMIC_CRC_TABLE |
| 757 | once(&made, make_crc_table); |
| 758 | #endif /* DYNAMIC_CRC_TABLE */ |
| 759 | |
| 760 | /* Pre-condition the CRC */ |
| 761 | crc = (~crc) & 0xffffffff; |
| 762 | |
| 763 | #ifdef W |
| 764 | |
| 765 | /* If provided enough bytes, do a braided CRC calculation. */ |
| 766 | if (len >= N * W + W - 1) { |
| @@ -1075,20 +1084,20 @@ | |
| 1084 | z_off64_t len2; |
| 1085 | { |
| 1086 | #ifdef DYNAMIC_CRC_TABLE |
| 1087 | once(&made, make_crc_table); |
| 1088 | #endif /* DYNAMIC_CRC_TABLE */ |
| 1089 | return multmodp(x2nmodp(len2, 3), crc1) ^ (crc2 & 0xffffffff); |
| 1090 | } |
| 1091 | |
| 1092 | /* ========================================================================= */ |
| 1093 | uLong ZEXPORT crc32_combine(crc1, crc2, len2) |
| 1094 | uLong crc1; |
| 1095 | uLong crc2; |
| 1096 | z_off_t len2; |
| 1097 | { |
| 1098 | return crc32_combine64(crc1, crc2, (z_off64_t)len2); |
| 1099 | } |
| 1100 | |
| 1101 | /* ========================================================================= */ |
| 1102 | uLong ZEXPORT crc32_combine_gen64(len2) |
| 1103 | z_off64_t len2; |
| @@ -1101,16 +1110,16 @@ | |
| 1110 | |
| 1111 | /* ========================================================================= */ |
| 1112 | uLong ZEXPORT crc32_combine_gen(len2) |
| 1113 | z_off_t len2; |
| 1114 | { |
| 1115 | return crc32_combine_gen64((z_off64_t)len2); |
| 1116 | } |
| 1117 | |
| 1118 | /* ========================================================================= */ |
| 1119 | uLong ZEXPORT crc32_combine_op(crc1, crc2, op) |
| 1120 | uLong crc1; |
| 1121 | uLong crc2; |
| 1122 | uLong op; |
| 1123 | { |
| 1124 | return multmodp(op, crc1) ^ (crc2 & 0xffffffff); |
| 1125 | } |
| 1126 |
+114
-108
| --- compat/zlib/deflate.c | ||
| +++ compat/zlib/deflate.c | ||
| @@ -50,11 +50,11 @@ | ||
| 50 | 50 | /* @(#) $Id$ */ |
| 51 | 51 | |
| 52 | 52 | #include "deflate.h" |
| 53 | 53 | |
| 54 | 54 | const char deflate_copyright[] = |
| 55 | - " deflate 1.2.12 Copyright 1995-2022 Jean-loup Gailly and Mark Adler "; | |
| 55 | + " deflate 1.2.13 Copyright 1995-2022 Jean-loup Gailly and Mark Adler "; | |
| 56 | 56 | /* |
| 57 | 57 | If you use the zlib library in a product, an acknowledgment is welcome |
| 58 | 58 | in the documentation of your product. If for some reason you cannot |
| 59 | 59 | include such an acknowledgment, I would appreciate that you keep this |
| 60 | 60 | copyright string in the executable of your product. |
| @@ -85,17 +85,11 @@ | ||
| 85 | 85 | local block_state deflate_huff OF((deflate_state *s, int flush)); |
| 86 | 86 | local void lm_init OF((deflate_state *s)); |
| 87 | 87 | local void putShortMSB OF((deflate_state *s, uInt b)); |
| 88 | 88 | local void flush_pending OF((z_streamp strm)); |
| 89 | 89 | local unsigned read_buf OF((z_streamp strm, Bytef *buf, unsigned size)); |
| 90 | -#ifdef ASMV | |
| 91 | -# pragma message("Assembler code may have bugs -- use at your own risk") | |
| 92 | - void match_init OF((void)); /* asm code initialization */ | |
| 93 | - uInt longest_match OF((deflate_state *s, IPos cur_match)); | |
| 94 | -#else | |
| 95 | 90 | local uInt longest_match OF((deflate_state *s, IPos cur_match)); |
| 96 | -#endif | |
| 97 | 91 | |
| 98 | 92 | #ifdef ZLIB_DEBUG |
| 99 | 93 | local void check_match OF((deflate_state *s, IPos start, IPos match, |
| 100 | 94 | int length)); |
| 101 | 95 | #endif |
| @@ -158,11 +152,11 @@ | ||
| 158 | 152 | * Update a hash value with the given input byte |
| 159 | 153 | * IN assertion: all calls to UPDATE_HASH are made with consecutive input |
| 160 | 154 | * characters, so that a running hash key can be computed from the previous |
| 161 | 155 | * key instead of complete recalculation each time. |
| 162 | 156 | */ |
| 163 | -#define UPDATE_HASH(s,h,c) (h = (((h)<<s->hash_shift) ^ (c)) & s->hash_mask) | |
| 157 | +#define UPDATE_HASH(s,h,c) (h = (((h) << s->hash_shift) ^ (c)) & s->hash_mask) | |
| 164 | 158 | |
| 165 | 159 | |
| 166 | 160 | /* =========================================================================== |
| 167 | 161 | * Insert string str in the dictionary and set match_head to the previous head |
| 168 | 162 | * of the hash chain (the most recent string with same hash key). Return |
| @@ -189,13 +183,13 @@ | ||
| 189 | 183 | * Initialize the hash table (avoiding 64K overflow for 16 bit systems). |
| 190 | 184 | * prev[] will be initialized on the fly. |
| 191 | 185 | */ |
| 192 | 186 | #define CLEAR_HASH(s) \ |
| 193 | 187 | do { \ |
| 194 | - s->head[s->hash_size-1] = NIL; \ | |
| 188 | + s->head[s->hash_size - 1] = NIL; \ | |
| 195 | 189 | zmemzero((Bytef *)s->head, \ |
| 196 | - (unsigned)(s->hash_size-1)*sizeof(*s->head)); \ | |
| 190 | + (unsigned)(s->hash_size - 1)*sizeof(*s->head)); \ | |
| 197 | 191 | } while (0) |
| 198 | 192 | |
| 199 | 193 | /* =========================================================================== |
| 200 | 194 | * Slide the hash table when sliding the window down (could be avoided with 32 |
| 201 | 195 | * bit values at the expense of memory usage). We slide even when level == 0 to |
| @@ -283,10 +277,12 @@ | ||
| 283 | 277 | if (level == Z_DEFAULT_COMPRESSION) level = 6; |
| 284 | 278 | #endif |
| 285 | 279 | |
| 286 | 280 | if (windowBits < 0) { /* suppress zlib wrapper */ |
| 287 | 281 | wrap = 0; |
| 282 | + if (windowBits < -15) | |
| 283 | + return Z_STREAM_ERROR; | |
| 288 | 284 | windowBits = -windowBits; |
| 289 | 285 | } |
| 290 | 286 | #ifdef GZIP |
| 291 | 287 | else if (windowBits > 15) { |
| 292 | 288 | wrap = 2; /* write gzip wrapper instead */ |
| @@ -312,11 +308,11 @@ | ||
| 312 | 308 | s->w_mask = s->w_size - 1; |
| 313 | 309 | |
| 314 | 310 | s->hash_bits = (uInt)memLevel + 7; |
| 315 | 311 | s->hash_size = 1 << s->hash_bits; |
| 316 | 312 | s->hash_mask = s->hash_size - 1; |
| 317 | - s->hash_shift = ((s->hash_bits+MIN_MATCH-1)/MIN_MATCH); | |
| 313 | + s->hash_shift = ((s->hash_bits + MIN_MATCH-1) / MIN_MATCH); | |
| 318 | 314 | |
| 319 | 315 | s->window = (Bytef *) ZALLOC(strm, s->w_size, 2*sizeof(Byte)); |
| 320 | 316 | s->prev = (Posf *) ZALLOC(strm, s->w_size, sizeof(Pos)); |
| 321 | 317 | s->head = (Posf *) ZALLOC(strm, s->hash_size, sizeof(Pos)); |
| 322 | 318 | |
| @@ -338,15 +334,15 @@ | ||
| 338 | 334 | * in sym_buf is three bytes -- two for the distance and one for the |
| 339 | 335 | * literal/length. As each symbol is consumed, the pointer to the next |
| 340 | 336 | * sym_buf value to read moves forward three bytes. From that symbol, up to |
| 341 | 337 | * 31 bits are written to pending_buf. The closest the written pending_buf |
| 342 | 338 | * bits gets to the next sym_buf symbol to read is just before the last |
| 343 | - * code is written. At that time, 31*(n-2) bits have been written, just | |
| 344 | - * after 24*(n-2) bits have been consumed from sym_buf. sym_buf starts at | |
| 345 | - * 8*n bits into pending_buf. (Note that the symbol buffer fills when n-1 | |
| 339 | + * code is written. At that time, 31*(n - 2) bits have been written, just | |
| 340 | + * after 24*(n - 2) bits have been consumed from sym_buf. sym_buf starts at | |
| 341 | + * 8*n bits into pending_buf. (Note that the symbol buffer fills when n - 1 | |
| 346 | 342 | * symbols are written.) The closest the writing gets to what is unread is |
| 347 | - * then n+14 bits. Here n is lit_bufsize, which is 16384 by default, and | |
| 343 | + * then n + 14 bits. Here n is lit_bufsize, which is 16384 by default, and | |
| 348 | 344 | * can range from 128 to 32768. |
| 349 | 345 | * |
| 350 | 346 | * Therefore, at a minimum, there are 142 bits of space between what is |
| 351 | 347 | * written and what is read in the overlain buffers, so the symbols cannot |
| 352 | 348 | * be overwritten by the compressed data. That space is actually 139 bits, |
| @@ -388,11 +384,11 @@ | ||
| 388 | 384 | } |
| 389 | 385 | |
| 390 | 386 | /* ========================================================================= |
| 391 | 387 | * Check for a valid deflate stream state. Return 0 if ok, 1 if not. |
| 392 | 388 | */ |
| 393 | -local int deflateStateCheck (strm) | |
| 389 | +local int deflateStateCheck(strm) | |
| 394 | 390 | z_streamp strm; |
| 395 | 391 | { |
| 396 | 392 | deflate_state *s; |
| 397 | 393 | if (strm == Z_NULL || |
| 398 | 394 | strm->zalloc == (alloc_func)0 || strm->zfree == (free_func)0) |
| @@ -411,11 +407,11 @@ | ||
| 411 | 407 | return 1; |
| 412 | 408 | return 0; |
| 413 | 409 | } |
| 414 | 410 | |
| 415 | 411 | /* ========================================================================= */ |
| 416 | -int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength) | |
| 412 | +int ZEXPORT deflateSetDictionary(strm, dictionary, dictLength) | |
| 417 | 413 | z_streamp strm; |
| 418 | 414 | const Bytef *dictionary; |
| 419 | 415 | uInt dictLength; |
| 420 | 416 | { |
| 421 | 417 | deflate_state *s; |
| @@ -480,11 +476,11 @@ | ||
| 480 | 476 | s->wrap = wrap; |
| 481 | 477 | return Z_OK; |
| 482 | 478 | } |
| 483 | 479 | |
| 484 | 480 | /* ========================================================================= */ |
| 485 | -int ZEXPORT deflateGetDictionary (strm, dictionary, dictLength) | |
| 481 | +int ZEXPORT deflateGetDictionary(strm, dictionary, dictLength) | |
| 486 | 482 | z_streamp strm; |
| 487 | 483 | Bytef *dictionary; |
| 488 | 484 | uInt *dictLength; |
| 489 | 485 | { |
| 490 | 486 | deflate_state *s; |
| @@ -502,11 +498,11 @@ | ||
| 502 | 498 | *dictLength = len; |
| 503 | 499 | return Z_OK; |
| 504 | 500 | } |
| 505 | 501 | |
| 506 | 502 | /* ========================================================================= */ |
| 507 | -int ZEXPORT deflateResetKeep (strm) | |
| 503 | +int ZEXPORT deflateResetKeep(strm) | |
| 508 | 504 | z_streamp strm; |
| 509 | 505 | { |
| 510 | 506 | deflate_state *s; |
| 511 | 507 | |
| 512 | 508 | if (deflateStateCheck(strm)) { |
| @@ -540,11 +536,11 @@ | ||
| 540 | 536 | |
| 541 | 537 | return Z_OK; |
| 542 | 538 | } |
| 543 | 539 | |
| 544 | 540 | /* ========================================================================= */ |
| 545 | -int ZEXPORT deflateReset (strm) | |
| 541 | +int ZEXPORT deflateReset(strm) | |
| 546 | 542 | z_streamp strm; |
| 547 | 543 | { |
| 548 | 544 | int ret; |
| 549 | 545 | |
| 550 | 546 | ret = deflateResetKeep(strm); |
| @@ -552,11 +548,11 @@ | ||
| 552 | 548 | lm_init(strm->state); |
| 553 | 549 | return ret; |
| 554 | 550 | } |
| 555 | 551 | |
| 556 | 552 | /* ========================================================================= */ |
| 557 | -int ZEXPORT deflateSetHeader (strm, head) | |
| 553 | +int ZEXPORT deflateSetHeader(strm, head) | |
| 558 | 554 | z_streamp strm; |
| 559 | 555 | gz_headerp head; |
| 560 | 556 | { |
| 561 | 557 | if (deflateStateCheck(strm) || strm->state->wrap != 2) |
| 562 | 558 | return Z_STREAM_ERROR; |
| @@ -563,11 +559,11 @@ | ||
| 563 | 559 | strm->state->gzhead = head; |
| 564 | 560 | return Z_OK; |
| 565 | 561 | } |
| 566 | 562 | |
| 567 | 563 | /* ========================================================================= */ |
| 568 | -int ZEXPORT deflatePending (strm, pending, bits) | |
| 564 | +int ZEXPORT deflatePending(strm, pending, bits) | |
| 569 | 565 | unsigned *pending; |
| 570 | 566 | int *bits; |
| 571 | 567 | z_streamp strm; |
| 572 | 568 | { |
| 573 | 569 | if (deflateStateCheck(strm)) return Z_STREAM_ERROR; |
| @@ -577,11 +573,11 @@ | ||
| 577 | 573 | *bits = strm->state->bi_valid; |
| 578 | 574 | return Z_OK; |
| 579 | 575 | } |
| 580 | 576 | |
| 581 | 577 | /* ========================================================================= */ |
| 582 | -int ZEXPORT deflatePrime (strm, bits, value) | |
| 578 | +int ZEXPORT deflatePrime(strm, bits, value) | |
| 583 | 579 | z_streamp strm; |
| 584 | 580 | int bits; |
| 585 | 581 | int value; |
| 586 | 582 | { |
| 587 | 583 | deflate_state *s; |
| @@ -672,40 +668,54 @@ | ||
| 672 | 668 | s->max_chain_length = (uInt)max_chain; |
| 673 | 669 | return Z_OK; |
| 674 | 670 | } |
| 675 | 671 | |
| 676 | 672 | /* ========================================================================= |
| 677 | - * For the default windowBits of 15 and memLevel of 8, this function returns | |
| 678 | - * a close to exact, as well as small, upper bound on the compressed size. | |
| 679 | - * They are coded as constants here for a reason--if the #define's are | |
| 680 | - * changed, then this function needs to be changed as well. The return | |
| 681 | - * value for 15 and 8 only works for those exact settings. | |
| 682 | - * | |
| 683 | - * For any setting other than those defaults for windowBits and memLevel, | |
| 684 | - * the value returned is a conservative worst case for the maximum expansion | |
| 685 | - * resulting from using fixed blocks instead of stored blocks, which deflate | |
| 686 | - * can emit on compressed data for some combinations of the parameters. | |
| 687 | - * | |
| 688 | - * This function could be more sophisticated to provide closer upper bounds for | |
| 689 | - * every combination of windowBits and memLevel. But even the conservative | |
| 690 | - * upper bound of about 14% expansion does not seem onerous for output buffer | |
| 691 | - * allocation. | |
| 673 | + * For the default windowBits of 15 and memLevel of 8, this function returns a | |
| 674 | + * close to exact, as well as small, upper bound on the compressed size. This | |
| 675 | + * is an expansion of ~0.03%, plus a small constant. | |
| 676 | + * | |
| 677 | + * For any setting other than those defaults for windowBits and memLevel, one | |
| 678 | + * of two worst case bounds is returned. This is at most an expansion of ~4% or | |
| 679 | + * ~13%, plus a small constant. | |
| 680 | + * | |
| 681 | + * Both the 0.03% and 4% derive from the overhead of stored blocks. The first | |
| 682 | + * one is for stored blocks of 16383 bytes (memLevel == 8), whereas the second | |
| 683 | + * is for stored blocks of 127 bytes (the worst case memLevel == 1). The | |
| 684 | + * expansion results from five bytes of header for each stored block. | |
| 685 | + * | |
| 686 | + * The larger expansion of 13% results from a window size less than or equal to | |
| 687 | + * the symbols buffer size (windowBits <= memLevel + 7). In that case some of | |
| 688 | + * the data being compressed may have slid out of the sliding window, impeding | |
| 689 | + * a stored block from being emitted. Then the only choice is a fixed or | |
| 690 | + * dynamic block, where a fixed block limits the maximum expansion to 9 bits | |
| 691 | + * per 8-bit byte, plus 10 bits for every block. The smallest block size for | |
| 692 | + * which this can occur is 255 (memLevel == 2). | |
| 693 | + * | |
| 694 | + * Shifts are used to approximate divisions, for speed. | |
| 692 | 695 | */ |
| 693 | 696 | uLong ZEXPORT deflateBound(strm, sourceLen) |
| 694 | 697 | z_streamp strm; |
| 695 | 698 | uLong sourceLen; |
| 696 | 699 | { |
| 697 | 700 | deflate_state *s; |
| 698 | - uLong complen, wraplen; | |
| 701 | + uLong fixedlen, storelen, wraplen; | |
| 699 | 702 | |
| 700 | - /* conservative upper bound for compressed data */ | |
| 701 | - complen = sourceLen + | |
| 702 | - ((sourceLen + 7) >> 3) + ((sourceLen + 63) >> 6) + 5; | |
| 703 | + /* upper bound for fixed blocks with 9-bit literals and length 255 | |
| 704 | + (memLevel == 2, which is the lowest that may not use stored blocks) -- | |
| 705 | + ~13% overhead plus a small constant */ | |
| 706 | + fixedlen = sourceLen + (sourceLen >> 3) + (sourceLen >> 8) + | |
| 707 | + (sourceLen >> 9) + 4; | |
| 703 | 708 | |
| 704 | - /* if can't get parameters, return conservative bound plus zlib wrapper */ | |
| 709 | + /* upper bound for stored blocks with length 127 (memLevel == 1) -- | |
| 710 | + ~4% overhead plus a small constant */ | |
| 711 | + storelen = sourceLen + (sourceLen >> 5) + (sourceLen >> 7) + | |
| 712 | + (sourceLen >> 11) + 7; | |
| 713 | + | |
| 714 | + /* if can't get parameters, return larger bound plus a zlib wrapper */ | |
| 705 | 715 | if (deflateStateCheck(strm)) |
| 706 | - return complen + 6; | |
| 716 | + return (fixedlen > storelen ? fixedlen : storelen) + 6; | |
| 707 | 717 | |
| 708 | 718 | /* compute wrapper length */ |
| 709 | 719 | s = strm->state; |
| 710 | 720 | switch (s->wrap) { |
| 711 | 721 | case 0: /* raw deflate */ |
| @@ -738,25 +748,26 @@ | ||
| 738 | 748 | #endif |
| 739 | 749 | default: /* for compiler happiness */ |
| 740 | 750 | wraplen = 6; |
| 741 | 751 | } |
| 742 | 752 | |
| 743 | - /* if not default parameters, return conservative bound */ | |
| 753 | + /* if not default parameters, return one of the conservative bounds */ | |
| 744 | 754 | if (s->w_bits != 15 || s->hash_bits != 8 + 7) |
| 745 | - return complen + wraplen; | |
| 755 | + return (s->w_bits <= s->hash_bits ? fixedlen : storelen) + wraplen; | |
| 746 | 756 | |
| 747 | - /* default settings: return tight bound for that case */ | |
| 757 | + /* default settings: return tight bound for that case -- ~0.03% overhead | |
| 758 | + plus a small constant */ | |
| 748 | 759 | return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + |
| 749 | 760 | (sourceLen >> 25) + 13 - 6 + wraplen; |
| 750 | 761 | } |
| 751 | 762 | |
| 752 | 763 | /* ========================================================================= |
| 753 | 764 | * Put a short in the pending buffer. The 16-bit value is put in MSB order. |
| 754 | 765 | * IN assertion: the stream state is correct and there is enough room in |
| 755 | 766 | * pending_buf. |
| 756 | 767 | */ |
| 757 | -local void putShortMSB (s, b) | |
| 768 | +local void putShortMSB(s, b) | |
| 758 | 769 | deflate_state *s; |
| 759 | 770 | uInt b; |
| 760 | 771 | { |
| 761 | 772 | put_byte(s, (Byte)(b >> 8)); |
| 762 | 773 | put_byte(s, (Byte)(b & 0xff)); |
| @@ -799,11 +810,11 @@ | ||
| 799 | 810 | strm->adler = crc32(strm->adler, s->pending_buf + (beg), \ |
| 800 | 811 | s->pending - (beg)); \ |
| 801 | 812 | } while (0) |
| 802 | 813 | |
| 803 | 814 | /* ========================================================================= */ |
| 804 | -int ZEXPORT deflate (strm, flush) | |
| 815 | +int ZEXPORT deflate(strm, flush) | |
| 805 | 816 | z_streamp strm; |
| 806 | 817 | int flush; |
| 807 | 818 | { |
| 808 | 819 | int old_flush; /* value of flush param for previous deflate call */ |
| 809 | 820 | deflate_state *s; |
| @@ -854,11 +865,11 @@ | ||
| 854 | 865 | /* Write the header */ |
| 855 | 866 | if (s->status == INIT_STATE && s->wrap == 0) |
| 856 | 867 | s->status = BUSY_STATE; |
| 857 | 868 | if (s->status == INIT_STATE) { |
| 858 | 869 | /* zlib header */ |
| 859 | - uInt header = (Z_DEFLATED + ((s->w_bits-8)<<4)) << 8; | |
| 870 | + uInt header = (Z_DEFLATED + ((s->w_bits - 8) << 4)) << 8; | |
| 860 | 871 | uInt level_flags; |
| 861 | 872 | |
| 862 | 873 | if (s->strategy >= Z_HUFFMAN_ONLY || s->level < 2) |
| 863 | 874 | level_flags = 0; |
| 864 | 875 | else if (s->level < 6) |
| @@ -1114,11 +1125,11 @@ | ||
| 1114 | 1125 | if (s->wrap > 0) s->wrap = -s->wrap; /* write the trailer only once! */ |
| 1115 | 1126 | return s->pending != 0 ? Z_OK : Z_STREAM_END; |
| 1116 | 1127 | } |
| 1117 | 1128 | |
| 1118 | 1129 | /* ========================================================================= */ |
| 1119 | -int ZEXPORT deflateEnd (strm) | |
| 1130 | +int ZEXPORT deflateEnd(strm) | |
| 1120 | 1131 | z_streamp strm; |
| 1121 | 1132 | { |
| 1122 | 1133 | int status; |
| 1123 | 1134 | |
| 1124 | 1135 | if (deflateStateCheck(strm)) return Z_STREAM_ERROR; |
| @@ -1140,11 +1151,11 @@ | ||
| 1140 | 1151 | /* ========================================================================= |
| 1141 | 1152 | * Copy the source state to the destination state. |
| 1142 | 1153 | * To simplify the source, this is not supported for 16-bit MSDOS (which |
| 1143 | 1154 | * doesn't have enough memory anyway to duplicate compression states). |
| 1144 | 1155 | */ |
| 1145 | -int ZEXPORT deflateCopy (dest, source) | |
| 1156 | +int ZEXPORT deflateCopy(dest, source) | |
| 1146 | 1157 | z_streamp dest; |
| 1147 | 1158 | z_streamp source; |
| 1148 | 1159 | { |
| 1149 | 1160 | #ifdef MAXSEG_64K |
| 1150 | 1161 | return Z_STREAM_ERROR; |
| @@ -1229,11 +1240,11 @@ | ||
| 1229 | 1240 | } |
| 1230 | 1241 | |
| 1231 | 1242 | /* =========================================================================== |
| 1232 | 1243 | * Initialize the "longest match" routines for a new zlib stream |
| 1233 | 1244 | */ |
| 1234 | -local void lm_init (s) | |
| 1245 | +local void lm_init(s) | |
| 1235 | 1246 | deflate_state *s; |
| 1236 | 1247 | { |
| 1237 | 1248 | s->window_size = (ulg)2L*s->w_size; |
| 1238 | 1249 | |
| 1239 | 1250 | CLEAR_HASH(s); |
| @@ -1250,15 +1261,10 @@ | ||
| 1250 | 1261 | s->lookahead = 0; |
| 1251 | 1262 | s->insert = 0; |
| 1252 | 1263 | s->match_length = s->prev_length = MIN_MATCH-1; |
| 1253 | 1264 | s->match_available = 0; |
| 1254 | 1265 | s->ins_h = 0; |
| 1255 | -#ifndef FASTEST | |
| 1256 | -#ifdef ASMV | |
| 1257 | - match_init(); /* initialize the asm code */ | |
| 1258 | -#endif | |
| 1259 | -#endif | |
| 1260 | 1266 | } |
| 1261 | 1267 | |
| 1262 | 1268 | #ifndef FASTEST |
| 1263 | 1269 | /* =========================================================================== |
| 1264 | 1270 | * Set match_start to the longest match starting at the given string and |
| @@ -1267,14 +1273,10 @@ | ||
| 1267 | 1273 | * garbage. |
| 1268 | 1274 | * IN assertions: cur_match is the head of the hash chain for the current |
| 1269 | 1275 | * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1 |
| 1270 | 1276 | * OUT assertion: the match length is not greater than s->lookahead. |
| 1271 | 1277 | */ |
| 1272 | -#ifndef ASMV | |
| 1273 | -/* For 80x86 and 680x0, an optimized version will be provided in match.asm or | |
| 1274 | - * match.S. The code will be functionally equivalent. | |
| 1275 | - */ | |
| 1276 | 1278 | local uInt longest_match(s, cur_match) |
| 1277 | 1279 | deflate_state *s; |
| 1278 | 1280 | IPos cur_match; /* current match */ |
| 1279 | 1281 | { |
| 1280 | 1282 | unsigned chain_length = s->max_chain_length;/* max hash chain length */ |
| @@ -1295,14 +1297,14 @@ | ||
| 1295 | 1297 | /* Compare two bytes at a time. Note: this is not always beneficial. |
| 1296 | 1298 | * Try with and without -DUNALIGNED_OK to check. |
| 1297 | 1299 | */ |
| 1298 | 1300 | register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1; |
| 1299 | 1301 | register ush scan_start = *(ushf*)scan; |
| 1300 | - register ush scan_end = *(ushf*)(scan+best_len-1); | |
| 1302 | + register ush scan_end = *(ushf*)(scan + best_len - 1); | |
| 1301 | 1303 | #else |
| 1302 | 1304 | register Bytef *strend = s->window + s->strstart + MAX_MATCH; |
| 1303 | - register Byte scan_end1 = scan[best_len-1]; | |
| 1305 | + register Byte scan_end1 = scan[best_len - 1]; | |
| 1304 | 1306 | register Byte scan_end = scan[best_len]; |
| 1305 | 1307 | #endif |
| 1306 | 1308 | |
| 1307 | 1309 | /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. |
| 1308 | 1310 | * It is easy to get rid of this optimization if necessary. |
| @@ -1316,11 +1318,12 @@ | ||
| 1316 | 1318 | /* Do not look for matches beyond the end of the input. This is necessary |
| 1317 | 1319 | * to make deflate deterministic. |
| 1318 | 1320 | */ |
| 1319 | 1321 | if ((uInt)nice_match > s->lookahead) nice_match = (int)s->lookahead; |
| 1320 | 1322 | |
| 1321 | - Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead"); | |
| 1323 | + Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD, | |
| 1324 | + "need lookahead"); | |
| 1322 | 1325 | |
| 1323 | 1326 | do { |
| 1324 | 1327 | Assert(cur_match < s->strstart, "no future"); |
| 1325 | 1328 | match = s->window + cur_match; |
| 1326 | 1329 | |
| @@ -1334,66 +1337,68 @@ | ||
| 1334 | 1337 | */ |
| 1335 | 1338 | #if (defined(UNALIGNED_OK) && MAX_MATCH == 258) |
| 1336 | 1339 | /* This code assumes sizeof(unsigned short) == 2. Do not use |
| 1337 | 1340 | * UNALIGNED_OK if your compiler uses a different size. |
| 1338 | 1341 | */ |
| 1339 | - if (*(ushf*)(match+best_len-1) != scan_end || | |
| 1342 | + if (*(ushf*)(match + best_len - 1) != scan_end || | |
| 1340 | 1343 | *(ushf*)match != scan_start) continue; |
| 1341 | 1344 | |
| 1342 | 1345 | /* It is not necessary to compare scan[2] and match[2] since they are |
| 1343 | 1346 | * always equal when the other bytes match, given that the hash keys |
| 1344 | 1347 | * are equal and that HASH_BITS >= 8. Compare 2 bytes at a time at |
| 1345 | - * strstart+3, +5, ... up to strstart+257. We check for insufficient | |
| 1348 | + * strstart + 3, + 5, up to strstart + 257. We check for insufficient | |
| 1346 | 1349 | * lookahead only every 4th comparison; the 128th check will be made |
| 1347 | - * at strstart+257. If MAX_MATCH-2 is not a multiple of 8, it is | |
| 1350 | + * at strstart + 257. If MAX_MATCH-2 is not a multiple of 8, it is | |
| 1348 | 1351 | * necessary to put more guard bytes at the end of the window, or |
| 1349 | 1352 | * to check more often for insufficient lookahead. |
| 1350 | 1353 | */ |
| 1351 | 1354 | Assert(scan[2] == match[2], "scan[2]?"); |
| 1352 | 1355 | scan++, match++; |
| 1353 | 1356 | do { |
| 1354 | - } while (*(ushf*)(scan+=2) == *(ushf*)(match+=2) && | |
| 1355 | - *(ushf*)(scan+=2) == *(ushf*)(match+=2) && | |
| 1356 | - *(ushf*)(scan+=2) == *(ushf*)(match+=2) && | |
| 1357 | - *(ushf*)(scan+=2) == *(ushf*)(match+=2) && | |
| 1357 | + } while (*(ushf*)(scan += 2) == *(ushf*)(match += 2) && | |
| 1358 | + *(ushf*)(scan += 2) == *(ushf*)(match += 2) && | |
| 1359 | + *(ushf*)(scan += 2) == *(ushf*)(match += 2) && | |
| 1360 | + *(ushf*)(scan += 2) == *(ushf*)(match += 2) && | |
| 1358 | 1361 | scan < strend); |
| 1359 | 1362 | /* The funny "do {}" generates better code on most compilers */ |
| 1360 | 1363 | |
| 1361 | - /* Here, scan <= window+strstart+257 */ | |
| 1362 | - Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); | |
| 1364 | + /* Here, scan <= window + strstart + 257 */ | |
| 1365 | + Assert(scan <= s->window + (unsigned)(s->window_size - 1), | |
| 1366 | + "wild scan"); | |
| 1363 | 1367 | if (*scan == *match) scan++; |
| 1364 | 1368 | |
| 1365 | - len = (MAX_MATCH - 1) - (int)(strend-scan); | |
| 1369 | + len = (MAX_MATCH - 1) - (int)(strend - scan); | |
| 1366 | 1370 | scan = strend - (MAX_MATCH-1); |
| 1367 | 1371 | |
| 1368 | 1372 | #else /* UNALIGNED_OK */ |
| 1369 | 1373 | |
| 1370 | - if (match[best_len] != scan_end || | |
| 1371 | - match[best_len-1] != scan_end1 || | |
| 1372 | - *match != *scan || | |
| 1373 | - *++match != scan[1]) continue; | |
| 1374 | + if (match[best_len] != scan_end || | |
| 1375 | + match[best_len - 1] != scan_end1 || | |
| 1376 | + *match != *scan || | |
| 1377 | + *++match != scan[1]) continue; | |
| 1374 | 1378 | |
| 1375 | - /* The check at best_len-1 can be removed because it will be made | |
| 1379 | + /* The check at best_len - 1 can be removed because it will be made | |
| 1376 | 1380 | * again later. (This heuristic is not always a win.) |
| 1377 | 1381 | * It is not necessary to compare scan[2] and match[2] since they |
| 1378 | 1382 | * are always equal when the other bytes match, given that |
| 1379 | 1383 | * the hash keys are equal and that HASH_BITS >= 8. |
| 1380 | 1384 | */ |
| 1381 | 1385 | scan += 2, match++; |
| 1382 | 1386 | Assert(*scan == *match, "match[2]?"); |
| 1383 | 1387 | |
| 1384 | 1388 | /* We check for insufficient lookahead only every 8th comparison; |
| 1385 | - * the 256th check will be made at strstart+258. | |
| 1389 | + * the 256th check will be made at strstart + 258. | |
| 1386 | 1390 | */ |
| 1387 | 1391 | do { |
| 1388 | 1392 | } while (*++scan == *++match && *++scan == *++match && |
| 1389 | 1393 | *++scan == *++match && *++scan == *++match && |
| 1390 | 1394 | *++scan == *++match && *++scan == *++match && |
| 1391 | 1395 | *++scan == *++match && *++scan == *++match && |
| 1392 | 1396 | scan < strend); |
| 1393 | 1397 | |
| 1394 | - Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); | |
| 1398 | + Assert(scan <= s->window + (unsigned)(s->window_size - 1), | |
| 1399 | + "wild scan"); | |
| 1395 | 1400 | |
| 1396 | 1401 | len = MAX_MATCH - (int)(strend - scan); |
| 1397 | 1402 | scan = strend - MAX_MATCH; |
| 1398 | 1403 | |
| 1399 | 1404 | #endif /* UNALIGNED_OK */ |
| @@ -1401,23 +1406,22 @@ | ||
| 1401 | 1406 | if (len > best_len) { |
| 1402 | 1407 | s->match_start = cur_match; |
| 1403 | 1408 | best_len = len; |
| 1404 | 1409 | if (len >= nice_match) break; |
| 1405 | 1410 | #ifdef UNALIGNED_OK |
| 1406 | - scan_end = *(ushf*)(scan+best_len-1); | |
| 1411 | + scan_end = *(ushf*)(scan + best_len - 1); | |
| 1407 | 1412 | #else |
| 1408 | - scan_end1 = scan[best_len-1]; | |
| 1413 | + scan_end1 = scan[best_len - 1]; | |
| 1409 | 1414 | scan_end = scan[best_len]; |
| 1410 | 1415 | #endif |
| 1411 | 1416 | } |
| 1412 | 1417 | } while ((cur_match = prev[cur_match & wmask]) > limit |
| 1413 | 1418 | && --chain_length != 0); |
| 1414 | 1419 | |
| 1415 | 1420 | if ((uInt)best_len <= s->lookahead) return (uInt)best_len; |
| 1416 | 1421 | return s->lookahead; |
| 1417 | 1422 | } |
| 1418 | -#endif /* ASMV */ | |
| 1419 | 1423 | |
| 1420 | 1424 | #else /* FASTEST */ |
| 1421 | 1425 | |
| 1422 | 1426 | /* --------------------------------------------------------------------------- |
| 1423 | 1427 | * Optimized version for FASTEST only |
| @@ -1434,40 +1438,41 @@ | ||
| 1434 | 1438 | /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. |
| 1435 | 1439 | * It is easy to get rid of this optimization if necessary. |
| 1436 | 1440 | */ |
| 1437 | 1441 | Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever"); |
| 1438 | 1442 | |
| 1439 | - Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead"); | |
| 1443 | + Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD, | |
| 1444 | + "need lookahead"); | |
| 1440 | 1445 | |
| 1441 | 1446 | Assert(cur_match < s->strstart, "no future"); |
| 1442 | 1447 | |
| 1443 | 1448 | match = s->window + cur_match; |
| 1444 | 1449 | |
| 1445 | 1450 | /* Return failure if the match length is less than 2: |
| 1446 | 1451 | */ |
| 1447 | 1452 | if (match[0] != scan[0] || match[1] != scan[1]) return MIN_MATCH-1; |
| 1448 | 1453 | |
| 1449 | - /* The check at best_len-1 can be removed because it will be made | |
| 1454 | + /* The check at best_len - 1 can be removed because it will be made | |
| 1450 | 1455 | * again later. (This heuristic is not always a win.) |
| 1451 | 1456 | * It is not necessary to compare scan[2] and match[2] since they |
| 1452 | 1457 | * are always equal when the other bytes match, given that |
| 1453 | 1458 | * the hash keys are equal and that HASH_BITS >= 8. |
| 1454 | 1459 | */ |
| 1455 | 1460 | scan += 2, match += 2; |
| 1456 | 1461 | Assert(*scan == *match, "match[2]?"); |
| 1457 | 1462 | |
| 1458 | 1463 | /* We check for insufficient lookahead only every 8th comparison; |
| 1459 | - * the 256th check will be made at strstart+258. | |
| 1464 | + * the 256th check will be made at strstart + 258. | |
| 1460 | 1465 | */ |
| 1461 | 1466 | do { |
| 1462 | 1467 | } while (*++scan == *++match && *++scan == *++match && |
| 1463 | 1468 | *++scan == *++match && *++scan == *++match && |
| 1464 | 1469 | *++scan == *++match && *++scan == *++match && |
| 1465 | 1470 | *++scan == *++match && *++scan == *++match && |
| 1466 | 1471 | scan < strend); |
| 1467 | 1472 | |
| 1468 | - Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); | |
| 1473 | + Assert(scan <= s->window + (unsigned)(s->window_size - 1), "wild scan"); | |
| 1469 | 1474 | |
| 1470 | 1475 | len = MAX_MATCH - (int)(strend - scan); |
| 1471 | 1476 | |
| 1472 | 1477 | if (len < MIN_MATCH) return MIN_MATCH - 1; |
| 1473 | 1478 | |
| @@ -1499,11 +1504,11 @@ | ||
| 1499 | 1504 | fprintf(stderr, "%c%c", s->window[match++], s->window[start++]); |
| 1500 | 1505 | } while (--length != 0); |
| 1501 | 1506 | z_error("invalid match"); |
| 1502 | 1507 | } |
| 1503 | 1508 | if (z_verbose > 1) { |
| 1504 | - fprintf(stderr,"\\[%d,%d]", start-match, length); | |
| 1509 | + fprintf(stderr,"\\[%d,%d]", start - match, length); | |
| 1505 | 1510 | do { putc(s->window[start++], stderr); } while (--length != 0); |
| 1506 | 1511 | } |
| 1507 | 1512 | } |
| 1508 | 1513 | #else |
| 1509 | 1514 | # define check_match(s, start, match, length) |
| @@ -1545,13 +1550,13 @@ | ||
| 1545 | 1550 | } |
| 1546 | 1551 | |
| 1547 | 1552 | /* If the window is almost full and there is insufficient lookahead, |
| 1548 | 1553 | * move the upper half to the lower one to make room in the upper half. |
| 1549 | 1554 | */ |
| 1550 | - if (s->strstart >= wsize+MAX_DIST(s)) { | |
| 1555 | + if (s->strstart >= wsize + MAX_DIST(s)) { | |
| 1551 | 1556 | |
| 1552 | - zmemcpy(s->window, s->window+wsize, (unsigned)wsize - more); | |
| 1557 | + zmemcpy(s->window, s->window + wsize, (unsigned)wsize - more); | |
| 1553 | 1558 | s->match_start -= wsize; |
| 1554 | 1559 | s->strstart -= wsize; /* we now have strstart >= MAX_DIST */ |
| 1555 | 1560 | s->block_start -= (long) wsize; |
| 1556 | 1561 | if (s->insert > s->strstart) |
| 1557 | 1562 | s->insert = s->strstart; |
| @@ -1678,11 +1683,11 @@ | ||
| 1678 | 1683 | * allowed here, then the hash table will be cleared, since two or more slides |
| 1679 | 1684 | * is the same as a clear. |
| 1680 | 1685 | * |
| 1681 | 1686 | * deflate_stored() is written to minimize the number of times an input byte is |
| 1682 | 1687 | * copied. It is most efficient with large input and output buffers, which |
| 1683 | - * maximizes the opportunites to have a single copy from next_in to next_out. | |
| 1688 | + * maximizes the opportunities to have a single copy from next_in to next_out. | |
| 1684 | 1689 | */ |
| 1685 | 1690 | local block_state deflate_stored(s, flush) |
| 1686 | 1691 | deflate_state *s; |
| 1687 | 1692 | int flush; |
| 1688 | 1693 | { |
| @@ -1888,11 +1893,11 @@ | ||
| 1888 | 1893 | return need_more; |
| 1889 | 1894 | } |
| 1890 | 1895 | if (s->lookahead == 0) break; /* flush the current block */ |
| 1891 | 1896 | } |
| 1892 | 1897 | |
| 1893 | - /* Insert the string window[strstart .. strstart+2] in the | |
| 1898 | + /* Insert the string window[strstart .. strstart + 2] in the | |
| 1894 | 1899 | * dictionary, and set hash_head to the head of the hash chain: |
| 1895 | 1900 | */ |
| 1896 | 1901 | hash_head = NIL; |
| 1897 | 1902 | if (s->lookahead >= MIN_MATCH) { |
| 1898 | 1903 | INSERT_STRING(s, s->strstart, hash_head); |
| @@ -1936,11 +1941,11 @@ | ||
| 1936 | 1941 | #endif |
| 1937 | 1942 | { |
| 1938 | 1943 | s->strstart += s->match_length; |
| 1939 | 1944 | s->match_length = 0; |
| 1940 | 1945 | s->ins_h = s->window[s->strstart]; |
| 1941 | - UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]); | |
| 1946 | + UPDATE_HASH(s, s->ins_h, s->window[s->strstart + 1]); | |
| 1942 | 1947 | #if MIN_MATCH != 3 |
| 1943 | 1948 | Call UPDATE_HASH() MIN_MATCH-3 more times |
| 1944 | 1949 | #endif |
| 1945 | 1950 | /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not |
| 1946 | 1951 | * matter since it will be recomputed at next deflate call. |
| @@ -1947,11 +1952,11 @@ | ||
| 1947 | 1952 | */ |
| 1948 | 1953 | } |
| 1949 | 1954 | } else { |
| 1950 | 1955 | /* No match, output a literal byte */ |
| 1951 | 1956 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 1952 | - _tr_tally_lit (s, s->window[s->strstart], bflush); | |
| 1957 | + _tr_tally_lit(s, s->window[s->strstart], bflush); | |
| 1953 | 1958 | s->lookahead--; |
| 1954 | 1959 | s->strstart++; |
| 1955 | 1960 | } |
| 1956 | 1961 | if (bflush) FLUSH_BLOCK(s, 0); |
| 1957 | 1962 | } |
| @@ -1991,11 +1996,11 @@ | ||
| 1991 | 1996 | return need_more; |
| 1992 | 1997 | } |
| 1993 | 1998 | if (s->lookahead == 0) break; /* flush the current block */ |
| 1994 | 1999 | } |
| 1995 | 2000 | |
| 1996 | - /* Insert the string window[strstart .. strstart+2] in the | |
| 2001 | + /* Insert the string window[strstart .. strstart + 2] in the | |
| 1997 | 2002 | * dictionary, and set hash_head to the head of the hash chain: |
| 1998 | 2003 | */ |
| 1999 | 2004 | hash_head = NIL; |
| 2000 | 2005 | if (s->lookahead >= MIN_MATCH) { |
| 2001 | 2006 | INSERT_STRING(s, s->strstart, hash_head); |
| @@ -2033,21 +2038,21 @@ | ||
| 2033 | 2038 | */ |
| 2034 | 2039 | if (s->prev_length >= MIN_MATCH && s->match_length <= s->prev_length) { |
| 2035 | 2040 | uInt max_insert = s->strstart + s->lookahead - MIN_MATCH; |
| 2036 | 2041 | /* Do not insert strings in hash table beyond this. */ |
| 2037 | 2042 | |
| 2038 | - check_match(s, s->strstart-1, s->prev_match, s->prev_length); | |
| 2043 | + check_match(s, s->strstart - 1, s->prev_match, s->prev_length); | |
| 2039 | 2044 | |
| 2040 | - _tr_tally_dist(s, s->strstart -1 - s->prev_match, | |
| 2045 | + _tr_tally_dist(s, s->strstart - 1 - s->prev_match, | |
| 2041 | 2046 | s->prev_length - MIN_MATCH, bflush); |
| 2042 | 2047 | |
| 2043 | 2048 | /* Insert in hash table all strings up to the end of the match. |
| 2044 | - * strstart-1 and strstart are already inserted. If there is not | |
| 2049 | + * strstart - 1 and strstart are already inserted. If there is not | |
| 2045 | 2050 | * enough lookahead, the last two strings are not inserted in |
| 2046 | 2051 | * the hash table. |
| 2047 | 2052 | */ |
| 2048 | - s->lookahead -= s->prev_length-1; | |
| 2053 | + s->lookahead -= s->prev_length - 1; | |
| 2049 | 2054 | s->prev_length -= 2; |
| 2050 | 2055 | do { |
| 2051 | 2056 | if (++s->strstart <= max_insert) { |
| 2052 | 2057 | INSERT_STRING(s, s->strstart, hash_head); |
| 2053 | 2058 | } |
| @@ -2061,12 +2066,12 @@ | ||
| 2061 | 2066 | } else if (s->match_available) { |
| 2062 | 2067 | /* If there was no match at the previous position, output a |
| 2063 | 2068 | * single literal. If there was a match but the current match |
| 2064 | 2069 | * is longer, truncate the previous match to a single literal. |
| 2065 | 2070 | */ |
| 2066 | - Tracevv((stderr,"%c", s->window[s->strstart-1])); | |
| 2067 | - _tr_tally_lit(s, s->window[s->strstart-1], bflush); | |
| 2071 | + Tracevv((stderr,"%c", s->window[s->strstart - 1])); | |
| 2072 | + _tr_tally_lit(s, s->window[s->strstart - 1], bflush); | |
| 2068 | 2073 | if (bflush) { |
| 2069 | 2074 | FLUSH_BLOCK_ONLY(s, 0); |
| 2070 | 2075 | } |
| 2071 | 2076 | s->strstart++; |
| 2072 | 2077 | s->lookahead--; |
| @@ -2080,12 +2085,12 @@ | ||
| 2080 | 2085 | s->lookahead--; |
| 2081 | 2086 | } |
| 2082 | 2087 | } |
| 2083 | 2088 | Assert (flush != Z_NO_FLUSH, "no flush?"); |
| 2084 | 2089 | if (s->match_available) { |
| 2085 | - Tracevv((stderr,"%c", s->window[s->strstart-1])); | |
| 2086 | - _tr_tally_lit(s, s->window[s->strstart-1], bflush); | |
| 2090 | + Tracevv((stderr,"%c", s->window[s->strstart - 1])); | |
| 2091 | + _tr_tally_lit(s, s->window[s->strstart - 1], bflush); | |
| 2087 | 2092 | s->match_available = 0; |
| 2088 | 2093 | } |
| 2089 | 2094 | s->insert = s->strstart < MIN_MATCH-1 ? s->strstart : MIN_MATCH-1; |
| 2090 | 2095 | if (flush == Z_FINISH) { |
| 2091 | 2096 | FLUSH_BLOCK(s, 1); |
| @@ -2138,11 +2143,12 @@ | ||
| 2138 | 2143 | scan < strend); |
| 2139 | 2144 | s->match_length = MAX_MATCH - (uInt)(strend - scan); |
| 2140 | 2145 | if (s->match_length > s->lookahead) |
| 2141 | 2146 | s->match_length = s->lookahead; |
| 2142 | 2147 | } |
| 2143 | - Assert(scan <= s->window+(uInt)(s->window_size-1), "wild scan"); | |
| 2148 | + Assert(scan <= s->window + (uInt)(s->window_size - 1), | |
| 2149 | + "wild scan"); | |
| 2144 | 2150 | } |
| 2145 | 2151 | |
| 2146 | 2152 | /* Emit match if have run of MIN_MATCH or longer, else emit literal */ |
| 2147 | 2153 | if (s->match_length >= MIN_MATCH) { |
| 2148 | 2154 | check_match(s, s->strstart, s->strstart - 1, s->match_length); |
| @@ -2153,11 +2159,11 @@ | ||
| 2153 | 2159 | s->strstart += s->match_length; |
| 2154 | 2160 | s->match_length = 0; |
| 2155 | 2161 | } else { |
| 2156 | 2162 | /* No match, output a literal byte */ |
| 2157 | 2163 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 2158 | - _tr_tally_lit (s, s->window[s->strstart], bflush); | |
| 2164 | + _tr_tally_lit(s, s->window[s->strstart], bflush); | |
| 2159 | 2165 | s->lookahead--; |
| 2160 | 2166 | s->strstart++; |
| 2161 | 2167 | } |
| 2162 | 2168 | if (bflush) FLUSH_BLOCK(s, 0); |
| 2163 | 2169 | } |
| @@ -2193,11 +2199,11 @@ | ||
| 2193 | 2199 | } |
| 2194 | 2200 | |
| 2195 | 2201 | /* Output a literal byte */ |
| 2196 | 2202 | s->match_length = 0; |
| 2197 | 2203 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 2198 | - _tr_tally_lit (s, s->window[s->strstart], bflush); | |
| 2204 | + _tr_tally_lit(s, s->window[s->strstart], bflush); | |
| 2199 | 2205 | s->lookahead--; |
| 2200 | 2206 | s->strstart++; |
| 2201 | 2207 | if (bflush) FLUSH_BLOCK(s, 0); |
| 2202 | 2208 | } |
| 2203 | 2209 | s->insert = 0; |
| 2204 | 2210 |
| --- compat/zlib/deflate.c | |
| +++ compat/zlib/deflate.c | |
| @@ -50,11 +50,11 @@ | |
| 50 | /* @(#) $Id$ */ |
| 51 | |
| 52 | #include "deflate.h" |
| 53 | |
| 54 | const char deflate_copyright[] = |
| 55 | " deflate 1.2.12 Copyright 1995-2022 Jean-loup Gailly and Mark Adler "; |
| 56 | /* |
| 57 | If you use the zlib library in a product, an acknowledgment is welcome |
| 58 | in the documentation of your product. If for some reason you cannot |
| 59 | include such an acknowledgment, I would appreciate that you keep this |
| 60 | copyright string in the executable of your product. |
| @@ -85,17 +85,11 @@ | |
| 85 | local block_state deflate_huff OF((deflate_state *s, int flush)); |
| 86 | local void lm_init OF((deflate_state *s)); |
| 87 | local void putShortMSB OF((deflate_state *s, uInt b)); |
| 88 | local void flush_pending OF((z_streamp strm)); |
| 89 | local unsigned read_buf OF((z_streamp strm, Bytef *buf, unsigned size)); |
| 90 | #ifdef ASMV |
| 91 | # pragma message("Assembler code may have bugs -- use at your own risk") |
| 92 | void match_init OF((void)); /* asm code initialization */ |
| 93 | uInt longest_match OF((deflate_state *s, IPos cur_match)); |
| 94 | #else |
| 95 | local uInt longest_match OF((deflate_state *s, IPos cur_match)); |
| 96 | #endif |
| 97 | |
| 98 | #ifdef ZLIB_DEBUG |
| 99 | local void check_match OF((deflate_state *s, IPos start, IPos match, |
| 100 | int length)); |
| 101 | #endif |
| @@ -158,11 +152,11 @@ | |
| 158 | * Update a hash value with the given input byte |
| 159 | * IN assertion: all calls to UPDATE_HASH are made with consecutive input |
| 160 | * characters, so that a running hash key can be computed from the previous |
| 161 | * key instead of complete recalculation each time. |
| 162 | */ |
| 163 | #define UPDATE_HASH(s,h,c) (h = (((h)<<s->hash_shift) ^ (c)) & s->hash_mask) |
| 164 | |
| 165 | |
| 166 | /* =========================================================================== |
| 167 | * Insert string str in the dictionary and set match_head to the previous head |
| 168 | * of the hash chain (the most recent string with same hash key). Return |
| @@ -189,13 +183,13 @@ | |
| 189 | * Initialize the hash table (avoiding 64K overflow for 16 bit systems). |
| 190 | * prev[] will be initialized on the fly. |
| 191 | */ |
| 192 | #define CLEAR_HASH(s) \ |
| 193 | do { \ |
| 194 | s->head[s->hash_size-1] = NIL; \ |
| 195 | zmemzero((Bytef *)s->head, \ |
| 196 | (unsigned)(s->hash_size-1)*sizeof(*s->head)); \ |
| 197 | } while (0) |
| 198 | |
| 199 | /* =========================================================================== |
| 200 | * Slide the hash table when sliding the window down (could be avoided with 32 |
| 201 | * bit values at the expense of memory usage). We slide even when level == 0 to |
| @@ -283,10 +277,12 @@ | |
| 283 | if (level == Z_DEFAULT_COMPRESSION) level = 6; |
| 284 | #endif |
| 285 | |
| 286 | if (windowBits < 0) { /* suppress zlib wrapper */ |
| 287 | wrap = 0; |
| 288 | windowBits = -windowBits; |
| 289 | } |
| 290 | #ifdef GZIP |
| 291 | else if (windowBits > 15) { |
| 292 | wrap = 2; /* write gzip wrapper instead */ |
| @@ -312,11 +308,11 @@ | |
| 312 | s->w_mask = s->w_size - 1; |
| 313 | |
| 314 | s->hash_bits = (uInt)memLevel + 7; |
| 315 | s->hash_size = 1 << s->hash_bits; |
| 316 | s->hash_mask = s->hash_size - 1; |
| 317 | s->hash_shift = ((s->hash_bits+MIN_MATCH-1)/MIN_MATCH); |
| 318 | |
| 319 | s->window = (Bytef *) ZALLOC(strm, s->w_size, 2*sizeof(Byte)); |
| 320 | s->prev = (Posf *) ZALLOC(strm, s->w_size, sizeof(Pos)); |
| 321 | s->head = (Posf *) ZALLOC(strm, s->hash_size, sizeof(Pos)); |
| 322 | |
| @@ -338,15 +334,15 @@ | |
| 338 | * in sym_buf is three bytes -- two for the distance and one for the |
| 339 | * literal/length. As each symbol is consumed, the pointer to the next |
| 340 | * sym_buf value to read moves forward three bytes. From that symbol, up to |
| 341 | * 31 bits are written to pending_buf. The closest the written pending_buf |
| 342 | * bits gets to the next sym_buf symbol to read is just before the last |
| 343 | * code is written. At that time, 31*(n-2) bits have been written, just |
| 344 | * after 24*(n-2) bits have been consumed from sym_buf. sym_buf starts at |
| 345 | * 8*n bits into pending_buf. (Note that the symbol buffer fills when n-1 |
| 346 | * symbols are written.) The closest the writing gets to what is unread is |
| 347 | * then n+14 bits. Here n is lit_bufsize, which is 16384 by default, and |
| 348 | * can range from 128 to 32768. |
| 349 | * |
| 350 | * Therefore, at a minimum, there are 142 bits of space between what is |
| 351 | * written and what is read in the overlain buffers, so the symbols cannot |
| 352 | * be overwritten by the compressed data. That space is actually 139 bits, |
| @@ -388,11 +384,11 @@ | |
| 388 | } |
| 389 | |
| 390 | /* ========================================================================= |
| 391 | * Check for a valid deflate stream state. Return 0 if ok, 1 if not. |
| 392 | */ |
| 393 | local int deflateStateCheck (strm) |
| 394 | z_streamp strm; |
| 395 | { |
| 396 | deflate_state *s; |
| 397 | if (strm == Z_NULL || |
| 398 | strm->zalloc == (alloc_func)0 || strm->zfree == (free_func)0) |
| @@ -411,11 +407,11 @@ | |
| 411 | return 1; |
| 412 | return 0; |
| 413 | } |
| 414 | |
| 415 | /* ========================================================================= */ |
| 416 | int ZEXPORT deflateSetDictionary (strm, dictionary, dictLength) |
| 417 | z_streamp strm; |
| 418 | const Bytef *dictionary; |
| 419 | uInt dictLength; |
| 420 | { |
| 421 | deflate_state *s; |
| @@ -480,11 +476,11 @@ | |
| 480 | s->wrap = wrap; |
| 481 | return Z_OK; |
| 482 | } |
| 483 | |
| 484 | /* ========================================================================= */ |
| 485 | int ZEXPORT deflateGetDictionary (strm, dictionary, dictLength) |
| 486 | z_streamp strm; |
| 487 | Bytef *dictionary; |
| 488 | uInt *dictLength; |
| 489 | { |
| 490 | deflate_state *s; |
| @@ -502,11 +498,11 @@ | |
| 502 | *dictLength = len; |
| 503 | return Z_OK; |
| 504 | } |
| 505 | |
| 506 | /* ========================================================================= */ |
| 507 | int ZEXPORT deflateResetKeep (strm) |
| 508 | z_streamp strm; |
| 509 | { |
| 510 | deflate_state *s; |
| 511 | |
| 512 | if (deflateStateCheck(strm)) { |
| @@ -540,11 +536,11 @@ | |
| 540 | |
| 541 | return Z_OK; |
| 542 | } |
| 543 | |
| 544 | /* ========================================================================= */ |
| 545 | int ZEXPORT deflateReset (strm) |
| 546 | z_streamp strm; |
| 547 | { |
| 548 | int ret; |
| 549 | |
| 550 | ret = deflateResetKeep(strm); |
| @@ -552,11 +548,11 @@ | |
| 552 | lm_init(strm->state); |
| 553 | return ret; |
| 554 | } |
| 555 | |
| 556 | /* ========================================================================= */ |
| 557 | int ZEXPORT deflateSetHeader (strm, head) |
| 558 | z_streamp strm; |
| 559 | gz_headerp head; |
| 560 | { |
| 561 | if (deflateStateCheck(strm) || strm->state->wrap != 2) |
| 562 | return Z_STREAM_ERROR; |
| @@ -563,11 +559,11 @@ | |
| 563 | strm->state->gzhead = head; |
| 564 | return Z_OK; |
| 565 | } |
| 566 | |
| 567 | /* ========================================================================= */ |
| 568 | int ZEXPORT deflatePending (strm, pending, bits) |
| 569 | unsigned *pending; |
| 570 | int *bits; |
| 571 | z_streamp strm; |
| 572 | { |
| 573 | if (deflateStateCheck(strm)) return Z_STREAM_ERROR; |
| @@ -577,11 +573,11 @@ | |
| 577 | *bits = strm->state->bi_valid; |
| 578 | return Z_OK; |
| 579 | } |
| 580 | |
| 581 | /* ========================================================================= */ |
| 582 | int ZEXPORT deflatePrime (strm, bits, value) |
| 583 | z_streamp strm; |
| 584 | int bits; |
| 585 | int value; |
| 586 | { |
| 587 | deflate_state *s; |
| @@ -672,40 +668,54 @@ | |
| 672 | s->max_chain_length = (uInt)max_chain; |
| 673 | return Z_OK; |
| 674 | } |
| 675 | |
| 676 | /* ========================================================================= |
| 677 | * For the default windowBits of 15 and memLevel of 8, this function returns |
| 678 | * a close to exact, as well as small, upper bound on the compressed size. |
| 679 | * They are coded as constants here for a reason--if the #define's are |
| 680 | * changed, then this function needs to be changed as well. The return |
| 681 | * value for 15 and 8 only works for those exact settings. |
| 682 | * |
| 683 | * For any setting other than those defaults for windowBits and memLevel, |
| 684 | * the value returned is a conservative worst case for the maximum expansion |
| 685 | * resulting from using fixed blocks instead of stored blocks, which deflate |
| 686 | * can emit on compressed data for some combinations of the parameters. |
| 687 | * |
| 688 | * This function could be more sophisticated to provide closer upper bounds for |
| 689 | * every combination of windowBits and memLevel. But even the conservative |
| 690 | * upper bound of about 14% expansion does not seem onerous for output buffer |
| 691 | * allocation. |
| 692 | */ |
| 693 | uLong ZEXPORT deflateBound(strm, sourceLen) |
| 694 | z_streamp strm; |
| 695 | uLong sourceLen; |
| 696 | { |
| 697 | deflate_state *s; |
| 698 | uLong complen, wraplen; |
| 699 | |
| 700 | /* conservative upper bound for compressed data */ |
| 701 | complen = sourceLen + |
| 702 | ((sourceLen + 7) >> 3) + ((sourceLen + 63) >> 6) + 5; |
| 703 | |
| 704 | /* if can't get parameters, return conservative bound plus zlib wrapper */ |
| 705 | if (deflateStateCheck(strm)) |
| 706 | return complen + 6; |
| 707 | |
| 708 | /* compute wrapper length */ |
| 709 | s = strm->state; |
| 710 | switch (s->wrap) { |
| 711 | case 0: /* raw deflate */ |
| @@ -738,25 +748,26 @@ | |
| 738 | #endif |
| 739 | default: /* for compiler happiness */ |
| 740 | wraplen = 6; |
| 741 | } |
| 742 | |
| 743 | /* if not default parameters, return conservative bound */ |
| 744 | if (s->w_bits != 15 || s->hash_bits != 8 + 7) |
| 745 | return complen + wraplen; |
| 746 | |
| 747 | /* default settings: return tight bound for that case */ |
| 748 | return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + |
| 749 | (sourceLen >> 25) + 13 - 6 + wraplen; |
| 750 | } |
| 751 | |
| 752 | /* ========================================================================= |
| 753 | * Put a short in the pending buffer. The 16-bit value is put in MSB order. |
| 754 | * IN assertion: the stream state is correct and there is enough room in |
| 755 | * pending_buf. |
| 756 | */ |
| 757 | local void putShortMSB (s, b) |
| 758 | deflate_state *s; |
| 759 | uInt b; |
| 760 | { |
| 761 | put_byte(s, (Byte)(b >> 8)); |
| 762 | put_byte(s, (Byte)(b & 0xff)); |
| @@ -799,11 +810,11 @@ | |
| 799 | strm->adler = crc32(strm->adler, s->pending_buf + (beg), \ |
| 800 | s->pending - (beg)); \ |
| 801 | } while (0) |
| 802 | |
| 803 | /* ========================================================================= */ |
| 804 | int ZEXPORT deflate (strm, flush) |
| 805 | z_streamp strm; |
| 806 | int flush; |
| 807 | { |
| 808 | int old_flush; /* value of flush param for previous deflate call */ |
| 809 | deflate_state *s; |
| @@ -854,11 +865,11 @@ | |
| 854 | /* Write the header */ |
| 855 | if (s->status == INIT_STATE && s->wrap == 0) |
| 856 | s->status = BUSY_STATE; |
| 857 | if (s->status == INIT_STATE) { |
| 858 | /* zlib header */ |
| 859 | uInt header = (Z_DEFLATED + ((s->w_bits-8)<<4)) << 8; |
| 860 | uInt level_flags; |
| 861 | |
| 862 | if (s->strategy >= Z_HUFFMAN_ONLY || s->level < 2) |
| 863 | level_flags = 0; |
| 864 | else if (s->level < 6) |
| @@ -1114,11 +1125,11 @@ | |
| 1114 | if (s->wrap > 0) s->wrap = -s->wrap; /* write the trailer only once! */ |
| 1115 | return s->pending != 0 ? Z_OK : Z_STREAM_END; |
| 1116 | } |
| 1117 | |
| 1118 | /* ========================================================================= */ |
| 1119 | int ZEXPORT deflateEnd (strm) |
| 1120 | z_streamp strm; |
| 1121 | { |
| 1122 | int status; |
| 1123 | |
| 1124 | if (deflateStateCheck(strm)) return Z_STREAM_ERROR; |
| @@ -1140,11 +1151,11 @@ | |
| 1140 | /* ========================================================================= |
| 1141 | * Copy the source state to the destination state. |
| 1142 | * To simplify the source, this is not supported for 16-bit MSDOS (which |
| 1143 | * doesn't have enough memory anyway to duplicate compression states). |
| 1144 | */ |
| 1145 | int ZEXPORT deflateCopy (dest, source) |
| 1146 | z_streamp dest; |
| 1147 | z_streamp source; |
| 1148 | { |
| 1149 | #ifdef MAXSEG_64K |
| 1150 | return Z_STREAM_ERROR; |
| @@ -1229,11 +1240,11 @@ | |
| 1229 | } |
| 1230 | |
| 1231 | /* =========================================================================== |
| 1232 | * Initialize the "longest match" routines for a new zlib stream |
| 1233 | */ |
| 1234 | local void lm_init (s) |
| 1235 | deflate_state *s; |
| 1236 | { |
| 1237 | s->window_size = (ulg)2L*s->w_size; |
| 1238 | |
| 1239 | CLEAR_HASH(s); |
| @@ -1250,15 +1261,10 @@ | |
| 1250 | s->lookahead = 0; |
| 1251 | s->insert = 0; |
| 1252 | s->match_length = s->prev_length = MIN_MATCH-1; |
| 1253 | s->match_available = 0; |
| 1254 | s->ins_h = 0; |
| 1255 | #ifndef FASTEST |
| 1256 | #ifdef ASMV |
| 1257 | match_init(); /* initialize the asm code */ |
| 1258 | #endif |
| 1259 | #endif |
| 1260 | } |
| 1261 | |
| 1262 | #ifndef FASTEST |
| 1263 | /* =========================================================================== |
| 1264 | * Set match_start to the longest match starting at the given string and |
| @@ -1267,14 +1273,10 @@ | |
| 1267 | * garbage. |
| 1268 | * IN assertions: cur_match is the head of the hash chain for the current |
| 1269 | * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1 |
| 1270 | * OUT assertion: the match length is not greater than s->lookahead. |
| 1271 | */ |
| 1272 | #ifndef ASMV |
| 1273 | /* For 80x86 and 680x0, an optimized version will be provided in match.asm or |
| 1274 | * match.S. The code will be functionally equivalent. |
| 1275 | */ |
| 1276 | local uInt longest_match(s, cur_match) |
| 1277 | deflate_state *s; |
| 1278 | IPos cur_match; /* current match */ |
| 1279 | { |
| 1280 | unsigned chain_length = s->max_chain_length;/* max hash chain length */ |
| @@ -1295,14 +1297,14 @@ | |
| 1295 | /* Compare two bytes at a time. Note: this is not always beneficial. |
| 1296 | * Try with and without -DUNALIGNED_OK to check. |
| 1297 | */ |
| 1298 | register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1; |
| 1299 | register ush scan_start = *(ushf*)scan; |
| 1300 | register ush scan_end = *(ushf*)(scan+best_len-1); |
| 1301 | #else |
| 1302 | register Bytef *strend = s->window + s->strstart + MAX_MATCH; |
| 1303 | register Byte scan_end1 = scan[best_len-1]; |
| 1304 | register Byte scan_end = scan[best_len]; |
| 1305 | #endif |
| 1306 | |
| 1307 | /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. |
| 1308 | * It is easy to get rid of this optimization if necessary. |
| @@ -1316,11 +1318,12 @@ | |
| 1316 | /* Do not look for matches beyond the end of the input. This is necessary |
| 1317 | * to make deflate deterministic. |
| 1318 | */ |
| 1319 | if ((uInt)nice_match > s->lookahead) nice_match = (int)s->lookahead; |
| 1320 | |
| 1321 | Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead"); |
| 1322 | |
| 1323 | do { |
| 1324 | Assert(cur_match < s->strstart, "no future"); |
| 1325 | match = s->window + cur_match; |
| 1326 | |
| @@ -1334,66 +1337,68 @@ | |
| 1334 | */ |
| 1335 | #if (defined(UNALIGNED_OK) && MAX_MATCH == 258) |
| 1336 | /* This code assumes sizeof(unsigned short) == 2. Do not use |
| 1337 | * UNALIGNED_OK if your compiler uses a different size. |
| 1338 | */ |
| 1339 | if (*(ushf*)(match+best_len-1) != scan_end || |
| 1340 | *(ushf*)match != scan_start) continue; |
| 1341 | |
| 1342 | /* It is not necessary to compare scan[2] and match[2] since they are |
| 1343 | * always equal when the other bytes match, given that the hash keys |
| 1344 | * are equal and that HASH_BITS >= 8. Compare 2 bytes at a time at |
| 1345 | * strstart+3, +5, ... up to strstart+257. We check for insufficient |
| 1346 | * lookahead only every 4th comparison; the 128th check will be made |
| 1347 | * at strstart+257. If MAX_MATCH-2 is not a multiple of 8, it is |
| 1348 | * necessary to put more guard bytes at the end of the window, or |
| 1349 | * to check more often for insufficient lookahead. |
| 1350 | */ |
| 1351 | Assert(scan[2] == match[2], "scan[2]?"); |
| 1352 | scan++, match++; |
| 1353 | do { |
| 1354 | } while (*(ushf*)(scan+=2) == *(ushf*)(match+=2) && |
| 1355 | *(ushf*)(scan+=2) == *(ushf*)(match+=2) && |
| 1356 | *(ushf*)(scan+=2) == *(ushf*)(match+=2) && |
| 1357 | *(ushf*)(scan+=2) == *(ushf*)(match+=2) && |
| 1358 | scan < strend); |
| 1359 | /* The funny "do {}" generates better code on most compilers */ |
| 1360 | |
| 1361 | /* Here, scan <= window+strstart+257 */ |
| 1362 | Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); |
| 1363 | if (*scan == *match) scan++; |
| 1364 | |
| 1365 | len = (MAX_MATCH - 1) - (int)(strend-scan); |
| 1366 | scan = strend - (MAX_MATCH-1); |
| 1367 | |
| 1368 | #else /* UNALIGNED_OK */ |
| 1369 | |
| 1370 | if (match[best_len] != scan_end || |
| 1371 | match[best_len-1] != scan_end1 || |
| 1372 | *match != *scan || |
| 1373 | *++match != scan[1]) continue; |
| 1374 | |
| 1375 | /* The check at best_len-1 can be removed because it will be made |
| 1376 | * again later. (This heuristic is not always a win.) |
| 1377 | * It is not necessary to compare scan[2] and match[2] since they |
| 1378 | * are always equal when the other bytes match, given that |
| 1379 | * the hash keys are equal and that HASH_BITS >= 8. |
| 1380 | */ |
| 1381 | scan += 2, match++; |
| 1382 | Assert(*scan == *match, "match[2]?"); |
| 1383 | |
| 1384 | /* We check for insufficient lookahead only every 8th comparison; |
| 1385 | * the 256th check will be made at strstart+258. |
| 1386 | */ |
| 1387 | do { |
| 1388 | } while (*++scan == *++match && *++scan == *++match && |
| 1389 | *++scan == *++match && *++scan == *++match && |
| 1390 | *++scan == *++match && *++scan == *++match && |
| 1391 | *++scan == *++match && *++scan == *++match && |
| 1392 | scan < strend); |
| 1393 | |
| 1394 | Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); |
| 1395 | |
| 1396 | len = MAX_MATCH - (int)(strend - scan); |
| 1397 | scan = strend - MAX_MATCH; |
| 1398 | |
| 1399 | #endif /* UNALIGNED_OK */ |
| @@ -1401,23 +1406,22 @@ | |
| 1401 | if (len > best_len) { |
| 1402 | s->match_start = cur_match; |
| 1403 | best_len = len; |
| 1404 | if (len >= nice_match) break; |
| 1405 | #ifdef UNALIGNED_OK |
| 1406 | scan_end = *(ushf*)(scan+best_len-1); |
| 1407 | #else |
| 1408 | scan_end1 = scan[best_len-1]; |
| 1409 | scan_end = scan[best_len]; |
| 1410 | #endif |
| 1411 | } |
| 1412 | } while ((cur_match = prev[cur_match & wmask]) > limit |
| 1413 | && --chain_length != 0); |
| 1414 | |
| 1415 | if ((uInt)best_len <= s->lookahead) return (uInt)best_len; |
| 1416 | return s->lookahead; |
| 1417 | } |
| 1418 | #endif /* ASMV */ |
| 1419 | |
| 1420 | #else /* FASTEST */ |
| 1421 | |
| 1422 | /* --------------------------------------------------------------------------- |
| 1423 | * Optimized version for FASTEST only |
| @@ -1434,40 +1438,41 @@ | |
| 1434 | /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. |
| 1435 | * It is easy to get rid of this optimization if necessary. |
| 1436 | */ |
| 1437 | Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever"); |
| 1438 | |
| 1439 | Assert((ulg)s->strstart <= s->window_size-MIN_LOOKAHEAD, "need lookahead"); |
| 1440 | |
| 1441 | Assert(cur_match < s->strstart, "no future"); |
| 1442 | |
| 1443 | match = s->window + cur_match; |
| 1444 | |
| 1445 | /* Return failure if the match length is less than 2: |
| 1446 | */ |
| 1447 | if (match[0] != scan[0] || match[1] != scan[1]) return MIN_MATCH-1; |
| 1448 | |
| 1449 | /* The check at best_len-1 can be removed because it will be made |
| 1450 | * again later. (This heuristic is not always a win.) |
| 1451 | * It is not necessary to compare scan[2] and match[2] since they |
| 1452 | * are always equal when the other bytes match, given that |
| 1453 | * the hash keys are equal and that HASH_BITS >= 8. |
| 1454 | */ |
| 1455 | scan += 2, match += 2; |
| 1456 | Assert(*scan == *match, "match[2]?"); |
| 1457 | |
| 1458 | /* We check for insufficient lookahead only every 8th comparison; |
| 1459 | * the 256th check will be made at strstart+258. |
| 1460 | */ |
| 1461 | do { |
| 1462 | } while (*++scan == *++match && *++scan == *++match && |
| 1463 | *++scan == *++match && *++scan == *++match && |
| 1464 | *++scan == *++match && *++scan == *++match && |
| 1465 | *++scan == *++match && *++scan == *++match && |
| 1466 | scan < strend); |
| 1467 | |
| 1468 | Assert(scan <= s->window+(unsigned)(s->window_size-1), "wild scan"); |
| 1469 | |
| 1470 | len = MAX_MATCH - (int)(strend - scan); |
| 1471 | |
| 1472 | if (len < MIN_MATCH) return MIN_MATCH - 1; |
| 1473 | |
| @@ -1499,11 +1504,11 @@ | |
| 1499 | fprintf(stderr, "%c%c", s->window[match++], s->window[start++]); |
| 1500 | } while (--length != 0); |
| 1501 | z_error("invalid match"); |
| 1502 | } |
| 1503 | if (z_verbose > 1) { |
| 1504 | fprintf(stderr,"\\[%d,%d]", start-match, length); |
| 1505 | do { putc(s->window[start++], stderr); } while (--length != 0); |
| 1506 | } |
| 1507 | } |
| 1508 | #else |
| 1509 | # define check_match(s, start, match, length) |
| @@ -1545,13 +1550,13 @@ | |
| 1545 | } |
| 1546 | |
| 1547 | /* If the window is almost full and there is insufficient lookahead, |
| 1548 | * move the upper half to the lower one to make room in the upper half. |
| 1549 | */ |
| 1550 | if (s->strstart >= wsize+MAX_DIST(s)) { |
| 1551 | |
| 1552 | zmemcpy(s->window, s->window+wsize, (unsigned)wsize - more); |
| 1553 | s->match_start -= wsize; |
| 1554 | s->strstart -= wsize; /* we now have strstart >= MAX_DIST */ |
| 1555 | s->block_start -= (long) wsize; |
| 1556 | if (s->insert > s->strstart) |
| 1557 | s->insert = s->strstart; |
| @@ -1678,11 +1683,11 @@ | |
| 1678 | * allowed here, then the hash table will be cleared, since two or more slides |
| 1679 | * is the same as a clear. |
| 1680 | * |
| 1681 | * deflate_stored() is written to minimize the number of times an input byte is |
| 1682 | * copied. It is most efficient with large input and output buffers, which |
| 1683 | * maximizes the opportunites to have a single copy from next_in to next_out. |
| 1684 | */ |
| 1685 | local block_state deflate_stored(s, flush) |
| 1686 | deflate_state *s; |
| 1687 | int flush; |
| 1688 | { |
| @@ -1888,11 +1893,11 @@ | |
| 1888 | return need_more; |
| 1889 | } |
| 1890 | if (s->lookahead == 0) break; /* flush the current block */ |
| 1891 | } |
| 1892 | |
| 1893 | /* Insert the string window[strstart .. strstart+2] in the |
| 1894 | * dictionary, and set hash_head to the head of the hash chain: |
| 1895 | */ |
| 1896 | hash_head = NIL; |
| 1897 | if (s->lookahead >= MIN_MATCH) { |
| 1898 | INSERT_STRING(s, s->strstart, hash_head); |
| @@ -1936,11 +1941,11 @@ | |
| 1936 | #endif |
| 1937 | { |
| 1938 | s->strstart += s->match_length; |
| 1939 | s->match_length = 0; |
| 1940 | s->ins_h = s->window[s->strstart]; |
| 1941 | UPDATE_HASH(s, s->ins_h, s->window[s->strstart+1]); |
| 1942 | #if MIN_MATCH != 3 |
| 1943 | Call UPDATE_HASH() MIN_MATCH-3 more times |
| 1944 | #endif |
| 1945 | /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not |
| 1946 | * matter since it will be recomputed at next deflate call. |
| @@ -1947,11 +1952,11 @@ | |
| 1947 | */ |
| 1948 | } |
| 1949 | } else { |
| 1950 | /* No match, output a literal byte */ |
| 1951 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 1952 | _tr_tally_lit (s, s->window[s->strstart], bflush); |
| 1953 | s->lookahead--; |
| 1954 | s->strstart++; |
| 1955 | } |
| 1956 | if (bflush) FLUSH_BLOCK(s, 0); |
| 1957 | } |
| @@ -1991,11 +1996,11 @@ | |
| 1991 | return need_more; |
| 1992 | } |
| 1993 | if (s->lookahead == 0) break; /* flush the current block */ |
| 1994 | } |
| 1995 | |
| 1996 | /* Insert the string window[strstart .. strstart+2] in the |
| 1997 | * dictionary, and set hash_head to the head of the hash chain: |
| 1998 | */ |
| 1999 | hash_head = NIL; |
| 2000 | if (s->lookahead >= MIN_MATCH) { |
| 2001 | INSERT_STRING(s, s->strstart, hash_head); |
| @@ -2033,21 +2038,21 @@ | |
| 2033 | */ |
| 2034 | if (s->prev_length >= MIN_MATCH && s->match_length <= s->prev_length) { |
| 2035 | uInt max_insert = s->strstart + s->lookahead - MIN_MATCH; |
| 2036 | /* Do not insert strings in hash table beyond this. */ |
| 2037 | |
| 2038 | check_match(s, s->strstart-1, s->prev_match, s->prev_length); |
| 2039 | |
| 2040 | _tr_tally_dist(s, s->strstart -1 - s->prev_match, |
| 2041 | s->prev_length - MIN_MATCH, bflush); |
| 2042 | |
| 2043 | /* Insert in hash table all strings up to the end of the match. |
| 2044 | * strstart-1 and strstart are already inserted. If there is not |
| 2045 | * enough lookahead, the last two strings are not inserted in |
| 2046 | * the hash table. |
| 2047 | */ |
| 2048 | s->lookahead -= s->prev_length-1; |
| 2049 | s->prev_length -= 2; |
| 2050 | do { |
| 2051 | if (++s->strstart <= max_insert) { |
| 2052 | INSERT_STRING(s, s->strstart, hash_head); |
| 2053 | } |
| @@ -2061,12 +2066,12 @@ | |
| 2061 | } else if (s->match_available) { |
| 2062 | /* If there was no match at the previous position, output a |
| 2063 | * single literal. If there was a match but the current match |
| 2064 | * is longer, truncate the previous match to a single literal. |
| 2065 | */ |
| 2066 | Tracevv((stderr,"%c", s->window[s->strstart-1])); |
| 2067 | _tr_tally_lit(s, s->window[s->strstart-1], bflush); |
| 2068 | if (bflush) { |
| 2069 | FLUSH_BLOCK_ONLY(s, 0); |
| 2070 | } |
| 2071 | s->strstart++; |
| 2072 | s->lookahead--; |
| @@ -2080,12 +2085,12 @@ | |
| 2080 | s->lookahead--; |
| 2081 | } |
| 2082 | } |
| 2083 | Assert (flush != Z_NO_FLUSH, "no flush?"); |
| 2084 | if (s->match_available) { |
| 2085 | Tracevv((stderr,"%c", s->window[s->strstart-1])); |
| 2086 | _tr_tally_lit(s, s->window[s->strstart-1], bflush); |
| 2087 | s->match_available = 0; |
| 2088 | } |
| 2089 | s->insert = s->strstart < MIN_MATCH-1 ? s->strstart : MIN_MATCH-1; |
| 2090 | if (flush == Z_FINISH) { |
| 2091 | FLUSH_BLOCK(s, 1); |
| @@ -2138,11 +2143,12 @@ | |
| 2138 | scan < strend); |
| 2139 | s->match_length = MAX_MATCH - (uInt)(strend - scan); |
| 2140 | if (s->match_length > s->lookahead) |
| 2141 | s->match_length = s->lookahead; |
| 2142 | } |
| 2143 | Assert(scan <= s->window+(uInt)(s->window_size-1), "wild scan"); |
| 2144 | } |
| 2145 | |
| 2146 | /* Emit match if have run of MIN_MATCH or longer, else emit literal */ |
| 2147 | if (s->match_length >= MIN_MATCH) { |
| 2148 | check_match(s, s->strstart, s->strstart - 1, s->match_length); |
| @@ -2153,11 +2159,11 @@ | |
| 2153 | s->strstart += s->match_length; |
| 2154 | s->match_length = 0; |
| 2155 | } else { |
| 2156 | /* No match, output a literal byte */ |
| 2157 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 2158 | _tr_tally_lit (s, s->window[s->strstart], bflush); |
| 2159 | s->lookahead--; |
| 2160 | s->strstart++; |
| 2161 | } |
| 2162 | if (bflush) FLUSH_BLOCK(s, 0); |
| 2163 | } |
| @@ -2193,11 +2199,11 @@ | |
| 2193 | } |
| 2194 | |
| 2195 | /* Output a literal byte */ |
| 2196 | s->match_length = 0; |
| 2197 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 2198 | _tr_tally_lit (s, s->window[s->strstart], bflush); |
| 2199 | s->lookahead--; |
| 2200 | s->strstart++; |
| 2201 | if (bflush) FLUSH_BLOCK(s, 0); |
| 2202 | } |
| 2203 | s->insert = 0; |
| 2204 |
| --- compat/zlib/deflate.c | |
| +++ compat/zlib/deflate.c | |
| @@ -50,11 +50,11 @@ | |
| 50 | /* @(#) $Id$ */ |
| 51 | |
| 52 | #include "deflate.h" |
| 53 | |
| 54 | const char deflate_copyright[] = |
| 55 | " deflate 1.2.13 Copyright 1995-2022 Jean-loup Gailly and Mark Adler "; |
| 56 | /* |
| 57 | If you use the zlib library in a product, an acknowledgment is welcome |
| 58 | in the documentation of your product. If for some reason you cannot |
| 59 | include such an acknowledgment, I would appreciate that you keep this |
| 60 | copyright string in the executable of your product. |
| @@ -85,17 +85,11 @@ | |
| 85 | local block_state deflate_huff OF((deflate_state *s, int flush)); |
| 86 | local void lm_init OF((deflate_state *s)); |
| 87 | local void putShortMSB OF((deflate_state *s, uInt b)); |
| 88 | local void flush_pending OF((z_streamp strm)); |
| 89 | local unsigned read_buf OF((z_streamp strm, Bytef *buf, unsigned size)); |
| 90 | local uInt longest_match OF((deflate_state *s, IPos cur_match)); |
| 91 | |
| 92 | #ifdef ZLIB_DEBUG |
| 93 | local void check_match OF((deflate_state *s, IPos start, IPos match, |
| 94 | int length)); |
| 95 | #endif |
| @@ -158,11 +152,11 @@ | |
| 152 | * Update a hash value with the given input byte |
| 153 | * IN assertion: all calls to UPDATE_HASH are made with consecutive input |
| 154 | * characters, so that a running hash key can be computed from the previous |
| 155 | * key instead of complete recalculation each time. |
| 156 | */ |
| 157 | #define UPDATE_HASH(s,h,c) (h = (((h) << s->hash_shift) ^ (c)) & s->hash_mask) |
| 158 | |
| 159 | |
| 160 | /* =========================================================================== |
| 161 | * Insert string str in the dictionary and set match_head to the previous head |
| 162 | * of the hash chain (the most recent string with same hash key). Return |
| @@ -189,13 +183,13 @@ | |
| 183 | * Initialize the hash table (avoiding 64K overflow for 16 bit systems). |
| 184 | * prev[] will be initialized on the fly. |
| 185 | */ |
| 186 | #define CLEAR_HASH(s) \ |
| 187 | do { \ |
| 188 | s->head[s->hash_size - 1] = NIL; \ |
| 189 | zmemzero((Bytef *)s->head, \ |
| 190 | (unsigned)(s->hash_size - 1)*sizeof(*s->head)); \ |
| 191 | } while (0) |
| 192 | |
| 193 | /* =========================================================================== |
| 194 | * Slide the hash table when sliding the window down (could be avoided with 32 |
| 195 | * bit values at the expense of memory usage). We slide even when level == 0 to |
| @@ -283,10 +277,12 @@ | |
| 277 | if (level == Z_DEFAULT_COMPRESSION) level = 6; |
| 278 | #endif |
| 279 | |
| 280 | if (windowBits < 0) { /* suppress zlib wrapper */ |
| 281 | wrap = 0; |
| 282 | if (windowBits < -15) |
| 283 | return Z_STREAM_ERROR; |
| 284 | windowBits = -windowBits; |
| 285 | } |
| 286 | #ifdef GZIP |
| 287 | else if (windowBits > 15) { |
| 288 | wrap = 2; /* write gzip wrapper instead */ |
| @@ -312,11 +308,11 @@ | |
| 308 | s->w_mask = s->w_size - 1; |
| 309 | |
| 310 | s->hash_bits = (uInt)memLevel + 7; |
| 311 | s->hash_size = 1 << s->hash_bits; |
| 312 | s->hash_mask = s->hash_size - 1; |
| 313 | s->hash_shift = ((s->hash_bits + MIN_MATCH-1) / MIN_MATCH); |
| 314 | |
| 315 | s->window = (Bytef *) ZALLOC(strm, s->w_size, 2*sizeof(Byte)); |
| 316 | s->prev = (Posf *) ZALLOC(strm, s->w_size, sizeof(Pos)); |
| 317 | s->head = (Posf *) ZALLOC(strm, s->hash_size, sizeof(Pos)); |
| 318 | |
| @@ -338,15 +334,15 @@ | |
| 334 | * in sym_buf is three bytes -- two for the distance and one for the |
| 335 | * literal/length. As each symbol is consumed, the pointer to the next |
| 336 | * sym_buf value to read moves forward three bytes. From that symbol, up to |
| 337 | * 31 bits are written to pending_buf. The closest the written pending_buf |
| 338 | * bits gets to the next sym_buf symbol to read is just before the last |
| 339 | * code is written. At that time, 31*(n - 2) bits have been written, just |
| 340 | * after 24*(n - 2) bits have been consumed from sym_buf. sym_buf starts at |
| 341 | * 8*n bits into pending_buf. (Note that the symbol buffer fills when n - 1 |
| 342 | * symbols are written.) The closest the writing gets to what is unread is |
| 343 | * then n + 14 bits. Here n is lit_bufsize, which is 16384 by default, and |
| 344 | * can range from 128 to 32768. |
| 345 | * |
| 346 | * Therefore, at a minimum, there are 142 bits of space between what is |
| 347 | * written and what is read in the overlain buffers, so the symbols cannot |
| 348 | * be overwritten by the compressed data. That space is actually 139 bits, |
| @@ -388,11 +384,11 @@ | |
| 384 | } |
| 385 | |
| 386 | /* ========================================================================= |
| 387 | * Check for a valid deflate stream state. Return 0 if ok, 1 if not. |
| 388 | */ |
| 389 | local int deflateStateCheck(strm) |
| 390 | z_streamp strm; |
| 391 | { |
| 392 | deflate_state *s; |
| 393 | if (strm == Z_NULL || |
| 394 | strm->zalloc == (alloc_func)0 || strm->zfree == (free_func)0) |
| @@ -411,11 +407,11 @@ | |
| 407 | return 1; |
| 408 | return 0; |
| 409 | } |
| 410 | |
| 411 | /* ========================================================================= */ |
| 412 | int ZEXPORT deflateSetDictionary(strm, dictionary, dictLength) |
| 413 | z_streamp strm; |
| 414 | const Bytef *dictionary; |
| 415 | uInt dictLength; |
| 416 | { |
| 417 | deflate_state *s; |
| @@ -480,11 +476,11 @@ | |
| 476 | s->wrap = wrap; |
| 477 | return Z_OK; |
| 478 | } |
| 479 | |
| 480 | /* ========================================================================= */ |
| 481 | int ZEXPORT deflateGetDictionary(strm, dictionary, dictLength) |
| 482 | z_streamp strm; |
| 483 | Bytef *dictionary; |
| 484 | uInt *dictLength; |
| 485 | { |
| 486 | deflate_state *s; |
| @@ -502,11 +498,11 @@ | |
| 498 | *dictLength = len; |
| 499 | return Z_OK; |
| 500 | } |
| 501 | |
| 502 | /* ========================================================================= */ |
| 503 | int ZEXPORT deflateResetKeep(strm) |
| 504 | z_streamp strm; |
| 505 | { |
| 506 | deflate_state *s; |
| 507 | |
| 508 | if (deflateStateCheck(strm)) { |
| @@ -540,11 +536,11 @@ | |
| 536 | |
| 537 | return Z_OK; |
| 538 | } |
| 539 | |
| 540 | /* ========================================================================= */ |
| 541 | int ZEXPORT deflateReset(strm) |
| 542 | z_streamp strm; |
| 543 | { |
| 544 | int ret; |
| 545 | |
| 546 | ret = deflateResetKeep(strm); |
| @@ -552,11 +548,11 @@ | |
| 548 | lm_init(strm->state); |
| 549 | return ret; |
| 550 | } |
| 551 | |
| 552 | /* ========================================================================= */ |
| 553 | int ZEXPORT deflateSetHeader(strm, head) |
| 554 | z_streamp strm; |
| 555 | gz_headerp head; |
| 556 | { |
| 557 | if (deflateStateCheck(strm) || strm->state->wrap != 2) |
| 558 | return Z_STREAM_ERROR; |
| @@ -563,11 +559,11 @@ | |
| 559 | strm->state->gzhead = head; |
| 560 | return Z_OK; |
| 561 | } |
| 562 | |
| 563 | /* ========================================================================= */ |
| 564 | int ZEXPORT deflatePending(strm, pending, bits) |
| 565 | unsigned *pending; |
| 566 | int *bits; |
| 567 | z_streamp strm; |
| 568 | { |
| 569 | if (deflateStateCheck(strm)) return Z_STREAM_ERROR; |
| @@ -577,11 +573,11 @@ | |
| 573 | *bits = strm->state->bi_valid; |
| 574 | return Z_OK; |
| 575 | } |
| 576 | |
| 577 | /* ========================================================================= */ |
| 578 | int ZEXPORT deflatePrime(strm, bits, value) |
| 579 | z_streamp strm; |
| 580 | int bits; |
| 581 | int value; |
| 582 | { |
| 583 | deflate_state *s; |
| @@ -672,40 +668,54 @@ | |
| 668 | s->max_chain_length = (uInt)max_chain; |
| 669 | return Z_OK; |
| 670 | } |
| 671 | |
| 672 | /* ========================================================================= |
| 673 | * For the default windowBits of 15 and memLevel of 8, this function returns a |
| 674 | * close to exact, as well as small, upper bound on the compressed size. This |
| 675 | * is an expansion of ~0.03%, plus a small constant. |
| 676 | * |
| 677 | * For any setting other than those defaults for windowBits and memLevel, one |
| 678 | * of two worst case bounds is returned. This is at most an expansion of ~4% or |
| 679 | * ~13%, plus a small constant. |
| 680 | * |
| 681 | * Both the 0.03% and 4% derive from the overhead of stored blocks. The first |
| 682 | * one is for stored blocks of 16383 bytes (memLevel == 8), whereas the second |
| 683 | * is for stored blocks of 127 bytes (the worst case memLevel == 1). The |
| 684 | * expansion results from five bytes of header for each stored block. |
| 685 | * |
| 686 | * The larger expansion of 13% results from a window size less than or equal to |
| 687 | * the symbols buffer size (windowBits <= memLevel + 7). In that case some of |
| 688 | * the data being compressed may have slid out of the sliding window, impeding |
| 689 | * a stored block from being emitted. Then the only choice is a fixed or |
| 690 | * dynamic block, where a fixed block limits the maximum expansion to 9 bits |
| 691 | * per 8-bit byte, plus 10 bits for every block. The smallest block size for |
| 692 | * which this can occur is 255 (memLevel == 2). |
| 693 | * |
| 694 | * Shifts are used to approximate divisions, for speed. |
| 695 | */ |
| 696 | uLong ZEXPORT deflateBound(strm, sourceLen) |
| 697 | z_streamp strm; |
| 698 | uLong sourceLen; |
| 699 | { |
| 700 | deflate_state *s; |
| 701 | uLong fixedlen, storelen, wraplen; |
| 702 | |
| 703 | /* upper bound for fixed blocks with 9-bit literals and length 255 |
| 704 | (memLevel == 2, which is the lowest that may not use stored blocks) -- |
| 705 | ~13% overhead plus a small constant */ |
| 706 | fixedlen = sourceLen + (sourceLen >> 3) + (sourceLen >> 8) + |
| 707 | (sourceLen >> 9) + 4; |
| 708 | |
| 709 | /* upper bound for stored blocks with length 127 (memLevel == 1) -- |
| 710 | ~4% overhead plus a small constant */ |
| 711 | storelen = sourceLen + (sourceLen >> 5) + (sourceLen >> 7) + |
| 712 | (sourceLen >> 11) + 7; |
| 713 | |
| 714 | /* if can't get parameters, return larger bound plus a zlib wrapper */ |
| 715 | if (deflateStateCheck(strm)) |
| 716 | return (fixedlen > storelen ? fixedlen : storelen) + 6; |
| 717 | |
| 718 | /* compute wrapper length */ |
| 719 | s = strm->state; |
| 720 | switch (s->wrap) { |
| 721 | case 0: /* raw deflate */ |
| @@ -738,25 +748,26 @@ | |
| 748 | #endif |
| 749 | default: /* for compiler happiness */ |
| 750 | wraplen = 6; |
| 751 | } |
| 752 | |
| 753 | /* if not default parameters, return one of the conservative bounds */ |
| 754 | if (s->w_bits != 15 || s->hash_bits != 8 + 7) |
| 755 | return (s->w_bits <= s->hash_bits ? fixedlen : storelen) + wraplen; |
| 756 | |
| 757 | /* default settings: return tight bound for that case -- ~0.03% overhead |
| 758 | plus a small constant */ |
| 759 | return sourceLen + (sourceLen >> 12) + (sourceLen >> 14) + |
| 760 | (sourceLen >> 25) + 13 - 6 + wraplen; |
| 761 | } |
| 762 | |
| 763 | /* ========================================================================= |
| 764 | * Put a short in the pending buffer. The 16-bit value is put in MSB order. |
| 765 | * IN assertion: the stream state is correct and there is enough room in |
| 766 | * pending_buf. |
| 767 | */ |
| 768 | local void putShortMSB(s, b) |
| 769 | deflate_state *s; |
| 770 | uInt b; |
| 771 | { |
| 772 | put_byte(s, (Byte)(b >> 8)); |
| 773 | put_byte(s, (Byte)(b & 0xff)); |
| @@ -799,11 +810,11 @@ | |
| 810 | strm->adler = crc32(strm->adler, s->pending_buf + (beg), \ |
| 811 | s->pending - (beg)); \ |
| 812 | } while (0) |
| 813 | |
| 814 | /* ========================================================================= */ |
| 815 | int ZEXPORT deflate(strm, flush) |
| 816 | z_streamp strm; |
| 817 | int flush; |
| 818 | { |
| 819 | int old_flush; /* value of flush param for previous deflate call */ |
| 820 | deflate_state *s; |
| @@ -854,11 +865,11 @@ | |
| 865 | /* Write the header */ |
| 866 | if (s->status == INIT_STATE && s->wrap == 0) |
| 867 | s->status = BUSY_STATE; |
| 868 | if (s->status == INIT_STATE) { |
| 869 | /* zlib header */ |
| 870 | uInt header = (Z_DEFLATED + ((s->w_bits - 8) << 4)) << 8; |
| 871 | uInt level_flags; |
| 872 | |
| 873 | if (s->strategy >= Z_HUFFMAN_ONLY || s->level < 2) |
| 874 | level_flags = 0; |
| 875 | else if (s->level < 6) |
| @@ -1114,11 +1125,11 @@ | |
| 1125 | if (s->wrap > 0) s->wrap = -s->wrap; /* write the trailer only once! */ |
| 1126 | return s->pending != 0 ? Z_OK : Z_STREAM_END; |
| 1127 | } |
| 1128 | |
| 1129 | /* ========================================================================= */ |
| 1130 | int ZEXPORT deflateEnd(strm) |
| 1131 | z_streamp strm; |
| 1132 | { |
| 1133 | int status; |
| 1134 | |
| 1135 | if (deflateStateCheck(strm)) return Z_STREAM_ERROR; |
| @@ -1140,11 +1151,11 @@ | |
| 1151 | /* ========================================================================= |
| 1152 | * Copy the source state to the destination state. |
| 1153 | * To simplify the source, this is not supported for 16-bit MSDOS (which |
| 1154 | * doesn't have enough memory anyway to duplicate compression states). |
| 1155 | */ |
| 1156 | int ZEXPORT deflateCopy(dest, source) |
| 1157 | z_streamp dest; |
| 1158 | z_streamp source; |
| 1159 | { |
| 1160 | #ifdef MAXSEG_64K |
| 1161 | return Z_STREAM_ERROR; |
| @@ -1229,11 +1240,11 @@ | |
| 1240 | } |
| 1241 | |
| 1242 | /* =========================================================================== |
| 1243 | * Initialize the "longest match" routines for a new zlib stream |
| 1244 | */ |
| 1245 | local void lm_init(s) |
| 1246 | deflate_state *s; |
| 1247 | { |
| 1248 | s->window_size = (ulg)2L*s->w_size; |
| 1249 | |
| 1250 | CLEAR_HASH(s); |
| @@ -1250,15 +1261,10 @@ | |
| 1261 | s->lookahead = 0; |
| 1262 | s->insert = 0; |
| 1263 | s->match_length = s->prev_length = MIN_MATCH-1; |
| 1264 | s->match_available = 0; |
| 1265 | s->ins_h = 0; |
| 1266 | } |
| 1267 | |
| 1268 | #ifndef FASTEST |
| 1269 | /* =========================================================================== |
| 1270 | * Set match_start to the longest match starting at the given string and |
| @@ -1267,14 +1273,10 @@ | |
| 1273 | * garbage. |
| 1274 | * IN assertions: cur_match is the head of the hash chain for the current |
| 1275 | * string (strstart) and its distance is <= MAX_DIST, and prev_length >= 1 |
| 1276 | * OUT assertion: the match length is not greater than s->lookahead. |
| 1277 | */ |
| 1278 | local uInt longest_match(s, cur_match) |
| 1279 | deflate_state *s; |
| 1280 | IPos cur_match; /* current match */ |
| 1281 | { |
| 1282 | unsigned chain_length = s->max_chain_length;/* max hash chain length */ |
| @@ -1295,14 +1297,14 @@ | |
| 1297 | /* Compare two bytes at a time. Note: this is not always beneficial. |
| 1298 | * Try with and without -DUNALIGNED_OK to check. |
| 1299 | */ |
| 1300 | register Bytef *strend = s->window + s->strstart + MAX_MATCH - 1; |
| 1301 | register ush scan_start = *(ushf*)scan; |
| 1302 | register ush scan_end = *(ushf*)(scan + best_len - 1); |
| 1303 | #else |
| 1304 | register Bytef *strend = s->window + s->strstart + MAX_MATCH; |
| 1305 | register Byte scan_end1 = scan[best_len - 1]; |
| 1306 | register Byte scan_end = scan[best_len]; |
| 1307 | #endif |
| 1308 | |
| 1309 | /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. |
| 1310 | * It is easy to get rid of this optimization if necessary. |
| @@ -1316,11 +1318,12 @@ | |
| 1318 | /* Do not look for matches beyond the end of the input. This is necessary |
| 1319 | * to make deflate deterministic. |
| 1320 | */ |
| 1321 | if ((uInt)nice_match > s->lookahead) nice_match = (int)s->lookahead; |
| 1322 | |
| 1323 | Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD, |
| 1324 | "need lookahead"); |
| 1325 | |
| 1326 | do { |
| 1327 | Assert(cur_match < s->strstart, "no future"); |
| 1328 | match = s->window + cur_match; |
| 1329 | |
| @@ -1334,66 +1337,68 @@ | |
| 1337 | */ |
| 1338 | #if (defined(UNALIGNED_OK) && MAX_MATCH == 258) |
| 1339 | /* This code assumes sizeof(unsigned short) == 2. Do not use |
| 1340 | * UNALIGNED_OK if your compiler uses a different size. |
| 1341 | */ |
| 1342 | if (*(ushf*)(match + best_len - 1) != scan_end || |
| 1343 | *(ushf*)match != scan_start) continue; |
| 1344 | |
| 1345 | /* It is not necessary to compare scan[2] and match[2] since they are |
| 1346 | * always equal when the other bytes match, given that the hash keys |
| 1347 | * are equal and that HASH_BITS >= 8. Compare 2 bytes at a time at |
| 1348 | * strstart + 3, + 5, up to strstart + 257. We check for insufficient |
| 1349 | * lookahead only every 4th comparison; the 128th check will be made |
| 1350 | * at strstart + 257. If MAX_MATCH-2 is not a multiple of 8, it is |
| 1351 | * necessary to put more guard bytes at the end of the window, or |
| 1352 | * to check more often for insufficient lookahead. |
| 1353 | */ |
| 1354 | Assert(scan[2] == match[2], "scan[2]?"); |
| 1355 | scan++, match++; |
| 1356 | do { |
| 1357 | } while (*(ushf*)(scan += 2) == *(ushf*)(match += 2) && |
| 1358 | *(ushf*)(scan += 2) == *(ushf*)(match += 2) && |
| 1359 | *(ushf*)(scan += 2) == *(ushf*)(match += 2) && |
| 1360 | *(ushf*)(scan += 2) == *(ushf*)(match += 2) && |
| 1361 | scan < strend); |
| 1362 | /* The funny "do {}" generates better code on most compilers */ |
| 1363 | |
| 1364 | /* Here, scan <= window + strstart + 257 */ |
| 1365 | Assert(scan <= s->window + (unsigned)(s->window_size - 1), |
| 1366 | "wild scan"); |
| 1367 | if (*scan == *match) scan++; |
| 1368 | |
| 1369 | len = (MAX_MATCH - 1) - (int)(strend - scan); |
| 1370 | scan = strend - (MAX_MATCH-1); |
| 1371 | |
| 1372 | #else /* UNALIGNED_OK */ |
| 1373 | |
| 1374 | if (match[best_len] != scan_end || |
| 1375 | match[best_len - 1] != scan_end1 || |
| 1376 | *match != *scan || |
| 1377 | *++match != scan[1]) continue; |
| 1378 | |
| 1379 | /* The check at best_len - 1 can be removed because it will be made |
| 1380 | * again later. (This heuristic is not always a win.) |
| 1381 | * It is not necessary to compare scan[2] and match[2] since they |
| 1382 | * are always equal when the other bytes match, given that |
| 1383 | * the hash keys are equal and that HASH_BITS >= 8. |
| 1384 | */ |
| 1385 | scan += 2, match++; |
| 1386 | Assert(*scan == *match, "match[2]?"); |
| 1387 | |
| 1388 | /* We check for insufficient lookahead only every 8th comparison; |
| 1389 | * the 256th check will be made at strstart + 258. |
| 1390 | */ |
| 1391 | do { |
| 1392 | } while (*++scan == *++match && *++scan == *++match && |
| 1393 | *++scan == *++match && *++scan == *++match && |
| 1394 | *++scan == *++match && *++scan == *++match && |
| 1395 | *++scan == *++match && *++scan == *++match && |
| 1396 | scan < strend); |
| 1397 | |
| 1398 | Assert(scan <= s->window + (unsigned)(s->window_size - 1), |
| 1399 | "wild scan"); |
| 1400 | |
| 1401 | len = MAX_MATCH - (int)(strend - scan); |
| 1402 | scan = strend - MAX_MATCH; |
| 1403 | |
| 1404 | #endif /* UNALIGNED_OK */ |
| @@ -1401,23 +1406,22 @@ | |
| 1406 | if (len > best_len) { |
| 1407 | s->match_start = cur_match; |
| 1408 | best_len = len; |
| 1409 | if (len >= nice_match) break; |
| 1410 | #ifdef UNALIGNED_OK |
| 1411 | scan_end = *(ushf*)(scan + best_len - 1); |
| 1412 | #else |
| 1413 | scan_end1 = scan[best_len - 1]; |
| 1414 | scan_end = scan[best_len]; |
| 1415 | #endif |
| 1416 | } |
| 1417 | } while ((cur_match = prev[cur_match & wmask]) > limit |
| 1418 | && --chain_length != 0); |
| 1419 | |
| 1420 | if ((uInt)best_len <= s->lookahead) return (uInt)best_len; |
| 1421 | return s->lookahead; |
| 1422 | } |
| 1423 | |
| 1424 | #else /* FASTEST */ |
| 1425 | |
| 1426 | /* --------------------------------------------------------------------------- |
| 1427 | * Optimized version for FASTEST only |
| @@ -1434,40 +1438,41 @@ | |
| 1438 | /* The code is optimized for HASH_BITS >= 8 and MAX_MATCH-2 multiple of 16. |
| 1439 | * It is easy to get rid of this optimization if necessary. |
| 1440 | */ |
| 1441 | Assert(s->hash_bits >= 8 && MAX_MATCH == 258, "Code too clever"); |
| 1442 | |
| 1443 | Assert((ulg)s->strstart <= s->window_size - MIN_LOOKAHEAD, |
| 1444 | "need lookahead"); |
| 1445 | |
| 1446 | Assert(cur_match < s->strstart, "no future"); |
| 1447 | |
| 1448 | match = s->window + cur_match; |
| 1449 | |
| 1450 | /* Return failure if the match length is less than 2: |
| 1451 | */ |
| 1452 | if (match[0] != scan[0] || match[1] != scan[1]) return MIN_MATCH-1; |
| 1453 | |
| 1454 | /* The check at best_len - 1 can be removed because it will be made |
| 1455 | * again later. (This heuristic is not always a win.) |
| 1456 | * It is not necessary to compare scan[2] and match[2] since they |
| 1457 | * are always equal when the other bytes match, given that |
| 1458 | * the hash keys are equal and that HASH_BITS >= 8. |
| 1459 | */ |
| 1460 | scan += 2, match += 2; |
| 1461 | Assert(*scan == *match, "match[2]?"); |
| 1462 | |
| 1463 | /* We check for insufficient lookahead only every 8th comparison; |
| 1464 | * the 256th check will be made at strstart + 258. |
| 1465 | */ |
| 1466 | do { |
| 1467 | } while (*++scan == *++match && *++scan == *++match && |
| 1468 | *++scan == *++match && *++scan == *++match && |
| 1469 | *++scan == *++match && *++scan == *++match && |
| 1470 | *++scan == *++match && *++scan == *++match && |
| 1471 | scan < strend); |
| 1472 | |
| 1473 | Assert(scan <= s->window + (unsigned)(s->window_size - 1), "wild scan"); |
| 1474 | |
| 1475 | len = MAX_MATCH - (int)(strend - scan); |
| 1476 | |
| 1477 | if (len < MIN_MATCH) return MIN_MATCH - 1; |
| 1478 | |
| @@ -1499,11 +1504,11 @@ | |
| 1504 | fprintf(stderr, "%c%c", s->window[match++], s->window[start++]); |
| 1505 | } while (--length != 0); |
| 1506 | z_error("invalid match"); |
| 1507 | } |
| 1508 | if (z_verbose > 1) { |
| 1509 | fprintf(stderr,"\\[%d,%d]", start - match, length); |
| 1510 | do { putc(s->window[start++], stderr); } while (--length != 0); |
| 1511 | } |
| 1512 | } |
| 1513 | #else |
| 1514 | # define check_match(s, start, match, length) |
| @@ -1545,13 +1550,13 @@ | |
| 1550 | } |
| 1551 | |
| 1552 | /* If the window is almost full and there is insufficient lookahead, |
| 1553 | * move the upper half to the lower one to make room in the upper half. |
| 1554 | */ |
| 1555 | if (s->strstart >= wsize + MAX_DIST(s)) { |
| 1556 | |
| 1557 | zmemcpy(s->window, s->window + wsize, (unsigned)wsize - more); |
| 1558 | s->match_start -= wsize; |
| 1559 | s->strstart -= wsize; /* we now have strstart >= MAX_DIST */ |
| 1560 | s->block_start -= (long) wsize; |
| 1561 | if (s->insert > s->strstart) |
| 1562 | s->insert = s->strstart; |
| @@ -1678,11 +1683,11 @@ | |
| 1683 | * allowed here, then the hash table will be cleared, since two or more slides |
| 1684 | * is the same as a clear. |
| 1685 | * |
| 1686 | * deflate_stored() is written to minimize the number of times an input byte is |
| 1687 | * copied. It is most efficient with large input and output buffers, which |
| 1688 | * maximizes the opportunities to have a single copy from next_in to next_out. |
| 1689 | */ |
| 1690 | local block_state deflate_stored(s, flush) |
| 1691 | deflate_state *s; |
| 1692 | int flush; |
| 1693 | { |
| @@ -1888,11 +1893,11 @@ | |
| 1893 | return need_more; |
| 1894 | } |
| 1895 | if (s->lookahead == 0) break; /* flush the current block */ |
| 1896 | } |
| 1897 | |
| 1898 | /* Insert the string window[strstart .. strstart + 2] in the |
| 1899 | * dictionary, and set hash_head to the head of the hash chain: |
| 1900 | */ |
| 1901 | hash_head = NIL; |
| 1902 | if (s->lookahead >= MIN_MATCH) { |
| 1903 | INSERT_STRING(s, s->strstart, hash_head); |
| @@ -1936,11 +1941,11 @@ | |
| 1941 | #endif |
| 1942 | { |
| 1943 | s->strstart += s->match_length; |
| 1944 | s->match_length = 0; |
| 1945 | s->ins_h = s->window[s->strstart]; |
| 1946 | UPDATE_HASH(s, s->ins_h, s->window[s->strstart + 1]); |
| 1947 | #if MIN_MATCH != 3 |
| 1948 | Call UPDATE_HASH() MIN_MATCH-3 more times |
| 1949 | #endif |
| 1950 | /* If lookahead < MIN_MATCH, ins_h is garbage, but it does not |
| 1951 | * matter since it will be recomputed at next deflate call. |
| @@ -1947,11 +1952,11 @@ | |
| 1952 | */ |
| 1953 | } |
| 1954 | } else { |
| 1955 | /* No match, output a literal byte */ |
| 1956 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 1957 | _tr_tally_lit(s, s->window[s->strstart], bflush); |
| 1958 | s->lookahead--; |
| 1959 | s->strstart++; |
| 1960 | } |
| 1961 | if (bflush) FLUSH_BLOCK(s, 0); |
| 1962 | } |
| @@ -1991,11 +1996,11 @@ | |
| 1996 | return need_more; |
| 1997 | } |
| 1998 | if (s->lookahead == 0) break; /* flush the current block */ |
| 1999 | } |
| 2000 | |
| 2001 | /* Insert the string window[strstart .. strstart + 2] in the |
| 2002 | * dictionary, and set hash_head to the head of the hash chain: |
| 2003 | */ |
| 2004 | hash_head = NIL; |
| 2005 | if (s->lookahead >= MIN_MATCH) { |
| 2006 | INSERT_STRING(s, s->strstart, hash_head); |
| @@ -2033,21 +2038,21 @@ | |
| 2038 | */ |
| 2039 | if (s->prev_length >= MIN_MATCH && s->match_length <= s->prev_length) { |
| 2040 | uInt max_insert = s->strstart + s->lookahead - MIN_MATCH; |
| 2041 | /* Do not insert strings in hash table beyond this. */ |
| 2042 | |
| 2043 | check_match(s, s->strstart - 1, s->prev_match, s->prev_length); |
| 2044 | |
| 2045 | _tr_tally_dist(s, s->strstart - 1 - s->prev_match, |
| 2046 | s->prev_length - MIN_MATCH, bflush); |
| 2047 | |
| 2048 | /* Insert in hash table all strings up to the end of the match. |
| 2049 | * strstart - 1 and strstart are already inserted. If there is not |
| 2050 | * enough lookahead, the last two strings are not inserted in |
| 2051 | * the hash table. |
| 2052 | */ |
| 2053 | s->lookahead -= s->prev_length - 1; |
| 2054 | s->prev_length -= 2; |
| 2055 | do { |
| 2056 | if (++s->strstart <= max_insert) { |
| 2057 | INSERT_STRING(s, s->strstart, hash_head); |
| 2058 | } |
| @@ -2061,12 +2066,12 @@ | |
| 2066 | } else if (s->match_available) { |
| 2067 | /* If there was no match at the previous position, output a |
| 2068 | * single literal. If there was a match but the current match |
| 2069 | * is longer, truncate the previous match to a single literal. |
| 2070 | */ |
| 2071 | Tracevv((stderr,"%c", s->window[s->strstart - 1])); |
| 2072 | _tr_tally_lit(s, s->window[s->strstart - 1], bflush); |
| 2073 | if (bflush) { |
| 2074 | FLUSH_BLOCK_ONLY(s, 0); |
| 2075 | } |
| 2076 | s->strstart++; |
| 2077 | s->lookahead--; |
| @@ -2080,12 +2085,12 @@ | |
| 2085 | s->lookahead--; |
| 2086 | } |
| 2087 | } |
| 2088 | Assert (flush != Z_NO_FLUSH, "no flush?"); |
| 2089 | if (s->match_available) { |
| 2090 | Tracevv((stderr,"%c", s->window[s->strstart - 1])); |
| 2091 | _tr_tally_lit(s, s->window[s->strstart - 1], bflush); |
| 2092 | s->match_available = 0; |
| 2093 | } |
| 2094 | s->insert = s->strstart < MIN_MATCH-1 ? s->strstart : MIN_MATCH-1; |
| 2095 | if (flush == Z_FINISH) { |
| 2096 | FLUSH_BLOCK(s, 1); |
| @@ -2138,11 +2143,12 @@ | |
| 2143 | scan < strend); |
| 2144 | s->match_length = MAX_MATCH - (uInt)(strend - scan); |
| 2145 | if (s->match_length > s->lookahead) |
| 2146 | s->match_length = s->lookahead; |
| 2147 | } |
| 2148 | Assert(scan <= s->window + (uInt)(s->window_size - 1), |
| 2149 | "wild scan"); |
| 2150 | } |
| 2151 | |
| 2152 | /* Emit match if have run of MIN_MATCH or longer, else emit literal */ |
| 2153 | if (s->match_length >= MIN_MATCH) { |
| 2154 | check_match(s, s->strstart, s->strstart - 1, s->match_length); |
| @@ -2153,11 +2159,11 @@ | |
| 2159 | s->strstart += s->match_length; |
| 2160 | s->match_length = 0; |
| 2161 | } else { |
| 2162 | /* No match, output a literal byte */ |
| 2163 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 2164 | _tr_tally_lit(s, s->window[s->strstart], bflush); |
| 2165 | s->lookahead--; |
| 2166 | s->strstart++; |
| 2167 | } |
| 2168 | if (bflush) FLUSH_BLOCK(s, 0); |
| 2169 | } |
| @@ -2193,11 +2199,11 @@ | |
| 2199 | } |
| 2200 | |
| 2201 | /* Output a literal byte */ |
| 2202 | s->match_length = 0; |
| 2203 | Tracevv((stderr,"%c", s->window[s->strstart])); |
| 2204 | _tr_tally_lit(s, s->window[s->strstart], bflush); |
| 2205 | s->lookahead--; |
| 2206 | s->strstart++; |
| 2207 | if (bflush) FLUSH_BLOCK(s, 0); |
| 2208 | } |
| 2209 | s->insert = 0; |
| 2210 |
+2
-2
| --- compat/zlib/deflate.h | ||
| +++ compat/zlib/deflate.h | ||
| @@ -327,12 +327,12 @@ | ||
| 327 | 327 | flush = (s->sym_next == s->sym_end); \ |
| 328 | 328 | } |
| 329 | 329 | # define _tr_tally_dist(s, distance, length, flush) \ |
| 330 | 330 | { uch len = (uch)(length); \ |
| 331 | 331 | ush dist = (ush)(distance); \ |
| 332 | - s->sym_buf[s->sym_next++] = dist; \ | |
| 333 | - s->sym_buf[s->sym_next++] = dist >> 8; \ | |
| 332 | + s->sym_buf[s->sym_next++] = (uch)dist; \ | |
| 333 | + s->sym_buf[s->sym_next++] = (uch)(dist >> 8); \ | |
| 334 | 334 | s->sym_buf[s->sym_next++] = len; \ |
| 335 | 335 | dist--; \ |
| 336 | 336 | s->dyn_ltree[_length_code[len]+LITERALS+1].Freq++; \ |
| 337 | 337 | s->dyn_dtree[d_code(dist)].Freq++; \ |
| 338 | 338 | flush = (s->sym_next == s->sym_end); \ |
| 339 | 339 |
| --- compat/zlib/deflate.h | |
| +++ compat/zlib/deflate.h | |
| @@ -327,12 +327,12 @@ | |
| 327 | flush = (s->sym_next == s->sym_end); \ |
| 328 | } |
| 329 | # define _tr_tally_dist(s, distance, length, flush) \ |
| 330 | { uch len = (uch)(length); \ |
| 331 | ush dist = (ush)(distance); \ |
| 332 | s->sym_buf[s->sym_next++] = dist; \ |
| 333 | s->sym_buf[s->sym_next++] = dist >> 8; \ |
| 334 | s->sym_buf[s->sym_next++] = len; \ |
| 335 | dist--; \ |
| 336 | s->dyn_ltree[_length_code[len]+LITERALS+1].Freq++; \ |
| 337 | s->dyn_dtree[d_code(dist)].Freq++; \ |
| 338 | flush = (s->sym_next == s->sym_end); \ |
| 339 |
| --- compat/zlib/deflate.h | |
| +++ compat/zlib/deflate.h | |
| @@ -327,12 +327,12 @@ | |
| 327 | flush = (s->sym_next == s->sym_end); \ |
| 328 | } |
| 329 | # define _tr_tally_dist(s, distance, length, flush) \ |
| 330 | { uch len = (uch)(length); \ |
| 331 | ush dist = (ush)(distance); \ |
| 332 | s->sym_buf[s->sym_next++] = (uch)dist; \ |
| 333 | s->sym_buf[s->sym_next++] = (uch)(dist >> 8); \ |
| 334 | s->sym_buf[s->sym_next++] = len; \ |
| 335 | dist--; \ |
| 336 | s->dyn_ltree[_length_code[len]+LITERALS+1].Freq++; \ |
| 337 | s->dyn_dtree[d_code(dist)].Freq++; \ |
| 338 | flush = (s->sym_next == s->sym_end); \ |
| 339 |
+1
-1
| --- compat/zlib/examples/enough.c | ||
| +++ compat/zlib/examples/enough.c | ||
| @@ -484,11 +484,11 @@ | ||
| 484 | 484 | // maximum number of symbols, initial root table size, and maximum code length |
| 485 | 485 | // in bits -- those are the command arguments in that order. The default values |
| 486 | 486 | // are 286, 9, and 15 respectively, for the deflate literal/length code. The |
| 487 | 487 | // possible codes are counted for each number of coded symbols from two to the |
| 488 | 488 | // maximum. The counts for each of those and the total number of codes are |
| 489 | -// shown. The maximum number of inflate table entires is then calculated across | |
| 489 | +// shown. The maximum number of inflate table entries is then calculated across | |
| 490 | 490 | // all possible codes. Each new maximum number of table entries and the |
| 491 | 491 | // associated sub-code (starting at root + 1 == 10 bits) is shown. |
| 492 | 492 | // |
| 493 | 493 | // To count and examine prefix codes that are not length-limited, provide a |
| 494 | 494 | // maximum length equal to the number of symbols minus one. |
| 495 | 495 |
| --- compat/zlib/examples/enough.c | |
| +++ compat/zlib/examples/enough.c | |
| @@ -484,11 +484,11 @@ | |
| 484 | // maximum number of symbols, initial root table size, and maximum code length |
| 485 | // in bits -- those are the command arguments in that order. The default values |
| 486 | // are 286, 9, and 15 respectively, for the deflate literal/length code. The |
| 487 | // possible codes are counted for each number of coded symbols from two to the |
| 488 | // maximum. The counts for each of those and the total number of codes are |
| 489 | // shown. The maximum number of inflate table entires is then calculated across |
| 490 | // all possible codes. Each new maximum number of table entries and the |
| 491 | // associated sub-code (starting at root + 1 == 10 bits) is shown. |
| 492 | // |
| 493 | // To count and examine prefix codes that are not length-limited, provide a |
| 494 | // maximum length equal to the number of symbols minus one. |
| 495 |
| --- compat/zlib/examples/enough.c | |
| +++ compat/zlib/examples/enough.c | |
| @@ -484,11 +484,11 @@ | |
| 484 | // maximum number of symbols, initial root table size, and maximum code length |
| 485 | // in bits -- those are the command arguments in that order. The default values |
| 486 | // are 286, 9, and 15 respectively, for the deflate literal/length code. The |
| 487 | // possible codes are counted for each number of coded symbols from two to the |
| 488 | // maximum. The counts for each of those and the total number of codes are |
| 489 | // shown. The maximum number of inflate table entries is then calculated across |
| 490 | // all possible codes. Each new maximum number of table entries and the |
| 491 | // associated sub-code (starting at root + 1 == 10 bits) is shown. |
| 492 | // |
| 493 | // To count and examine prefix codes that are not length-limited, provide a |
| 494 | // maximum length equal to the number of symbols minus one. |
| 495 |
+2
-2
| --- compat/zlib/examples/fitblk.c | ||
| +++ compat/zlib/examples/fitblk.c | ||
| @@ -15,11 +15,11 @@ | ||
| 15 | 15 | |
| 16 | 16 | fitblk performs three compression passes on a portion of the input |
| 17 | 17 | data in order to determine how much of that input will compress to |
| 18 | 18 | nearly the requested output block size. The first pass generates |
| 19 | 19 | enough deflate blocks to produce output to fill the requested |
| 20 | - output size plus a specfied excess amount (see the EXCESS define | |
| 20 | + output size plus a specified excess amount (see the EXCESS define | |
| 21 | 21 | below). The last deflate block may go quite a bit past that, but |
| 22 | 22 | is discarded. The second pass decompresses and recompresses just |
| 23 | 23 | the compressed data that fit in the requested plus excess sized |
| 24 | 24 | buffer. The deflate process is terminated after that amount of |
| 25 | 25 | input, which is less than the amount consumed on the first pass. |
| @@ -107,11 +107,11 @@ | ||
| 107 | 107 | assert(ret != Z_STREAM_ERROR && ret != Z_DATA_ERROR && |
| 108 | 108 | ret != Z_NEED_DICT); |
| 109 | 109 | if (ret == Z_MEM_ERROR) |
| 110 | 110 | return ret; |
| 111 | 111 | |
| 112 | - /* compress what was decompresed until done or no room */ | |
| 112 | + /* compress what was decompressed until done or no room */ | |
| 113 | 113 | def->avail_in = RAWLEN - inf->avail_out; |
| 114 | 114 | def->next_in = raw; |
| 115 | 115 | if (inf->avail_out != 0) |
| 116 | 116 | flush = Z_FINISH; |
| 117 | 117 | ret = deflate(def, flush); |
| 118 | 118 |
| --- compat/zlib/examples/fitblk.c | |
| +++ compat/zlib/examples/fitblk.c | |
| @@ -15,11 +15,11 @@ | |
| 15 | |
| 16 | fitblk performs three compression passes on a portion of the input |
| 17 | data in order to determine how much of that input will compress to |
| 18 | nearly the requested output block size. The first pass generates |
| 19 | enough deflate blocks to produce output to fill the requested |
| 20 | output size plus a specfied excess amount (see the EXCESS define |
| 21 | below). The last deflate block may go quite a bit past that, but |
| 22 | is discarded. The second pass decompresses and recompresses just |
| 23 | the compressed data that fit in the requested plus excess sized |
| 24 | buffer. The deflate process is terminated after that amount of |
| 25 | input, which is less than the amount consumed on the first pass. |
| @@ -107,11 +107,11 @@ | |
| 107 | assert(ret != Z_STREAM_ERROR && ret != Z_DATA_ERROR && |
| 108 | ret != Z_NEED_DICT); |
| 109 | if (ret == Z_MEM_ERROR) |
| 110 | return ret; |
| 111 | |
| 112 | /* compress what was decompresed until done or no room */ |
| 113 | def->avail_in = RAWLEN - inf->avail_out; |
| 114 | def->next_in = raw; |
| 115 | if (inf->avail_out != 0) |
| 116 | flush = Z_FINISH; |
| 117 | ret = deflate(def, flush); |
| 118 |
| --- compat/zlib/examples/fitblk.c | |
| +++ compat/zlib/examples/fitblk.c | |
| @@ -15,11 +15,11 @@ | |
| 15 | |
| 16 | fitblk performs three compression passes on a portion of the input |
| 17 | data in order to determine how much of that input will compress to |
| 18 | nearly the requested output block size. The first pass generates |
| 19 | enough deflate blocks to produce output to fill the requested |
| 20 | output size plus a specified excess amount (see the EXCESS define |
| 21 | below). The last deflate block may go quite a bit past that, but |
| 22 | is discarded. The second pass decompresses and recompresses just |
| 23 | the compressed data that fit in the requested plus excess sized |
| 24 | buffer. The deflate process is terminated after that amount of |
| 25 | input, which is less than the amount consumed on the first pass. |
| @@ -107,11 +107,11 @@ | |
| 107 | assert(ret != Z_STREAM_ERROR && ret != Z_DATA_ERROR && |
| 108 | ret != Z_NEED_DICT); |
| 109 | if (ret == Z_MEM_ERROR) |
| 110 | return ret; |
| 111 | |
| 112 | /* compress what was decompressed until done or no room */ |
| 113 | def->avail_in = RAWLEN - inf->avail_out; |
| 114 | def->next_in = raw; |
| 115 | if (inf->avail_out != 0) |
| 116 | flush = Z_FINISH; |
| 117 | ret = deflate(def, flush); |
| 118 |
+1
-1
| --- compat/zlib/examples/gun.c | ||
| +++ compat/zlib/examples/gun.c | ||
| @@ -41,11 +41,11 @@ | ||
| 41 | 41 | file. |
| 42 | 42 | |
| 43 | 43 | gun will also decompress files made by Unix compress, which uses LZW |
| 44 | 44 | compression. These files are automatically detected by virtue of their |
| 45 | 45 | magic header bytes. Since the end of Unix compress stream is marked by the |
| 46 | - end-of-file, they cannot be concantenated. If a Unix compress stream is | |
| 46 | + end-of-file, they cannot be concatenated. If a Unix compress stream is | |
| 47 | 47 | encountered in an input file, it is the last stream in that file. |
| 48 | 48 | |
| 49 | 49 | Like gunzip and uncompress, the file attributes of the original compressed |
| 50 | 50 | file are maintained in the final uncompressed file, to the extent that the |
| 51 | 51 | user permissions allow it. |
| 52 | 52 |
| --- compat/zlib/examples/gun.c | |
| +++ compat/zlib/examples/gun.c | |
| @@ -41,11 +41,11 @@ | |
| 41 | file. |
| 42 | |
| 43 | gun will also decompress files made by Unix compress, which uses LZW |
| 44 | compression. These files are automatically detected by virtue of their |
| 45 | magic header bytes. Since the end of Unix compress stream is marked by the |
| 46 | end-of-file, they cannot be concantenated. If a Unix compress stream is |
| 47 | encountered in an input file, it is the last stream in that file. |
| 48 | |
| 49 | Like gunzip and uncompress, the file attributes of the original compressed |
| 50 | file are maintained in the final uncompressed file, to the extent that the |
| 51 | user permissions allow it. |
| 52 |
| --- compat/zlib/examples/gun.c | |
| +++ compat/zlib/examples/gun.c | |
| @@ -41,11 +41,11 @@ | |
| 41 | file. |
| 42 | |
| 43 | gun will also decompress files made by Unix compress, which uses LZW |
| 44 | compression. These files are automatically detected by virtue of their |
| 45 | magic header bytes. Since the end of Unix compress stream is marked by the |
| 46 | end-of-file, they cannot be concatenated. If a Unix compress stream is |
| 47 | encountered in an input file, it is the last stream in that file. |
| 48 | |
| 49 | Like gunzip and uncompress, the file attributes of the original compressed |
| 50 | file are maintained in the final uncompressed file, to the extent that the |
| 51 | user permissions allow it. |
| 52 |
+2
-2
| --- compat/zlib/examples/gzappend.c | ||
| +++ compat/zlib/examples/gzappend.c | ||
| @@ -31,11 +31,11 @@ | ||
| 31 | 31 | * - Send help to stdout instead of stderr |
| 32 | 32 | * - Add some preemptive typecasts |
| 33 | 33 | * - Add L to constants in lseek() calls |
| 34 | 34 | * - Remove some debugging information in error messages |
| 35 | 35 | * - Use new data_type definition for zlib 1.2.1 |
| 36 | - * - Simplfy and unify file operations | |
| 36 | + * - Simplify and unify file operations | |
| 37 | 37 | * - Finish off gzip file in gztack() |
| 38 | 38 | * - Use deflatePrime() instead of adding empty blocks |
| 39 | 39 | * - Keep gzip file clean on appended file read errors |
| 40 | 40 | * - Use in-place rotate instead of auxiliary buffer |
| 41 | 41 | * (Why you ask? Because it was fun to write!) |
| @@ -52,11 +52,11 @@ | ||
| 52 | 52 | This program was written to illustrate the use of the new Z_BLOCK option of |
| 53 | 53 | zlib 1.2.x's inflate() function. This option returns from inflate() at each |
| 54 | 54 | block boundary to facilitate locating and modifying the last block bit at |
| 55 | 55 | the start of the final deflate block. Also whether using Z_BLOCK or not, |
| 56 | 56 | another required feature of zlib 1.2.x is that inflate() now provides the |
| 57 | - number of unusued bits in the last input byte used. gzappend will not work | |
| 57 | + number of unused bits in the last input byte used. gzappend will not work | |
| 58 | 58 | with versions of zlib earlier than 1.2.1. |
| 59 | 59 | |
| 60 | 60 | gzappend first decompresses the gzip file internally, discarding all but |
| 61 | 61 | the last 32K of uncompressed data, and noting the location of the last block |
| 62 | 62 | bit and the number of unused bits in the last byte of the compressed data. |
| 63 | 63 |
| --- compat/zlib/examples/gzappend.c | |
| +++ compat/zlib/examples/gzappend.c | |
| @@ -31,11 +31,11 @@ | |
| 31 | * - Send help to stdout instead of stderr |
| 32 | * - Add some preemptive typecasts |
| 33 | * - Add L to constants in lseek() calls |
| 34 | * - Remove some debugging information in error messages |
| 35 | * - Use new data_type definition for zlib 1.2.1 |
| 36 | * - Simplfy and unify file operations |
| 37 | * - Finish off gzip file in gztack() |
| 38 | * - Use deflatePrime() instead of adding empty blocks |
| 39 | * - Keep gzip file clean on appended file read errors |
| 40 | * - Use in-place rotate instead of auxiliary buffer |
| 41 | * (Why you ask? Because it was fun to write!) |
| @@ -52,11 +52,11 @@ | |
| 52 | This program was written to illustrate the use of the new Z_BLOCK option of |
| 53 | zlib 1.2.x's inflate() function. This option returns from inflate() at each |
| 54 | block boundary to facilitate locating and modifying the last block bit at |
| 55 | the start of the final deflate block. Also whether using Z_BLOCK or not, |
| 56 | another required feature of zlib 1.2.x is that inflate() now provides the |
| 57 | number of unusued bits in the last input byte used. gzappend will not work |
| 58 | with versions of zlib earlier than 1.2.1. |
| 59 | |
| 60 | gzappend first decompresses the gzip file internally, discarding all but |
| 61 | the last 32K of uncompressed data, and noting the location of the last block |
| 62 | bit and the number of unused bits in the last byte of the compressed data. |
| 63 |
| --- compat/zlib/examples/gzappend.c | |
| +++ compat/zlib/examples/gzappend.c | |
| @@ -31,11 +31,11 @@ | |
| 31 | * - Send help to stdout instead of stderr |
| 32 | * - Add some preemptive typecasts |
| 33 | * - Add L to constants in lseek() calls |
| 34 | * - Remove some debugging information in error messages |
| 35 | * - Use new data_type definition for zlib 1.2.1 |
| 36 | * - Simplify and unify file operations |
| 37 | * - Finish off gzip file in gztack() |
| 38 | * - Use deflatePrime() instead of adding empty blocks |
| 39 | * - Keep gzip file clean on appended file read errors |
| 40 | * - Use in-place rotate instead of auxiliary buffer |
| 41 | * (Why you ask? Because it was fun to write!) |
| @@ -52,11 +52,11 @@ | |
| 52 | This program was written to illustrate the use of the new Z_BLOCK option of |
| 53 | zlib 1.2.x's inflate() function. This option returns from inflate() at each |
| 54 | block boundary to facilitate locating and modifying the last block bit at |
| 55 | the start of the final deflate block. Also whether using Z_BLOCK or not, |
| 56 | another required feature of zlib 1.2.x is that inflate() now provides the |
| 57 | number of unused bits in the last input byte used. gzappend will not work |
| 58 | with versions of zlib earlier than 1.2.1. |
| 59 | |
| 60 | gzappend first decompresses the gzip file internally, discarding all but |
| 61 | the last 32K of uncompressed data, and noting the location of the last block |
| 62 | bit and the number of unused bits in the last byte of the compressed data. |
| 63 |
+1
-1
| --- compat/zlib/examples/gzlog.h | ||
| +++ compat/zlib/examples/gzlog.h | ||
| @@ -38,11 +38,11 @@ | ||
| 38 | 38 | 1 MB has been accumulated. At that time, the stored data is compressed, and |
| 39 | 39 | replaces the uncompressed data in the file. The log file is truncated to |
| 40 | 40 | its new size at that time. After each write operation, the log file is a |
| 41 | 41 | valid gzip file that can decompressed to recover what was written. |
| 42 | 42 | |
| 43 | - The gzlog operations can be interupted at any point due to an application or | |
| 43 | + The gzlog operations can be interrupted at any point due to an application or | |
| 44 | 44 | system crash, and the log file will be recovered the next time the log is |
| 45 | 45 | opened with gzlog_open(). |
| 46 | 46 | */ |
| 47 | 47 | |
| 48 | 48 | #ifndef GZLOG_H |
| 49 | 49 |
| --- compat/zlib/examples/gzlog.h | |
| +++ compat/zlib/examples/gzlog.h | |
| @@ -38,11 +38,11 @@ | |
| 38 | 1 MB has been accumulated. At that time, the stored data is compressed, and |
| 39 | replaces the uncompressed data in the file. The log file is truncated to |
| 40 | its new size at that time. After each write operation, the log file is a |
| 41 | valid gzip file that can decompressed to recover what was written. |
| 42 | |
| 43 | The gzlog operations can be interupted at any point due to an application or |
| 44 | system crash, and the log file will be recovered the next time the log is |
| 45 | opened with gzlog_open(). |
| 46 | */ |
| 47 | |
| 48 | #ifndef GZLOG_H |
| 49 |
| --- compat/zlib/examples/gzlog.h | |
| +++ compat/zlib/examples/gzlog.h | |
| @@ -38,11 +38,11 @@ | |
| 38 | 1 MB has been accumulated. At that time, the stored data is compressed, and |
| 39 | replaces the uncompressed data in the file. The log file is truncated to |
| 40 | its new size at that time. After each write operation, the log file is a |
| 41 | valid gzip file that can decompressed to recover what was written. |
| 42 | |
| 43 | The gzlog operations can be interrupted at any point due to an application or |
| 44 | system crash, and the log file will be recovered the next time the log is |
| 45 | opened with gzlog_open(). |
| 46 | */ |
| 47 | |
| 48 | #ifndef GZLOG_H |
| 49 |
+1
-1
| --- compat/zlib/examples/zran.c | ||
| +++ compat/zlib/examples/zran.c | ||
| @@ -19,11 +19,11 @@ | ||
| 19 | 19 | bytes before getting to the desired block of data. |
| 20 | 20 | |
| 21 | 21 | An access point can be created at the start of any deflate block, by saving |
| 22 | 22 | the starting file offset and bit of that block, and the 32K bytes of |
| 23 | 23 | uncompressed data that precede that block. Also the uncompressed offset of |
| 24 | - that block is saved to provide a referece for locating a desired starting | |
| 24 | + that block is saved to provide a reference for locating a desired starting | |
| 25 | 25 | point in the uncompressed stream. deflate_index_build() works by |
| 26 | 26 | decompressing the input zlib or gzip stream a block at a time, and at the |
| 27 | 27 | end of each block deciding if enough uncompressed data has gone by to |
| 28 | 28 | justify the creation of a new access point. If so, that point is saved in a |
| 29 | 29 | data structure that grows as needed to accommodate the points. |
| 30 | 30 |
| --- compat/zlib/examples/zran.c | |
| +++ compat/zlib/examples/zran.c | |
| @@ -19,11 +19,11 @@ | |
| 19 | bytes before getting to the desired block of data. |
| 20 | |
| 21 | An access point can be created at the start of any deflate block, by saving |
| 22 | the starting file offset and bit of that block, and the 32K bytes of |
| 23 | uncompressed data that precede that block. Also the uncompressed offset of |
| 24 | that block is saved to provide a referece for locating a desired starting |
| 25 | point in the uncompressed stream. deflate_index_build() works by |
| 26 | decompressing the input zlib or gzip stream a block at a time, and at the |
| 27 | end of each block deciding if enough uncompressed data has gone by to |
| 28 | justify the creation of a new access point. If so, that point is saved in a |
| 29 | data structure that grows as needed to accommodate the points. |
| 30 |
| --- compat/zlib/examples/zran.c | |
| +++ compat/zlib/examples/zran.c | |
| @@ -19,11 +19,11 @@ | |
| 19 | bytes before getting to the desired block of data. |
| 20 | |
| 21 | An access point can be created at the start of any deflate block, by saving |
| 22 | the starting file offset and bit of that block, and the 32K bytes of |
| 23 | uncompressed data that precede that block. Also the uncompressed offset of |
| 24 | that block is saved to provide a reference for locating a desired starting |
| 25 | point in the uncompressed stream. deflate_index_build() works by |
| 26 | decompressing the input zlib or gzip stream a block at a time, and at the |
| 27 | end of each block deciding if enough uncompressed data has gone by to |
| 28 | justify the creation of a new access point. If so, that point is saved in a |
| 29 | data structure that grows as needed to accommodate the points. |
| 30 |
+1
-1
| --- compat/zlib/gzlib.c | ||
| +++ compat/zlib/gzlib.c | ||
| @@ -28,11 +28,11 @@ | ||
| 28 | 28 | The string pointed to shall not be modified by the application, but may be |
| 29 | 29 | overwritten by a subsequent call to gz_strwinerror |
| 30 | 30 | |
| 31 | 31 | The gz_strwinerror function does not change the current setting of |
| 32 | 32 | GetLastError. */ |
| 33 | -char ZLIB_INTERNAL *gz_strwinerror (error) | |
| 33 | +char ZLIB_INTERNAL *gz_strwinerror(error) | |
| 34 | 34 | DWORD error; |
| 35 | 35 | { |
| 36 | 36 | static char buf[1024]; |
| 37 | 37 | |
| 38 | 38 | wchar_t *msgbuf; |
| 39 | 39 |
| --- compat/zlib/gzlib.c | |
| +++ compat/zlib/gzlib.c | |
| @@ -28,11 +28,11 @@ | |
| 28 | The string pointed to shall not be modified by the application, but may be |
| 29 | overwritten by a subsequent call to gz_strwinerror |
| 30 | |
| 31 | The gz_strwinerror function does not change the current setting of |
| 32 | GetLastError. */ |
| 33 | char ZLIB_INTERNAL *gz_strwinerror (error) |
| 34 | DWORD error; |
| 35 | { |
| 36 | static char buf[1024]; |
| 37 | |
| 38 | wchar_t *msgbuf; |
| 39 |
| --- compat/zlib/gzlib.c | |
| +++ compat/zlib/gzlib.c | |
| @@ -28,11 +28,11 @@ | |
| 28 | The string pointed to shall not be modified by the application, but may be |
| 29 | overwritten by a subsequent call to gz_strwinerror |
| 30 | |
| 31 | The gz_strwinerror function does not change the current setting of |
| 32 | GetLastError. */ |
| 33 | char ZLIB_INTERNAL *gz_strwinerror(error) |
| 34 | DWORD error; |
| 35 | { |
| 36 | static char buf[1024]; |
| 37 | |
| 38 | wchar_t *msgbuf; |
| 39 |
+3
-5
| --- compat/zlib/gzread.c | ||
| +++ compat/zlib/gzread.c | ||
| @@ -155,15 +155,13 @@ | ||
| 155 | 155 | |
| 156 | 156 | /* doing raw i/o, copy any leftover input to output -- this assumes that |
| 157 | 157 | the output buffer is larger than the input buffer, which also assures |
| 158 | 158 | space for gzungetc() */ |
| 159 | 159 | state->x.next = state->out; |
| 160 | - if (strm->avail_in) { | |
| 161 | - memcpy(state->x.next, strm->next_in, strm->avail_in); | |
| 162 | - state->x.have = strm->avail_in; | |
| 163 | - strm->avail_in = 0; | |
| 164 | - } | |
| 160 | + memcpy(state->x.next, strm->next_in, strm->avail_in); | |
| 161 | + state->x.have = strm->avail_in; | |
| 162 | + strm->avail_in = 0; | |
| 165 | 163 | state->how = COPY; |
| 166 | 164 | state->direct = 1; |
| 167 | 165 | return 0; |
| 168 | 166 | } |
| 169 | 167 | |
| 170 | 168 |
| --- compat/zlib/gzread.c | |
| +++ compat/zlib/gzread.c | |
| @@ -155,15 +155,13 @@ | |
| 155 | |
| 156 | /* doing raw i/o, copy any leftover input to output -- this assumes that |
| 157 | the output buffer is larger than the input buffer, which also assures |
| 158 | space for gzungetc() */ |
| 159 | state->x.next = state->out; |
| 160 | if (strm->avail_in) { |
| 161 | memcpy(state->x.next, strm->next_in, strm->avail_in); |
| 162 | state->x.have = strm->avail_in; |
| 163 | strm->avail_in = 0; |
| 164 | } |
| 165 | state->how = COPY; |
| 166 | state->direct = 1; |
| 167 | return 0; |
| 168 | } |
| 169 | |
| 170 |
| --- compat/zlib/gzread.c | |
| +++ compat/zlib/gzread.c | |
| @@ -155,15 +155,13 @@ | |
| 155 | |
| 156 | /* doing raw i/o, copy any leftover input to output -- this assumes that |
| 157 | the output buffer is larger than the input buffer, which also assures |
| 158 | space for gzungetc() */ |
| 159 | state->x.next = state->out; |
| 160 | memcpy(state->x.next, strm->next_in, strm->avail_in); |
| 161 | state->x.have = strm->avail_in; |
| 162 | strm->avail_in = 0; |
| 163 | state->how = COPY; |
| 164 | state->direct = 1; |
| 165 | return 0; |
| 166 | } |
| 167 | |
| 168 |
+1
-1
| --- compat/zlib/gzwrite.c | ||
| +++ compat/zlib/gzwrite.c | ||
| @@ -472,11 +472,11 @@ | ||
| 472 | 472 | } |
| 473 | 473 | |
| 474 | 474 | #else /* !STDC && !Z_HAVE_STDARG_H */ |
| 475 | 475 | |
| 476 | 476 | /* -- see zlib.h -- */ |
| 477 | -int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, | |
| 477 | +int ZEXPORTVA gzprintf(file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, | |
| 478 | 478 | a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) |
| 479 | 479 | gzFile file; |
| 480 | 480 | const char *format; |
| 481 | 481 | int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, |
| 482 | 482 | a11, a12, a13, a14, a15, a16, a17, a18, a19, a20; |
| 483 | 483 |
| --- compat/zlib/gzwrite.c | |
| +++ compat/zlib/gzwrite.c | |
| @@ -472,11 +472,11 @@ | |
| 472 | } |
| 473 | |
| 474 | #else /* !STDC && !Z_HAVE_STDARG_H */ |
| 475 | |
| 476 | /* -- see zlib.h -- */ |
| 477 | int ZEXPORTVA gzprintf (file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, |
| 478 | a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) |
| 479 | gzFile file; |
| 480 | const char *format; |
| 481 | int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, |
| 482 | a11, a12, a13, a14, a15, a16, a17, a18, a19, a20; |
| 483 |
| --- compat/zlib/gzwrite.c | |
| +++ compat/zlib/gzwrite.c | |
| @@ -472,11 +472,11 @@ | |
| 472 | } |
| 473 | |
| 474 | #else /* !STDC && !Z_HAVE_STDARG_H */ |
| 475 | |
| 476 | /* -- see zlib.h -- */ |
| 477 | int ZEXPORTVA gzprintf(file, format, a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, |
| 478 | a11, a12, a13, a14, a15, a16, a17, a18, a19, a20) |
| 479 | gzFile file; |
| 480 | const char *format; |
| 481 | int a1, a2, a3, a4, a5, a6, a7, a8, a9, a10, |
| 482 | a11, a12, a13, a14, a15, a16, a17, a18, a19, a20; |
| 483 |
+10
-7
| --- compat/zlib/infback.c | ||
| +++ compat/zlib/infback.c | ||
| @@ -64,10 +64,11 @@ | ||
| 64 | 64 | state->wbits = (uInt)windowBits; |
| 65 | 65 | state->wsize = 1U << windowBits; |
| 66 | 66 | state->window = window; |
| 67 | 67 | state->wnext = 0; |
| 68 | 68 | state->whave = 0; |
| 69 | + state->sane = 1; | |
| 69 | 70 | return Z_OK; |
| 70 | 71 | } |
| 71 | 72 | |
| 72 | 73 | /* |
| 73 | 74 | Return state with length and distance decoding tables and index sizes set to |
| @@ -603,29 +604,31 @@ | ||
| 603 | 604 | } while (--copy); |
| 604 | 605 | } while (state->length != 0); |
| 605 | 606 | break; |
| 606 | 607 | |
| 607 | 608 | case DONE: |
| 608 | - /* inflate stream terminated properly -- write leftover output */ | |
| 609 | + /* inflate stream terminated properly */ | |
| 609 | 610 | ret = Z_STREAM_END; |
| 610 | - if (left < state->wsize) { | |
| 611 | - if (out(out_desc, state->window, state->wsize - left)) | |
| 612 | - ret = Z_BUF_ERROR; | |
| 613 | - } | |
| 614 | 611 | goto inf_leave; |
| 615 | 612 | |
| 616 | 613 | case BAD: |
| 617 | 614 | ret = Z_DATA_ERROR; |
| 618 | 615 | goto inf_leave; |
| 619 | 616 | |
| 620 | - default: /* can't happen, but makes compilers happy */ | |
| 617 | + default: | |
| 618 | + /* can't happen, but makes compilers happy */ | |
| 621 | 619 | ret = Z_STREAM_ERROR; |
| 622 | 620 | goto inf_leave; |
| 623 | 621 | } |
| 624 | 622 | |
| 625 | - /* Return unused input */ | |
| 623 | + /* Write leftover output and return unused input */ | |
| 626 | 624 | inf_leave: |
| 625 | + if (left < state->wsize) { | |
| 626 | + if (out(out_desc, state->window, state->wsize - left) && | |
| 627 | + ret == Z_STREAM_END) | |
| 628 | + ret = Z_BUF_ERROR; | |
| 629 | + } | |
| 627 | 630 | strm->next_in = next; |
| 628 | 631 | strm->avail_in = have; |
| 629 | 632 | return ret; |
| 630 | 633 | } |
| 631 | 634 | |
| 632 | 635 |
| --- compat/zlib/infback.c | |
| +++ compat/zlib/infback.c | |
| @@ -64,10 +64,11 @@ | |
| 64 | state->wbits = (uInt)windowBits; |
| 65 | state->wsize = 1U << windowBits; |
| 66 | state->window = window; |
| 67 | state->wnext = 0; |
| 68 | state->whave = 0; |
| 69 | return Z_OK; |
| 70 | } |
| 71 | |
| 72 | /* |
| 73 | Return state with length and distance decoding tables and index sizes set to |
| @@ -603,29 +604,31 @@ | |
| 603 | } while (--copy); |
| 604 | } while (state->length != 0); |
| 605 | break; |
| 606 | |
| 607 | case DONE: |
| 608 | /* inflate stream terminated properly -- write leftover output */ |
| 609 | ret = Z_STREAM_END; |
| 610 | if (left < state->wsize) { |
| 611 | if (out(out_desc, state->window, state->wsize - left)) |
| 612 | ret = Z_BUF_ERROR; |
| 613 | } |
| 614 | goto inf_leave; |
| 615 | |
| 616 | case BAD: |
| 617 | ret = Z_DATA_ERROR; |
| 618 | goto inf_leave; |
| 619 | |
| 620 | default: /* can't happen, but makes compilers happy */ |
| 621 | ret = Z_STREAM_ERROR; |
| 622 | goto inf_leave; |
| 623 | } |
| 624 | |
| 625 | /* Return unused input */ |
| 626 | inf_leave: |
| 627 | strm->next_in = next; |
| 628 | strm->avail_in = have; |
| 629 | return ret; |
| 630 | } |
| 631 | |
| 632 |
| --- compat/zlib/infback.c | |
| +++ compat/zlib/infback.c | |
| @@ -64,10 +64,11 @@ | |
| 64 | state->wbits = (uInt)windowBits; |
| 65 | state->wsize = 1U << windowBits; |
| 66 | state->window = window; |
| 67 | state->wnext = 0; |
| 68 | state->whave = 0; |
| 69 | state->sane = 1; |
| 70 | return Z_OK; |
| 71 | } |
| 72 | |
| 73 | /* |
| 74 | Return state with length and distance decoding tables and index sizes set to |
| @@ -603,29 +604,31 @@ | |
| 604 | } while (--copy); |
| 605 | } while (state->length != 0); |
| 606 | break; |
| 607 | |
| 608 | case DONE: |
| 609 | /* inflate stream terminated properly */ |
| 610 | ret = Z_STREAM_END; |
| 611 | goto inf_leave; |
| 612 | |
| 613 | case BAD: |
| 614 | ret = Z_DATA_ERROR; |
| 615 | goto inf_leave; |
| 616 | |
| 617 | default: |
| 618 | /* can't happen, but makes compilers happy */ |
| 619 | ret = Z_STREAM_ERROR; |
| 620 | goto inf_leave; |
| 621 | } |
| 622 | |
| 623 | /* Write leftover output and return unused input */ |
| 624 | inf_leave: |
| 625 | if (left < state->wsize) { |
| 626 | if (out(out_desc, state->window, state->wsize - left) && |
| 627 | ret == Z_STREAM_END) |
| 628 | ret = Z_BUF_ERROR; |
| 629 | } |
| 630 | strm->next_in = next; |
| 631 | strm->avail_in = have; |
| 632 | return ret; |
| 633 | } |
| 634 | |
| 635 |
+5
-2
| --- compat/zlib/inflate.c | ||
| +++ compat/zlib/inflate.c | ||
| @@ -166,10 +166,12 @@ | ||
| 166 | 166 | if (inflateStateCheck(strm)) return Z_STREAM_ERROR; |
| 167 | 167 | state = (struct inflate_state FAR *)strm->state; |
| 168 | 168 | |
| 169 | 169 | /* extract wrap request from windowBits parameter */ |
| 170 | 170 | if (windowBits < 0) { |
| 171 | + if (windowBits < -15) | |
| 172 | + return Z_STREAM_ERROR; | |
| 171 | 173 | wrap = 0; |
| 172 | 174 | windowBits = -windowBits; |
| 173 | 175 | } |
| 174 | 176 | else { |
| 175 | 177 | wrap = (windowBits >> 4) + 5; |
| @@ -762,12 +764,13 @@ | ||
| 762 | 764 | if (state->flags & 0x0400) { |
| 763 | 765 | copy = state->length; |
| 764 | 766 | if (copy > have) copy = have; |
| 765 | 767 | if (copy) { |
| 766 | 768 | if (state->head != Z_NULL && |
| 767 | - state->head->extra != Z_NULL) { | |
| 768 | - len = state->head->extra_len - state->length; | |
| 769 | + state->head->extra != Z_NULL && | |
| 770 | + (len = state->head->extra_len - state->length) < | |
| 771 | + state->head->extra_max) { | |
| 769 | 772 | zmemcpy(state->head->extra + len, next, |
| 770 | 773 | len + copy > state->head->extra_max ? |
| 771 | 774 | state->head->extra_max - len : copy); |
| 772 | 775 | } |
| 773 | 776 | if ((state->flags & 0x0200) && (state->wrap & 4)) |
| 774 | 777 |
| --- compat/zlib/inflate.c | |
| +++ compat/zlib/inflate.c | |
| @@ -166,10 +166,12 @@ | |
| 166 | if (inflateStateCheck(strm)) return Z_STREAM_ERROR; |
| 167 | state = (struct inflate_state FAR *)strm->state; |
| 168 | |
| 169 | /* extract wrap request from windowBits parameter */ |
| 170 | if (windowBits < 0) { |
| 171 | wrap = 0; |
| 172 | windowBits = -windowBits; |
| 173 | } |
| 174 | else { |
| 175 | wrap = (windowBits >> 4) + 5; |
| @@ -762,12 +764,13 @@ | |
| 762 | if (state->flags & 0x0400) { |
| 763 | copy = state->length; |
| 764 | if (copy > have) copy = have; |
| 765 | if (copy) { |
| 766 | if (state->head != Z_NULL && |
| 767 | state->head->extra != Z_NULL) { |
| 768 | len = state->head->extra_len - state->length; |
| 769 | zmemcpy(state->head->extra + len, next, |
| 770 | len + copy > state->head->extra_max ? |
| 771 | state->head->extra_max - len : copy); |
| 772 | } |
| 773 | if ((state->flags & 0x0200) && (state->wrap & 4)) |
| 774 |
| --- compat/zlib/inflate.c | |
| +++ compat/zlib/inflate.c | |
| @@ -166,10 +166,12 @@ | |
| 166 | if (inflateStateCheck(strm)) return Z_STREAM_ERROR; |
| 167 | state = (struct inflate_state FAR *)strm->state; |
| 168 | |
| 169 | /* extract wrap request from windowBits parameter */ |
| 170 | if (windowBits < 0) { |
| 171 | if (windowBits < -15) |
| 172 | return Z_STREAM_ERROR; |
| 173 | wrap = 0; |
| 174 | windowBits = -windowBits; |
| 175 | } |
| 176 | else { |
| 177 | wrap = (windowBits >> 4) + 5; |
| @@ -762,12 +764,13 @@ | |
| 764 | if (state->flags & 0x0400) { |
| 765 | copy = state->length; |
| 766 | if (copy > have) copy = have; |
| 767 | if (copy) { |
| 768 | if (state->head != Z_NULL && |
| 769 | state->head->extra != Z_NULL && |
| 770 | (len = state->head->extra_len - state->length) < |
| 771 | state->head->extra_max) { |
| 772 | zmemcpy(state->head->extra + len, next, |
| 773 | len + copy > state->head->extra_max ? |
| 774 | state->head->extra_max - len : copy); |
| 775 | } |
| 776 | if ((state->flags & 0x0200) && (state->wrap & 4)) |
| 777 |
+2
-2
| --- compat/zlib/inftrees.c | ||
| +++ compat/zlib/inftrees.c | ||
| @@ -7,11 +7,11 @@ | ||
| 7 | 7 | #include "inftrees.h" |
| 8 | 8 | |
| 9 | 9 | #define MAXBITS 15 |
| 10 | 10 | |
| 11 | 11 | const char inflate_copyright[] = |
| 12 | - " inflate 1.2.12 Copyright 1995-2022 Mark Adler "; | |
| 12 | + " inflate 1.2.13 Copyright 1995-2022 Mark Adler "; | |
| 13 | 13 | /* |
| 14 | 14 | If you use the zlib library in a product, an acknowledgment is welcome |
| 15 | 15 | in the documentation of your product. If for some reason you cannot |
| 16 | 16 | include such an acknowledgment, I would appreciate that you keep this |
| 17 | 17 | copyright string in the executable of your product. |
| @@ -60,11 +60,11 @@ | ||
| 60 | 60 | static const unsigned short lbase[31] = { /* Length codes 257..285 base */ |
| 61 | 61 | 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, |
| 62 | 62 | 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; |
| 63 | 63 | static const unsigned short lext[31] = { /* Length codes 257..285 extra */ |
| 64 | 64 | 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, |
| 65 | - 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 199, 202}; | |
| 65 | + 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 194, 65}; | |
| 66 | 66 | static const unsigned short dbase[32] = { /* Distance codes 0..29 base */ |
| 67 | 67 | 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, |
| 68 | 68 | 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, |
| 69 | 69 | 8193, 12289, 16385, 24577, 0, 0}; |
| 70 | 70 | static const unsigned short dext[32] = { /* Distance codes 0..29 extra */ |
| 71 | 71 |
| --- compat/zlib/inftrees.c | |
| +++ compat/zlib/inftrees.c | |
| @@ -7,11 +7,11 @@ | |
| 7 | #include "inftrees.h" |
| 8 | |
| 9 | #define MAXBITS 15 |
| 10 | |
| 11 | const char inflate_copyright[] = |
| 12 | " inflate 1.2.12 Copyright 1995-2022 Mark Adler "; |
| 13 | /* |
| 14 | If you use the zlib library in a product, an acknowledgment is welcome |
| 15 | in the documentation of your product. If for some reason you cannot |
| 16 | include such an acknowledgment, I would appreciate that you keep this |
| 17 | copyright string in the executable of your product. |
| @@ -60,11 +60,11 @@ | |
| 60 | static const unsigned short lbase[31] = { /* Length codes 257..285 base */ |
| 61 | 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, |
| 62 | 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; |
| 63 | static const unsigned short lext[31] = { /* Length codes 257..285 extra */ |
| 64 | 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, |
| 65 | 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 199, 202}; |
| 66 | static const unsigned short dbase[32] = { /* Distance codes 0..29 base */ |
| 67 | 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, |
| 68 | 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, |
| 69 | 8193, 12289, 16385, 24577, 0, 0}; |
| 70 | static const unsigned short dext[32] = { /* Distance codes 0..29 extra */ |
| 71 |
| --- compat/zlib/inftrees.c | |
| +++ compat/zlib/inftrees.c | |
| @@ -7,11 +7,11 @@ | |
| 7 | #include "inftrees.h" |
| 8 | |
| 9 | #define MAXBITS 15 |
| 10 | |
| 11 | const char inflate_copyright[] = |
| 12 | " inflate 1.2.13 Copyright 1995-2022 Mark Adler "; |
| 13 | /* |
| 14 | If you use the zlib library in a product, an acknowledgment is welcome |
| 15 | in the documentation of your product. If for some reason you cannot |
| 16 | include such an acknowledgment, I would appreciate that you keep this |
| 17 | copyright string in the executable of your product. |
| @@ -60,11 +60,11 @@ | |
| 60 | static const unsigned short lbase[31] = { /* Length codes 257..285 base */ |
| 61 | 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, |
| 62 | 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; |
| 63 | static const unsigned short lext[31] = { /* Length codes 257..285 extra */ |
| 64 | 16, 16, 16, 16, 16, 16, 16, 16, 17, 17, 17, 17, 18, 18, 18, 18, |
| 65 | 19, 19, 19, 19, 20, 20, 20, 20, 21, 21, 21, 21, 16, 194, 65}; |
| 66 | static const unsigned short dbase[32] = { /* Distance codes 0..29 base */ |
| 67 | 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, |
| 68 | 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, |
| 69 | 8193, 12289, 16385, 24577, 0, 0}; |
| 70 | static const unsigned short dext[32] = { /* Distance codes 0..29 extra */ |
| 71 |
+1
-1
| --- compat/zlib/inftrees.h | ||
| +++ compat/zlib/inftrees.h | ||
| @@ -36,11 +36,11 @@ | ||
| 36 | 36 | */ |
| 37 | 37 | |
| 38 | 38 | /* Maximum size of the dynamic table. The maximum number of code structures is |
| 39 | 39 | 1444, which is the sum of 852 for literal/length codes and 592 for distance |
| 40 | 40 | codes. These values were found by exhaustive searches using the program |
| 41 | - examples/enough.c found in the zlib distribtution. The arguments to that | |
| 41 | + examples/enough.c found in the zlib distribution. The arguments to that | |
| 42 | 42 | program are the number of symbols, the initial root table size, and the |
| 43 | 43 | maximum bit length of a code. "enough 286 9 15" for literal/length codes |
| 44 | 44 | returns returns 852, and "enough 30 6 15" for distance codes returns 592. |
| 45 | 45 | The initial root table size (9 or 6) is found in the fifth argument of the |
| 46 | 46 | inflate_table() calls in inflate.c and infback.c. If the root table size is |
| 47 | 47 |
| --- compat/zlib/inftrees.h | |
| +++ compat/zlib/inftrees.h | |
| @@ -36,11 +36,11 @@ | |
| 36 | */ |
| 37 | |
| 38 | /* Maximum size of the dynamic table. The maximum number of code structures is |
| 39 | 1444, which is the sum of 852 for literal/length codes and 592 for distance |
| 40 | codes. These values were found by exhaustive searches using the program |
| 41 | examples/enough.c found in the zlib distribtution. The arguments to that |
| 42 | program are the number of symbols, the initial root table size, and the |
| 43 | maximum bit length of a code. "enough 286 9 15" for literal/length codes |
| 44 | returns returns 852, and "enough 30 6 15" for distance codes returns 592. |
| 45 | The initial root table size (9 or 6) is found in the fifth argument of the |
| 46 | inflate_table() calls in inflate.c and infback.c. If the root table size is |
| 47 |
| --- compat/zlib/inftrees.h | |
| +++ compat/zlib/inftrees.h | |
| @@ -36,11 +36,11 @@ | |
| 36 | */ |
| 37 | |
| 38 | /* Maximum size of the dynamic table. The maximum number of code structures is |
| 39 | 1444, which is the sum of 852 for literal/length codes and 592 for distance |
| 40 | codes. These values were found by exhaustive searches using the program |
| 41 | examples/enough.c found in the zlib distribution. The arguments to that |
| 42 | program are the number of symbols, the initial root table size, and the |
| 43 | maximum bit length of a code. "enough 286 9 15" for literal/length codes |
| 44 | returns returns 852, and "enough 30 6 15" for distance codes returns 592. |
| 45 | The initial root table size (9 or 6) is found in the fifth argument of the |
| 46 | inflate_table() calls in inflate.c and infback.c. If the root table size is |
| 47 |
+2
-2
| --- compat/zlib/make_vms.com | ||
| +++ compat/zlib/make_vms.com | ||
| @@ -12,13 +12,13 @@ | ||
| 12 | 12 | $! 0.01 20060120 First version to receive a number |
| 13 | 13 | $! 0.02 20061008 Adapt to new Makefile.in |
| 14 | 14 | $! 0.03 20091224 Add support for large file check |
| 15 | 15 | $! 0.04 20100110 Add new gzclose, gzlib, gzread, gzwrite |
| 16 | 16 | $! 0.05 20100221 Exchange zlibdefs.h by zconf.h.in |
| 17 | -$! 0.06 20120111 Fix missing amiss_err, update zconf_h.in, fix new exmples | |
| 17 | +$! 0.06 20120111 Fix missing amiss_err, update zconf_h.in, fix new examples | |
| 18 | 18 | $! subdir path, update module search in makefile.in |
| 19 | -$! 0.07 20120115 Triggered by work done by Alexey Chupahin completly redesigned | |
| 19 | +$! 0.07 20120115 Triggered by work done by Alexey Chupahin completely redesigned | |
| 20 | 20 | $! shared image creation |
| 21 | 21 | $! 0.08 20120219 Make it work on VAX again, pre-load missing symbols to shared |
| 22 | 22 | $! image |
| 23 | 23 | $! 0.09 20120305 SMS. P1 sets builder ("MMK", "MMS", " " (built-in)). |
| 24 | 24 | $! "" -> automatic, preference: MMK, MMS, built-in. |
| 25 | 25 |
| --- compat/zlib/make_vms.com | |
| +++ compat/zlib/make_vms.com | |
| @@ -12,13 +12,13 @@ | |
| 12 | $! 0.01 20060120 First version to receive a number |
| 13 | $! 0.02 20061008 Adapt to new Makefile.in |
| 14 | $! 0.03 20091224 Add support for large file check |
| 15 | $! 0.04 20100110 Add new gzclose, gzlib, gzread, gzwrite |
| 16 | $! 0.05 20100221 Exchange zlibdefs.h by zconf.h.in |
| 17 | $! 0.06 20120111 Fix missing amiss_err, update zconf_h.in, fix new exmples |
| 18 | $! subdir path, update module search in makefile.in |
| 19 | $! 0.07 20120115 Triggered by work done by Alexey Chupahin completly redesigned |
| 20 | $! shared image creation |
| 21 | $! 0.08 20120219 Make it work on VAX again, pre-load missing symbols to shared |
| 22 | $! image |
| 23 | $! 0.09 20120305 SMS. P1 sets builder ("MMK", "MMS", " " (built-in)). |
| 24 | $! "" -> automatic, preference: MMK, MMS, built-in. |
| 25 |
| --- compat/zlib/make_vms.com | |
| +++ compat/zlib/make_vms.com | |
| @@ -12,13 +12,13 @@ | |
| 12 | $! 0.01 20060120 First version to receive a number |
| 13 | $! 0.02 20061008 Adapt to new Makefile.in |
| 14 | $! 0.03 20091224 Add support for large file check |
| 15 | $! 0.04 20100110 Add new gzclose, gzlib, gzread, gzwrite |
| 16 | $! 0.05 20100221 Exchange zlibdefs.h by zconf.h.in |
| 17 | $! 0.06 20120111 Fix missing amiss_err, update zconf_h.in, fix new examples |
| 18 | $! subdir path, update module search in makefile.in |
| 19 | $! 0.07 20120115 Triggered by work done by Alexey Chupahin completely redesigned |
| 20 | $! shared image creation |
| 21 | $! 0.08 20120219 Make it work on VAX again, pre-load missing symbols to shared |
| 22 | $! image |
| 23 | $! 0.09 20120305 SMS. P1 sets builder ("MMK", "MMS", " " (built-in)). |
| 24 | $! "" -> automatic, preference: MMK, MMS, built-in. |
| 25 |
+3
-3
| --- compat/zlib/os400/README400 | ||
| +++ compat/zlib/os400/README400 | ||
| @@ -1,11 +1,11 @@ | ||
| 1 | - ZLIB version 1.2.12 for OS/400 installation instructions | |
| 1 | + ZLIB version 1.2.13 for OS/400 installation instructions | |
| 2 | 2 | |
| 3 | 3 | 1) Download and unpack the zlib tarball to some IFS directory. |
| 4 | 4 | (i.e.: /path/to/the/zlib/ifs/source/directory) |
| 5 | 5 | |
| 6 | - If the installed IFS command suppors gzip format, this is straightforward, | |
| 6 | + If the installed IFS command supports gzip format, this is straightforward, | |
| 7 | 7 | else you have to unpack first to some directory on a system supporting it, |
| 8 | 8 | then move the whole directory to the IFS via the network (via SMB or FTP). |
| 9 | 9 | |
| 10 | 10 | 2) Edit the configuration parameters in the compilation script. |
| 11 | 11 | |
| @@ -41,8 +41,8 @@ | ||
| 41 | 41 | C/C++ header files. |
| 42 | 42 | Please read comments in this member for more information. |
| 43 | 43 | |
| 44 | 44 | Remember that most foreign textual data are ASCII coded: this |
| 45 | 45 | implementation does not handle conversion from/to ASCII, so |
| 46 | - text data code conversions must be done explicitely. | |
| 46 | + text data code conversions must be done explicitly. | |
| 47 | 47 | |
| 48 | 48 | Mainly for the reason above, always open zipped files in binary mode. |
| 49 | 49 |
| --- compat/zlib/os400/README400 | |
| +++ compat/zlib/os400/README400 | |
| @@ -1,11 +1,11 @@ | |
| 1 | ZLIB version 1.2.12 for OS/400 installation instructions |
| 2 | |
| 3 | 1) Download and unpack the zlib tarball to some IFS directory. |
| 4 | (i.e.: /path/to/the/zlib/ifs/source/directory) |
| 5 | |
| 6 | If the installed IFS command suppors gzip format, this is straightforward, |
| 7 | else you have to unpack first to some directory on a system supporting it, |
| 8 | then move the whole directory to the IFS via the network (via SMB or FTP). |
| 9 | |
| 10 | 2) Edit the configuration parameters in the compilation script. |
| 11 | |
| @@ -41,8 +41,8 @@ | |
| 41 | C/C++ header files. |
| 42 | Please read comments in this member for more information. |
| 43 | |
| 44 | Remember that most foreign textual data are ASCII coded: this |
| 45 | implementation does not handle conversion from/to ASCII, so |
| 46 | text data code conversions must be done explicitely. |
| 47 | |
| 48 | Mainly for the reason above, always open zipped files in binary mode. |
| 49 |
| --- compat/zlib/os400/README400 | |
| +++ compat/zlib/os400/README400 | |
| @@ -1,11 +1,11 @@ | |
| 1 | ZLIB version 1.2.13 for OS/400 installation instructions |
| 2 | |
| 3 | 1) Download and unpack the zlib tarball to some IFS directory. |
| 4 | (i.e.: /path/to/the/zlib/ifs/source/directory) |
| 5 | |
| 6 | If the installed IFS command supports gzip format, this is straightforward, |
| 7 | else you have to unpack first to some directory on a system supporting it, |
| 8 | then move the whole directory to the IFS via the network (via SMB or FTP). |
| 9 | |
| 10 | 2) Edit the configuration parameters in the compilation script. |
| 11 | |
| @@ -41,8 +41,8 @@ | |
| 41 | C/C++ header files. |
| 42 | Please read comments in this member for more information. |
| 43 | |
| 44 | Remember that most foreign textual data are ASCII coded: this |
| 45 | implementation does not handle conversion from/to ASCII, so |
| 46 | text data code conversions must be done explicitly. |
| 47 | |
| 48 | Mainly for the reason above, always open zipped files in binary mode. |
| 49 |
| --- compat/zlib/os400/bndsrc | ||
| +++ compat/zlib/os400/bndsrc | ||
| @@ -113,7 +113,15 @@ | ||
| 113 | 113 | EXPORT SYMBOL("gzfread") |
| 114 | 114 | EXPORT SYMBOL("gzfwrite") |
| 115 | 115 | EXPORT SYMBOL("inflateCodesUsed") |
| 116 | 116 | EXPORT SYMBOL("inflateValidate") |
| 117 | 117 | EXPORT SYMBOL("uncompress2") |
| 118 | + | |
| 119 | +/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ | |
| 120 | +/* Version 1.2.12 additional entry points. */ | |
| 121 | +/*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ | |
| 122 | + | |
| 123 | + EXPORT SYMBOL("crc32_combine_gen64") | |
| 124 | + EXPORT SYMBOL("crc32_combine_gen") | |
| 125 | + EXPORT SYMBOL("crc32_combine_op") | |
| 118 | 126 | |
| 119 | 127 | ENDPGMEXP |
| 120 | 128 |
| --- compat/zlib/os400/bndsrc | |
| +++ compat/zlib/os400/bndsrc | |
| @@ -113,7 +113,15 @@ | |
| 113 | EXPORT SYMBOL("gzfread") |
| 114 | EXPORT SYMBOL("gzfwrite") |
| 115 | EXPORT SYMBOL("inflateCodesUsed") |
| 116 | EXPORT SYMBOL("inflateValidate") |
| 117 | EXPORT SYMBOL("uncompress2") |
| 118 | |
| 119 | ENDPGMEXP |
| 120 |
| --- compat/zlib/os400/bndsrc | |
| +++ compat/zlib/os400/bndsrc | |
| @@ -113,7 +113,15 @@ | |
| 113 | EXPORT SYMBOL("gzfread") |
| 114 | EXPORT SYMBOL("gzfwrite") |
| 115 | EXPORT SYMBOL("inflateCodesUsed") |
| 116 | EXPORT SYMBOL("inflateValidate") |
| 117 | EXPORT SYMBOL("uncompress2") |
| 118 | |
| 119 | /*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ |
| 120 | /* Version 1.2.12 additional entry points. */ |
| 121 | /*@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*/ |
| 122 | |
| 123 | EXPORT SYMBOL("crc32_combine_gen64") |
| 124 | EXPORT SYMBOL("crc32_combine_gen") |
| 125 | EXPORT SYMBOL("crc32_combine_op") |
| 126 | |
| 127 | ENDPGMEXP |
| 128 |
+3
-3
| --- compat/zlib/os400/zlib.inc | ||
| +++ compat/zlib/os400/zlib.inc | ||
| @@ -1,9 +1,9 @@ | ||
| 1 | 1 | * ZLIB.INC - Interface to the general purpose compression library |
| 2 | 2 | * |
| 3 | 3 | * ILE RPG400 version by Patrick Monnerat, DATASPHERE. |
| 4 | - * Version 1.2.12 | |
| 4 | + * Version 1.2.13 | |
| 5 | 5 | * |
| 6 | 6 | * |
| 7 | 7 | * WARNING: |
| 8 | 8 | * Procedures inflateInit(), inflateInit2(), deflateInit(), |
| 9 | 9 | * deflateInit2() and inflateBackInit() need to be called with |
| @@ -20,16 +20,16 @@ | ||
| 20 | 20 | * Constants |
| 21 | 21 | ************************************************************************** |
| 22 | 22 | * |
| 23 | 23 | * Versioning information. |
| 24 | 24 | * |
| 25 | - D ZLIB_VERSION C '1.2.12' | |
| 25 | + D ZLIB_VERSION C '1.2.13' | |
| 26 | 26 | D ZLIB_VERNUM C X'12a0' |
| 27 | 27 | D ZLIB_VER_MAJOR C 1 |
| 28 | 28 | D ZLIB_VER_MINOR C 2 |
| 29 | 29 | D ZLIB_VER_REVISION... |
| 30 | - D C 12 | |
| 30 | + D C 13 | |
| 31 | 31 | D ZLIB_VER_SUBREVISION... |
| 32 | 32 | D C 0 |
| 33 | 33 | * |
| 34 | 34 | * Other equates. |
| 35 | 35 | * |
| 36 | 36 |
| --- compat/zlib/os400/zlib.inc | |
| +++ compat/zlib/os400/zlib.inc | |
| @@ -1,9 +1,9 @@ | |
| 1 | * ZLIB.INC - Interface to the general purpose compression library |
| 2 | * |
| 3 | * ILE RPG400 version by Patrick Monnerat, DATASPHERE. |
| 4 | * Version 1.2.12 |
| 5 | * |
| 6 | * |
| 7 | * WARNING: |
| 8 | * Procedures inflateInit(), inflateInit2(), deflateInit(), |
| 9 | * deflateInit2() and inflateBackInit() need to be called with |
| @@ -20,16 +20,16 @@ | |
| 20 | * Constants |
| 21 | ************************************************************************** |
| 22 | * |
| 23 | * Versioning information. |
| 24 | * |
| 25 | D ZLIB_VERSION C '1.2.12' |
| 26 | D ZLIB_VERNUM C X'12a0' |
| 27 | D ZLIB_VER_MAJOR C 1 |
| 28 | D ZLIB_VER_MINOR C 2 |
| 29 | D ZLIB_VER_REVISION... |
| 30 | D C 12 |
| 31 | D ZLIB_VER_SUBREVISION... |
| 32 | D C 0 |
| 33 | * |
| 34 | * Other equates. |
| 35 | * |
| 36 |
| --- compat/zlib/os400/zlib.inc | |
| +++ compat/zlib/os400/zlib.inc | |
| @@ -1,9 +1,9 @@ | |
| 1 | * ZLIB.INC - Interface to the general purpose compression library |
| 2 | * |
| 3 | * ILE RPG400 version by Patrick Monnerat, DATASPHERE. |
| 4 | * Version 1.2.13 |
| 5 | * |
| 6 | * |
| 7 | * WARNING: |
| 8 | * Procedures inflateInit(), inflateInit2(), deflateInit(), |
| 9 | * deflateInit2() and inflateBackInit() need to be called with |
| @@ -20,16 +20,16 @@ | |
| 20 | * Constants |
| 21 | ************************************************************************** |
| 22 | * |
| 23 | * Versioning information. |
| 24 | * |
| 25 | D ZLIB_VERSION C '1.2.13' |
| 26 | D ZLIB_VERNUM C X'12a0' |
| 27 | D ZLIB_VER_MAJOR C 1 |
| 28 | D ZLIB_VER_MINOR C 2 |
| 29 | D ZLIB_VER_REVISION... |
| 30 | D C 13 |
| 31 | D ZLIB_VER_SUBREVISION... |
| 32 | D C 0 |
| 33 | * |
| 34 | * Other equates. |
| 35 | * |
| 36 |
+5
-5
| --- compat/zlib/qnx/package.qpg | ||
| +++ compat/zlib/qnx/package.qpg | ||
| @@ -23,14 +23,14 @@ | ||
| 23 | 23 | |
| 24 | 24 | <QPG:Values> |
| 25 | 25 | <QPG:Files> |
| 26 | 26 | <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/> |
| 27 | 27 | <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/> |
| 28 | - <QPG:Add file="../libz.so.1.2.12" install="/opt/lib/" user="root:bin" permission="644"/> | |
| 29 | - <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.12"/> | |
| 30 | - <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.12"/> | |
| 31 | - <QPG:Add file="../libz.so.1.2.12" install="/opt/lib/" component="slib"/> | |
| 28 | + <QPG:Add file="../libz.so.1.2.13" install="/opt/lib/" user="root:bin" permission="644"/> | |
| 29 | + <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.13"/> | |
| 30 | + <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.13"/> | |
| 31 | + <QPG:Add file="../libz.so.1.2.13" install="/opt/lib/" component="slib"/> | |
| 32 | 32 | </QPG:Files> |
| 33 | 33 | |
| 34 | 34 | <QPG:PackageFilter> |
| 35 | 35 | <QPM:PackageManifest> |
| 36 | 36 | <QPM:PackageDescription> |
| @@ -61,11 +61,11 @@ | ||
| 61 | 61 | <QPM:ProductDescriptionURL>http://www.gzip.org/zlib</QPM:ProductDescriptionURL> |
| 62 | 62 | <QPM:ProductDescriptionEmbedURL></QPM:ProductDescriptionEmbedURL> |
| 63 | 63 | </QPM:ProductDescription> |
| 64 | 64 | |
| 65 | 65 | <QPM:ReleaseDescription> |
| 66 | - <QPM:ReleaseVersion>1.2.12</QPM:ReleaseVersion> | |
| 66 | + <QPM:ReleaseVersion>1.2.13</QPM:ReleaseVersion> | |
| 67 | 67 | <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency> |
| 68 | 68 | <QPM:ReleaseStability>Stable</QPM:ReleaseStability> |
| 69 | 69 | <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor> |
| 70 | 70 | <QPM:ReleaseNoteMajor></QPM:ReleaseNoteMajor> |
| 71 | 71 | <QPM:ExcludeCountries> |
| 72 | 72 |
| --- compat/zlib/qnx/package.qpg | |
| +++ compat/zlib/qnx/package.qpg | |
| @@ -23,14 +23,14 @@ | |
| 23 | |
| 24 | <QPG:Values> |
| 25 | <QPG:Files> |
| 26 | <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/> |
| 27 | <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/> |
| 28 | <QPG:Add file="../libz.so.1.2.12" install="/opt/lib/" user="root:bin" permission="644"/> |
| 29 | <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.12"/> |
| 30 | <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.12"/> |
| 31 | <QPG:Add file="../libz.so.1.2.12" install="/opt/lib/" component="slib"/> |
| 32 | </QPG:Files> |
| 33 | |
| 34 | <QPG:PackageFilter> |
| 35 | <QPM:PackageManifest> |
| 36 | <QPM:PackageDescription> |
| @@ -61,11 +61,11 @@ | |
| 61 | <QPM:ProductDescriptionURL>http://www.gzip.org/zlib</QPM:ProductDescriptionURL> |
| 62 | <QPM:ProductDescriptionEmbedURL></QPM:ProductDescriptionEmbedURL> |
| 63 | </QPM:ProductDescription> |
| 64 | |
| 65 | <QPM:ReleaseDescription> |
| 66 | <QPM:ReleaseVersion>1.2.12</QPM:ReleaseVersion> |
| 67 | <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency> |
| 68 | <QPM:ReleaseStability>Stable</QPM:ReleaseStability> |
| 69 | <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor> |
| 70 | <QPM:ReleaseNoteMajor></QPM:ReleaseNoteMajor> |
| 71 | <QPM:ExcludeCountries> |
| 72 |
| --- compat/zlib/qnx/package.qpg | |
| +++ compat/zlib/qnx/package.qpg | |
| @@ -23,14 +23,14 @@ | |
| 23 | |
| 24 | <QPG:Values> |
| 25 | <QPG:Files> |
| 26 | <QPG:Add file="../zconf.h" install="/opt/include/" user="root:sys" permission="644"/> |
| 27 | <QPG:Add file="../zlib.h" install="/opt/include/" user="root:sys" permission="644"/> |
| 28 | <QPG:Add file="../libz.so.1.2.13" install="/opt/lib/" user="root:bin" permission="644"/> |
| 29 | <QPG:Add file="libz.so" install="/opt/lib/" component="dev" filetype="symlink" linkto="libz.so.1.2.13"/> |
| 30 | <QPG:Add file="libz.so.1" install="/opt/lib/" filetype="symlink" linkto="libz.so.1.2.13"/> |
| 31 | <QPG:Add file="../libz.so.1.2.13" install="/opt/lib/" component="slib"/> |
| 32 | </QPG:Files> |
| 33 | |
| 34 | <QPG:PackageFilter> |
| 35 | <QPM:PackageManifest> |
| 36 | <QPM:PackageDescription> |
| @@ -61,11 +61,11 @@ | |
| 61 | <QPM:ProductDescriptionURL>http://www.gzip.org/zlib</QPM:ProductDescriptionURL> |
| 62 | <QPM:ProductDescriptionEmbedURL></QPM:ProductDescriptionEmbedURL> |
| 63 | </QPM:ProductDescription> |
| 64 | |
| 65 | <QPM:ReleaseDescription> |
| 66 | <QPM:ReleaseVersion>1.2.13</QPM:ReleaseVersion> |
| 67 | <QPM:ReleaseUrgency>Medium</QPM:ReleaseUrgency> |
| 68 | <QPM:ReleaseStability>Stable</QPM:ReleaseStability> |
| 69 | <QPM:ReleaseNoteMinor></QPM:ReleaseNoteMinor> |
| 70 | <QPM:ReleaseNoteMajor></QPM:ReleaseNoteMajor> |
| 71 | <QPM:ExcludeCountries> |
| 72 |
+2
-1
| --- compat/zlib/test/example.c | ||
| +++ compat/zlib/test/example.c | ||
| @@ -553,11 +553,12 @@ | ||
| 553 | 553 | if (zlibVersion()[0] != myVersion[0]) { |
| 554 | 554 | fprintf(stderr, "incompatible zlib version\n"); |
| 555 | 555 | exit(1); |
| 556 | 556 | |
| 557 | 557 | } else if (strcmp(zlibVersion(), ZLIB_VERSION) != 0) { |
| 558 | - fprintf(stderr, "warning: different zlib version\n"); | |
| 558 | + fprintf(stderr, "warning: different zlib version linked: %s\n", | |
| 559 | + zlibVersion()); | |
| 559 | 560 | } |
| 560 | 561 | |
| 561 | 562 | printf("zlib version %s = 0x%04x, compile flags = 0x%lx\n", |
| 562 | 563 | ZLIB_VERSION, ZLIB_VERNUM, zlibCompileFlags()); |
| 563 | 564 | |
| 564 | 565 |
| --- compat/zlib/test/example.c | |
| +++ compat/zlib/test/example.c | |
| @@ -553,11 +553,12 @@ | |
| 553 | if (zlibVersion()[0] != myVersion[0]) { |
| 554 | fprintf(stderr, "incompatible zlib version\n"); |
| 555 | exit(1); |
| 556 | |
| 557 | } else if (strcmp(zlibVersion(), ZLIB_VERSION) != 0) { |
| 558 | fprintf(stderr, "warning: different zlib version\n"); |
| 559 | } |
| 560 | |
| 561 | printf("zlib version %s = 0x%04x, compile flags = 0x%lx\n", |
| 562 | ZLIB_VERSION, ZLIB_VERNUM, zlibCompileFlags()); |
| 563 | |
| 564 |
| --- compat/zlib/test/example.c | |
| +++ compat/zlib/test/example.c | |
| @@ -553,11 +553,12 @@ | |
| 553 | if (zlibVersion()[0] != myVersion[0]) { |
| 554 | fprintf(stderr, "incompatible zlib version\n"); |
| 555 | exit(1); |
| 556 | |
| 557 | } else if (strcmp(zlibVersion(), ZLIB_VERSION) != 0) { |
| 558 | fprintf(stderr, "warning: different zlib version linked: %s\n", |
| 559 | zlibVersion()); |
| 560 | } |
| 561 | |
| 562 | printf("zlib version %s = 0x%04x, compile flags = 0x%lx\n", |
| 563 | ZLIB_VERSION, ZLIB_VERNUM, zlibCompileFlags()); |
| 564 | |
| 565 |
+1
-1
| --- compat/zlib/test/minigzip.c | ||
| +++ compat/zlib/test/minigzip.c | ||
| @@ -498,11 +498,11 @@ | ||
| 498 | 498 | { |
| 499 | 499 | local char buf[MAX_NAME_LEN]; |
| 500 | 500 | char *infile, *outfile; |
| 501 | 501 | FILE *out; |
| 502 | 502 | gzFile in; |
| 503 | - unsigned len = strlen(file); | |
| 503 | + z_size_t len = strlen(file); | |
| 504 | 504 | |
| 505 | 505 | if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) { |
| 506 | 506 | fprintf(stderr, "%s: filename too long\n", prog); |
| 507 | 507 | exit(1); |
| 508 | 508 | } |
| 509 | 509 |
| --- compat/zlib/test/minigzip.c | |
| +++ compat/zlib/test/minigzip.c | |
| @@ -498,11 +498,11 @@ | |
| 498 | { |
| 499 | local char buf[MAX_NAME_LEN]; |
| 500 | char *infile, *outfile; |
| 501 | FILE *out; |
| 502 | gzFile in; |
| 503 | unsigned len = strlen(file); |
| 504 | |
| 505 | if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) { |
| 506 | fprintf(stderr, "%s: filename too long\n", prog); |
| 507 | exit(1); |
| 508 | } |
| 509 |
| --- compat/zlib/test/minigzip.c | |
| +++ compat/zlib/test/minigzip.c | |
| @@ -498,11 +498,11 @@ | |
| 498 | { |
| 499 | local char buf[MAX_NAME_LEN]; |
| 500 | char *infile, *outfile; |
| 501 | FILE *out; |
| 502 | gzFile in; |
| 503 | z_size_t len = strlen(file); |
| 504 | |
| 505 | if (len + strlen(GZ_SUFFIX) >= sizeof(buf)) { |
| 506 | fprintf(stderr, "%s: filename too long\n", prog); |
| 507 | exit(1); |
| 508 | } |
| 509 |
+2
-2
| --- compat/zlib/treebuild.xml | ||
| +++ compat/zlib/treebuild.xml | ||
| @@ -1,8 +1,8 @@ | ||
| 1 | 1 | <?xml version="1.0" ?> |
| 2 | -<package name="zlib" version="1.2.12"> | |
| 3 | - <library name="zlib" dlversion="1.2.12" dlname="z"> | |
| 2 | +<package name="zlib" version="1.2.13"> | |
| 3 | + <library name="zlib" dlversion="1.2.13" dlname="z"> | |
| 4 | 4 | <property name="description"> zip compression library </property> |
| 5 | 5 | <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> |
| 6 | 6 | |
| 7 | 7 | <!-- fixme: not implemented yet --> |
| 8 | 8 | <property name="compiler/c/inline" value="yes" /> |
| 9 | 9 |
| --- compat/zlib/treebuild.xml | |
| +++ compat/zlib/treebuild.xml | |
| @@ -1,8 +1,8 @@ | |
| 1 | <?xml version="1.0" ?> |
| 2 | <package name="zlib" version="1.2.12"> |
| 3 | <library name="zlib" dlversion="1.2.12" dlname="z"> |
| 4 | <property name="description"> zip compression library </property> |
| 5 | <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> |
| 6 | |
| 7 | <!-- fixme: not implemented yet --> |
| 8 | <property name="compiler/c/inline" value="yes" /> |
| 9 |
| --- compat/zlib/treebuild.xml | |
| +++ compat/zlib/treebuild.xml | |
| @@ -1,8 +1,8 @@ | |
| 1 | <?xml version="1.0" ?> |
| 2 | <package name="zlib" version="1.2.13"> |
| 3 | <library name="zlib" dlversion="1.2.13" dlname="z"> |
| 4 | <property name="description"> zip compression library </property> |
| 5 | <property name="include-target-dir" value="$(@PACKAGE/install-includedir)" /> |
| 6 | |
| 7 | <!-- fixme: not implemented yet --> |
| 8 | <property name="compiler/c/inline" value="yes" /> |
| 9 |
+61
-62
| --- compat/zlib/trees.c | ||
| +++ compat/zlib/trees.c | ||
| @@ -191,11 +191,11 @@ | ||
| 191 | 191 | Tracevv((stderr," l %2d v %4x ", length, value)); |
| 192 | 192 | Assert(length > 0 && length <= 15, "invalid length"); |
| 193 | 193 | s->bits_sent += (ulg)length; |
| 194 | 194 | |
| 195 | 195 | /* If not enough room in bi_buf, use (valid) bits from bi_buf and |
| 196 | - * (16 - bi_valid) bits from value, leaving (width - (16-bi_valid)) | |
| 196 | + * (16 - bi_valid) bits from value, leaving (width - (16 - bi_valid)) | |
| 197 | 197 | * unused bits in value. |
| 198 | 198 | */ |
| 199 | 199 | if (s->bi_valid > (int)Buf_size - length) { |
| 200 | 200 | s->bi_buf |= (ush)value << s->bi_valid; |
| 201 | 201 | put_short(s, s->bi_buf); |
| @@ -254,38 +254,38 @@ | ||
| 254 | 254 | |
| 255 | 255 | /* Initialize the mapping length (0..255) -> length code (0..28) */ |
| 256 | 256 | length = 0; |
| 257 | 257 | for (code = 0; code < LENGTH_CODES-1; code++) { |
| 258 | 258 | base_length[code] = length; |
| 259 | - for (n = 0; n < (1<<extra_lbits[code]); n++) { | |
| 259 | + for (n = 0; n < (1 << extra_lbits[code]); n++) { | |
| 260 | 260 | _length_code[length++] = (uch)code; |
| 261 | 261 | } |
| 262 | 262 | } |
| 263 | 263 | Assert (length == 256, "tr_static_init: length != 256"); |
| 264 | 264 | /* Note that the length 255 (match length 258) can be represented |
| 265 | 265 | * in two different ways: code 284 + 5 bits or code 285, so we |
| 266 | 266 | * overwrite length_code[255] to use the best encoding: |
| 267 | 267 | */ |
| 268 | - _length_code[length-1] = (uch)code; | |
| 268 | + _length_code[length - 1] = (uch)code; | |
| 269 | 269 | |
| 270 | 270 | /* Initialize the mapping dist (0..32K) -> dist code (0..29) */ |
| 271 | 271 | dist = 0; |
| 272 | 272 | for (code = 0 ; code < 16; code++) { |
| 273 | 273 | base_dist[code] = dist; |
| 274 | - for (n = 0; n < (1<<extra_dbits[code]); n++) { | |
| 274 | + for (n = 0; n < (1 << extra_dbits[code]); n++) { | |
| 275 | 275 | _dist_code[dist++] = (uch)code; |
| 276 | 276 | } |
| 277 | 277 | } |
| 278 | 278 | Assert (dist == 256, "tr_static_init: dist != 256"); |
| 279 | 279 | dist >>= 7; /* from now on, all distances are divided by 128 */ |
| 280 | 280 | for ( ; code < D_CODES; code++) { |
| 281 | 281 | base_dist[code] = dist << 7; |
| 282 | - for (n = 0; n < (1<<(extra_dbits[code]-7)); n++) { | |
| 282 | + for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) { | |
| 283 | 283 | _dist_code[256 + dist++] = (uch)code; |
| 284 | 284 | } |
| 285 | 285 | } |
| 286 | - Assert (dist == 256, "tr_static_init: 256+dist != 512"); | |
| 286 | + Assert (dist == 256, "tr_static_init: 256 + dist != 512"); | |
| 287 | 287 | |
| 288 | 288 | /* Construct the codes of the static literal tree */ |
| 289 | 289 | for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0; |
| 290 | 290 | n = 0; |
| 291 | 291 | while (n <= 143) static_ltree[n++].Len = 8, bl_count[8]++; |
| @@ -310,20 +310,20 @@ | ||
| 310 | 310 | # endif |
| 311 | 311 | #endif /* defined(GEN_TREES_H) || !defined(STDC) */ |
| 312 | 312 | } |
| 313 | 313 | |
| 314 | 314 | /* =========================================================================== |
| 315 | - * Genererate the file trees.h describing the static trees. | |
| 315 | + * Generate the file trees.h describing the static trees. | |
| 316 | 316 | */ |
| 317 | 317 | #ifdef GEN_TREES_H |
| 318 | 318 | # ifndef ZLIB_DEBUG |
| 319 | 319 | # include <stdio.h> |
| 320 | 320 | # endif |
| 321 | 321 | |
| 322 | 322 | # define SEPARATOR(i, last, width) \ |
| 323 | 323 | ((i) == (last)? "\n};\n\n" : \ |
| 324 | - ((i) % (width) == (width)-1 ? ",\n" : ", ")) | |
| 324 | + ((i) % (width) == (width) - 1 ? ",\n" : ", ")) | |
| 325 | 325 | |
| 326 | 326 | void gen_trees_header() |
| 327 | 327 | { |
| 328 | 328 | FILE *header = fopen("trees.h", "w"); |
| 329 | 329 | int i; |
| @@ -456,11 +456,11 @@ | ||
| 456 | 456 | int v = s->heap[k]; |
| 457 | 457 | int j = k << 1; /* left son of k */ |
| 458 | 458 | while (j <= s->heap_len) { |
| 459 | 459 | /* Set j to the smallest of the two sons: */ |
| 460 | 460 | if (j < s->heap_len && |
| 461 | - smaller(tree, s->heap[j+1], s->heap[j], s->depth)) { | |
| 461 | + smaller(tree, s->heap[j + 1], s->heap[j], s->depth)) { | |
| 462 | 462 | j++; |
| 463 | 463 | } |
| 464 | 464 | /* Exit if v is smaller than both sons */ |
| 465 | 465 | if (smaller(tree, v, s->heap[j], s->depth)) break; |
| 466 | 466 | |
| @@ -505,11 +505,11 @@ | ||
| 505 | 505 | /* In a first pass, compute the optimal bit lengths (which may |
| 506 | 506 | * overflow in the case of the bit length tree). |
| 507 | 507 | */ |
| 508 | 508 | tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */ |
| 509 | 509 | |
| 510 | - for (h = s->heap_max+1; h < HEAP_SIZE; h++) { | |
| 510 | + for (h = s->heap_max + 1; h < HEAP_SIZE; h++) { | |
| 511 | 511 | n = s->heap[h]; |
| 512 | 512 | bits = tree[tree[n].Dad].Len + 1; |
| 513 | 513 | if (bits > max_length) bits = max_length, overflow++; |
| 514 | 514 | tree[n].Len = (ush)bits; |
| 515 | 515 | /* We overwrite tree[n].Dad which is no longer needed */ |
| @@ -516,11 +516,11 @@ | ||
| 516 | 516 | |
| 517 | 517 | if (n > max_code) continue; /* not a leaf node */ |
| 518 | 518 | |
| 519 | 519 | s->bl_count[bits]++; |
| 520 | 520 | xbits = 0; |
| 521 | - if (n >= base) xbits = extra[n-base]; | |
| 521 | + if (n >= base) xbits = extra[n - base]; | |
| 522 | 522 | f = tree[n].Freq; |
| 523 | 523 | s->opt_len += (ulg)f * (unsigned)(bits + xbits); |
| 524 | 524 | if (stree) s->static_len += (ulg)f * (unsigned)(stree[n].Len + xbits); |
| 525 | 525 | } |
| 526 | 526 | if (overflow == 0) return; |
| @@ -528,14 +528,14 @@ | ||
| 528 | 528 | Tracev((stderr,"\nbit length overflow\n")); |
| 529 | 529 | /* This happens for example on obj2 and pic of the Calgary corpus */ |
| 530 | 530 | |
| 531 | 531 | /* Find the first bit length which could increase: */ |
| 532 | 532 | do { |
| 533 | - bits = max_length-1; | |
| 533 | + bits = max_length - 1; | |
| 534 | 534 | while (s->bl_count[bits] == 0) bits--; |
| 535 | - s->bl_count[bits]--; /* move one leaf down the tree */ | |
| 536 | - s->bl_count[bits+1] += 2; /* move one overflow item as its brother */ | |
| 535 | + s->bl_count[bits]--; /* move one leaf down the tree */ | |
| 536 | + s->bl_count[bits + 1] += 2; /* move one overflow item as its brother */ | |
| 537 | 537 | s->bl_count[max_length]--; |
| 538 | 538 | /* The brother of the overflow item also moves one step up, |
| 539 | 539 | * but this does not affect bl_count[max_length] |
| 540 | 540 | */ |
| 541 | 541 | overflow -= 2; |
| @@ -567,11 +567,11 @@ | ||
| 567 | 567 | * IN assertion: the array bl_count contains the bit length statistics for |
| 568 | 568 | * the given tree and the field len is set for all tree elements. |
| 569 | 569 | * OUT assertion: the field code is set for all tree elements of non |
| 570 | 570 | * zero code length. |
| 571 | 571 | */ |
| 572 | -local void gen_codes (tree, max_code, bl_count) | |
| 572 | +local void gen_codes(tree, max_code, bl_count) | |
| 573 | 573 | ct_data *tree; /* the tree to decorate */ |
| 574 | 574 | int max_code; /* largest code with non zero frequency */ |
| 575 | 575 | ushf *bl_count; /* number of codes at each bit length */ |
| 576 | 576 | { |
| 577 | 577 | ush next_code[MAX_BITS+1]; /* next code value for each bit length */ |
| @@ -581,17 +581,17 @@ | ||
| 581 | 581 | |
| 582 | 582 | /* The distribution counts are first used to generate the code values |
| 583 | 583 | * without bit reversal. |
| 584 | 584 | */ |
| 585 | 585 | for (bits = 1; bits <= MAX_BITS; bits++) { |
| 586 | - code = (code + bl_count[bits-1]) << 1; | |
| 586 | + code = (code + bl_count[bits - 1]) << 1; | |
| 587 | 587 | next_code[bits] = (ush)code; |
| 588 | 588 | } |
| 589 | 589 | /* Check that the bit counts in bl_count are consistent. The last code |
| 590 | 590 | * must be all ones. |
| 591 | 591 | */ |
| 592 | - Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1, | |
| 592 | + Assert (code + bl_count[MAX_BITS] - 1 == (1 << MAX_BITS) - 1, | |
| 593 | 593 | "inconsistent bit counts"); |
| 594 | 594 | Tracev((stderr,"\ngen_codes: max_code %d ", max_code)); |
| 595 | 595 | |
| 596 | 596 | for (n = 0; n <= max_code; n++) { |
| 597 | 597 | int len = tree[n].Len; |
| @@ -598,11 +598,11 @@ | ||
| 598 | 598 | if (len == 0) continue; |
| 599 | 599 | /* Now reverse the bits */ |
| 600 | 600 | tree[n].Code = (ush)bi_reverse(next_code[len]++, len); |
| 601 | 601 | |
| 602 | 602 | Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ", |
| 603 | - n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1)); | |
| 603 | + n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len] - 1)); | |
| 604 | 604 | } |
| 605 | 605 | } |
| 606 | 606 | |
| 607 | 607 | /* =========================================================================== |
| 608 | 608 | * Construct one Huffman tree and assigns the code bit strings and lengths. |
| @@ -622,11 +622,11 @@ | ||
| 622 | 622 | int n, m; /* iterate over heap elements */ |
| 623 | 623 | int max_code = -1; /* largest code with non zero frequency */ |
| 624 | 624 | int node; /* new node being created */ |
| 625 | 625 | |
| 626 | 626 | /* Construct the initial heap, with least frequent element in |
| 627 | - * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1]. | |
| 627 | + * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n + 1]. | |
| 628 | 628 | * heap[0] is not used. |
| 629 | 629 | */ |
| 630 | 630 | s->heap_len = 0, s->heap_max = HEAP_SIZE; |
| 631 | 631 | |
| 632 | 632 | for (n = 0; n < elems; n++) { |
| @@ -650,11 +650,11 @@ | ||
| 650 | 650 | s->opt_len--; if (stree) s->static_len -= stree[node].Len; |
| 651 | 651 | /* node is 0 or 1 so it does not have extra bits */ |
| 652 | 652 | } |
| 653 | 653 | desc->max_code = max_code; |
| 654 | 654 | |
| 655 | - /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree, | |
| 655 | + /* The elements heap[heap_len/2 + 1 .. heap_len] are leaves of the tree, | |
| 656 | 656 | * establish sub-heaps of increasing lengths: |
| 657 | 657 | */ |
| 658 | 658 | for (n = s->heap_len/2; n >= 1; n--) pqdownheap(s, tree, n); |
| 659 | 659 | |
| 660 | 660 | /* Construct the Huffman tree by repeatedly combining the least two |
| @@ -698,11 +698,11 @@ | ||
| 698 | 698 | |
| 699 | 699 | /* =========================================================================== |
| 700 | 700 | * Scan a literal or distance tree to determine the frequencies of the codes |
| 701 | 701 | * in the bit length tree. |
| 702 | 702 | */ |
| 703 | -local void scan_tree (s, tree, max_code) | |
| 703 | +local void scan_tree(s, tree, max_code) | |
| 704 | 704 | deflate_state *s; |
| 705 | 705 | ct_data *tree; /* the tree to be scanned */ |
| 706 | 706 | int max_code; /* and its largest code of non zero frequency */ |
| 707 | 707 | { |
| 708 | 708 | int n; /* iterates over all tree elements */ |
| @@ -712,14 +712,14 @@ | ||
| 712 | 712 | int count = 0; /* repeat count of the current code */ |
| 713 | 713 | int max_count = 7; /* max repeat count */ |
| 714 | 714 | int min_count = 4; /* min repeat count */ |
| 715 | 715 | |
| 716 | 716 | if (nextlen == 0) max_count = 138, min_count = 3; |
| 717 | - tree[max_code+1].Len = (ush)0xffff; /* guard */ | |
| 717 | + tree[max_code + 1].Len = (ush)0xffff; /* guard */ | |
| 718 | 718 | |
| 719 | 719 | for (n = 0; n <= max_code; n++) { |
| 720 | - curlen = nextlen; nextlen = tree[n+1].Len; | |
| 720 | + curlen = nextlen; nextlen = tree[n + 1].Len; | |
| 721 | 721 | if (++count < max_count && curlen == nextlen) { |
| 722 | 722 | continue; |
| 723 | 723 | } else if (count < min_count) { |
| 724 | 724 | s->bl_tree[curlen].Freq += count; |
| 725 | 725 | } else if (curlen != 0) { |
| @@ -743,11 +743,11 @@ | ||
| 743 | 743 | |
| 744 | 744 | /* =========================================================================== |
| 745 | 745 | * Send a literal or distance tree in compressed form, using the codes in |
| 746 | 746 | * bl_tree. |
| 747 | 747 | */ |
| 748 | -local void send_tree (s, tree, max_code) | |
| 748 | +local void send_tree(s, tree, max_code) | |
| 749 | 749 | deflate_state *s; |
| 750 | 750 | ct_data *tree; /* the tree to be scanned */ |
| 751 | 751 | int max_code; /* and its largest code of non zero frequency */ |
| 752 | 752 | { |
| 753 | 753 | int n; /* iterates over all tree elements */ |
| @@ -756,15 +756,15 @@ | ||
| 756 | 756 | int nextlen = tree[0].Len; /* length of next code */ |
| 757 | 757 | int count = 0; /* repeat count of the current code */ |
| 758 | 758 | int max_count = 7; /* max repeat count */ |
| 759 | 759 | int min_count = 4; /* min repeat count */ |
| 760 | 760 | |
| 761 | - /* tree[max_code+1].Len = -1; */ /* guard already set */ | |
| 761 | + /* tree[max_code + 1].Len = -1; */ /* guard already set */ | |
| 762 | 762 | if (nextlen == 0) max_count = 138, min_count = 3; |
| 763 | 763 | |
| 764 | 764 | for (n = 0; n <= max_code; n++) { |
| 765 | - curlen = nextlen; nextlen = tree[n+1].Len; | |
| 765 | + curlen = nextlen; nextlen = tree[n + 1].Len; | |
| 766 | 766 | if (++count < max_count && curlen == nextlen) { |
| 767 | 767 | continue; |
| 768 | 768 | } else if (count < min_count) { |
| 769 | 769 | do { send_code(s, curlen, s->bl_tree); } while (--count != 0); |
| 770 | 770 | |
| @@ -771,17 +771,17 @@ | ||
| 771 | 771 | } else if (curlen != 0) { |
| 772 | 772 | if (curlen != prevlen) { |
| 773 | 773 | send_code(s, curlen, s->bl_tree); count--; |
| 774 | 774 | } |
| 775 | 775 | Assert(count >= 3 && count <= 6, " 3_6?"); |
| 776 | - send_code(s, REP_3_6, s->bl_tree); send_bits(s, count-3, 2); | |
| 776 | + send_code(s, REP_3_6, s->bl_tree); send_bits(s, count - 3, 2); | |
| 777 | 777 | |
| 778 | 778 | } else if (count <= 10) { |
| 779 | - send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count-3, 3); | |
| 779 | + send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count - 3, 3); | |
| 780 | 780 | |
| 781 | 781 | } else { |
| 782 | - send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count-11, 7); | |
| 782 | + send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count - 11, 7); | |
| 783 | 783 | } |
| 784 | 784 | count = 0; prevlen = curlen; |
| 785 | 785 | if (nextlen == 0) { |
| 786 | 786 | max_count = 138, min_count = 3; |
| 787 | 787 | } else if (curlen == nextlen) { |
| @@ -805,12 +805,12 @@ | ||
| 805 | 805 | scan_tree(s, (ct_data *)s->dyn_ltree, s->l_desc.max_code); |
| 806 | 806 | scan_tree(s, (ct_data *)s->dyn_dtree, s->d_desc.max_code); |
| 807 | 807 | |
| 808 | 808 | /* Build the bit length tree: */ |
| 809 | 809 | build_tree(s, (tree_desc *)(&(s->bl_desc))); |
| 810 | - /* opt_len now includes the length of the tree representations, except | |
| 811 | - * the lengths of the bit lengths codes and the 5+5+4 bits for the counts. | |
| 810 | + /* opt_len now includes the length of the tree representations, except the | |
| 811 | + * lengths of the bit lengths codes and the 5 + 5 + 4 bits for the counts. | |
| 812 | 812 | */ |
| 813 | 813 | |
| 814 | 814 | /* Determine the number of bit length codes to send. The pkzip format |
| 815 | 815 | * requires that at least 4 bit length codes be sent. (appnote.txt says |
| 816 | 816 | * 3 but the actual value used is 4.) |
| @@ -817,11 +817,11 @@ | ||
| 817 | 817 | */ |
| 818 | 818 | for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) { |
| 819 | 819 | if (s->bl_tree[bl_order[max_blindex]].Len != 0) break; |
| 820 | 820 | } |
| 821 | 821 | /* Update opt_len to include the bit length tree and counts */ |
| 822 | - s->opt_len += 3*((ulg)max_blindex+1) + 5+5+4; | |
| 822 | + s->opt_len += 3*((ulg)max_blindex + 1) + 5 + 5 + 4; | |
| 823 | 823 | Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld", |
| 824 | 824 | s->opt_len, s->static_len)); |
| 825 | 825 | |
| 826 | 826 | return max_blindex; |
| 827 | 827 | } |
| @@ -839,23 +839,23 @@ | ||
| 839 | 839 | |
| 840 | 840 | Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes"); |
| 841 | 841 | Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES, |
| 842 | 842 | "too many codes"); |
| 843 | 843 | Tracev((stderr, "\nbl counts: ")); |
| 844 | - send_bits(s, lcodes-257, 5); /* not +255 as stated in appnote.txt */ | |
| 845 | - send_bits(s, dcodes-1, 5); | |
| 846 | - send_bits(s, blcodes-4, 4); /* not -3 as stated in appnote.txt */ | |
| 844 | + send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */ | |
| 845 | + send_bits(s, dcodes - 1, 5); | |
| 846 | + send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */ | |
| 847 | 847 | for (rank = 0; rank < blcodes; rank++) { |
| 848 | 848 | Tracev((stderr, "\nbl code %2d ", bl_order[rank])); |
| 849 | 849 | send_bits(s, s->bl_tree[bl_order[rank]].Len, 3); |
| 850 | 850 | } |
| 851 | 851 | Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent)); |
| 852 | 852 | |
| 853 | - send_tree(s, (ct_data *)s->dyn_ltree, lcodes-1); /* literal tree */ | |
| 853 | + send_tree(s, (ct_data *)s->dyn_ltree, lcodes - 1); /* literal tree */ | |
| 854 | 854 | Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent)); |
| 855 | 855 | |
| 856 | - send_tree(s, (ct_data *)s->dyn_dtree, dcodes-1); /* distance tree */ | |
| 856 | + send_tree(s, (ct_data *)s->dyn_dtree, dcodes - 1); /* distance tree */ | |
| 857 | 857 | Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent)); |
| 858 | 858 | } |
| 859 | 859 | |
| 860 | 860 | /* =========================================================================== |
| 861 | 861 | * Send a stored block |
| @@ -864,11 +864,11 @@ | ||
| 864 | 864 | deflate_state *s; |
| 865 | 865 | charf *buf; /* input block */ |
| 866 | 866 | ulg stored_len; /* length of input block */ |
| 867 | 867 | int last; /* one if this is the last block for a file */ |
| 868 | 868 | { |
| 869 | - send_bits(s, (STORED_BLOCK<<1)+last, 3); /* send block type */ | |
| 869 | + send_bits(s, (STORED_BLOCK<<1) + last, 3); /* send block type */ | |
| 870 | 870 | bi_windup(s); /* align on byte boundary */ |
| 871 | 871 | put_short(s, (ush)stored_len); |
| 872 | 872 | put_short(s, (ush)~stored_len); |
| 873 | 873 | if (stored_len) |
| 874 | 874 | zmemcpy(s->pending_buf + s->pending, (Bytef *)buf, stored_len); |
| @@ -875,11 +875,11 @@ | ||
| 875 | 875 | s->pending += stored_len; |
| 876 | 876 | #ifdef ZLIB_DEBUG |
| 877 | 877 | s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L; |
| 878 | 878 | s->compressed_len += (stored_len + 4) << 3; |
| 879 | 879 | s->bits_sent += 2*16; |
| 880 | - s->bits_sent += stored_len<<3; | |
| 880 | + s->bits_sent += stored_len << 3; | |
| 881 | 881 | #endif |
| 882 | 882 | } |
| 883 | 883 | |
| 884 | 884 | /* =========================================================================== |
| 885 | 885 | * Flush the bits in the bit buffer to pending output (leaves at most 7 bits) |
| @@ -941,28 +941,31 @@ | ||
| 941 | 941 | * in bl_order of the last bit length code to send. |
| 942 | 942 | */ |
| 943 | 943 | max_blindex = build_bl_tree(s); |
| 944 | 944 | |
| 945 | 945 | /* Determine the best encoding. Compute the block lengths in bytes. */ |
| 946 | - opt_lenb = (s->opt_len+3+7)>>3; | |
| 947 | - static_lenb = (s->static_len+3+7)>>3; | |
| 946 | + opt_lenb = (s->opt_len + 3 + 7) >> 3; | |
| 947 | + static_lenb = (s->static_len + 3 + 7) >> 3; | |
| 948 | 948 | |
| 949 | 949 | Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ", |
| 950 | 950 | opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len, |
| 951 | 951 | s->sym_next / 3)); |
| 952 | 952 | |
| 953 | - if (static_lenb <= opt_lenb) opt_lenb = static_lenb; | |
| 953 | +#ifndef FORCE_STATIC | |
| 954 | + if (static_lenb <= opt_lenb || s->strategy == Z_FIXED) | |
| 955 | +#endif | |
| 956 | + opt_lenb = static_lenb; | |
| 954 | 957 | |
| 955 | 958 | } else { |
| 956 | 959 | Assert(buf != (char*)0, "lost buf"); |
| 957 | 960 | opt_lenb = static_lenb = stored_len + 5; /* force a stored block */ |
| 958 | 961 | } |
| 959 | 962 | |
| 960 | 963 | #ifdef FORCE_STORED |
| 961 | 964 | if (buf != (char*)0) { /* force stored block */ |
| 962 | 965 | #else |
| 963 | - if (stored_len+4 <= opt_lenb && buf != (char*)0) { | |
| 966 | + if (stored_len + 4 <= opt_lenb && buf != (char*)0) { | |
| 964 | 967 | /* 4: two words for the lengths */ |
| 965 | 968 | #endif |
| 966 | 969 | /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE. |
| 967 | 970 | * Otherwise we can't have processed more than WSIZE input bytes since |
| 968 | 971 | * the last block flush, because compression would have been |
| @@ -969,25 +972,21 @@ | ||
| 969 | 972 | * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to |
| 970 | 973 | * transform a block into a stored block. |
| 971 | 974 | */ |
| 972 | 975 | _tr_stored_block(s, buf, stored_len, last); |
| 973 | 976 | |
| 974 | -#ifdef FORCE_STATIC | |
| 975 | - } else if (static_lenb >= 0) { /* force static trees */ | |
| 976 | -#else | |
| 977 | - } else if (s->strategy == Z_FIXED || static_lenb == opt_lenb) { | |
| 978 | -#endif | |
| 979 | - send_bits(s, (STATIC_TREES<<1)+last, 3); | |
| 977 | + } else if (static_lenb == opt_lenb) { | |
| 978 | + send_bits(s, (STATIC_TREES<<1) + last, 3); | |
| 980 | 979 | compress_block(s, (const ct_data *)static_ltree, |
| 981 | 980 | (const ct_data *)static_dtree); |
| 982 | 981 | #ifdef ZLIB_DEBUG |
| 983 | 982 | s->compressed_len += 3 + s->static_len; |
| 984 | 983 | #endif |
| 985 | 984 | } else { |
| 986 | - send_bits(s, (DYN_TREES<<1)+last, 3); | |
| 987 | - send_all_trees(s, s->l_desc.max_code+1, s->d_desc.max_code+1, | |
| 988 | - max_blindex+1); | |
| 985 | + send_bits(s, (DYN_TREES<<1) + last, 3); | |
| 986 | + send_all_trees(s, s->l_desc.max_code + 1, s->d_desc.max_code + 1, | |
| 987 | + max_blindex + 1); | |
| 989 | 988 | compress_block(s, (const ct_data *)s->dyn_ltree, |
| 990 | 989 | (const ct_data *)s->dyn_dtree); |
| 991 | 990 | #ifdef ZLIB_DEBUG |
| 992 | 991 | s->compressed_len += 3 + s->opt_len; |
| 993 | 992 | #endif |
| @@ -1002,26 +1001,26 @@ | ||
| 1002 | 1001 | bi_windup(s); |
| 1003 | 1002 | #ifdef ZLIB_DEBUG |
| 1004 | 1003 | s->compressed_len += 7; /* align on byte boundary */ |
| 1005 | 1004 | #endif |
| 1006 | 1005 | } |
| 1007 | - Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3, | |
| 1008 | - s->compressed_len-7*last)); | |
| 1006 | + Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len >> 3, | |
| 1007 | + s->compressed_len - 7*last)); | |
| 1009 | 1008 | } |
| 1010 | 1009 | |
| 1011 | 1010 | /* =========================================================================== |
| 1012 | 1011 | * Save the match info and tally the frequency counts. Return true if |
| 1013 | 1012 | * the current block must be flushed. |
| 1014 | 1013 | */ |
| 1015 | -int ZLIB_INTERNAL _tr_tally (s, dist, lc) | |
| 1014 | +int ZLIB_INTERNAL _tr_tally(s, dist, lc) | |
| 1016 | 1015 | deflate_state *s; |
| 1017 | 1016 | unsigned dist; /* distance of matched string */ |
| 1018 | - unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */ | |
| 1017 | + unsigned lc; /* match length - MIN_MATCH or unmatched char (dist==0) */ | |
| 1019 | 1018 | { |
| 1020 | - s->sym_buf[s->sym_next++] = dist; | |
| 1021 | - s->sym_buf[s->sym_next++] = dist >> 8; | |
| 1022 | - s->sym_buf[s->sym_next++] = lc; | |
| 1019 | + s->sym_buf[s->sym_next++] = (uch)dist; | |
| 1020 | + s->sym_buf[s->sym_next++] = (uch)(dist >> 8); | |
| 1021 | + s->sym_buf[s->sym_next++] = (uch)lc; | |
| 1023 | 1022 | if (dist == 0) { |
| 1024 | 1023 | /* lc is the unmatched char */ |
| 1025 | 1024 | s->dyn_ltree[lc].Freq++; |
| 1026 | 1025 | } else { |
| 1027 | 1026 | s->matches++; |
| @@ -1029,11 +1028,11 @@ | ||
| 1029 | 1028 | dist--; /* dist = match distance - 1 */ |
| 1030 | 1029 | Assert((ush)dist < (ush)MAX_DIST(s) && |
| 1031 | 1030 | (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) && |
| 1032 | 1031 | (ush)d_code(dist) < (ush)D_CODES, "_tr_tally: bad match"); |
| 1033 | 1032 | |
| 1034 | - s->dyn_ltree[_length_code[lc]+LITERALS+1].Freq++; | |
| 1033 | + s->dyn_ltree[_length_code[lc] + LITERALS + 1].Freq++; | |
| 1035 | 1034 | s->dyn_dtree[d_code(dist)].Freq++; |
| 1036 | 1035 | } |
| 1037 | 1036 | return (s->sym_next == s->sym_end); |
| 1038 | 1037 | } |
| 1039 | 1038 | |
| @@ -1059,11 +1058,11 @@ | ||
| 1059 | 1058 | send_code(s, lc, ltree); /* send a literal byte */ |
| 1060 | 1059 | Tracecv(isgraph(lc), (stderr," '%c' ", lc)); |
| 1061 | 1060 | } else { |
| 1062 | 1061 | /* Here, lc is the match length - MIN_MATCH */ |
| 1063 | 1062 | code = _length_code[lc]; |
| 1064 | - send_code(s, code+LITERALS+1, ltree); /* send the length code */ | |
| 1063 | + send_code(s, code + LITERALS + 1, ltree); /* send length code */ | |
| 1065 | 1064 | extra = extra_lbits[code]; |
| 1066 | 1065 | if (extra != 0) { |
| 1067 | 1066 | lc -= base_length[code]; |
| 1068 | 1067 | send_bits(s, lc, extra); /* send the extra length bits */ |
| 1069 | 1068 | } |
| @@ -1175,8 +1174,8 @@ | ||
| 1175 | 1174 | put_byte(s, (Byte)s->bi_buf); |
| 1176 | 1175 | } |
| 1177 | 1176 | s->bi_buf = 0; |
| 1178 | 1177 | s->bi_valid = 0; |
| 1179 | 1178 | #ifdef ZLIB_DEBUG |
| 1180 | - s->bits_sent = (s->bits_sent+7) & ~7; | |
| 1179 | + s->bits_sent = (s->bits_sent + 7) & ~7; | |
| 1181 | 1180 | #endif |
| 1182 | 1181 | } |
| 1183 | 1182 |
| --- compat/zlib/trees.c | |
| +++ compat/zlib/trees.c | |
| @@ -191,11 +191,11 @@ | |
| 191 | Tracevv((stderr," l %2d v %4x ", length, value)); |
| 192 | Assert(length > 0 && length <= 15, "invalid length"); |
| 193 | s->bits_sent += (ulg)length; |
| 194 | |
| 195 | /* If not enough room in bi_buf, use (valid) bits from bi_buf and |
| 196 | * (16 - bi_valid) bits from value, leaving (width - (16-bi_valid)) |
| 197 | * unused bits in value. |
| 198 | */ |
| 199 | if (s->bi_valid > (int)Buf_size - length) { |
| 200 | s->bi_buf |= (ush)value << s->bi_valid; |
| 201 | put_short(s, s->bi_buf); |
| @@ -254,38 +254,38 @@ | |
| 254 | |
| 255 | /* Initialize the mapping length (0..255) -> length code (0..28) */ |
| 256 | length = 0; |
| 257 | for (code = 0; code < LENGTH_CODES-1; code++) { |
| 258 | base_length[code] = length; |
| 259 | for (n = 0; n < (1<<extra_lbits[code]); n++) { |
| 260 | _length_code[length++] = (uch)code; |
| 261 | } |
| 262 | } |
| 263 | Assert (length == 256, "tr_static_init: length != 256"); |
| 264 | /* Note that the length 255 (match length 258) can be represented |
| 265 | * in two different ways: code 284 + 5 bits or code 285, so we |
| 266 | * overwrite length_code[255] to use the best encoding: |
| 267 | */ |
| 268 | _length_code[length-1] = (uch)code; |
| 269 | |
| 270 | /* Initialize the mapping dist (0..32K) -> dist code (0..29) */ |
| 271 | dist = 0; |
| 272 | for (code = 0 ; code < 16; code++) { |
| 273 | base_dist[code] = dist; |
| 274 | for (n = 0; n < (1<<extra_dbits[code]); n++) { |
| 275 | _dist_code[dist++] = (uch)code; |
| 276 | } |
| 277 | } |
| 278 | Assert (dist == 256, "tr_static_init: dist != 256"); |
| 279 | dist >>= 7; /* from now on, all distances are divided by 128 */ |
| 280 | for ( ; code < D_CODES; code++) { |
| 281 | base_dist[code] = dist << 7; |
| 282 | for (n = 0; n < (1<<(extra_dbits[code]-7)); n++) { |
| 283 | _dist_code[256 + dist++] = (uch)code; |
| 284 | } |
| 285 | } |
| 286 | Assert (dist == 256, "tr_static_init: 256+dist != 512"); |
| 287 | |
| 288 | /* Construct the codes of the static literal tree */ |
| 289 | for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0; |
| 290 | n = 0; |
| 291 | while (n <= 143) static_ltree[n++].Len = 8, bl_count[8]++; |
| @@ -310,20 +310,20 @@ | |
| 310 | # endif |
| 311 | #endif /* defined(GEN_TREES_H) || !defined(STDC) */ |
| 312 | } |
| 313 | |
| 314 | /* =========================================================================== |
| 315 | * Genererate the file trees.h describing the static trees. |
| 316 | */ |
| 317 | #ifdef GEN_TREES_H |
| 318 | # ifndef ZLIB_DEBUG |
| 319 | # include <stdio.h> |
| 320 | # endif |
| 321 | |
| 322 | # define SEPARATOR(i, last, width) \ |
| 323 | ((i) == (last)? "\n};\n\n" : \ |
| 324 | ((i) % (width) == (width)-1 ? ",\n" : ", ")) |
| 325 | |
| 326 | void gen_trees_header() |
| 327 | { |
| 328 | FILE *header = fopen("trees.h", "w"); |
| 329 | int i; |
| @@ -456,11 +456,11 @@ | |
| 456 | int v = s->heap[k]; |
| 457 | int j = k << 1; /* left son of k */ |
| 458 | while (j <= s->heap_len) { |
| 459 | /* Set j to the smallest of the two sons: */ |
| 460 | if (j < s->heap_len && |
| 461 | smaller(tree, s->heap[j+1], s->heap[j], s->depth)) { |
| 462 | j++; |
| 463 | } |
| 464 | /* Exit if v is smaller than both sons */ |
| 465 | if (smaller(tree, v, s->heap[j], s->depth)) break; |
| 466 | |
| @@ -505,11 +505,11 @@ | |
| 505 | /* In a first pass, compute the optimal bit lengths (which may |
| 506 | * overflow in the case of the bit length tree). |
| 507 | */ |
| 508 | tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */ |
| 509 | |
| 510 | for (h = s->heap_max+1; h < HEAP_SIZE; h++) { |
| 511 | n = s->heap[h]; |
| 512 | bits = tree[tree[n].Dad].Len + 1; |
| 513 | if (bits > max_length) bits = max_length, overflow++; |
| 514 | tree[n].Len = (ush)bits; |
| 515 | /* We overwrite tree[n].Dad which is no longer needed */ |
| @@ -516,11 +516,11 @@ | |
| 516 | |
| 517 | if (n > max_code) continue; /* not a leaf node */ |
| 518 | |
| 519 | s->bl_count[bits]++; |
| 520 | xbits = 0; |
| 521 | if (n >= base) xbits = extra[n-base]; |
| 522 | f = tree[n].Freq; |
| 523 | s->opt_len += (ulg)f * (unsigned)(bits + xbits); |
| 524 | if (stree) s->static_len += (ulg)f * (unsigned)(stree[n].Len + xbits); |
| 525 | } |
| 526 | if (overflow == 0) return; |
| @@ -528,14 +528,14 @@ | |
| 528 | Tracev((stderr,"\nbit length overflow\n")); |
| 529 | /* This happens for example on obj2 and pic of the Calgary corpus */ |
| 530 | |
| 531 | /* Find the first bit length which could increase: */ |
| 532 | do { |
| 533 | bits = max_length-1; |
| 534 | while (s->bl_count[bits] == 0) bits--; |
| 535 | s->bl_count[bits]--; /* move one leaf down the tree */ |
| 536 | s->bl_count[bits+1] += 2; /* move one overflow item as its brother */ |
| 537 | s->bl_count[max_length]--; |
| 538 | /* The brother of the overflow item also moves one step up, |
| 539 | * but this does not affect bl_count[max_length] |
| 540 | */ |
| 541 | overflow -= 2; |
| @@ -567,11 +567,11 @@ | |
| 567 | * IN assertion: the array bl_count contains the bit length statistics for |
| 568 | * the given tree and the field len is set for all tree elements. |
| 569 | * OUT assertion: the field code is set for all tree elements of non |
| 570 | * zero code length. |
| 571 | */ |
| 572 | local void gen_codes (tree, max_code, bl_count) |
| 573 | ct_data *tree; /* the tree to decorate */ |
| 574 | int max_code; /* largest code with non zero frequency */ |
| 575 | ushf *bl_count; /* number of codes at each bit length */ |
| 576 | { |
| 577 | ush next_code[MAX_BITS+1]; /* next code value for each bit length */ |
| @@ -581,17 +581,17 @@ | |
| 581 | |
| 582 | /* The distribution counts are first used to generate the code values |
| 583 | * without bit reversal. |
| 584 | */ |
| 585 | for (bits = 1; bits <= MAX_BITS; bits++) { |
| 586 | code = (code + bl_count[bits-1]) << 1; |
| 587 | next_code[bits] = (ush)code; |
| 588 | } |
| 589 | /* Check that the bit counts in bl_count are consistent. The last code |
| 590 | * must be all ones. |
| 591 | */ |
| 592 | Assert (code + bl_count[MAX_BITS]-1 == (1<<MAX_BITS)-1, |
| 593 | "inconsistent bit counts"); |
| 594 | Tracev((stderr,"\ngen_codes: max_code %d ", max_code)); |
| 595 | |
| 596 | for (n = 0; n <= max_code; n++) { |
| 597 | int len = tree[n].Len; |
| @@ -598,11 +598,11 @@ | |
| 598 | if (len == 0) continue; |
| 599 | /* Now reverse the bits */ |
| 600 | tree[n].Code = (ush)bi_reverse(next_code[len]++, len); |
| 601 | |
| 602 | Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ", |
| 603 | n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len]-1)); |
| 604 | } |
| 605 | } |
| 606 | |
| 607 | /* =========================================================================== |
| 608 | * Construct one Huffman tree and assigns the code bit strings and lengths. |
| @@ -622,11 +622,11 @@ | |
| 622 | int n, m; /* iterate over heap elements */ |
| 623 | int max_code = -1; /* largest code with non zero frequency */ |
| 624 | int node; /* new node being created */ |
| 625 | |
| 626 | /* Construct the initial heap, with least frequent element in |
| 627 | * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n+1]. |
| 628 | * heap[0] is not used. |
| 629 | */ |
| 630 | s->heap_len = 0, s->heap_max = HEAP_SIZE; |
| 631 | |
| 632 | for (n = 0; n < elems; n++) { |
| @@ -650,11 +650,11 @@ | |
| 650 | s->opt_len--; if (stree) s->static_len -= stree[node].Len; |
| 651 | /* node is 0 or 1 so it does not have extra bits */ |
| 652 | } |
| 653 | desc->max_code = max_code; |
| 654 | |
| 655 | /* The elements heap[heap_len/2+1 .. heap_len] are leaves of the tree, |
| 656 | * establish sub-heaps of increasing lengths: |
| 657 | */ |
| 658 | for (n = s->heap_len/2; n >= 1; n--) pqdownheap(s, tree, n); |
| 659 | |
| 660 | /* Construct the Huffman tree by repeatedly combining the least two |
| @@ -698,11 +698,11 @@ | |
| 698 | |
| 699 | /* =========================================================================== |
| 700 | * Scan a literal or distance tree to determine the frequencies of the codes |
| 701 | * in the bit length tree. |
| 702 | */ |
| 703 | local void scan_tree (s, tree, max_code) |
| 704 | deflate_state *s; |
| 705 | ct_data *tree; /* the tree to be scanned */ |
| 706 | int max_code; /* and its largest code of non zero frequency */ |
| 707 | { |
| 708 | int n; /* iterates over all tree elements */ |
| @@ -712,14 +712,14 @@ | |
| 712 | int count = 0; /* repeat count of the current code */ |
| 713 | int max_count = 7; /* max repeat count */ |
| 714 | int min_count = 4; /* min repeat count */ |
| 715 | |
| 716 | if (nextlen == 0) max_count = 138, min_count = 3; |
| 717 | tree[max_code+1].Len = (ush)0xffff; /* guard */ |
| 718 | |
| 719 | for (n = 0; n <= max_code; n++) { |
| 720 | curlen = nextlen; nextlen = tree[n+1].Len; |
| 721 | if (++count < max_count && curlen == nextlen) { |
| 722 | continue; |
| 723 | } else if (count < min_count) { |
| 724 | s->bl_tree[curlen].Freq += count; |
| 725 | } else if (curlen != 0) { |
| @@ -743,11 +743,11 @@ | |
| 743 | |
| 744 | /* =========================================================================== |
| 745 | * Send a literal or distance tree in compressed form, using the codes in |
| 746 | * bl_tree. |
| 747 | */ |
| 748 | local void send_tree (s, tree, max_code) |
| 749 | deflate_state *s; |
| 750 | ct_data *tree; /* the tree to be scanned */ |
| 751 | int max_code; /* and its largest code of non zero frequency */ |
| 752 | { |
| 753 | int n; /* iterates over all tree elements */ |
| @@ -756,15 +756,15 @@ | |
| 756 | int nextlen = tree[0].Len; /* length of next code */ |
| 757 | int count = 0; /* repeat count of the current code */ |
| 758 | int max_count = 7; /* max repeat count */ |
| 759 | int min_count = 4; /* min repeat count */ |
| 760 | |
| 761 | /* tree[max_code+1].Len = -1; */ /* guard already set */ |
| 762 | if (nextlen == 0) max_count = 138, min_count = 3; |
| 763 | |
| 764 | for (n = 0; n <= max_code; n++) { |
| 765 | curlen = nextlen; nextlen = tree[n+1].Len; |
| 766 | if (++count < max_count && curlen == nextlen) { |
| 767 | continue; |
| 768 | } else if (count < min_count) { |
| 769 | do { send_code(s, curlen, s->bl_tree); } while (--count != 0); |
| 770 | |
| @@ -771,17 +771,17 @@ | |
| 771 | } else if (curlen != 0) { |
| 772 | if (curlen != prevlen) { |
| 773 | send_code(s, curlen, s->bl_tree); count--; |
| 774 | } |
| 775 | Assert(count >= 3 && count <= 6, " 3_6?"); |
| 776 | send_code(s, REP_3_6, s->bl_tree); send_bits(s, count-3, 2); |
| 777 | |
| 778 | } else if (count <= 10) { |
| 779 | send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count-3, 3); |
| 780 | |
| 781 | } else { |
| 782 | send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count-11, 7); |
| 783 | } |
| 784 | count = 0; prevlen = curlen; |
| 785 | if (nextlen == 0) { |
| 786 | max_count = 138, min_count = 3; |
| 787 | } else if (curlen == nextlen) { |
| @@ -805,12 +805,12 @@ | |
| 805 | scan_tree(s, (ct_data *)s->dyn_ltree, s->l_desc.max_code); |
| 806 | scan_tree(s, (ct_data *)s->dyn_dtree, s->d_desc.max_code); |
| 807 | |
| 808 | /* Build the bit length tree: */ |
| 809 | build_tree(s, (tree_desc *)(&(s->bl_desc))); |
| 810 | /* opt_len now includes the length of the tree representations, except |
| 811 | * the lengths of the bit lengths codes and the 5+5+4 bits for the counts. |
| 812 | */ |
| 813 | |
| 814 | /* Determine the number of bit length codes to send. The pkzip format |
| 815 | * requires that at least 4 bit length codes be sent. (appnote.txt says |
| 816 | * 3 but the actual value used is 4.) |
| @@ -817,11 +817,11 @@ | |
| 817 | */ |
| 818 | for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) { |
| 819 | if (s->bl_tree[bl_order[max_blindex]].Len != 0) break; |
| 820 | } |
| 821 | /* Update opt_len to include the bit length tree and counts */ |
| 822 | s->opt_len += 3*((ulg)max_blindex+1) + 5+5+4; |
| 823 | Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld", |
| 824 | s->opt_len, s->static_len)); |
| 825 | |
| 826 | return max_blindex; |
| 827 | } |
| @@ -839,23 +839,23 @@ | |
| 839 | |
| 840 | Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes"); |
| 841 | Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES, |
| 842 | "too many codes"); |
| 843 | Tracev((stderr, "\nbl counts: ")); |
| 844 | send_bits(s, lcodes-257, 5); /* not +255 as stated in appnote.txt */ |
| 845 | send_bits(s, dcodes-1, 5); |
| 846 | send_bits(s, blcodes-4, 4); /* not -3 as stated in appnote.txt */ |
| 847 | for (rank = 0; rank < blcodes; rank++) { |
| 848 | Tracev((stderr, "\nbl code %2d ", bl_order[rank])); |
| 849 | send_bits(s, s->bl_tree[bl_order[rank]].Len, 3); |
| 850 | } |
| 851 | Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent)); |
| 852 | |
| 853 | send_tree(s, (ct_data *)s->dyn_ltree, lcodes-1); /* literal tree */ |
| 854 | Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent)); |
| 855 | |
| 856 | send_tree(s, (ct_data *)s->dyn_dtree, dcodes-1); /* distance tree */ |
| 857 | Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent)); |
| 858 | } |
| 859 | |
| 860 | /* =========================================================================== |
| 861 | * Send a stored block |
| @@ -864,11 +864,11 @@ | |
| 864 | deflate_state *s; |
| 865 | charf *buf; /* input block */ |
| 866 | ulg stored_len; /* length of input block */ |
| 867 | int last; /* one if this is the last block for a file */ |
| 868 | { |
| 869 | send_bits(s, (STORED_BLOCK<<1)+last, 3); /* send block type */ |
| 870 | bi_windup(s); /* align on byte boundary */ |
| 871 | put_short(s, (ush)stored_len); |
| 872 | put_short(s, (ush)~stored_len); |
| 873 | if (stored_len) |
| 874 | zmemcpy(s->pending_buf + s->pending, (Bytef *)buf, stored_len); |
| @@ -875,11 +875,11 @@ | |
| 875 | s->pending += stored_len; |
| 876 | #ifdef ZLIB_DEBUG |
| 877 | s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L; |
| 878 | s->compressed_len += (stored_len + 4) << 3; |
| 879 | s->bits_sent += 2*16; |
| 880 | s->bits_sent += stored_len<<3; |
| 881 | #endif |
| 882 | } |
| 883 | |
| 884 | /* =========================================================================== |
| 885 | * Flush the bits in the bit buffer to pending output (leaves at most 7 bits) |
| @@ -941,28 +941,31 @@ | |
| 941 | * in bl_order of the last bit length code to send. |
| 942 | */ |
| 943 | max_blindex = build_bl_tree(s); |
| 944 | |
| 945 | /* Determine the best encoding. Compute the block lengths in bytes. */ |
| 946 | opt_lenb = (s->opt_len+3+7)>>3; |
| 947 | static_lenb = (s->static_len+3+7)>>3; |
| 948 | |
| 949 | Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ", |
| 950 | opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len, |
| 951 | s->sym_next / 3)); |
| 952 | |
| 953 | if (static_lenb <= opt_lenb) opt_lenb = static_lenb; |
| 954 | |
| 955 | } else { |
| 956 | Assert(buf != (char*)0, "lost buf"); |
| 957 | opt_lenb = static_lenb = stored_len + 5; /* force a stored block */ |
| 958 | } |
| 959 | |
| 960 | #ifdef FORCE_STORED |
| 961 | if (buf != (char*)0) { /* force stored block */ |
| 962 | #else |
| 963 | if (stored_len+4 <= opt_lenb && buf != (char*)0) { |
| 964 | /* 4: two words for the lengths */ |
| 965 | #endif |
| 966 | /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE. |
| 967 | * Otherwise we can't have processed more than WSIZE input bytes since |
| 968 | * the last block flush, because compression would have been |
| @@ -969,25 +972,21 @@ | |
| 969 | * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to |
| 970 | * transform a block into a stored block. |
| 971 | */ |
| 972 | _tr_stored_block(s, buf, stored_len, last); |
| 973 | |
| 974 | #ifdef FORCE_STATIC |
| 975 | } else if (static_lenb >= 0) { /* force static trees */ |
| 976 | #else |
| 977 | } else if (s->strategy == Z_FIXED || static_lenb == opt_lenb) { |
| 978 | #endif |
| 979 | send_bits(s, (STATIC_TREES<<1)+last, 3); |
| 980 | compress_block(s, (const ct_data *)static_ltree, |
| 981 | (const ct_data *)static_dtree); |
| 982 | #ifdef ZLIB_DEBUG |
| 983 | s->compressed_len += 3 + s->static_len; |
| 984 | #endif |
| 985 | } else { |
| 986 | send_bits(s, (DYN_TREES<<1)+last, 3); |
| 987 | send_all_trees(s, s->l_desc.max_code+1, s->d_desc.max_code+1, |
| 988 | max_blindex+1); |
| 989 | compress_block(s, (const ct_data *)s->dyn_ltree, |
| 990 | (const ct_data *)s->dyn_dtree); |
| 991 | #ifdef ZLIB_DEBUG |
| 992 | s->compressed_len += 3 + s->opt_len; |
| 993 | #endif |
| @@ -1002,26 +1001,26 @@ | |
| 1002 | bi_windup(s); |
| 1003 | #ifdef ZLIB_DEBUG |
| 1004 | s->compressed_len += 7; /* align on byte boundary */ |
| 1005 | #endif |
| 1006 | } |
| 1007 | Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len>>3, |
| 1008 | s->compressed_len-7*last)); |
| 1009 | } |
| 1010 | |
| 1011 | /* =========================================================================== |
| 1012 | * Save the match info and tally the frequency counts. Return true if |
| 1013 | * the current block must be flushed. |
| 1014 | */ |
| 1015 | int ZLIB_INTERNAL _tr_tally (s, dist, lc) |
| 1016 | deflate_state *s; |
| 1017 | unsigned dist; /* distance of matched string */ |
| 1018 | unsigned lc; /* match length-MIN_MATCH or unmatched char (if dist==0) */ |
| 1019 | { |
| 1020 | s->sym_buf[s->sym_next++] = dist; |
| 1021 | s->sym_buf[s->sym_next++] = dist >> 8; |
| 1022 | s->sym_buf[s->sym_next++] = lc; |
| 1023 | if (dist == 0) { |
| 1024 | /* lc is the unmatched char */ |
| 1025 | s->dyn_ltree[lc].Freq++; |
| 1026 | } else { |
| 1027 | s->matches++; |
| @@ -1029,11 +1028,11 @@ | |
| 1029 | dist--; /* dist = match distance - 1 */ |
| 1030 | Assert((ush)dist < (ush)MAX_DIST(s) && |
| 1031 | (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) && |
| 1032 | (ush)d_code(dist) < (ush)D_CODES, "_tr_tally: bad match"); |
| 1033 | |
| 1034 | s->dyn_ltree[_length_code[lc]+LITERALS+1].Freq++; |
| 1035 | s->dyn_dtree[d_code(dist)].Freq++; |
| 1036 | } |
| 1037 | return (s->sym_next == s->sym_end); |
| 1038 | } |
| 1039 | |
| @@ -1059,11 +1058,11 @@ | |
| 1059 | send_code(s, lc, ltree); /* send a literal byte */ |
| 1060 | Tracecv(isgraph(lc), (stderr," '%c' ", lc)); |
| 1061 | } else { |
| 1062 | /* Here, lc is the match length - MIN_MATCH */ |
| 1063 | code = _length_code[lc]; |
| 1064 | send_code(s, code+LITERALS+1, ltree); /* send the length code */ |
| 1065 | extra = extra_lbits[code]; |
| 1066 | if (extra != 0) { |
| 1067 | lc -= base_length[code]; |
| 1068 | send_bits(s, lc, extra); /* send the extra length bits */ |
| 1069 | } |
| @@ -1175,8 +1174,8 @@ | |
| 1175 | put_byte(s, (Byte)s->bi_buf); |
| 1176 | } |
| 1177 | s->bi_buf = 0; |
| 1178 | s->bi_valid = 0; |
| 1179 | #ifdef ZLIB_DEBUG |
| 1180 | s->bits_sent = (s->bits_sent+7) & ~7; |
| 1181 | #endif |
| 1182 | } |
| 1183 |
| --- compat/zlib/trees.c | |
| +++ compat/zlib/trees.c | |
| @@ -191,11 +191,11 @@ | |
| 191 | Tracevv((stderr," l %2d v %4x ", length, value)); |
| 192 | Assert(length > 0 && length <= 15, "invalid length"); |
| 193 | s->bits_sent += (ulg)length; |
| 194 | |
| 195 | /* If not enough room in bi_buf, use (valid) bits from bi_buf and |
| 196 | * (16 - bi_valid) bits from value, leaving (width - (16 - bi_valid)) |
| 197 | * unused bits in value. |
| 198 | */ |
| 199 | if (s->bi_valid > (int)Buf_size - length) { |
| 200 | s->bi_buf |= (ush)value << s->bi_valid; |
| 201 | put_short(s, s->bi_buf); |
| @@ -254,38 +254,38 @@ | |
| 254 | |
| 255 | /* Initialize the mapping length (0..255) -> length code (0..28) */ |
| 256 | length = 0; |
| 257 | for (code = 0; code < LENGTH_CODES-1; code++) { |
| 258 | base_length[code] = length; |
| 259 | for (n = 0; n < (1 << extra_lbits[code]); n++) { |
| 260 | _length_code[length++] = (uch)code; |
| 261 | } |
| 262 | } |
| 263 | Assert (length == 256, "tr_static_init: length != 256"); |
| 264 | /* Note that the length 255 (match length 258) can be represented |
| 265 | * in two different ways: code 284 + 5 bits or code 285, so we |
| 266 | * overwrite length_code[255] to use the best encoding: |
| 267 | */ |
| 268 | _length_code[length - 1] = (uch)code; |
| 269 | |
| 270 | /* Initialize the mapping dist (0..32K) -> dist code (0..29) */ |
| 271 | dist = 0; |
| 272 | for (code = 0 ; code < 16; code++) { |
| 273 | base_dist[code] = dist; |
| 274 | for (n = 0; n < (1 << extra_dbits[code]); n++) { |
| 275 | _dist_code[dist++] = (uch)code; |
| 276 | } |
| 277 | } |
| 278 | Assert (dist == 256, "tr_static_init: dist != 256"); |
| 279 | dist >>= 7; /* from now on, all distances are divided by 128 */ |
| 280 | for ( ; code < D_CODES; code++) { |
| 281 | base_dist[code] = dist << 7; |
| 282 | for (n = 0; n < (1 << (extra_dbits[code] - 7)); n++) { |
| 283 | _dist_code[256 + dist++] = (uch)code; |
| 284 | } |
| 285 | } |
| 286 | Assert (dist == 256, "tr_static_init: 256 + dist != 512"); |
| 287 | |
| 288 | /* Construct the codes of the static literal tree */ |
| 289 | for (bits = 0; bits <= MAX_BITS; bits++) bl_count[bits] = 0; |
| 290 | n = 0; |
| 291 | while (n <= 143) static_ltree[n++].Len = 8, bl_count[8]++; |
| @@ -310,20 +310,20 @@ | |
| 310 | # endif |
| 311 | #endif /* defined(GEN_TREES_H) || !defined(STDC) */ |
| 312 | } |
| 313 | |
| 314 | /* =========================================================================== |
| 315 | * Generate the file trees.h describing the static trees. |
| 316 | */ |
| 317 | #ifdef GEN_TREES_H |
| 318 | # ifndef ZLIB_DEBUG |
| 319 | # include <stdio.h> |
| 320 | # endif |
| 321 | |
| 322 | # define SEPARATOR(i, last, width) \ |
| 323 | ((i) == (last)? "\n};\n\n" : \ |
| 324 | ((i) % (width) == (width) - 1 ? ",\n" : ", ")) |
| 325 | |
| 326 | void gen_trees_header() |
| 327 | { |
| 328 | FILE *header = fopen("trees.h", "w"); |
| 329 | int i; |
| @@ -456,11 +456,11 @@ | |
| 456 | int v = s->heap[k]; |
| 457 | int j = k << 1; /* left son of k */ |
| 458 | while (j <= s->heap_len) { |
| 459 | /* Set j to the smallest of the two sons: */ |
| 460 | if (j < s->heap_len && |
| 461 | smaller(tree, s->heap[j + 1], s->heap[j], s->depth)) { |
| 462 | j++; |
| 463 | } |
| 464 | /* Exit if v is smaller than both sons */ |
| 465 | if (smaller(tree, v, s->heap[j], s->depth)) break; |
| 466 | |
| @@ -505,11 +505,11 @@ | |
| 505 | /* In a first pass, compute the optimal bit lengths (which may |
| 506 | * overflow in the case of the bit length tree). |
| 507 | */ |
| 508 | tree[s->heap[s->heap_max]].Len = 0; /* root of the heap */ |
| 509 | |
| 510 | for (h = s->heap_max + 1; h < HEAP_SIZE; h++) { |
| 511 | n = s->heap[h]; |
| 512 | bits = tree[tree[n].Dad].Len + 1; |
| 513 | if (bits > max_length) bits = max_length, overflow++; |
| 514 | tree[n].Len = (ush)bits; |
| 515 | /* We overwrite tree[n].Dad which is no longer needed */ |
| @@ -516,11 +516,11 @@ | |
| 516 | |
| 517 | if (n > max_code) continue; /* not a leaf node */ |
| 518 | |
| 519 | s->bl_count[bits]++; |
| 520 | xbits = 0; |
| 521 | if (n >= base) xbits = extra[n - base]; |
| 522 | f = tree[n].Freq; |
| 523 | s->opt_len += (ulg)f * (unsigned)(bits + xbits); |
| 524 | if (stree) s->static_len += (ulg)f * (unsigned)(stree[n].Len + xbits); |
| 525 | } |
| 526 | if (overflow == 0) return; |
| @@ -528,14 +528,14 @@ | |
| 528 | Tracev((stderr,"\nbit length overflow\n")); |
| 529 | /* This happens for example on obj2 and pic of the Calgary corpus */ |
| 530 | |
| 531 | /* Find the first bit length which could increase: */ |
| 532 | do { |
| 533 | bits = max_length - 1; |
| 534 | while (s->bl_count[bits] == 0) bits--; |
| 535 | s->bl_count[bits]--; /* move one leaf down the tree */ |
| 536 | s->bl_count[bits + 1] += 2; /* move one overflow item as its brother */ |
| 537 | s->bl_count[max_length]--; |
| 538 | /* The brother of the overflow item also moves one step up, |
| 539 | * but this does not affect bl_count[max_length] |
| 540 | */ |
| 541 | overflow -= 2; |
| @@ -567,11 +567,11 @@ | |
| 567 | * IN assertion: the array bl_count contains the bit length statistics for |
| 568 | * the given tree and the field len is set for all tree elements. |
| 569 | * OUT assertion: the field code is set for all tree elements of non |
| 570 | * zero code length. |
| 571 | */ |
| 572 | local void gen_codes(tree, max_code, bl_count) |
| 573 | ct_data *tree; /* the tree to decorate */ |
| 574 | int max_code; /* largest code with non zero frequency */ |
| 575 | ushf *bl_count; /* number of codes at each bit length */ |
| 576 | { |
| 577 | ush next_code[MAX_BITS+1]; /* next code value for each bit length */ |
| @@ -581,17 +581,17 @@ | |
| 581 | |
| 582 | /* The distribution counts are first used to generate the code values |
| 583 | * without bit reversal. |
| 584 | */ |
| 585 | for (bits = 1; bits <= MAX_BITS; bits++) { |
| 586 | code = (code + bl_count[bits - 1]) << 1; |
| 587 | next_code[bits] = (ush)code; |
| 588 | } |
| 589 | /* Check that the bit counts in bl_count are consistent. The last code |
| 590 | * must be all ones. |
| 591 | */ |
| 592 | Assert (code + bl_count[MAX_BITS] - 1 == (1 << MAX_BITS) - 1, |
| 593 | "inconsistent bit counts"); |
| 594 | Tracev((stderr,"\ngen_codes: max_code %d ", max_code)); |
| 595 | |
| 596 | for (n = 0; n <= max_code; n++) { |
| 597 | int len = tree[n].Len; |
| @@ -598,11 +598,11 @@ | |
| 598 | if (len == 0) continue; |
| 599 | /* Now reverse the bits */ |
| 600 | tree[n].Code = (ush)bi_reverse(next_code[len]++, len); |
| 601 | |
| 602 | Tracecv(tree != static_ltree, (stderr,"\nn %3d %c l %2d c %4x (%x) ", |
| 603 | n, (isgraph(n) ? n : ' '), len, tree[n].Code, next_code[len] - 1)); |
| 604 | } |
| 605 | } |
| 606 | |
| 607 | /* =========================================================================== |
| 608 | * Construct one Huffman tree and assigns the code bit strings and lengths. |
| @@ -622,11 +622,11 @@ | |
| 622 | int n, m; /* iterate over heap elements */ |
| 623 | int max_code = -1; /* largest code with non zero frequency */ |
| 624 | int node; /* new node being created */ |
| 625 | |
| 626 | /* Construct the initial heap, with least frequent element in |
| 627 | * heap[SMALLEST]. The sons of heap[n] are heap[2*n] and heap[2*n + 1]. |
| 628 | * heap[0] is not used. |
| 629 | */ |
| 630 | s->heap_len = 0, s->heap_max = HEAP_SIZE; |
| 631 | |
| 632 | for (n = 0; n < elems; n++) { |
| @@ -650,11 +650,11 @@ | |
| 650 | s->opt_len--; if (stree) s->static_len -= stree[node].Len; |
| 651 | /* node is 0 or 1 so it does not have extra bits */ |
| 652 | } |
| 653 | desc->max_code = max_code; |
| 654 | |
| 655 | /* The elements heap[heap_len/2 + 1 .. heap_len] are leaves of the tree, |
| 656 | * establish sub-heaps of increasing lengths: |
| 657 | */ |
| 658 | for (n = s->heap_len/2; n >= 1; n--) pqdownheap(s, tree, n); |
| 659 | |
| 660 | /* Construct the Huffman tree by repeatedly combining the least two |
| @@ -698,11 +698,11 @@ | |
| 698 | |
| 699 | /* =========================================================================== |
| 700 | * Scan a literal or distance tree to determine the frequencies of the codes |
| 701 | * in the bit length tree. |
| 702 | */ |
| 703 | local void scan_tree(s, tree, max_code) |
| 704 | deflate_state *s; |
| 705 | ct_data *tree; /* the tree to be scanned */ |
| 706 | int max_code; /* and its largest code of non zero frequency */ |
| 707 | { |
| 708 | int n; /* iterates over all tree elements */ |
| @@ -712,14 +712,14 @@ | |
| 712 | int count = 0; /* repeat count of the current code */ |
| 713 | int max_count = 7; /* max repeat count */ |
| 714 | int min_count = 4; /* min repeat count */ |
| 715 | |
| 716 | if (nextlen == 0) max_count = 138, min_count = 3; |
| 717 | tree[max_code + 1].Len = (ush)0xffff; /* guard */ |
| 718 | |
| 719 | for (n = 0; n <= max_code; n++) { |
| 720 | curlen = nextlen; nextlen = tree[n + 1].Len; |
| 721 | if (++count < max_count && curlen == nextlen) { |
| 722 | continue; |
| 723 | } else if (count < min_count) { |
| 724 | s->bl_tree[curlen].Freq += count; |
| 725 | } else if (curlen != 0) { |
| @@ -743,11 +743,11 @@ | |
| 743 | |
| 744 | /* =========================================================================== |
| 745 | * Send a literal or distance tree in compressed form, using the codes in |
| 746 | * bl_tree. |
| 747 | */ |
| 748 | local void send_tree(s, tree, max_code) |
| 749 | deflate_state *s; |
| 750 | ct_data *tree; /* the tree to be scanned */ |
| 751 | int max_code; /* and its largest code of non zero frequency */ |
| 752 | { |
| 753 | int n; /* iterates over all tree elements */ |
| @@ -756,15 +756,15 @@ | |
| 756 | int nextlen = tree[0].Len; /* length of next code */ |
| 757 | int count = 0; /* repeat count of the current code */ |
| 758 | int max_count = 7; /* max repeat count */ |
| 759 | int min_count = 4; /* min repeat count */ |
| 760 | |
| 761 | /* tree[max_code + 1].Len = -1; */ /* guard already set */ |
| 762 | if (nextlen == 0) max_count = 138, min_count = 3; |
| 763 | |
| 764 | for (n = 0; n <= max_code; n++) { |
| 765 | curlen = nextlen; nextlen = tree[n + 1].Len; |
| 766 | if (++count < max_count && curlen == nextlen) { |
| 767 | continue; |
| 768 | } else if (count < min_count) { |
| 769 | do { send_code(s, curlen, s->bl_tree); } while (--count != 0); |
| 770 | |
| @@ -771,17 +771,17 @@ | |
| 771 | } else if (curlen != 0) { |
| 772 | if (curlen != prevlen) { |
| 773 | send_code(s, curlen, s->bl_tree); count--; |
| 774 | } |
| 775 | Assert(count >= 3 && count <= 6, " 3_6?"); |
| 776 | send_code(s, REP_3_6, s->bl_tree); send_bits(s, count - 3, 2); |
| 777 | |
| 778 | } else if (count <= 10) { |
| 779 | send_code(s, REPZ_3_10, s->bl_tree); send_bits(s, count - 3, 3); |
| 780 | |
| 781 | } else { |
| 782 | send_code(s, REPZ_11_138, s->bl_tree); send_bits(s, count - 11, 7); |
| 783 | } |
| 784 | count = 0; prevlen = curlen; |
| 785 | if (nextlen == 0) { |
| 786 | max_count = 138, min_count = 3; |
| 787 | } else if (curlen == nextlen) { |
| @@ -805,12 +805,12 @@ | |
| 805 | scan_tree(s, (ct_data *)s->dyn_ltree, s->l_desc.max_code); |
| 806 | scan_tree(s, (ct_data *)s->dyn_dtree, s->d_desc.max_code); |
| 807 | |
| 808 | /* Build the bit length tree: */ |
| 809 | build_tree(s, (tree_desc *)(&(s->bl_desc))); |
| 810 | /* opt_len now includes the length of the tree representations, except the |
| 811 | * lengths of the bit lengths codes and the 5 + 5 + 4 bits for the counts. |
| 812 | */ |
| 813 | |
| 814 | /* Determine the number of bit length codes to send. The pkzip format |
| 815 | * requires that at least 4 bit length codes be sent. (appnote.txt says |
| 816 | * 3 but the actual value used is 4.) |
| @@ -817,11 +817,11 @@ | |
| 817 | */ |
| 818 | for (max_blindex = BL_CODES-1; max_blindex >= 3; max_blindex--) { |
| 819 | if (s->bl_tree[bl_order[max_blindex]].Len != 0) break; |
| 820 | } |
| 821 | /* Update opt_len to include the bit length tree and counts */ |
| 822 | s->opt_len += 3*((ulg)max_blindex + 1) + 5 + 5 + 4; |
| 823 | Tracev((stderr, "\ndyn trees: dyn %ld, stat %ld", |
| 824 | s->opt_len, s->static_len)); |
| 825 | |
| 826 | return max_blindex; |
| 827 | } |
| @@ -839,23 +839,23 @@ | |
| 839 | |
| 840 | Assert (lcodes >= 257 && dcodes >= 1 && blcodes >= 4, "not enough codes"); |
| 841 | Assert (lcodes <= L_CODES && dcodes <= D_CODES && blcodes <= BL_CODES, |
| 842 | "too many codes"); |
| 843 | Tracev((stderr, "\nbl counts: ")); |
| 844 | send_bits(s, lcodes - 257, 5); /* not +255 as stated in appnote.txt */ |
| 845 | send_bits(s, dcodes - 1, 5); |
| 846 | send_bits(s, blcodes - 4, 4); /* not -3 as stated in appnote.txt */ |
| 847 | for (rank = 0; rank < blcodes; rank++) { |
| 848 | Tracev((stderr, "\nbl code %2d ", bl_order[rank])); |
| 849 | send_bits(s, s->bl_tree[bl_order[rank]].Len, 3); |
| 850 | } |
| 851 | Tracev((stderr, "\nbl tree: sent %ld", s->bits_sent)); |
| 852 | |
| 853 | send_tree(s, (ct_data *)s->dyn_ltree, lcodes - 1); /* literal tree */ |
| 854 | Tracev((stderr, "\nlit tree: sent %ld", s->bits_sent)); |
| 855 | |
| 856 | send_tree(s, (ct_data *)s->dyn_dtree, dcodes - 1); /* distance tree */ |
| 857 | Tracev((stderr, "\ndist tree: sent %ld", s->bits_sent)); |
| 858 | } |
| 859 | |
| 860 | /* =========================================================================== |
| 861 | * Send a stored block |
| @@ -864,11 +864,11 @@ | |
| 864 | deflate_state *s; |
| 865 | charf *buf; /* input block */ |
| 866 | ulg stored_len; /* length of input block */ |
| 867 | int last; /* one if this is the last block for a file */ |
| 868 | { |
| 869 | send_bits(s, (STORED_BLOCK<<1) + last, 3); /* send block type */ |
| 870 | bi_windup(s); /* align on byte boundary */ |
| 871 | put_short(s, (ush)stored_len); |
| 872 | put_short(s, (ush)~stored_len); |
| 873 | if (stored_len) |
| 874 | zmemcpy(s->pending_buf + s->pending, (Bytef *)buf, stored_len); |
| @@ -875,11 +875,11 @@ | |
| 875 | s->pending += stored_len; |
| 876 | #ifdef ZLIB_DEBUG |
| 877 | s->compressed_len = (s->compressed_len + 3 + 7) & (ulg)~7L; |
| 878 | s->compressed_len += (stored_len + 4) << 3; |
| 879 | s->bits_sent += 2*16; |
| 880 | s->bits_sent += stored_len << 3; |
| 881 | #endif |
| 882 | } |
| 883 | |
| 884 | /* =========================================================================== |
| 885 | * Flush the bits in the bit buffer to pending output (leaves at most 7 bits) |
| @@ -941,28 +941,31 @@ | |
| 941 | * in bl_order of the last bit length code to send. |
| 942 | */ |
| 943 | max_blindex = build_bl_tree(s); |
| 944 | |
| 945 | /* Determine the best encoding. Compute the block lengths in bytes. */ |
| 946 | opt_lenb = (s->opt_len + 3 + 7) >> 3; |
| 947 | static_lenb = (s->static_len + 3 + 7) >> 3; |
| 948 | |
| 949 | Tracev((stderr, "\nopt %lu(%lu) stat %lu(%lu) stored %lu lit %u ", |
| 950 | opt_lenb, s->opt_len, static_lenb, s->static_len, stored_len, |
| 951 | s->sym_next / 3)); |
| 952 | |
| 953 | #ifndef FORCE_STATIC |
| 954 | if (static_lenb <= opt_lenb || s->strategy == Z_FIXED) |
| 955 | #endif |
| 956 | opt_lenb = static_lenb; |
| 957 | |
| 958 | } else { |
| 959 | Assert(buf != (char*)0, "lost buf"); |
| 960 | opt_lenb = static_lenb = stored_len + 5; /* force a stored block */ |
| 961 | } |
| 962 | |
| 963 | #ifdef FORCE_STORED |
| 964 | if (buf != (char*)0) { /* force stored block */ |
| 965 | #else |
| 966 | if (stored_len + 4 <= opt_lenb && buf != (char*)0) { |
| 967 | /* 4: two words for the lengths */ |
| 968 | #endif |
| 969 | /* The test buf != NULL is only necessary if LIT_BUFSIZE > WSIZE. |
| 970 | * Otherwise we can't have processed more than WSIZE input bytes since |
| 971 | * the last block flush, because compression would have been |
| @@ -969,25 +972,21 @@ | |
| 972 | * successful. If LIT_BUFSIZE <= WSIZE, it is never too late to |
| 973 | * transform a block into a stored block. |
| 974 | */ |
| 975 | _tr_stored_block(s, buf, stored_len, last); |
| 976 | |
| 977 | } else if (static_lenb == opt_lenb) { |
| 978 | send_bits(s, (STATIC_TREES<<1) + last, 3); |
| 979 | compress_block(s, (const ct_data *)static_ltree, |
| 980 | (const ct_data *)static_dtree); |
| 981 | #ifdef ZLIB_DEBUG |
| 982 | s->compressed_len += 3 + s->static_len; |
| 983 | #endif |
| 984 | } else { |
| 985 | send_bits(s, (DYN_TREES<<1) + last, 3); |
| 986 | send_all_trees(s, s->l_desc.max_code + 1, s->d_desc.max_code + 1, |
| 987 | max_blindex + 1); |
| 988 | compress_block(s, (const ct_data *)s->dyn_ltree, |
| 989 | (const ct_data *)s->dyn_dtree); |
| 990 | #ifdef ZLIB_DEBUG |
| 991 | s->compressed_len += 3 + s->opt_len; |
| 992 | #endif |
| @@ -1002,26 +1001,26 @@ | |
| 1001 | bi_windup(s); |
| 1002 | #ifdef ZLIB_DEBUG |
| 1003 | s->compressed_len += 7; /* align on byte boundary */ |
| 1004 | #endif |
| 1005 | } |
| 1006 | Tracev((stderr,"\ncomprlen %lu(%lu) ", s->compressed_len >> 3, |
| 1007 | s->compressed_len - 7*last)); |
| 1008 | } |
| 1009 | |
| 1010 | /* =========================================================================== |
| 1011 | * Save the match info and tally the frequency counts. Return true if |
| 1012 | * the current block must be flushed. |
| 1013 | */ |
| 1014 | int ZLIB_INTERNAL _tr_tally(s, dist, lc) |
| 1015 | deflate_state *s; |
| 1016 | unsigned dist; /* distance of matched string */ |
| 1017 | unsigned lc; /* match length - MIN_MATCH or unmatched char (dist==0) */ |
| 1018 | { |
| 1019 | s->sym_buf[s->sym_next++] = (uch)dist; |
| 1020 | s->sym_buf[s->sym_next++] = (uch)(dist >> 8); |
| 1021 | s->sym_buf[s->sym_next++] = (uch)lc; |
| 1022 | if (dist == 0) { |
| 1023 | /* lc is the unmatched char */ |
| 1024 | s->dyn_ltree[lc].Freq++; |
| 1025 | } else { |
| 1026 | s->matches++; |
| @@ -1029,11 +1028,11 @@ | |
| 1028 | dist--; /* dist = match distance - 1 */ |
| 1029 | Assert((ush)dist < (ush)MAX_DIST(s) && |
| 1030 | (ush)lc <= (ush)(MAX_MATCH-MIN_MATCH) && |
| 1031 | (ush)d_code(dist) < (ush)D_CODES, "_tr_tally: bad match"); |
| 1032 | |
| 1033 | s->dyn_ltree[_length_code[lc] + LITERALS + 1].Freq++; |
| 1034 | s->dyn_dtree[d_code(dist)].Freq++; |
| 1035 | } |
| 1036 | return (s->sym_next == s->sym_end); |
| 1037 | } |
| 1038 | |
| @@ -1059,11 +1058,11 @@ | |
| 1058 | send_code(s, lc, ltree); /* send a literal byte */ |
| 1059 | Tracecv(isgraph(lc), (stderr," '%c' ", lc)); |
| 1060 | } else { |
| 1061 | /* Here, lc is the match length - MIN_MATCH */ |
| 1062 | code = _length_code[lc]; |
| 1063 | send_code(s, code + LITERALS + 1, ltree); /* send length code */ |
| 1064 | extra = extra_lbits[code]; |
| 1065 | if (extra != 0) { |
| 1066 | lc -= base_length[code]; |
| 1067 | send_bits(s, lc, extra); /* send the extra length bits */ |
| 1068 | } |
| @@ -1175,8 +1174,8 @@ | |
| 1174 | put_byte(s, (Byte)s->bi_buf); |
| 1175 | } |
| 1176 | s->bi_buf = 0; |
| 1177 | s->bi_valid = 0; |
| 1178 | #ifdef ZLIB_DEBUG |
| 1179 | s->bits_sent = (s->bits_sent + 7) & ~7; |
| 1180 | #endif |
| 1181 | } |
| 1182 |
+2
-2
| --- compat/zlib/uncompr.c | ||
| +++ compat/zlib/uncompr.c | ||
| @@ -22,11 +22,11 @@ | ||
| 22 | 22 | uncompress returns Z_OK if success, Z_MEM_ERROR if there was not enough |
| 23 | 23 | memory, Z_BUF_ERROR if there was not enough room in the output buffer, or |
| 24 | 24 | Z_DATA_ERROR if the input data was corrupted, including if the input data is |
| 25 | 25 | an incomplete zlib stream. |
| 26 | 26 | */ |
| 27 | -int ZEXPORT uncompress2 (dest, destLen, source, sourceLen) | |
| 27 | +int ZEXPORT uncompress2(dest, destLen, source, sourceLen) | |
| 28 | 28 | Bytef *dest; |
| 29 | 29 | uLongf *destLen; |
| 30 | 30 | const Bytef *source; |
| 31 | 31 | uLong *sourceLen; |
| 32 | 32 | { |
| @@ -81,13 +81,13 @@ | ||
| 81 | 81 | err == Z_NEED_DICT ? Z_DATA_ERROR : |
| 82 | 82 | err == Z_BUF_ERROR && left + stream.avail_out ? Z_DATA_ERROR : |
| 83 | 83 | err; |
| 84 | 84 | } |
| 85 | 85 | |
| 86 | -int ZEXPORT uncompress (dest, destLen, source, sourceLen) | |
| 86 | +int ZEXPORT uncompress(dest, destLen, source, sourceLen) | |
| 87 | 87 | Bytef *dest; |
| 88 | 88 | uLongf *destLen; |
| 89 | 89 | const Bytef *source; |
| 90 | 90 | uLong sourceLen; |
| 91 | 91 | { |
| 92 | 92 | return uncompress2(dest, destLen, source, &sourceLen); |
| 93 | 93 | } |
| 94 | 94 |
| --- compat/zlib/uncompr.c | |
| +++ compat/zlib/uncompr.c | |
| @@ -22,11 +22,11 @@ | |
| 22 | uncompress returns Z_OK if success, Z_MEM_ERROR if there was not enough |
| 23 | memory, Z_BUF_ERROR if there was not enough room in the output buffer, or |
| 24 | Z_DATA_ERROR if the input data was corrupted, including if the input data is |
| 25 | an incomplete zlib stream. |
| 26 | */ |
| 27 | int ZEXPORT uncompress2 (dest, destLen, source, sourceLen) |
| 28 | Bytef *dest; |
| 29 | uLongf *destLen; |
| 30 | const Bytef *source; |
| 31 | uLong *sourceLen; |
| 32 | { |
| @@ -81,13 +81,13 @@ | |
| 81 | err == Z_NEED_DICT ? Z_DATA_ERROR : |
| 82 | err == Z_BUF_ERROR && left + stream.avail_out ? Z_DATA_ERROR : |
| 83 | err; |
| 84 | } |
| 85 | |
| 86 | int ZEXPORT uncompress (dest, destLen, source, sourceLen) |
| 87 | Bytef *dest; |
| 88 | uLongf *destLen; |
| 89 | const Bytef *source; |
| 90 | uLong sourceLen; |
| 91 | { |
| 92 | return uncompress2(dest, destLen, source, &sourceLen); |
| 93 | } |
| 94 |
| --- compat/zlib/uncompr.c | |
| +++ compat/zlib/uncompr.c | |
| @@ -22,11 +22,11 @@ | |
| 22 | uncompress returns Z_OK if success, Z_MEM_ERROR if there was not enough |
| 23 | memory, Z_BUF_ERROR if there was not enough room in the output buffer, or |
| 24 | Z_DATA_ERROR if the input data was corrupted, including if the input data is |
| 25 | an incomplete zlib stream. |
| 26 | */ |
| 27 | int ZEXPORT uncompress2(dest, destLen, source, sourceLen) |
| 28 | Bytef *dest; |
| 29 | uLongf *destLen; |
| 30 | const Bytef *source; |
| 31 | uLong *sourceLen; |
| 32 | { |
| @@ -81,13 +81,13 @@ | |
| 81 | err == Z_NEED_DICT ? Z_DATA_ERROR : |
| 82 | err == Z_BUF_ERROR && left + stream.avail_out ? Z_DATA_ERROR : |
| 83 | err; |
| 84 | } |
| 85 | |
| 86 | int ZEXPORT uncompress(dest, destLen, source, sourceLen) |
| 87 | Bytef *dest; |
| 88 | uLongf *destLen; |
| 89 | const Bytef *source; |
| 90 | uLong sourceLen; |
| 91 | { |
| 92 | return uncompress2(dest, destLen, source, &sourceLen); |
| 93 | } |
| 94 |
| --- compat/zlib/win32/README-WIN32.txt | ||
| +++ compat/zlib/win32/README-WIN32.txt | ||
| @@ -1,8 +1,8 @@ | ||
| 1 | 1 | ZLIB DATA COMPRESSION LIBRARY |
| 2 | 2 | |
| 3 | -zlib 1.2.12 is a general purpose data compression library. All the code is | |
| 3 | +zlib 1.2.13 is a general purpose data compression library. All the code is | |
| 4 | 4 | thread safe. The data format used by the zlib library is described by RFCs |
| 5 | 5 | (Request for Comments) 1950 to 1952 in the files |
| 6 | 6 | http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format) |
| 7 | 7 | and rfc1952.txt (gzip format). |
| 8 | 8 | |
| @@ -20,11 +20,11 @@ | ||
| 20 | 20 | before asking for help. |
| 21 | 21 | |
| 22 | 22 | |
| 23 | 23 | Manifest: |
| 24 | 24 | |
| 25 | -The package zlib-1.2.12-win32-x86.zip will contain the following files: | |
| 25 | +The package zlib-1.2.13-win32-x86.zip will contain the following files: | |
| 26 | 26 | |
| 27 | 27 | README-WIN32.txt This document |
| 28 | 28 | ChangeLog Changes since previous zlib packages |
| 29 | 29 | DLL_FAQ.txt Frequently asked questions about zlib1.dll |
| 30 | 30 | zlib.3.pdf Documentation of this library in Adobe Acrobat format |
| 31 | 31 |
| --- compat/zlib/win32/README-WIN32.txt | |
| +++ compat/zlib/win32/README-WIN32.txt | |
| @@ -1,8 +1,8 @@ | |
| 1 | ZLIB DATA COMPRESSION LIBRARY |
| 2 | |
| 3 | zlib 1.2.12 is a general purpose data compression library. All the code is |
| 4 | thread safe. The data format used by the zlib library is described by RFCs |
| 5 | (Request for Comments) 1950 to 1952 in the files |
| 6 | http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format) |
| 7 | and rfc1952.txt (gzip format). |
| 8 | |
| @@ -20,11 +20,11 @@ | |
| 20 | before asking for help. |
| 21 | |
| 22 | |
| 23 | Manifest: |
| 24 | |
| 25 | The package zlib-1.2.12-win32-x86.zip will contain the following files: |
| 26 | |
| 27 | README-WIN32.txt This document |
| 28 | ChangeLog Changes since previous zlib packages |
| 29 | DLL_FAQ.txt Frequently asked questions about zlib1.dll |
| 30 | zlib.3.pdf Documentation of this library in Adobe Acrobat format |
| 31 |
| --- compat/zlib/win32/README-WIN32.txt | |
| +++ compat/zlib/win32/README-WIN32.txt | |
| @@ -1,8 +1,8 @@ | |
| 1 | ZLIB DATA COMPRESSION LIBRARY |
| 2 | |
| 3 | zlib 1.2.13 is a general purpose data compression library. All the code is |
| 4 | thread safe. The data format used by the zlib library is described by RFCs |
| 5 | (Request for Comments) 1950 to 1952 in the files |
| 6 | http://www.ietf.org/rfc/rfc1950.txt (zlib format), rfc1951.txt (deflate format) |
| 7 | and rfc1952.txt (gzip format). |
| 8 | |
| @@ -20,11 +20,11 @@ | |
| 20 | before asking for help. |
| 21 | |
| 22 | |
| 23 | Manifest: |
| 24 | |
| 25 | The package zlib-1.2.13-win32-x86.zip will contain the following files: |
| 26 | |
| 27 | README-WIN32.txt This document |
| 28 | ChangeLog Changes since previous zlib packages |
| 29 | DLL_FAQ.txt Frequently asked questions about zlib1.dll |
| 30 | zlib.3.pdf Documentation of this library in Adobe Acrobat format |
| 31 |
+1
-1
| --- compat/zlib/win32/zlib1.rc | ||
| +++ compat/zlib/win32/zlib1.rc | ||
| @@ -24,11 +24,11 @@ | ||
| 24 | 24 | //language ID = U.S. English, char set = Windows, Multilingual |
| 25 | 25 | BEGIN |
| 26 | 26 | VALUE "FileDescription", "zlib data compression library\0" |
| 27 | 27 | VALUE "FileVersion", ZLIB_VERSION "\0" |
| 28 | 28 | VALUE "InternalName", "zlib1.dll\0" |
| 29 | - VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0" | |
| 29 | + VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" | |
| 30 | 30 | VALUE "OriginalFilename", "zlib1.dll\0" |
| 31 | 31 | VALUE "ProductName", "zlib\0" |
| 32 | 32 | VALUE "ProductVersion", ZLIB_VERSION "\0" |
| 33 | 33 | VALUE "Comments", "For more information visit http://www.zlib.net/\0" |
| 34 | 34 | END |
| 35 | 35 |
| --- compat/zlib/win32/zlib1.rc | |
| +++ compat/zlib/win32/zlib1.rc | |
| @@ -24,11 +24,11 @@ | |
| 24 | //language ID = U.S. English, char set = Windows, Multilingual |
| 25 | BEGIN |
| 26 | VALUE "FileDescription", "zlib data compression library\0" |
| 27 | VALUE "FileVersion", ZLIB_VERSION "\0" |
| 28 | VALUE "InternalName", "zlib1.dll\0" |
| 29 | VALUE "LegalCopyright", "(C) 1995-2017 Jean-loup Gailly & Mark Adler\0" |
| 30 | VALUE "OriginalFilename", "zlib1.dll\0" |
| 31 | VALUE "ProductName", "zlib\0" |
| 32 | VALUE "ProductVersion", ZLIB_VERSION "\0" |
| 33 | VALUE "Comments", "For more information visit http://www.zlib.net/\0" |
| 34 | END |
| 35 |
| --- compat/zlib/win32/zlib1.rc | |
| +++ compat/zlib/win32/zlib1.rc | |
| @@ -24,11 +24,11 @@ | |
| 24 | //language ID = U.S. English, char set = Windows, Multilingual |
| 25 | BEGIN |
| 26 | VALUE "FileDescription", "zlib data compression library\0" |
| 27 | VALUE "FileVersion", ZLIB_VERSION "\0" |
| 28 | VALUE "InternalName", "zlib1.dll\0" |
| 29 | VALUE "LegalCopyright", "(C) 1995-2022 Jean-loup Gailly & Mark Adler\0" |
| 30 | VALUE "OriginalFilename", "zlib1.dll\0" |
| 31 | VALUE "ProductName", "zlib\0" |
| 32 | VALUE "ProductVersion", ZLIB_VERSION "\0" |
| 33 | VALUE "Comments", "For more information visit http://www.zlib.net/\0" |
| 34 | END |
| 35 |
+18
-5
| --- compat/zlib/zconf.h | ||
| +++ compat/zlib/zconf.h | ||
| @@ -36,10 +36,13 @@ | ||
| 36 | 36 | # define compressBound z_compressBound |
| 37 | 37 | # endif |
| 38 | 38 | # define crc32 z_crc32 |
| 39 | 39 | # define crc32_combine z_crc32_combine |
| 40 | 40 | # define crc32_combine64 z_crc32_combine64 |
| 41 | +# define crc32_combine_gen z_crc32_combine_gen | |
| 42 | +# define crc32_combine_gen64 z_crc32_combine_gen64 | |
| 43 | +# define crc32_combine_op z_crc32_combine_op | |
| 41 | 44 | # define crc32_z z_crc32_z |
| 42 | 45 | # define deflate z_deflate |
| 43 | 46 | # define deflateBound z_deflateBound |
| 44 | 47 | # define deflateCopy z_deflateCopy |
| 45 | 48 | # define deflateEnd z_deflateEnd |
| @@ -347,10 +350,13 @@ | ||
| 347 | 350 | */ |
| 348 | 351 | # ifdef ZLIB_WINAPI |
| 349 | 352 | # ifdef FAR |
| 350 | 353 | # undef FAR |
| 351 | 354 | # endif |
| 355 | +# ifndef WIN32_LEAN_AND_MEAN | |
| 356 | +# define WIN32_LEAN_AND_MEAN | |
| 357 | +# endif | |
| 352 | 358 | # include <windows.h> |
| 353 | 359 | /* No need for _export, use ZLIB.DEF instead. */ |
| 354 | 360 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 355 | 361 | # define ZEXPORT WINAPI |
| 356 | 362 | # ifdef WIN32 |
| @@ -429,15 +435,15 @@ | ||
| 429 | 435 | typedef Z_U4 z_crc_t; |
| 430 | 436 | #else |
| 431 | 437 | typedef unsigned long z_crc_t; |
| 432 | 438 | #endif |
| 433 | 439 | |
| 434 | -#ifdef HAVE_UNISTD_H /* was set to #if 1 by ./configure */ | |
| 440 | +#ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */ | |
| 435 | 441 | # define Z_HAVE_UNISTD_H |
| 436 | 442 | #endif |
| 437 | 443 | |
| 438 | -#if 1 /* was set to #if 1 by ./configure */ | |
| 444 | +#ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */ | |
| 439 | 445 | # define Z_HAVE_STDARG_H |
| 440 | 446 | #endif |
| 441 | 447 | |
| 442 | 448 | #ifdef STDC |
| 443 | 449 | # ifndef Z_SOLO |
| @@ -465,15 +471,22 @@ | ||
| 465 | 471 | */ |
| 466 | 472 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 467 | 473 | # undef _LARGEFILE64_SOURCE |
| 468 | 474 | #endif |
| 469 | 475 | |
| 470 | -#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) | |
| 471 | -# define Z_HAVE_UNISTD_H | |
| 476 | +#ifndef Z_HAVE_UNISTD_H | |
| 477 | +# ifdef __WATCOMC__ | |
| 478 | +# define Z_HAVE_UNISTD_H | |
| 479 | +# endif | |
| 480 | +#endif | |
| 481 | +#ifndef Z_HAVE_UNISTD_H | |
| 482 | +# if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) | |
| 483 | +# define Z_HAVE_UNISTD_H | |
| 484 | +# endif | |
| 472 | 485 | #endif |
| 473 | 486 | #ifndef Z_SOLO |
| 474 | -# if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) | |
| 487 | +# if defined(Z_HAVE_UNISTD_H) | |
| 475 | 488 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 476 | 489 | # ifdef VMS |
| 477 | 490 | # include <unixio.h> /* for off_t */ |
| 478 | 491 | # endif |
| 479 | 492 | # ifndef z_off_t |
| 480 | 493 |
| --- compat/zlib/zconf.h | |
| +++ compat/zlib/zconf.h | |
| @@ -36,10 +36,13 @@ | |
| 36 | # define compressBound z_compressBound |
| 37 | # endif |
| 38 | # define crc32 z_crc32 |
| 39 | # define crc32_combine z_crc32_combine |
| 40 | # define crc32_combine64 z_crc32_combine64 |
| 41 | # define crc32_z z_crc32_z |
| 42 | # define deflate z_deflate |
| 43 | # define deflateBound z_deflateBound |
| 44 | # define deflateCopy z_deflateCopy |
| 45 | # define deflateEnd z_deflateEnd |
| @@ -347,10 +350,13 @@ | |
| 347 | */ |
| 348 | # ifdef ZLIB_WINAPI |
| 349 | # ifdef FAR |
| 350 | # undef FAR |
| 351 | # endif |
| 352 | # include <windows.h> |
| 353 | /* No need for _export, use ZLIB.DEF instead. */ |
| 354 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 355 | # define ZEXPORT WINAPI |
| 356 | # ifdef WIN32 |
| @@ -429,15 +435,15 @@ | |
| 429 | typedef Z_U4 z_crc_t; |
| 430 | #else |
| 431 | typedef unsigned long z_crc_t; |
| 432 | #endif |
| 433 | |
| 434 | #ifdef HAVE_UNISTD_H /* was set to #if 1 by ./configure */ |
| 435 | # define Z_HAVE_UNISTD_H |
| 436 | #endif |
| 437 | |
| 438 | #if 1 /* was set to #if 1 by ./configure */ |
| 439 | # define Z_HAVE_STDARG_H |
| 440 | #endif |
| 441 | |
| 442 | #ifdef STDC |
| 443 | # ifndef Z_SOLO |
| @@ -465,15 +471,22 @@ | |
| 465 | */ |
| 466 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 467 | # undef _LARGEFILE64_SOURCE |
| 468 | #endif |
| 469 | |
| 470 | #if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) |
| 471 | # define Z_HAVE_UNISTD_H |
| 472 | #endif |
| 473 | #ifndef Z_SOLO |
| 474 | # if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) |
| 475 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 476 | # ifdef VMS |
| 477 | # include <unixio.h> /* for off_t */ |
| 478 | # endif |
| 479 | # ifndef z_off_t |
| 480 |
| --- compat/zlib/zconf.h | |
| +++ compat/zlib/zconf.h | |
| @@ -36,10 +36,13 @@ | |
| 36 | # define compressBound z_compressBound |
| 37 | # endif |
| 38 | # define crc32 z_crc32 |
| 39 | # define crc32_combine z_crc32_combine |
| 40 | # define crc32_combine64 z_crc32_combine64 |
| 41 | # define crc32_combine_gen z_crc32_combine_gen |
| 42 | # define crc32_combine_gen64 z_crc32_combine_gen64 |
| 43 | # define crc32_combine_op z_crc32_combine_op |
| 44 | # define crc32_z z_crc32_z |
| 45 | # define deflate z_deflate |
| 46 | # define deflateBound z_deflateBound |
| 47 | # define deflateCopy z_deflateCopy |
| 48 | # define deflateEnd z_deflateEnd |
| @@ -347,10 +350,13 @@ | |
| 350 | */ |
| 351 | # ifdef ZLIB_WINAPI |
| 352 | # ifdef FAR |
| 353 | # undef FAR |
| 354 | # endif |
| 355 | # ifndef WIN32_LEAN_AND_MEAN |
| 356 | # define WIN32_LEAN_AND_MEAN |
| 357 | # endif |
| 358 | # include <windows.h> |
| 359 | /* No need for _export, use ZLIB.DEF instead. */ |
| 360 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 361 | # define ZEXPORT WINAPI |
| 362 | # ifdef WIN32 |
| @@ -429,15 +435,15 @@ | |
| 435 | typedef Z_U4 z_crc_t; |
| 436 | #else |
| 437 | typedef unsigned long z_crc_t; |
| 438 | #endif |
| 439 | |
| 440 | #ifdef HAVE_UNISTD_H /* may be set to #if 1 by ./configure */ |
| 441 | # define Z_HAVE_UNISTD_H |
| 442 | #endif |
| 443 | |
| 444 | #ifdef HAVE_STDARG_H /* may be set to #if 1 by ./configure */ |
| 445 | # define Z_HAVE_STDARG_H |
| 446 | #endif |
| 447 | |
| 448 | #ifdef STDC |
| 449 | # ifndef Z_SOLO |
| @@ -465,15 +471,22 @@ | |
| 471 | */ |
| 472 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 473 | # undef _LARGEFILE64_SOURCE |
| 474 | #endif |
| 475 | |
| 476 | #ifndef Z_HAVE_UNISTD_H |
| 477 | # ifdef __WATCOMC__ |
| 478 | # define Z_HAVE_UNISTD_H |
| 479 | # endif |
| 480 | #endif |
| 481 | #ifndef Z_HAVE_UNISTD_H |
| 482 | # if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) |
| 483 | # define Z_HAVE_UNISTD_H |
| 484 | # endif |
| 485 | #endif |
| 486 | #ifndef Z_SOLO |
| 487 | # if defined(Z_HAVE_UNISTD_H) |
| 488 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 489 | # ifdef VMS |
| 490 | # include <unixio.h> /* for off_t */ |
| 491 | # endif |
| 492 | # ifndef z_off_t |
| 493 |
+16
-3
| --- compat/zlib/zconf.h.cmakein | ||
| +++ compat/zlib/zconf.h.cmakein | ||
| @@ -38,10 +38,13 @@ | ||
| 38 | 38 | # define compressBound z_compressBound |
| 39 | 39 | # endif |
| 40 | 40 | # define crc32 z_crc32 |
| 41 | 41 | # define crc32_combine z_crc32_combine |
| 42 | 42 | # define crc32_combine64 z_crc32_combine64 |
| 43 | +# define crc32_combine_gen z_crc32_combine_gen | |
| 44 | +# define crc32_combine_gen64 z_crc32_combine_gen64 | |
| 45 | +# define crc32_combine_op z_crc32_combine_op | |
| 43 | 46 | # define crc32_z z_crc32_z |
| 44 | 47 | # define deflate z_deflate |
| 45 | 48 | # define deflateBound z_deflateBound |
| 46 | 49 | # define deflateCopy z_deflateCopy |
| 47 | 50 | # define deflateEnd z_deflateEnd |
| @@ -349,10 +352,13 @@ | ||
| 349 | 352 | */ |
| 350 | 353 | # ifdef ZLIB_WINAPI |
| 351 | 354 | # ifdef FAR |
| 352 | 355 | # undef FAR |
| 353 | 356 | # endif |
| 357 | +# ifndef WIN32_LEAN_AND_MEAN | |
| 358 | +# define WIN32_LEAN_AND_MEAN | |
| 359 | +# endif | |
| 354 | 360 | # include <windows.h> |
| 355 | 361 | /* No need for _export, use ZLIB.DEF instead. */ |
| 356 | 362 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 357 | 363 | # define ZEXPORT WINAPI |
| 358 | 364 | # ifdef WIN32 |
| @@ -467,15 +473,22 @@ | ||
| 467 | 473 | */ |
| 468 | 474 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 469 | 475 | # undef _LARGEFILE64_SOURCE |
| 470 | 476 | #endif |
| 471 | 477 | |
| 472 | -#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) | |
| 473 | -# define Z_HAVE_UNISTD_H | |
| 478 | +#ifndef Z_HAVE_UNISTD_H | |
| 479 | +# ifdef __WATCOMC__ | |
| 480 | +# define Z_HAVE_UNISTD_H | |
| 481 | +# endif | |
| 482 | +#endif | |
| 483 | +#ifndef Z_HAVE_UNISTD_H | |
| 484 | +# if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) | |
| 485 | +# define Z_HAVE_UNISTD_H | |
| 486 | +# endif | |
| 474 | 487 | #endif |
| 475 | 488 | #ifndef Z_SOLO |
| 476 | -# if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) | |
| 489 | +# if defined(Z_HAVE_UNISTD_H) | |
| 477 | 490 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 478 | 491 | # ifdef VMS |
| 479 | 492 | # include <unixio.h> /* for off_t */ |
| 480 | 493 | # endif |
| 481 | 494 | # ifndef z_off_t |
| 482 | 495 |
| --- compat/zlib/zconf.h.cmakein | |
| +++ compat/zlib/zconf.h.cmakein | |
| @@ -38,10 +38,13 @@ | |
| 38 | # define compressBound z_compressBound |
| 39 | # endif |
| 40 | # define crc32 z_crc32 |
| 41 | # define crc32_combine z_crc32_combine |
| 42 | # define crc32_combine64 z_crc32_combine64 |
| 43 | # define crc32_z z_crc32_z |
| 44 | # define deflate z_deflate |
| 45 | # define deflateBound z_deflateBound |
| 46 | # define deflateCopy z_deflateCopy |
| 47 | # define deflateEnd z_deflateEnd |
| @@ -349,10 +352,13 @@ | |
| 349 | */ |
| 350 | # ifdef ZLIB_WINAPI |
| 351 | # ifdef FAR |
| 352 | # undef FAR |
| 353 | # endif |
| 354 | # include <windows.h> |
| 355 | /* No need for _export, use ZLIB.DEF instead. */ |
| 356 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 357 | # define ZEXPORT WINAPI |
| 358 | # ifdef WIN32 |
| @@ -467,15 +473,22 @@ | |
| 467 | */ |
| 468 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 469 | # undef _LARGEFILE64_SOURCE |
| 470 | #endif |
| 471 | |
| 472 | #if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) |
| 473 | # define Z_HAVE_UNISTD_H |
| 474 | #endif |
| 475 | #ifndef Z_SOLO |
| 476 | # if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) |
| 477 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 478 | # ifdef VMS |
| 479 | # include <unixio.h> /* for off_t */ |
| 480 | # endif |
| 481 | # ifndef z_off_t |
| 482 |
| --- compat/zlib/zconf.h.cmakein | |
| +++ compat/zlib/zconf.h.cmakein | |
| @@ -38,10 +38,13 @@ | |
| 38 | # define compressBound z_compressBound |
| 39 | # endif |
| 40 | # define crc32 z_crc32 |
| 41 | # define crc32_combine z_crc32_combine |
| 42 | # define crc32_combine64 z_crc32_combine64 |
| 43 | # define crc32_combine_gen z_crc32_combine_gen |
| 44 | # define crc32_combine_gen64 z_crc32_combine_gen64 |
| 45 | # define crc32_combine_op z_crc32_combine_op |
| 46 | # define crc32_z z_crc32_z |
| 47 | # define deflate z_deflate |
| 48 | # define deflateBound z_deflateBound |
| 49 | # define deflateCopy z_deflateCopy |
| 50 | # define deflateEnd z_deflateEnd |
| @@ -349,10 +352,13 @@ | |
| 352 | */ |
| 353 | # ifdef ZLIB_WINAPI |
| 354 | # ifdef FAR |
| 355 | # undef FAR |
| 356 | # endif |
| 357 | # ifndef WIN32_LEAN_AND_MEAN |
| 358 | # define WIN32_LEAN_AND_MEAN |
| 359 | # endif |
| 360 | # include <windows.h> |
| 361 | /* No need for _export, use ZLIB.DEF instead. */ |
| 362 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 363 | # define ZEXPORT WINAPI |
| 364 | # ifdef WIN32 |
| @@ -467,15 +473,22 @@ | |
| 473 | */ |
| 474 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 475 | # undef _LARGEFILE64_SOURCE |
| 476 | #endif |
| 477 | |
| 478 | #ifndef Z_HAVE_UNISTD_H |
| 479 | # ifdef __WATCOMC__ |
| 480 | # define Z_HAVE_UNISTD_H |
| 481 | # endif |
| 482 | #endif |
| 483 | #ifndef Z_HAVE_UNISTD_H |
| 484 | # if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) |
| 485 | # define Z_HAVE_UNISTD_H |
| 486 | # endif |
| 487 | #endif |
| 488 | #ifndef Z_SOLO |
| 489 | # if defined(Z_HAVE_UNISTD_H) |
| 490 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 491 | # ifdef VMS |
| 492 | # include <unixio.h> /* for off_t */ |
| 493 | # endif |
| 494 | # ifndef z_off_t |
| 495 |
+16
-3
| --- compat/zlib/zconf.h.in | ||
| +++ compat/zlib/zconf.h.in | ||
| @@ -36,10 +36,13 @@ | ||
| 36 | 36 | # define compressBound z_compressBound |
| 37 | 37 | # endif |
| 38 | 38 | # define crc32 z_crc32 |
| 39 | 39 | # define crc32_combine z_crc32_combine |
| 40 | 40 | # define crc32_combine64 z_crc32_combine64 |
| 41 | +# define crc32_combine_gen z_crc32_combine_gen | |
| 42 | +# define crc32_combine_gen64 z_crc32_combine_gen64 | |
| 43 | +# define crc32_combine_op z_crc32_combine_op | |
| 41 | 44 | # define crc32_z z_crc32_z |
| 42 | 45 | # define deflate z_deflate |
| 43 | 46 | # define deflateBound z_deflateBound |
| 44 | 47 | # define deflateCopy z_deflateCopy |
| 45 | 48 | # define deflateEnd z_deflateEnd |
| @@ -347,10 +350,13 @@ | ||
| 347 | 350 | */ |
| 348 | 351 | # ifdef ZLIB_WINAPI |
| 349 | 352 | # ifdef FAR |
| 350 | 353 | # undef FAR |
| 351 | 354 | # endif |
| 355 | +# ifndef WIN32_LEAN_AND_MEAN | |
| 356 | +# define WIN32_LEAN_AND_MEAN | |
| 357 | +# endif | |
| 352 | 358 | # include <windows.h> |
| 353 | 359 | /* No need for _export, use ZLIB.DEF instead. */ |
| 354 | 360 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 355 | 361 | # define ZEXPORT WINAPI |
| 356 | 362 | # ifdef WIN32 |
| @@ -465,15 +471,22 @@ | ||
| 465 | 471 | */ |
| 466 | 472 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 467 | 473 | # undef _LARGEFILE64_SOURCE |
| 468 | 474 | #endif |
| 469 | 475 | |
| 470 | -#if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) | |
| 471 | -# define Z_HAVE_UNISTD_H | |
| 476 | +#ifndef Z_HAVE_UNISTD_H | |
| 477 | +# ifdef __WATCOMC__ | |
| 478 | +# define Z_HAVE_UNISTD_H | |
| 479 | +# endif | |
| 480 | +#endif | |
| 481 | +#ifndef Z_HAVE_UNISTD_H | |
| 482 | +# if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) | |
| 483 | +# define Z_HAVE_UNISTD_H | |
| 484 | +# endif | |
| 472 | 485 | #endif |
| 473 | 486 | #ifndef Z_SOLO |
| 474 | -# if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) | |
| 487 | +# if defined(Z_HAVE_UNISTD_H) | |
| 475 | 488 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 476 | 489 | # ifdef VMS |
| 477 | 490 | # include <unixio.h> /* for off_t */ |
| 478 | 491 | # endif |
| 479 | 492 | # ifndef z_off_t |
| 480 | 493 |
| --- compat/zlib/zconf.h.in | |
| +++ compat/zlib/zconf.h.in | |
| @@ -36,10 +36,13 @@ | |
| 36 | # define compressBound z_compressBound |
| 37 | # endif |
| 38 | # define crc32 z_crc32 |
| 39 | # define crc32_combine z_crc32_combine |
| 40 | # define crc32_combine64 z_crc32_combine64 |
| 41 | # define crc32_z z_crc32_z |
| 42 | # define deflate z_deflate |
| 43 | # define deflateBound z_deflateBound |
| 44 | # define deflateCopy z_deflateCopy |
| 45 | # define deflateEnd z_deflateEnd |
| @@ -347,10 +350,13 @@ | |
| 347 | */ |
| 348 | # ifdef ZLIB_WINAPI |
| 349 | # ifdef FAR |
| 350 | # undef FAR |
| 351 | # endif |
| 352 | # include <windows.h> |
| 353 | /* No need for _export, use ZLIB.DEF instead. */ |
| 354 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 355 | # define ZEXPORT WINAPI |
| 356 | # ifdef WIN32 |
| @@ -465,15 +471,22 @@ | |
| 465 | */ |
| 466 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 467 | # undef _LARGEFILE64_SOURCE |
| 468 | #endif |
| 469 | |
| 470 | #if defined(__WATCOMC__) && !defined(Z_HAVE_UNISTD_H) |
| 471 | # define Z_HAVE_UNISTD_H |
| 472 | #endif |
| 473 | #ifndef Z_SOLO |
| 474 | # if defined(Z_HAVE_UNISTD_H) || defined(_LARGEFILE64_SOURCE) |
| 475 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 476 | # ifdef VMS |
| 477 | # include <unixio.h> /* for off_t */ |
| 478 | # endif |
| 479 | # ifndef z_off_t |
| 480 |
| --- compat/zlib/zconf.h.in | |
| +++ compat/zlib/zconf.h.in | |
| @@ -36,10 +36,13 @@ | |
| 36 | # define compressBound z_compressBound |
| 37 | # endif |
| 38 | # define crc32 z_crc32 |
| 39 | # define crc32_combine z_crc32_combine |
| 40 | # define crc32_combine64 z_crc32_combine64 |
| 41 | # define crc32_combine_gen z_crc32_combine_gen |
| 42 | # define crc32_combine_gen64 z_crc32_combine_gen64 |
| 43 | # define crc32_combine_op z_crc32_combine_op |
| 44 | # define crc32_z z_crc32_z |
| 45 | # define deflate z_deflate |
| 46 | # define deflateBound z_deflateBound |
| 47 | # define deflateCopy z_deflateCopy |
| 48 | # define deflateEnd z_deflateEnd |
| @@ -347,10 +350,13 @@ | |
| 350 | */ |
| 351 | # ifdef ZLIB_WINAPI |
| 352 | # ifdef FAR |
| 353 | # undef FAR |
| 354 | # endif |
| 355 | # ifndef WIN32_LEAN_AND_MEAN |
| 356 | # define WIN32_LEAN_AND_MEAN |
| 357 | # endif |
| 358 | # include <windows.h> |
| 359 | /* No need for _export, use ZLIB.DEF instead. */ |
| 360 | /* For complete Windows compatibility, use WINAPI, not __stdcall. */ |
| 361 | # define ZEXPORT WINAPI |
| 362 | # ifdef WIN32 |
| @@ -465,15 +471,22 @@ | |
| 471 | */ |
| 472 | #if defined(_LARGEFILE64_SOURCE) && -_LARGEFILE64_SOURCE - -1 == 1 |
| 473 | # undef _LARGEFILE64_SOURCE |
| 474 | #endif |
| 475 | |
| 476 | #ifndef Z_HAVE_UNISTD_H |
| 477 | # ifdef __WATCOMC__ |
| 478 | # define Z_HAVE_UNISTD_H |
| 479 | # endif |
| 480 | #endif |
| 481 | #ifndef Z_HAVE_UNISTD_H |
| 482 | # if defined(_LARGEFILE64_SOURCE) && !defined(_WIN32) |
| 483 | # define Z_HAVE_UNISTD_H |
| 484 | # endif |
| 485 | #endif |
| 486 | #ifndef Z_SOLO |
| 487 | # if defined(Z_HAVE_UNISTD_H) |
| 488 | # include <unistd.h> /* for SEEK_*, off_t, and _LFS64_LARGEFILE */ |
| 489 | # ifdef VMS |
| 490 | # include <unixio.h> /* for off_t */ |
| 491 | # endif |
| 492 | # ifndef z_off_t |
| 493 |
+2
-2
| --- compat/zlib/zlib.3 | ||
| +++ compat/zlib/zlib.3 | ||
| @@ -1,6 +1,6 @@ | ||
| 1 | -.TH ZLIB 3 "27 Mar 2022" | |
| 1 | +.TH ZLIB 3 "13 Oct 2022" | |
| 2 | 2 | .SH NAME |
| 3 | 3 | zlib \- compression/decompression library |
| 4 | 4 | .SH SYNOPSIS |
| 5 | 5 | [see |
| 6 | 6 | .I zlib.h |
| @@ -103,11 +103,11 @@ | ||
| 103 | 103 | .LP |
| 104 | 104 | before asking for help. |
| 105 | 105 | Send questions and/or comments to [email protected], |
| 106 | 106 | or (for the Windows DLL version) to Gilles Vollant ([email protected]). |
| 107 | 107 | .SH AUTHORS AND LICENSE |
| 108 | -Version 1.2.12 | |
| 108 | +Version 1.2.13 | |
| 109 | 109 | .LP |
| 110 | 110 | Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 111 | 111 | .LP |
| 112 | 112 | This software is provided 'as-is', without any express or implied |
| 113 | 113 | warranty. In no event will the authors be held liable for any damages |
| 114 | 114 |
| --- compat/zlib/zlib.3 | |
| +++ compat/zlib/zlib.3 | |
| @@ -1,6 +1,6 @@ | |
| 1 | .TH ZLIB 3 "27 Mar 2022" |
| 2 | .SH NAME |
| 3 | zlib \- compression/decompression library |
| 4 | .SH SYNOPSIS |
| 5 | [see |
| 6 | .I zlib.h |
| @@ -103,11 +103,11 @@ | |
| 103 | .LP |
| 104 | before asking for help. |
| 105 | Send questions and/or comments to [email protected], |
| 106 | or (for the Windows DLL version) to Gilles Vollant ([email protected]). |
| 107 | .SH AUTHORS AND LICENSE |
| 108 | Version 1.2.12 |
| 109 | .LP |
| 110 | Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 111 | .LP |
| 112 | This software is provided 'as-is', without any express or implied |
| 113 | warranty. In no event will the authors be held liable for any damages |
| 114 |
| --- compat/zlib/zlib.3 | |
| +++ compat/zlib/zlib.3 | |
| @@ -1,6 +1,6 @@ | |
| 1 | .TH ZLIB 3 "13 Oct 2022" |
| 2 | .SH NAME |
| 3 | zlib \- compression/decompression library |
| 4 | .SH SYNOPSIS |
| 5 | [see |
| 6 | .I zlib.h |
| @@ -103,11 +103,11 @@ | |
| 103 | .LP |
| 104 | before asking for help. |
| 105 | Send questions and/or comments to [email protected], |
| 106 | or (for the Windows DLL version) to Gilles Vollant ([email protected]). |
| 107 | .SH AUTHORS AND LICENSE |
| 108 | Version 1.2.13 |
| 109 | .LP |
| 110 | Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 111 | .LP |
| 112 | This software is provided 'as-is', without any express or implied |
| 113 | warranty. In no event will the authors be held liable for any damages |
| 114 |
| --- compat/zlib/zlib.3.pdf | ||
| +++ compat/zlib/zlib.3.pdf | ||
| cannot compute difference between binary files | ||
| 1 | 1 |
| --- compat/zlib/zlib.3.pdf | |
| +++ compat/zlib/zlib.3.pdf | |
| 0 | annot compute difference between binary files |
| 1 |
| --- compat/zlib/zlib.3.pdf | |
| +++ compat/zlib/zlib.3.pdf | |
| 0 | annot compute difference between binary files |
| 1 |
+10
-10
| --- compat/zlib/zlib.h | ||
| +++ compat/zlib/zlib.h | ||
| @@ -1,7 +1,7 @@ | ||
| 1 | 1 | /* zlib.h -- interface of the 'zlib' general purpose compression library |
| 2 | - version 1.2.12, March 11th, 2022 | |
| 2 | + version 1.2.13, October 13th, 2022 | |
| 3 | 3 | |
| 4 | 4 | Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 5 | 5 | |
| 6 | 6 | This software is provided 'as-is', without any express or implied |
| 7 | 7 | warranty. In no event will the authors be held liable for any damages |
| @@ -35,15 +35,15 @@ | ||
| 35 | 35 | |
| 36 | 36 | #ifdef __cplusplus |
| 37 | 37 | extern "C" { |
| 38 | 38 | #endif |
| 39 | 39 | |
| 40 | -#define ZLIB_VERSION "1.2.12" | |
| 41 | -#define ZLIB_VERNUM 0x12c0 | |
| 40 | +#define ZLIB_VERSION "1.2.13" | |
| 41 | +#define ZLIB_VERNUM 0x12d0 | |
| 42 | 42 | #define ZLIB_VER_MAJOR 1 |
| 43 | 43 | #define ZLIB_VER_MINOR 2 |
| 44 | -#define ZLIB_VER_REVISION 12 | |
| 44 | +#define ZLIB_VER_REVISION 13 | |
| 45 | 45 | #define ZLIB_VER_SUBREVISION 0 |
| 46 | 46 | |
| 47 | 47 | /* |
| 48 | 48 | The 'zlib' compression library provides in-memory compression and |
| 49 | 49 | decompression functions, including integrity checks of the uncompressed data. |
| @@ -274,11 +274,11 @@ | ||
| 274 | 274 | never be zero before the call. The application can consume the compressed |
| 275 | 275 | output when it wants, for example when the output buffer is full (avail_out |
| 276 | 276 | == 0), or after each call of deflate(). If deflate returns Z_OK and with |
| 277 | 277 | zero avail_out, it must be called again after making room in the output |
| 278 | 278 | buffer because there might be more output pending. See deflatePending(), |
| 279 | - which can be used if desired to determine whether or not there is more ouput | |
| 279 | + which can be used if desired to determine whether or not there is more output | |
| 280 | 280 | in that case. |
| 281 | 281 | |
| 282 | 282 | Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to |
| 283 | 283 | decide how much data to accumulate before producing output, in order to |
| 284 | 284 | maximize compression. |
| @@ -658,11 +658,11 @@ | ||
| 658 | 658 | Returns the sliding dictionary being maintained by deflate. dictLength is |
| 659 | 659 | set to the number of bytes in the dictionary, and that many bytes are copied |
| 660 | 660 | to dictionary. dictionary must have enough space, where 32768 bytes is |
| 661 | 661 | always enough. If deflateGetDictionary() is called with dictionary equal to |
| 662 | 662 | Z_NULL, then only the dictionary length is returned, and nothing is copied. |
| 663 | - Similary, if dictLength is Z_NULL, then it is not set. | |
| 663 | + Similarly, if dictLength is Z_NULL, then it is not set. | |
| 664 | 664 | |
| 665 | 665 | deflateGetDictionary() may return a length less than the window size, even |
| 666 | 666 | when more than the window size in input has been provided. It may return up |
| 667 | 667 | to 258 bytes less in that case, due to how zlib's implementation of deflate |
| 668 | 668 | manages the sliding window and lookahead for matches, where matches can be |
| @@ -913,11 +913,11 @@ | ||
| 913 | 913 | Returns the sliding dictionary being maintained by inflate. dictLength is |
| 914 | 914 | set to the number of bytes in the dictionary, and that many bytes are copied |
| 915 | 915 | to dictionary. dictionary must have enough space, where 32768 bytes is |
| 916 | 916 | always enough. If inflateGetDictionary() is called with dictionary equal to |
| 917 | 917 | Z_NULL, then only the dictionary length is returned, and nothing is copied. |
| 918 | - Similary, if dictLength is Z_NULL, then it is not set. | |
| 918 | + Similarly, if dictLength is Z_NULL, then it is not set. | |
| 919 | 919 | |
| 920 | 920 | inflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the |
| 921 | 921 | stream state is inconsistent. |
| 922 | 922 | */ |
| 923 | 923 | |
| @@ -1435,16 +1435,16 @@ | ||
| 1435 | 1435 | nitems overflows, i.e. the product does not fit in a z_size_t, then nothing |
| 1436 | 1436 | is read, zero is returned, and the error state is set to Z_STREAM_ERROR. |
| 1437 | 1437 | |
| 1438 | 1438 | In the event that the end of file is reached and only a partial item is |
| 1439 | 1439 | available at the end, i.e. the remaining uncompressed data length is not a |
| 1440 | - multiple of size, then the final partial item is nevetheless read into buf | |
| 1440 | + multiple of size, then the final partial item is nevertheless read into buf | |
| 1441 | 1441 | and the end-of-file flag is set. The length of the partial item read is not |
| 1442 | 1442 | provided, but could be inferred from the result of gztell(). This behavior |
| 1443 | 1443 | is the same as the behavior of fread() implementations in common libraries, |
| 1444 | 1444 | but it prevents the direct use of gzfread() to read a concurrently written |
| 1445 | - file, reseting and retrying on end-of-file, when size is not 1. | |
| 1445 | + file, resetting and retrying on end-of-file, when size is not 1. | |
| 1446 | 1446 | */ |
| 1447 | 1447 | |
| 1448 | 1448 | ZEXTERN int ZEXPORT gzwrite OF((gzFile file, voidpc buf, unsigned len)); |
| 1449 | 1449 | /* |
| 1450 | 1450 | Compress and write the len uncompressed bytes at buf to file. gzwrite |
| @@ -1911,11 +1911,11 @@ | ||
| 1911 | 1911 | ZEXTERN const char * ZEXPORT zError OF((int)); |
| 1912 | 1912 | ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp)); |
| 1913 | 1913 | ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void)); |
| 1914 | 1914 | ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int)); |
| 1915 | 1915 | ZEXTERN int ZEXPORT inflateValidate OF((z_streamp, int)); |
| 1916 | -ZEXTERN unsigned long ZEXPORT inflateCodesUsed OF ((z_streamp)); | |
| 1916 | +ZEXTERN unsigned long ZEXPORT inflateCodesUsed OF((z_streamp)); | |
| 1917 | 1917 | ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp)); |
| 1918 | 1918 | ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp)); |
| 1919 | 1919 | #if defined(_WIN32) && !defined(Z_SOLO) |
| 1920 | 1920 | ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path, |
| 1921 | 1921 | const char *mode)); |
| 1922 | 1922 |
| --- compat/zlib/zlib.h | |
| +++ compat/zlib/zlib.h | |
| @@ -1,7 +1,7 @@ | |
| 1 | /* zlib.h -- interface of the 'zlib' general purpose compression library |
| 2 | version 1.2.12, March 11th, 2022 |
| 3 | |
| 4 | Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 5 | |
| 6 | This software is provided 'as-is', without any express or implied |
| 7 | warranty. In no event will the authors be held liable for any damages |
| @@ -35,15 +35,15 @@ | |
| 35 | |
| 36 | #ifdef __cplusplus |
| 37 | extern "C" { |
| 38 | #endif |
| 39 | |
| 40 | #define ZLIB_VERSION "1.2.12" |
| 41 | #define ZLIB_VERNUM 0x12c0 |
| 42 | #define ZLIB_VER_MAJOR 1 |
| 43 | #define ZLIB_VER_MINOR 2 |
| 44 | #define ZLIB_VER_REVISION 12 |
| 45 | #define ZLIB_VER_SUBREVISION 0 |
| 46 | |
| 47 | /* |
| 48 | The 'zlib' compression library provides in-memory compression and |
| 49 | decompression functions, including integrity checks of the uncompressed data. |
| @@ -274,11 +274,11 @@ | |
| 274 | never be zero before the call. The application can consume the compressed |
| 275 | output when it wants, for example when the output buffer is full (avail_out |
| 276 | == 0), or after each call of deflate(). If deflate returns Z_OK and with |
| 277 | zero avail_out, it must be called again after making room in the output |
| 278 | buffer because there might be more output pending. See deflatePending(), |
| 279 | which can be used if desired to determine whether or not there is more ouput |
| 280 | in that case. |
| 281 | |
| 282 | Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to |
| 283 | decide how much data to accumulate before producing output, in order to |
| 284 | maximize compression. |
| @@ -658,11 +658,11 @@ | |
| 658 | Returns the sliding dictionary being maintained by deflate. dictLength is |
| 659 | set to the number of bytes in the dictionary, and that many bytes are copied |
| 660 | to dictionary. dictionary must have enough space, where 32768 bytes is |
| 661 | always enough. If deflateGetDictionary() is called with dictionary equal to |
| 662 | Z_NULL, then only the dictionary length is returned, and nothing is copied. |
| 663 | Similary, if dictLength is Z_NULL, then it is not set. |
| 664 | |
| 665 | deflateGetDictionary() may return a length less than the window size, even |
| 666 | when more than the window size in input has been provided. It may return up |
| 667 | to 258 bytes less in that case, due to how zlib's implementation of deflate |
| 668 | manages the sliding window and lookahead for matches, where matches can be |
| @@ -913,11 +913,11 @@ | |
| 913 | Returns the sliding dictionary being maintained by inflate. dictLength is |
| 914 | set to the number of bytes in the dictionary, and that many bytes are copied |
| 915 | to dictionary. dictionary must have enough space, where 32768 bytes is |
| 916 | always enough. If inflateGetDictionary() is called with dictionary equal to |
| 917 | Z_NULL, then only the dictionary length is returned, and nothing is copied. |
| 918 | Similary, if dictLength is Z_NULL, then it is not set. |
| 919 | |
| 920 | inflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the |
| 921 | stream state is inconsistent. |
| 922 | */ |
| 923 | |
| @@ -1435,16 +1435,16 @@ | |
| 1435 | nitems overflows, i.e. the product does not fit in a z_size_t, then nothing |
| 1436 | is read, zero is returned, and the error state is set to Z_STREAM_ERROR. |
| 1437 | |
| 1438 | In the event that the end of file is reached and only a partial item is |
| 1439 | available at the end, i.e. the remaining uncompressed data length is not a |
| 1440 | multiple of size, then the final partial item is nevetheless read into buf |
| 1441 | and the end-of-file flag is set. The length of the partial item read is not |
| 1442 | provided, but could be inferred from the result of gztell(). This behavior |
| 1443 | is the same as the behavior of fread() implementations in common libraries, |
| 1444 | but it prevents the direct use of gzfread() to read a concurrently written |
| 1445 | file, reseting and retrying on end-of-file, when size is not 1. |
| 1446 | */ |
| 1447 | |
| 1448 | ZEXTERN int ZEXPORT gzwrite OF((gzFile file, voidpc buf, unsigned len)); |
| 1449 | /* |
| 1450 | Compress and write the len uncompressed bytes at buf to file. gzwrite |
| @@ -1911,11 +1911,11 @@ | |
| 1911 | ZEXTERN const char * ZEXPORT zError OF((int)); |
| 1912 | ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp)); |
| 1913 | ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void)); |
| 1914 | ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int)); |
| 1915 | ZEXTERN int ZEXPORT inflateValidate OF((z_streamp, int)); |
| 1916 | ZEXTERN unsigned long ZEXPORT inflateCodesUsed OF ((z_streamp)); |
| 1917 | ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp)); |
| 1918 | ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp)); |
| 1919 | #if defined(_WIN32) && !defined(Z_SOLO) |
| 1920 | ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path, |
| 1921 | const char *mode)); |
| 1922 |
| --- compat/zlib/zlib.h | |
| +++ compat/zlib/zlib.h | |
| @@ -1,7 +1,7 @@ | |
| 1 | /* zlib.h -- interface of the 'zlib' general purpose compression library |
| 2 | version 1.2.13, October 13th, 2022 |
| 3 | |
| 4 | Copyright (C) 1995-2022 Jean-loup Gailly and Mark Adler |
| 5 | |
| 6 | This software is provided 'as-is', without any express or implied |
| 7 | warranty. In no event will the authors be held liable for any damages |
| @@ -35,15 +35,15 @@ | |
| 35 | |
| 36 | #ifdef __cplusplus |
| 37 | extern "C" { |
| 38 | #endif |
| 39 | |
| 40 | #define ZLIB_VERSION "1.2.13" |
| 41 | #define ZLIB_VERNUM 0x12d0 |
| 42 | #define ZLIB_VER_MAJOR 1 |
| 43 | #define ZLIB_VER_MINOR 2 |
| 44 | #define ZLIB_VER_REVISION 13 |
| 45 | #define ZLIB_VER_SUBREVISION 0 |
| 46 | |
| 47 | /* |
| 48 | The 'zlib' compression library provides in-memory compression and |
| 49 | decompression functions, including integrity checks of the uncompressed data. |
| @@ -274,11 +274,11 @@ | |
| 274 | never be zero before the call. The application can consume the compressed |
| 275 | output when it wants, for example when the output buffer is full (avail_out |
| 276 | == 0), or after each call of deflate(). If deflate returns Z_OK and with |
| 277 | zero avail_out, it must be called again after making room in the output |
| 278 | buffer because there might be more output pending. See deflatePending(), |
| 279 | which can be used if desired to determine whether or not there is more output |
| 280 | in that case. |
| 281 | |
| 282 | Normally the parameter flush is set to Z_NO_FLUSH, which allows deflate to |
| 283 | decide how much data to accumulate before producing output, in order to |
| 284 | maximize compression. |
| @@ -658,11 +658,11 @@ | |
| 658 | Returns the sliding dictionary being maintained by deflate. dictLength is |
| 659 | set to the number of bytes in the dictionary, and that many bytes are copied |
| 660 | to dictionary. dictionary must have enough space, where 32768 bytes is |
| 661 | always enough. If deflateGetDictionary() is called with dictionary equal to |
| 662 | Z_NULL, then only the dictionary length is returned, and nothing is copied. |
| 663 | Similarly, if dictLength is Z_NULL, then it is not set. |
| 664 | |
| 665 | deflateGetDictionary() may return a length less than the window size, even |
| 666 | when more than the window size in input has been provided. It may return up |
| 667 | to 258 bytes less in that case, due to how zlib's implementation of deflate |
| 668 | manages the sliding window and lookahead for matches, where matches can be |
| @@ -913,11 +913,11 @@ | |
| 913 | Returns the sliding dictionary being maintained by inflate. dictLength is |
| 914 | set to the number of bytes in the dictionary, and that many bytes are copied |
| 915 | to dictionary. dictionary must have enough space, where 32768 bytes is |
| 916 | always enough. If inflateGetDictionary() is called with dictionary equal to |
| 917 | Z_NULL, then only the dictionary length is returned, and nothing is copied. |
| 918 | Similarly, if dictLength is Z_NULL, then it is not set. |
| 919 | |
| 920 | inflateGetDictionary returns Z_OK on success, or Z_STREAM_ERROR if the |
| 921 | stream state is inconsistent. |
| 922 | */ |
| 923 | |
| @@ -1435,16 +1435,16 @@ | |
| 1435 | nitems overflows, i.e. the product does not fit in a z_size_t, then nothing |
| 1436 | is read, zero is returned, and the error state is set to Z_STREAM_ERROR. |
| 1437 | |
| 1438 | In the event that the end of file is reached and only a partial item is |
| 1439 | available at the end, i.e. the remaining uncompressed data length is not a |
| 1440 | multiple of size, then the final partial item is nevertheless read into buf |
| 1441 | and the end-of-file flag is set. The length of the partial item read is not |
| 1442 | provided, but could be inferred from the result of gztell(). This behavior |
| 1443 | is the same as the behavior of fread() implementations in common libraries, |
| 1444 | but it prevents the direct use of gzfread() to read a concurrently written |
| 1445 | file, resetting and retrying on end-of-file, when size is not 1. |
| 1446 | */ |
| 1447 | |
| 1448 | ZEXTERN int ZEXPORT gzwrite OF((gzFile file, voidpc buf, unsigned len)); |
| 1449 | /* |
| 1450 | Compress and write the len uncompressed bytes at buf to file. gzwrite |
| @@ -1911,11 +1911,11 @@ | |
| 1911 | ZEXTERN const char * ZEXPORT zError OF((int)); |
| 1912 | ZEXTERN int ZEXPORT inflateSyncPoint OF((z_streamp)); |
| 1913 | ZEXTERN const z_crc_t FAR * ZEXPORT get_crc_table OF((void)); |
| 1914 | ZEXTERN int ZEXPORT inflateUndermine OF((z_streamp, int)); |
| 1915 | ZEXTERN int ZEXPORT inflateValidate OF((z_streamp, int)); |
| 1916 | ZEXTERN unsigned long ZEXPORT inflateCodesUsed OF((z_streamp)); |
| 1917 | ZEXTERN int ZEXPORT inflateResetKeep OF((z_streamp)); |
| 1918 | ZEXTERN int ZEXPORT deflateResetKeep OF((z_streamp)); |
| 1919 | #if defined(_WIN32) && !defined(Z_SOLO) |
| 1920 | ZEXTERN gzFile ZEXPORT gzopen_w OF((const wchar_t *path, |
| 1921 | const char *mode)); |
| 1922 |
+2
-2
| --- compat/zlib/zlib2ansi | ||
| +++ compat/zlib/zlib2ansi | ||
| @@ -6,11 +6,11 @@ | ||
| 6 | 6 | # Version: 1.0 |
| 7 | 7 | # Date: 3 October 2006 |
| 8 | 8 | |
| 9 | 9 | # TODO |
| 10 | 10 | # |
| 11 | -# Asumes no function pointer parameters. unless they are typedefed. | |
| 11 | +# Assumes no function pointer parameters. unless they are typedefed. | |
| 12 | 12 | # Assumes no literal strings that look like function definitions |
| 13 | 13 | # Assumes functions start at the beginning of a line |
| 14 | 14 | |
| 15 | 15 | use strict; |
| 16 | 16 | use warnings; |
| @@ -102,11 +102,11 @@ | ||
| 102 | 102 | sub StripComments |
| 103 | 103 | { |
| 104 | 104 | |
| 105 | 105 | no warnings; |
| 106 | 106 | |
| 107 | - # Strip C & C++ coments | |
| 107 | + # Strip C & C++ comments | |
| 108 | 108 | # From the perlfaq |
| 109 | 109 | $_[0] =~ |
| 110 | 110 | |
| 111 | 111 | s{ |
| 112 | 112 | /\* ## Start of /* ... */ comment |
| 113 | 113 |
| --- compat/zlib/zlib2ansi | |
| +++ compat/zlib/zlib2ansi | |
| @@ -6,11 +6,11 @@ | |
| 6 | # Version: 1.0 |
| 7 | # Date: 3 October 2006 |
| 8 | |
| 9 | # TODO |
| 10 | # |
| 11 | # Asumes no function pointer parameters. unless they are typedefed. |
| 12 | # Assumes no literal strings that look like function definitions |
| 13 | # Assumes functions start at the beginning of a line |
| 14 | |
| 15 | use strict; |
| 16 | use warnings; |
| @@ -102,11 +102,11 @@ | |
| 102 | sub StripComments |
| 103 | { |
| 104 | |
| 105 | no warnings; |
| 106 | |
| 107 | # Strip C & C++ coments |
| 108 | # From the perlfaq |
| 109 | $_[0] =~ |
| 110 | |
| 111 | s{ |
| 112 | /\* ## Start of /* ... */ comment |
| 113 |
| --- compat/zlib/zlib2ansi | |
| +++ compat/zlib/zlib2ansi | |
| @@ -6,11 +6,11 @@ | |
| 6 | # Version: 1.0 |
| 7 | # Date: 3 October 2006 |
| 8 | |
| 9 | # TODO |
| 10 | # |
| 11 | # Assumes no function pointer parameters. unless they are typedefed. |
| 12 | # Assumes no literal strings that look like function definitions |
| 13 | # Assumes functions start at the beginning of a line |
| 14 | |
| 15 | use strict; |
| 16 | use warnings; |
| @@ -102,11 +102,11 @@ | |
| 102 | sub StripComments |
| 103 | { |
| 104 | |
| 105 | no warnings; |
| 106 | |
| 107 | # Strip C & C++ comments |
| 108 | # From the perlfaq |
| 109 | $_[0] =~ |
| 110 | |
| 111 | s{ |
| 112 | /\* ## Start of /* ... */ comment |
| 113 |
+9
-7
| --- compat/zlib/zutil.c | ||
| +++ compat/zlib/zutil.c | ||
| @@ -59,13 +59,15 @@ | ||
| 59 | 59 | default: flags += 3 << 6; |
| 60 | 60 | } |
| 61 | 61 | #ifdef ZLIB_DEBUG |
| 62 | 62 | flags += 1 << 8; |
| 63 | 63 | #endif |
| 64 | + /* | |
| 64 | 65 | #if defined(ASMV) || defined(ASMINF) |
| 65 | 66 | flags += 1 << 9; |
| 66 | 67 | #endif |
| 68 | + */ | |
| 67 | 69 | #ifdef ZLIB_WINAPI |
| 68 | 70 | flags += 1 << 10; |
| 69 | 71 | #endif |
| 70 | 72 | #ifdef BUILDFIXED |
| 71 | 73 | flags += 1 << 12; |
| @@ -117,11 +119,11 @@ | ||
| 117 | 119 | # ifndef verbose |
| 118 | 120 | # define verbose 0 |
| 119 | 121 | # endif |
| 120 | 122 | int ZLIB_INTERNAL z_verbose = verbose; |
| 121 | 123 | |
| 122 | -void ZLIB_INTERNAL z_error (m) | |
| 124 | +void ZLIB_INTERNAL z_error(m) | |
| 123 | 125 | char *m; |
| 124 | 126 | { |
| 125 | 127 | fprintf(stderr, "%s\n", m); |
| 126 | 128 | exit(1); |
| 127 | 129 | } |
| @@ -212,11 +214,11 @@ | ||
| 212 | 214 | * Since MSDOS is not a preemptive multitasking OS, this table is not |
| 213 | 215 | * protected from concurrent access. This hack doesn't work anyway on |
| 214 | 216 | * a protected system like OS/2. Use Microsoft C instead. |
| 215 | 217 | */ |
| 216 | 218 | |
| 217 | -voidpf ZLIB_INTERNAL zcalloc (voidpf opaque, unsigned items, unsigned size) | |
| 219 | +voidpf ZLIB_INTERNAL zcalloc(voidpf opaque, unsigned items, unsigned size) | |
| 218 | 220 | { |
| 219 | 221 | voidpf buf; |
| 220 | 222 | ulg bsize = (ulg)items*size; |
| 221 | 223 | |
| 222 | 224 | (void)opaque; |
| @@ -238,11 +240,11 @@ | ||
| 238 | 240 | *(ush*)&buf = 0; |
| 239 | 241 | table[next_ptr++].new_ptr = buf; |
| 240 | 242 | return buf; |
| 241 | 243 | } |
| 242 | 244 | |
| 243 | -void ZLIB_INTERNAL zcfree (voidpf opaque, voidpf ptr) | |
| 245 | +void ZLIB_INTERNAL zcfree(voidpf opaque, voidpf ptr) | |
| 244 | 246 | { |
| 245 | 247 | int n; |
| 246 | 248 | |
| 247 | 249 | (void)opaque; |
| 248 | 250 | |
| @@ -275,17 +277,17 @@ | ||
| 275 | 277 | #if (!defined(_MSC_VER) || (_MSC_VER <= 600)) |
| 276 | 278 | # define _halloc halloc |
| 277 | 279 | # define _hfree hfree |
| 278 | 280 | #endif |
| 279 | 281 | |
| 280 | -voidpf ZLIB_INTERNAL zcalloc (voidpf opaque, uInt items, uInt size) | |
| 282 | +voidpf ZLIB_INTERNAL zcalloc(voidpf opaque, uInt items, uInt size) | |
| 281 | 283 | { |
| 282 | 284 | (void)opaque; |
| 283 | 285 | return _halloc((long)items, size); |
| 284 | 286 | } |
| 285 | 287 | |
| 286 | -void ZLIB_INTERNAL zcfree (voidpf opaque, voidpf ptr) | |
| 288 | +void ZLIB_INTERNAL zcfree(voidpf opaque, voidpf ptr) | |
| 287 | 289 | { |
| 288 | 290 | (void)opaque; |
| 289 | 291 | _hfree(ptr); |
| 290 | 292 | } |
| 291 | 293 | |
| @@ -300,21 +302,21 @@ | ||
| 300 | 302 | extern voidp malloc OF((uInt size)); |
| 301 | 303 | extern voidp calloc OF((uInt items, uInt size)); |
| 302 | 304 | extern void free OF((voidpf ptr)); |
| 303 | 305 | #endif |
| 304 | 306 | |
| 305 | -voidpf ZLIB_INTERNAL zcalloc (opaque, items, size) | |
| 307 | +voidpf ZLIB_INTERNAL zcalloc(opaque, items, size) | |
| 306 | 308 | voidpf opaque; |
| 307 | 309 | unsigned items; |
| 308 | 310 | unsigned size; |
| 309 | 311 | { |
| 310 | 312 | (void)opaque; |
| 311 | 313 | return sizeof(uInt) > 2 ? (voidpf)malloc(items * size) : |
| 312 | 314 | (voidpf)calloc(items, size); |
| 313 | 315 | } |
| 314 | 316 | |
| 315 | -void ZLIB_INTERNAL zcfree (opaque, ptr) | |
| 317 | +void ZLIB_INTERNAL zcfree(opaque, ptr) | |
| 316 | 318 | voidpf opaque; |
| 317 | 319 | voidpf ptr; |
| 318 | 320 | { |
| 319 | 321 | (void)opaque; |
| 320 | 322 | free(ptr); |
| 321 | 323 |
| --- compat/zlib/zutil.c | |
| +++ compat/zlib/zutil.c | |
| @@ -59,13 +59,15 @@ | |
| 59 | default: flags += 3 << 6; |
| 60 | } |
| 61 | #ifdef ZLIB_DEBUG |
| 62 | flags += 1 << 8; |
| 63 | #endif |
| 64 | #if defined(ASMV) || defined(ASMINF) |
| 65 | flags += 1 << 9; |
| 66 | #endif |
| 67 | #ifdef ZLIB_WINAPI |
| 68 | flags += 1 << 10; |
| 69 | #endif |
| 70 | #ifdef BUILDFIXED |
| 71 | flags += 1 << 12; |
| @@ -117,11 +119,11 @@ | |
| 117 | # ifndef verbose |
| 118 | # define verbose 0 |
| 119 | # endif |
| 120 | int ZLIB_INTERNAL z_verbose = verbose; |
| 121 | |
| 122 | void ZLIB_INTERNAL z_error (m) |
| 123 | char *m; |
| 124 | { |
| 125 | fprintf(stderr, "%s\n", m); |
| 126 | exit(1); |
| 127 | } |
| @@ -212,11 +214,11 @@ | |
| 212 | * Since MSDOS is not a preemptive multitasking OS, this table is not |
| 213 | * protected from concurrent access. This hack doesn't work anyway on |
| 214 | * a protected system like OS/2. Use Microsoft C instead. |
| 215 | */ |
| 216 | |
| 217 | voidpf ZLIB_INTERNAL zcalloc (voidpf opaque, unsigned items, unsigned size) |
| 218 | { |
| 219 | voidpf buf; |
| 220 | ulg bsize = (ulg)items*size; |
| 221 | |
| 222 | (void)opaque; |
| @@ -238,11 +240,11 @@ | |
| 238 | *(ush*)&buf = 0; |
| 239 | table[next_ptr++].new_ptr = buf; |
| 240 | return buf; |
| 241 | } |
| 242 | |
| 243 | void ZLIB_INTERNAL zcfree (voidpf opaque, voidpf ptr) |
| 244 | { |
| 245 | int n; |
| 246 | |
| 247 | (void)opaque; |
| 248 | |
| @@ -275,17 +277,17 @@ | |
| 275 | #if (!defined(_MSC_VER) || (_MSC_VER <= 600)) |
| 276 | # define _halloc halloc |
| 277 | # define _hfree hfree |
| 278 | #endif |
| 279 | |
| 280 | voidpf ZLIB_INTERNAL zcalloc (voidpf opaque, uInt items, uInt size) |
| 281 | { |
| 282 | (void)opaque; |
| 283 | return _halloc((long)items, size); |
| 284 | } |
| 285 | |
| 286 | void ZLIB_INTERNAL zcfree (voidpf opaque, voidpf ptr) |
| 287 | { |
| 288 | (void)opaque; |
| 289 | _hfree(ptr); |
| 290 | } |
| 291 | |
| @@ -300,21 +302,21 @@ | |
| 300 | extern voidp malloc OF((uInt size)); |
| 301 | extern voidp calloc OF((uInt items, uInt size)); |
| 302 | extern void free OF((voidpf ptr)); |
| 303 | #endif |
| 304 | |
| 305 | voidpf ZLIB_INTERNAL zcalloc (opaque, items, size) |
| 306 | voidpf opaque; |
| 307 | unsigned items; |
| 308 | unsigned size; |
| 309 | { |
| 310 | (void)opaque; |
| 311 | return sizeof(uInt) > 2 ? (voidpf)malloc(items * size) : |
| 312 | (voidpf)calloc(items, size); |
| 313 | } |
| 314 | |
| 315 | void ZLIB_INTERNAL zcfree (opaque, ptr) |
| 316 | voidpf opaque; |
| 317 | voidpf ptr; |
| 318 | { |
| 319 | (void)opaque; |
| 320 | free(ptr); |
| 321 |
| --- compat/zlib/zutil.c | |
| +++ compat/zlib/zutil.c | |
| @@ -59,13 +59,15 @@ | |
| 59 | default: flags += 3 << 6; |
| 60 | } |
| 61 | #ifdef ZLIB_DEBUG |
| 62 | flags += 1 << 8; |
| 63 | #endif |
| 64 | /* |
| 65 | #if defined(ASMV) || defined(ASMINF) |
| 66 | flags += 1 << 9; |
| 67 | #endif |
| 68 | */ |
| 69 | #ifdef ZLIB_WINAPI |
| 70 | flags += 1 << 10; |
| 71 | #endif |
| 72 | #ifdef BUILDFIXED |
| 73 | flags += 1 << 12; |
| @@ -117,11 +119,11 @@ | |
| 119 | # ifndef verbose |
| 120 | # define verbose 0 |
| 121 | # endif |
| 122 | int ZLIB_INTERNAL z_verbose = verbose; |
| 123 | |
| 124 | void ZLIB_INTERNAL z_error(m) |
| 125 | char *m; |
| 126 | { |
| 127 | fprintf(stderr, "%s\n", m); |
| 128 | exit(1); |
| 129 | } |
| @@ -212,11 +214,11 @@ | |
| 214 | * Since MSDOS is not a preemptive multitasking OS, this table is not |
| 215 | * protected from concurrent access. This hack doesn't work anyway on |
| 216 | * a protected system like OS/2. Use Microsoft C instead. |
| 217 | */ |
| 218 | |
| 219 | voidpf ZLIB_INTERNAL zcalloc(voidpf opaque, unsigned items, unsigned size) |
| 220 | { |
| 221 | voidpf buf; |
| 222 | ulg bsize = (ulg)items*size; |
| 223 | |
| 224 | (void)opaque; |
| @@ -238,11 +240,11 @@ | |
| 240 | *(ush*)&buf = 0; |
| 241 | table[next_ptr++].new_ptr = buf; |
| 242 | return buf; |
| 243 | } |
| 244 | |
| 245 | void ZLIB_INTERNAL zcfree(voidpf opaque, voidpf ptr) |
| 246 | { |
| 247 | int n; |
| 248 | |
| 249 | (void)opaque; |
| 250 | |
| @@ -275,17 +277,17 @@ | |
| 277 | #if (!defined(_MSC_VER) || (_MSC_VER <= 600)) |
| 278 | # define _halloc halloc |
| 279 | # define _hfree hfree |
| 280 | #endif |
| 281 | |
| 282 | voidpf ZLIB_INTERNAL zcalloc(voidpf opaque, uInt items, uInt size) |
| 283 | { |
| 284 | (void)opaque; |
| 285 | return _halloc((long)items, size); |
| 286 | } |
| 287 | |
| 288 | void ZLIB_INTERNAL zcfree(voidpf opaque, voidpf ptr) |
| 289 | { |
| 290 | (void)opaque; |
| 291 | _hfree(ptr); |
| 292 | } |
| 293 | |
| @@ -300,21 +302,21 @@ | |
| 302 | extern voidp malloc OF((uInt size)); |
| 303 | extern voidp calloc OF((uInt items, uInt size)); |
| 304 | extern void free OF((voidpf ptr)); |
| 305 | #endif |
| 306 | |
| 307 | voidpf ZLIB_INTERNAL zcalloc(opaque, items, size) |
| 308 | voidpf opaque; |
| 309 | unsigned items; |
| 310 | unsigned size; |
| 311 | { |
| 312 | (void)opaque; |
| 313 | return sizeof(uInt) > 2 ? (voidpf)malloc(items * size) : |
| 314 | (voidpf)calloc(items, size); |
| 315 | } |
| 316 | |
| 317 | void ZLIB_INTERNAL zcfree(opaque, ptr) |
| 318 | voidpf opaque; |
| 319 | voidpf ptr; |
| 320 | { |
| 321 | (void)opaque; |
| 322 | free(ptr); |
| 323 |
+1
| --- compat/zlib/zutil.h | ||
| +++ compat/zlib/zutil.h | ||
| @@ -191,10 +191,11 @@ | ||
| 191 | 191 | /* provide prototypes for these when building zlib without LFS */ |
| 192 | 192 | #if !defined(_WIN32) && \ |
| 193 | 193 | (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0) |
| 194 | 194 | ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t)); |
| 195 | 195 | ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t)); |
| 196 | + ZEXTERN uLong ZEXPORT crc32_combine_gen64 OF((z_off_t)); | |
| 196 | 197 | #endif |
| 197 | 198 | |
| 198 | 199 | /* common defaults */ |
| 199 | 200 | |
| 200 | 201 | #ifndef OS_CODE |
| 201 | 202 |
| --- compat/zlib/zutil.h | |
| +++ compat/zlib/zutil.h | |
| @@ -191,10 +191,11 @@ | |
| 191 | /* provide prototypes for these when building zlib without LFS */ |
| 192 | #if !defined(_WIN32) && \ |
| 193 | (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0) |
| 194 | ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t)); |
| 195 | ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t)); |
| 196 | #endif |
| 197 | |
| 198 | /* common defaults */ |
| 199 | |
| 200 | #ifndef OS_CODE |
| 201 |
| --- compat/zlib/zutil.h | |
| +++ compat/zlib/zutil.h | |
| @@ -191,10 +191,11 @@ | |
| 191 | /* provide prototypes for these when building zlib without LFS */ |
| 192 | #if !defined(_WIN32) && \ |
| 193 | (!defined(_LARGEFILE64_SOURCE) || _LFS64_LARGEFILE-0 == 0) |
| 194 | ZEXTERN uLong ZEXPORT adler32_combine64 OF((uLong, uLong, z_off_t)); |
| 195 | ZEXTERN uLong ZEXPORT crc32_combine64 OF((uLong, uLong, z_off_t)); |
| 196 | ZEXTERN uLong ZEXPORT crc32_combine_gen64 OF((z_off_t)); |
| 197 | #endif |
| 198 | |
| 199 | /* common defaults */ |
| 200 | |
| 201 | #ifndef OS_CODE |
| 202 |