ia64: minor Makefile simplification through use of cc-ifversion
diff mbox

Message ID 20090724231511.GA20607@linux-os.sc.intel.com
State New, archived
Headers show

Commit Message

Fenghua Yu July 24, 2009, 11:15 p.m. UTC
On Fri, Jul 24, 2009 at 11:23:11AM -0700, Frans Pop wrote:
> On Friday 24 July 2009, Peter Chubb wrote:
> > >>>>> "Sam" == Sam Ravnborg <sam@ravnborg.org> writes:
> > Sam> The above change is correct.  But I really wonder if the original
> > Sam> code was correct?  Do we really only want to use the -mtune
> > Sam> options for this specific gcc version?  If this is indeed the
> > Sam> case this deserves a comment explaning this.
> >
> > I suspect it should be all compilers after this one.  -mtune=mckinley
> > didn't work very well in the early gcc 3 compilers and didn't exist in
> > version 2.
> 
> How would you like to handle that? As it is essentially a separate issue,
> my suggestion would be: apply my patch as is and then (if needed) commit
> a separate patch to fix the incorrect comparisons on top.

Between GCC version 3.4.0 and 4.3.3 (including 3.4.0 and 4.3.3), -mtune=merced is
implemented in GCC. Starting from 4.4.0, -mtune=merced is deprecated.

Even implemented in versions between 3.4.0 and 4.3.3, the -mtune=merced
feature has been broken in some of the versions. For example, GCC 4.1.2 reports
interanl tuning function errors during kernel building with -mtune=merced. Or GCC
Bugzilla 16130 reports another -mtune=merced issue on GCC 3.4.1.

So I would remove the -mtune=merced from IA64 kernel build. Without this option,
kernel on Merced will remain the same except losing an unstable and out-of-date
performance tunning feature.

Since GCC version 3.4.0, -mtune=mckinley has been implemented. The
-mtune=mckinley option functions the same as mtune=itanium2. And mtune=itanium2
is the default option. So we don't need to add mtune=mckinley either since its
been the default option in any GCC version which implements this option.

Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>

---
 arch/ia64/Makefile |    5 -----
 1 files changed, 5 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Comments

Frans Pop July 24, 2009, 11:25 p.m. UTC | #1
On Saturday 25 July 2009, Fenghua Yu wrote:
> Between GCC version 3.4.0 and 4.3.3 (including 3.4.0 and 4.3.3),
> -mtune=merced is implemented in GCC. Starting from 4.4.0, -mtune=merced
> is deprecated.
>
> Even implemented in versions between 3.4.0 and 4.3.3, the -mtune=merced
> feature has been broken in some of the versions. For example, GCC 4.1.2
> reports interanl tuning function errors during kernel building with
> -mtune=merced. Or GCC Bugzilla 16130 reports another -mtune=merced
> issue on GCC 3.4.1.
>
> So I would remove the -mtune=merced from IA64 kernel build. Without
> this option, kernel on Merced will remain the same except losing an
> unstable and out-of-date performance tunning feature.
>
> Since GCC version 3.4.0, -mtune=mckinley has been implemented. The
> -mtune=mckinley option functions the same as mtune=itanium2. And
> mtune=itanium2 is the default option. So we don't need to add
> mtune=mckinley either since its been the default option in any GCC
> version which implements this option.
>
> Signed-off-by: Fenghua Yu <fenghua.yu@intel.com>

Fine by me, but you'll probably want to give the commit a different 
subject :-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch
diff mbox

diff --git a/arch/ia64/Makefile b/arch/ia64/Makefile
index 58a7e46..e7cbaa0 100644
--- a/arch/ia64/Makefile
+++ b/arch/ia64/Makefile
@@ -41,11 +41,6 @@  $(error Sorry, you need a newer version of the assember, one that is built from
 		ftp://ftp.hpl.hp.com/pub/linux-ia64/gas-030124.tar.gz)
 endif
 
-ifeq ($(call cc-version),0304)
-	cflags-$(CONFIG_ITANIUM)	+= -mtune=merced
-	cflags-$(CONFIG_MCKINLEY)	+= -mtune=mckinley
-endif
-
 KBUILD_CFLAGS += $(cflags-y)
 head-y := arch/ia64/kernel/head.o arch/ia64/kernel/init_task.o