# HG changeset patch # User martinb # Date 988874231 0 # Node ID 36b504cdc45f13a615a949242cc34bd07fe7ab62 # Parent 88e7e9bafe19881df18be56184eac9579fa5a388 [xemacs-hg @ 2001-05-03 07:17:11 by martinb] Fix crash with xlc -O3. diff -r 88e7e9bafe19 -r 36b504cdc45f src/s/aix4.h --- a/src/s/aix4.h Wed May 02 16:08:11 2001 +0000 +++ b/src/s/aix4.h Thu May 03 07:17:11 2001 +0000 @@ -17,14 +17,19 @@ #ifdef __xlC__ /* "eXceLlent C compiler" ?! */ #if __xlC__ >= 1200 -/* IBM's C compiler miscompiles bytecount_to_charcount at high levels - of optimization. From IBM's docs: +/* IBM's C compiler option `-O3' is too aggressive. + We recommend instead the combination `-O3 -qstrict', which seems safe. + + cc -O3 miscompiles at least two functions. From IBM's docs: + + IBM> -qstrict turns off the following optimizations: - -qstrict turns off the following optimizations: + IBM> Performing code motion and scheduling on computations such as loads + IBM> and floating-point computations that may trigger an exception. - Performing code motion and scheduling on computations such as loads - and floating-point computations that may trigger an exception. */ + Nevertheless, we try to work with these compiler options. */ #pragma option_override (bytecount_to_charcount, "opt(strict,yes)") +#pragma option_override (Fexpand_file_name, "opt(strict,yes)") #endif /* recent IBM C compiler */ #endif /* IBM's C compiler */