Re: [PATCH,v2] Only add '-fwrapv' to gcc CFLAGS for gcc 4.2 andlater

From: Sam Ravnborg
Date: Sat Jul 18 2009 - 02:59:14 EST


On Sat, Jul 18, 2009 at 12:43:51AM +0200, Frans Pop wrote:
> On Saturday 18 July 2009, Sam Ravnborg wrote:
> > > # disable invalid "can't wrap" optimizations for signed / pointers
> > > -KBUILD_CFLAGS += $(call cc-option,-fwrapv)
> > > +KBUILD_CFLAGS += $(shell if [ $(call cc-version) -ge 0402 ]; then \
> > > + echo $(call cc-option,-fwrapv); fi ;)
> >
> > This would be simpler if you use:
>
> That's now academic as Linus decided on a different fix.
OK

>
> > # cc-ifversion
> > # Usage: EXTRA_CFLAGS += $(call cc-ifversion, -lt, 0402, -O1)
> > cc-ifversion = $(shell [ $(call cc-version, $(CC)) $(1) $(2) ] && echo $(3))
> >
> > We have only one user at the moment so I understand why you missed it.
>
> :-)
>
> I based my patch on arch/x86/Makefile:
> 35: KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0400 ] ; then \
> 36: echo $(call cc-option,-fno-unit-at-a-time); fi ;)
>
> Guess that could be improved to use cc-ifversion then.
Yes, please...

>
> And a quick git grep gives a few other potential candidates:
> arch/ia64/Makefile:44:ifeq ($(call cc-version),0304)
> arch/parisc/Makefile:129: @if test "$(call cc-version)" -lt "0303"; then \
> arch/powerpc/Makefile:80:GCC_BROKEN_VEC := $(shell if [ $(call cc-version) -lt 0400 ] ; then echo "y"; fi)
> arch/powerpc/Makefile:219: @if test "$(call cc-version)" = "0304" ; then \
> arch/um/Makefile-i386:38:KBUILD_CFLAGS += $(shell if [ $(call cc-version) -lt 0400 ] ; then \
Same goes for these.

Sam
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/