xref: /isa-l/igzip/options.asm (revision f4a5b303e2a7921987d48fb5744b7b347cbc8960)
1;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2;  Copyright(c) 2011-2016 Intel Corporation All rights reserved.
3;
4;  Redistribution and use in source and binary forms, with or without
5;  modification, are permitted provided that the following conditions
6;  are met:
7;    * Redistributions of source code must retain the above copyright
8;      notice, this list of conditions and the following disclaimer.
9;    * Redistributions in binary form must reproduce the above copyright
10;      notice, this list of conditions and the following disclaimer in
11;      the documentation and/or other materials provided with the
12;      distribution.
13;    * Neither the name of Intel Corporation nor the names of its
14;      contributors may be used to endorse or promote products derived
15;      from this software without specific prior written permission.
16;
17;  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
18;  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
19;  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
20;  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
21;  OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
22;  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
23;  LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
24;  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
25;  THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
26;  (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
27;  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
29
30default rel
31
32%ifndef __OPTIONS_ASM__
33%define __OPTIONS_ASM__
34
35; Options:dir
36; m - reschedule mem reads
37; e b - bitbuff style
38; t s x - compare style
39; h - limit hash updates
40; l - use longer huffman table
41; f - fix cache read
42
43%ifndef IGZIP_HIST_SIZE
44%define IGZIP_HIST_SIZE (32 * 1024)
45%endif
46
47%if (IGZIP_HIST_SIZE > (32 * 1024))
48%undef IGZIP_HIST_SIZE
49%define IGZIP_HIST_SIZE (32 * 1024)
50%endif
51
52%ifdef LONGER_HUFFTABLE
53%if (IGZIP_HIST_SIZE > 8 * 1024)
54%undef IGZIP_HIST_SIZE
55%define IGZIP_HIST_SIZE (8 * 1024)
56%endif
57%endif
58
59; (h) limit hash update
60%define LIMIT_HASH_UPDATE
61
62; (f) fix cache read problem
63%define FIX_CACHE_READ
64
65%define ISAL_DEF_MAX_HDR_SIZE 328
66
67%ifidn __OUTPUT_FORMAT__, elf64
68%ifndef __NASM_VER__
69%define WRT_OPT         wrt ..sym
70%else
71%define WRT_OPT
72%endif
73%else
74%define WRT_OPT
75%endif
76
77%endif ; ifndef __OPTIONS_ASM__
78