summaryrefslogtreecommitdiffstats
path: root/contrib/gcc/toplev.c
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2000-03-26 12:56:54 +0000
committerobrien <obrien@FreeBSD.org>2000-03-26 12:56:54 +0000
commit2d22f9eac05a332333a0bbee4b17ceb3eddcce59 (patch)
treee8d4525f694be59c3dc9ac9a81b774e7255535b8 /contrib/gcc/toplev.c
parentab98c8b96bf0e8e3b69bcb3cf1102b28b642842f (diff)
downloadFreeBSD-src-2d22f9eac05a332333a0bbee4b17ceb3eddcce59.zip
FreeBSD-src-2d22f9eac05a332333a0bbee4b17ceb3eddcce59.tar.gz
Yell about -O2 on the Alpha. Forceably downgrade -O2+ if
"FORCE_OPTIMIZATION_DOWNGRADE" is defined when GCC is built.
Diffstat (limited to 'contrib/gcc/toplev.c')
-rw-r--r--contrib/gcc/toplev.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/contrib/gcc/toplev.c b/contrib/gcc/toplev.c
index a5b7b0e..217305a 100644
--- a/contrib/gcc/toplev.c
+++ b/contrib/gcc/toplev.c
@@ -4843,6 +4843,19 @@ main (argc, argv)
if (optimize_val != -1)
{
optimize = optimize_val;
+#ifdef __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
optimize_size = 0;
}
}
OpenPOWER on IntegriCloud