annotate auto/cc/icc @ 138:8e6d4d96ec4c NGINX_0_3_16

nginx 0.3.16 *) Feature: the ngx_http_map_module. *) Feature: the "types_hash_max_size" and "types_hash_bucket_size" directives. *) Feature: the "ssi_value_length" directive. *) Feature: the "worker_rlimit_core" directive. *) Workaround: the connection number in logs was always 1 if nginx was built by the icc 8.1 or 9.0 compilers with optimization for Pentium 4. *) Bugfix: the "config timefmt" SSI command set incorrect time format. *) Bugfix: nginx did not close connection to IMAP/POP3 backend for the SSL connections; bug appeared in 0.3.13. Thanks to Rob Mueller. *) Bugfix: segmentation fault may occurred in at SSL shutdown; bug appeared in 0.3.13.
author Igor Sysoev <http://sysoev.ru>
date Fri, 16 Dec 2005 00:00:00 +0300
parents df17fbafec8f
children e1c6ac408b68
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
1
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
2 # Copyright (C) Igor Sysoev
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
3
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
4
138
8e6d4d96ec4c nginx 0.3.16
Igor Sysoev <http://sysoev.ru>
parents: 126
diff changeset
5 # Intel C++ compiler 7.1, 8.0, 8.1, 9.0
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
6
70
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
7 NGX_ICC_VER=`$CC -V 2>&1 | grep 'Version' 2>&1 \
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
8 | sed -e 's/^.* Version \(.*\) Build.*$/\1/'`
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
9
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
10 echo " + icc version: $NGX_ICC_VER"
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
11
106
45f7329b4bd0 nginx 0.3.0
Igor Sysoev <http://sysoev.ru>
parents: 104
diff changeset
12 have=NGX_COMPILER value="\"Intel C Compiler $NGX_ICC_VER\"" . auto/define
45f7329b4bd0 nginx 0.3.0
Igor Sysoev <http://sysoev.ru>
parents: 104
diff changeset
13
70
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
14
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
15 # optimizations
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
16
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
17 CFLAGS="$CFLAGS -O"
50
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
18 # inline the functions declared with __inline
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
19 #CFLAGS="$CFLAGS -Ob1"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
20 # inline any function, at the compiler's discretion
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
21 CFLAGS="$CFLAGS -Ob2"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
22
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
23 # single-file IP optimizations
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
24 #IPO="-ip"
112
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
25
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
26 # multi-file IP optimizations
112
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
27 case "$NGX_ICC_VER" in
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
28 9.*)
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
29 IPO="-ipo"
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
30 ;;
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
31
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
32 *)
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
33 IPO="-ipo -ipo_obj"
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
34 ;;
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
35 esac
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
36
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
37 CFLAGS="$CFLAGS $IPO"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
38 CORE_LINK="$CORE_LINK $IPO"
18
6f8b0dc0f8dd nginx 0.1.9
Igor Sysoev <http://sysoev.ru>
parents: 10
diff changeset
39 CORE_LINK="$CORE_LINK -opt_report_file=$NGX_OBJS/opt_report_file"
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
40
122
d25a1d6034f1 nginx 0.3.8
Igor Sysoev <http://sysoev.ru>
parents: 112
diff changeset
41
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
42 case $CPU in
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
43 pentium)
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
44 # optimize for Pentium and Athlon
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
45 CPU_OPT="-march=pentium"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
46 ;;
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
47
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
48 pentiumpro)
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
49 # optimize for Pentium Pro, Pentium II and Pentium III
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
50 CPU_OPT="-mcpu=pentiumpro -march=pentiumpro"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
51 ;;
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
52
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
53 pentium4)
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
54 # optimize for Pentium 4, default
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
55 CPU_OPT="-march=pentium4"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
56 ;;
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
57 esac
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
58
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
59 CFLAGS="$CFLAGS $CPU_OPT"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
60
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
61 if [ ".$PCRE_OPT" = "." ]; then
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
62 PCRE_OPT="-O $IPO $CPU_OPT"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
63 fi
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
64
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
65 if [ ".$MD5_OPT" = "." ]; then
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
66 MD5_OPT="-O $IPO $CPU_OPT"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
67 fi
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
68
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
69 if [ ".$ZLIB_OPT" = "." ]; then
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
70 ZLIB_OPT="-O $IPO $CPU_OPT"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
71 fi
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
72
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
73
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
74 # warnings
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
75
50
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
76 CFLAGS="$CFLAGS -w2"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
77
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
78 # disable some warnings
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
79
50
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
80 # invalid type conversion: "int" to "char *"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
81 CFLAGS="$CFLAGS -wd171"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
82 # argument is incompatible with corresponding format string conversion
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
83 CFLAGS="$CFLAGS -wd181"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
84 # zero used for undefined preprocessing identifier
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
85 CFLAGS="$CFLAGS -wd193"
112
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
86 # the format string ends before this argument
68
056fd0e5a5a6 nginx 0.1.34
Igor Sysoev <http://sysoev.ru>
parents: 50
diff changeset
87 CFLAGS="$CFLAGS -wd268"
50
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
88 # invalid format string conversion
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
89 CFLAGS="$CFLAGS -wd269"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
90 # conversion from "long long" to "size_t" may lose significant bits
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
91 CFLAGS="$CFLAGS -wd810"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
92 # parameter was never referenced
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
93 CFLAGS="$CFLAGS -wd869"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
94
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
95 # STUB
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
96 # enumerated type mixed with another type
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
97 CFLAGS="$CFLAGS -wd188"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
98 # controlling expression is constant
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
99 CFLAGS="$CFLAGS -wd279"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
100 # operands are evaluated in unspecified order
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
101 CFLAGS="$CFLAGS -wd981"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
102 # external definition with no prior declaration
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
103 CFLAGS="$CFLAGS -wd1418"
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
104 # external declaration in primary source file
72eb30262aac nginx 0.1.25
Igor Sysoev <http://sysoev.ru>
parents: 42
diff changeset
105 CFLAGS="$CFLAGS -wd1419"
70
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
106
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
107 case "$NGX_ICC_VER" in
122
d25a1d6034f1 nginx 0.3.8
Igor Sysoev <http://sysoev.ru>
parents: 112
diff changeset
108 9.*)
126
df17fbafec8f nginx 0.3.10
Igor Sysoev <http://sysoev.ru>
parents: 122
diff changeset
109 # "cc" clobber ignored, warnings for Liunx's htonl()/htons()
70
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
110 CFLAGS="$CFLAGS -wd1469"
112
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
111 # explicit conversion of a 64-bit integral type to a smaller
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
112 # integral type
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
113 CFLAGS="$CFLAGS -wd1683"
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
114 # conversion from pointer to same-sized integral type,
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
115 # warning on offsetof()
408f195b3482 nginx 0.3.3
Igor Sysoev <http://sysoev.ru>
parents: 110
diff changeset
116 CFLAGS="$CFLAGS -wd1684"
70
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
117 ;;
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
118
122
d25a1d6034f1 nginx 0.3.8
Igor Sysoev <http://sysoev.ru>
parents: 112
diff changeset
119 8.*)
126
df17fbafec8f nginx 0.3.10
Igor Sysoev <http://sysoev.ru>
parents: 122
diff changeset
120 # "cc" clobber ignored, warnings for Liunx's htonl()/htons()
122
d25a1d6034f1 nginx 0.3.8
Igor Sysoev <http://sysoev.ru>
parents: 112
diff changeset
121 CFLAGS="$CFLAGS -wd1469"
d25a1d6034f1 nginx 0.3.8
Igor Sysoev <http://sysoev.ru>
parents: 112
diff changeset
122 ;;
d25a1d6034f1 nginx 0.3.8
Igor Sysoev <http://sysoev.ru>
parents: 112
diff changeset
123
70
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
124 *)
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
125 ;;
8ad297c88dcb nginx 0.1.35
Igor Sysoev <http://sysoev.ru>
parents: 68
diff changeset
126 esac
28
7ca9bdc82b3f nginx 0.1.14
Igor Sysoev <http://sysoev.ru>
parents: 18
diff changeset
127
4
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
128 # stop on warning
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
129 CFLAGS="$CFLAGS -Werror"
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
130
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
131 # debug
4b2dafa26fe2 nginx 0.1.2
Igor Sysoev <http://sysoev.ru>
parents:
diff changeset
132 CFLAGS="$CFLAGS -g"