From a51fa0f4caad62b4dcc3590a9ec611236b8ef1f9 Mon Sep 17 00:00:00 2001 From: Michael Meissner Date: Fri, 25 Jul 2008 23:44:24 +0000 Subject: Fix IA-64 breakage... Fix IA-64 breakage; Make hot/cold optimization conversation port specific; Move disabling of scheduling from OVERRIDE_OPTIONS to OPTIMIZATION_OPTIONS Files modified: gcc/doc/extend.texi gcc/doc/tm.texi gcc/target.h gcc/ChangeLog gcc/testsuite/gcc.target/i386/cmov8.c gcc/testsuite/gcc.target/i386/funcspec-10.c gcc/testsuite/gcc.target/i386/funcspec-11.c gcc/testsuite/ChangeLog gcc/target-def.h gcc/c-common.c gcc/config/i386/i386.c gcc/config/ia64/ia64.c From-SVN: r138154 --- gcc/doc/extend.texi | 10 ++++++---- gcc/doc/tm.texi | 7 +++---- 2 files changed, 9 insertions(+), 8 deletions(-) (limited to 'gcc/doc') diff --git a/gcc/doc/extend.texi b/gcc/doc/extend.texi index a804092..4b1d302 100644 --- a/gcc/doc/extend.texi +++ b/gcc/doc/extend.texi @@ -2853,7 +2853,7 @@ that affect more than one function. This can be used for instance to have frequently executed functions compiled with more aggressive optimization options that produce faster and larger code, while other functions can be called with less -aggressive options. The @code{hot} attribute implies +aggressive options. On some targets, the @code{hot} attribute implies @code{optimize("O3")}, and @code{cold} attribute implies @code{optimize("Os")}. @@ -2903,8 +2903,9 @@ are automatically detected and this attribute is ignored. The @code{hot} attribute is not implemented in GCC versions earlier than 4.3. -Starting with GCC 4.4, the @code{hot} attribute sets -@code{optimize("O3")} to turn on more aggressive optimization. +Starting with GCC 4.4, the @code{cold} attribute sets +@code{optimize("O3")} to turn on more aggressive optimization on the +the i386, x86_64, and IA-64 targets. @item cold @cindex @code{cold} function attribute @@ -2924,7 +2925,8 @@ are automatically detected and this attribute is ignored. The @code{cold} attribute is not implemented in GCC versions earlier than 4.3. Starting with GCC 4.4, the @code{cold} attribute sets -@code{optimize("Os")} to save space. +@code{optimize("Os")} to save space on the the i386, x86_64, and IA-64 +targets. @item regparm (@var{number}) @cindex @code{regparm} attribute diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 274e69b..5183736 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -833,10 +833,9 @@ specified, 1 if @option{-O} is specified, and 0 if neither is specified. @var{size} is nonzero if @option{-Os} is specified and zero otherwise. -You should not use this macro to change options that are not -machine-specific. These should uniformly selected by the same -optimization level on all supported machines. Use this macro to enable -machine-specific optimizations. +This macro is run once at program startup and when the optimization +options are changed via @code{#pragma GCC optimize} or by using the +@code{optimize} attribute. @strong{Do not examine @code{write_symbols} in this macro!} The debugging options are not supposed to alter the -- cgit v1.1