On Thu, Sep 10, 2020 at 10:51:18PM +0900, Masahiro Yamada wrote:
> The minimal compiler versions, GCC 4.9 and Clang 10 support this flag.
>
> Here is the godbolt:
> https://godbolt.org/z/8T4177
>
> Signed-off-by: Masahiro Yamada <[email protected]>
For what it's worth, the commit that introduced this block is going to
be reverted:
https://lore.kernel.org/mm-commits/20200903201518.JKrRS%[email protected]/
Regardless, it was introduced in LLVM 2.7.0 in commit
f9d41df0930986c52e198292cf875eb5d1761ece.
Reviewed-by: Nathan Chancellor <[email protected]>
> ---
>
> Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/Makefile b/Makefile
> index 059b36f2ea53..1b6abecc5cab 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -927,7 +927,7 @@ KBUILD_CFLAGS += -fno-strict-overflow
> # clang sets -fmerge-all-constants by default as optimization, but this
> # is non-conforming behavior for C and in fact breaks the kernel, so we
> # need to disable it here generally.
> -KBUILD_CFLAGS += $(call cc-option,-fno-merge-all-constants)
> +KBUILD_CFLAGS += -fno-merge-all-constants
>
> # for gcc -fno-merge-all-constants disables everything, but it is fine
> # to have actual conforming behavior enabled.
> --
> 2.25.1
>
On Fri, Sep 11, 2020 at 1:33 AM Nathan Chancellor
<[email protected]> wrote:
>
> On Thu, Sep 10, 2020 at 10:51:18PM +0900, Masahiro Yamada wrote:
> > The minimal compiler versions, GCC 4.9 and Clang 10 support this flag.
> >
> > Here is the godbolt:
> > https://godbolt.org/z/8T4177
> >
> > Signed-off-by: Masahiro Yamada <[email protected]>
>
> For what it's worth, the commit that introduced this block is going to
> be reverted:
>
> https://lore.kernel.org/mm-commits/20200903201518.JKrRS%[email protected]/
My bad - you are right.
This hunk has already gone by Nick's patch.
Thanks.
> Regardless, it was introduced in LLVM 2.7.0 in commit
> f9d41df0930986c52e198292cf875eb5d1761ece.
>
> Reviewed-by: Nathan Chancellor <[email protected]>
>
> > ---
> >
> > Makefile | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/Makefile b/Makefile
> > index 059b36f2ea53..1b6abecc5cab 100644
> > --- a/Makefile
> > +++ b/Makefile
> > @@ -927,7 +927,7 @@ KBUILD_CFLAGS += -fno-strict-overflow
> > # clang sets -fmerge-all-constants by default as optimization, but this
> > # is non-conforming behavior for C and in fact breaks the kernel, so we
> > # need to disable it here generally.
> > -KBUILD_CFLAGS += $(call cc-option,-fno-merge-all-constants)
> > +KBUILD_CFLAGS += -fno-merge-all-constants
> >
> > # for gcc -fno-merge-all-constants disables everything, but it is fine
> > # to have actual conforming behavior enabled.
> > --
> > 2.25.1
> >
>
> --
> You received this message because you are subscribed to the Google Groups "Clang Built Linux" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
> To view this discussion on the web visit https://groups.google.com/d/msgid/clang-built-linux/20200910163311.GB3119896%40ubuntu-n2-xlarge-x86.
--
Best Regards
Masahiro Yamada