Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 01 Jan 2012 10:24:45 -0600
From:      Nathan Whitehorn <nwhitehorn@freebsd.org>
To:        Dimitry Andric <dim@FreeBSD.org>
Cc:        svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org
Subject:   Re: svn commit: r229169 - head/lib/clang
Message-ID:  <4F0088CD.5010202@freebsd.org>
In-Reply-To: <4F00859C.5020205@FreeBSD.org>
References:  <201201011556.q01FuF5V019342@svn.freebsd.org> <4F00859C.5020205@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On 01/01/12 10:11, Dimitry Andric wrote:
> On 2012-01-01 16:56, Nathan Whitehorn wrote:
>> Author: nwhitehorn
>> Date: Sun Jan  1 15:56:15 2012
>> New Revision: 229169
>> URL: http://svn.freebsd.org/changeset/base/229169
>>
>> Log:
>>    Instead of forcing -O1 on PowerPC for LLVM and clang, fix the actual
>>    problem by adding -fno-strict-aliasing to CFLAGS. Since this is a 
>> global
>>    issue that just happened to manifest on PowerPC, add this to CFLAGS
>>    unconditionally.
>>
>>    MFC after:    1 week
>>
>> Modified:
>>    head/lib/clang/clang.build.mk
>>
>> Modified: head/lib/clang/clang.build.mk
>> ============================================================================== 
>>
>> --- head/lib/clang/clang.build.mk    Sun Jan  1 09:12:21 2012    
>> (r229168)
>> +++ head/lib/clang/clang.build.mk    Sun Jan  1 15:56:15 2012    
>> (r229169)
>> @@ -8,10 +8,8 @@ CFLAGS+=-I${LLVM_SRCS}/include -I${CLANG
>>       -DLLVM_ON_UNIX -DLLVM_ON_FREEBSD \
>>       -D__STDC_LIMIT_MACROS -D__STDC_CONSTANT_MACROS #-DNDEBUG
>>
>> -# Correct for gcc miscompilation when compiling on PPC with -O2
>> -.if ${MACHINE_CPUARCH} == "powerpc"
>> -CFLAGS+= -O1
>> -.endif
>> +# LLVM is not strict aliasing safe as of 12/31/2011
>> +CFLAGS+= -fno-strict-aliasing
>
> Actually, LLVM is strict-aliasing safe, but not for gcc 4.2.1. :)
>
> There is some sort of problem with gcc's optimizer that made a few LLVM
> tests fails mysteriously in the past.  At a certain point, these
> problems went away for x86, but apparently not for non-x86...
>
> In any case, this option should only have to be added when the compiler
> is base gcc.

Ah, interesting. I'm not quite sure how to express "is compiler base 
GCC", but I'm guessing you have more experience there. Would you mind 
fixing that?
-Nathan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4F0088CD.5010202>