From cd3f3aab8e337abe90764fb04a24c977624fdecd Mon Sep 17 00:00:00 2001 From: obrien Date: Thu, 16 Aug 2001 06:05:18 +0000 Subject: Add the `WANT_FORCE_OPTIMIZATION_DOWNGRADE' knob. If set to an integer value, it forces GCC to not optimize above this level. For intance, GCC made with "WANT_FORCE_OPTIMIZATION_DOWNGRADE=1" is a good setting for the Alpha platform when building ports. --- contrib/gcc/toplev.c | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) (limited to 'contrib/gcc') diff --git a/contrib/gcc/toplev.c b/contrib/gcc/toplev.c index 95835bb..e9d8886 100644 --- a/contrib/gcc/toplev.c +++ b/contrib/gcc/toplev.c @@ -4851,17 +4851,22 @@ main (argc, argv) if (optimize_val != -1) { optimize = optimize_val; -#ifdef __alpha__ +#ifdef FORCE_OPTIMIZATION_DOWNGRADE +#warning FORCE_OPTIMIZATION_DOWNGRADE + if (optimize > FORCE_OPTIMIZATION_DOWNGRADE) + { + optimize = FORCE_OPTIMIZATION_DOWNGRADE; + warning ("\n***\n***\t-O%d converted to \"-O%d\" due to optimizer bugs on this platform\n***\n", + optimize_val, + FORCE_OPTIMIZATION_DOWNGRADE); + + } +#endif /*FORCE_OPTIMIZATION_DOWNGRADE*/ +#if defined(__alpha__) if (optimize > 1) { - #ifdef FORCE_OPTIMIZATION_DOWNGRADE - optimize = 1; - warning ("\n***\n***\t-O%d converted to \"-O1\" due to optimizer bugs on this platform\n***\n", - optimize_val); - #else warning ("\n***\n***\tThe -O%d flag TRIGGERS KNOWN OPTIMIZER BUGS ON THIS PLATFORM\n***\n", optimize_val); - #endif } #endif /*__alpha__*/ optimize_size = 0; -- cgit v1.1