Mercurial > hg > xemacs-beta
comparison src/s/aix4.h @ 499:36b504cdc45f
[xemacs-hg @ 2001-05-03 07:17:11 by martinb]
Fix crash with xlc -O3.
author | martinb |
---|---|
date | Thu, 03 May 2001 07:17:11 +0000 |
parents | 223736d75acb |
children | 943eaba38521 |
comparison
equal
deleted
inserted
replaced
498:88e7e9bafe19 | 499:36b504cdc45f |
---|---|
15 struct ether_addr; | 15 struct ether_addr; |
16 struct sockaddr_dl; | 16 struct sockaddr_dl; |
17 | 17 |
18 #ifdef __xlC__ /* "eXceLlent C compiler" ?! */ | 18 #ifdef __xlC__ /* "eXceLlent C compiler" ?! */ |
19 #if __xlC__ >= 1200 | 19 #if __xlC__ >= 1200 |
20 /* IBM's C compiler miscompiles bytecount_to_charcount at high levels | 20 /* IBM's C compiler option `-O3' is too aggressive. |
21 of optimization. From IBM's docs: | 21 We recommend instead the combination `-O3 -qstrict', which seems safe. |
22 | 22 |
23 -qstrict turns off the following optimizations: | 23 cc -O3 miscompiles at least two functions. From IBM's docs: |
24 | 24 |
25 Performing code motion and scheduling on computations such as loads | 25 IBM> -qstrict turns off the following optimizations: |
26 and floating-point computations that may trigger an exception. */ | 26 |
27 IBM> Performing code motion and scheduling on computations such as loads | |
28 IBM> and floating-point computations that may trigger an exception. | |
29 | |
30 Nevertheless, we try to work with these compiler options. */ | |
27 #pragma option_override (bytecount_to_charcount, "opt(strict,yes)") | 31 #pragma option_override (bytecount_to_charcount, "opt(strict,yes)") |
32 #pragma option_override (Fexpand_file_name, "opt(strict,yes)") | |
28 #endif /* recent IBM C compiler */ | 33 #endif /* recent IBM C compiler */ |
29 #endif /* IBM's C compiler */ | 34 #endif /* IBM's C compiler */ |
30 | 35 |
31 #endif /* C code */ | 36 #endif /* C code */ |
32 | 37 |