chromium-19.0.1084.52 build failed with gcc 4.6 on amd 10h cpu
George Liaskos
geo.liaskos at gmail.com
Wed May 30 10:59:36 UTC 2012
On Wed, May 30, 2012 at 1:11 PM, Andriy Gapon <avg at freebsd.org> wrote:
> on 30/05/2012 10:47 George Liaskos said the following:
>> On Tue, May 29, 2012 at 10:38 AM, Andriy Gapon <avg at freebsd.org> wrote:
>>> CXX(target)
>>> out/Release/obj.target/skia_opts_ssse3/third_party/skia/src/opts/SkBitmapProcState_opts_SSSE3.o
>>> In file included from
>>> third_party/skia/src/opts/SkBitmapProcState_opts_SSSE3.cpp:8:0:
>>> /usr/local/lib/gcc46/gcc/x86_64-portbld-freebsd10.0/4.6.3/include/tmmintrin.h:31:3:
>>> error: #error "SSSE3 instruction set not enabled"
>>>
>>> A snippet from the tmmintrin.h:
>>> #ifndef __SSSE3__
>>> # error "SSSE3 instruction set not enabled"
>>> #else
>>>
>>> gcc command line during the build:
>>> g++46 '-D_FILE_OFFSET_BITS=64' '-DNO_TCMALLOC' '-DDISABLE_NACL'
>>> '-DCHROMIUM_BUILD' '-DUSE_NSS=1' '-DTOOLKIT_USES_GTK=1' '-DGTK_DISABLS=1'
>>> '-DENABLE_REMOTING=1' '-DENABLE_P2P_APIS=1' '-DUSE_PROPRIETARY_CODECS'
>>> '-DENABLE_CONFIGURATION_POLICY' '-DENABLE_INPUT_SPEECH' '-IONS' '-DENABLE_GPU=1'
>>> '-DENABLE_EGLIMAGE=1' '-DUSE_SKIA=1' '-DENABLE_REGISTER_PROTOCOL_HANDLER=1'
>>> '-DENABLE_WEB_INTENTS=1' '-DENABLE_ON=1' '-DENABLE_THEMES=1'
>>> '-DENABLE_AUTOMATION=1' '-DNDEBUG' '-DNVALGRIND'
>>> '-DDYNAMIC_ANNOTATIONS_ENABLED=0' -I. -Iskia/config -Ithirdde/config
>>> -Ithird_party/skia/include/core -Ithird_party/skia/src/core -pthread
>>> -fno-exceptions -fno-strict-aliasing -Wno-unused-param-field-initializers
>>> -fvisibility=hidden -pipe -fPIC -Wno-format -O2 -fno-ident -fdata-sections
>>> -ffunction-sections -fno-rtti -fno-threvisibility-inlines-hidden -Wno-deprecated
>>> -MMD -MF
>>> out/Release/.deps/out/Release/obj.target/skia_opts_ssse3/third_party/skia/src/opts/_opts_SSSE3.o.d.raw
>>> -O2 -pipe -O2 -fno-strict-aliasing -pipe -march=k8-sse3 -Wno-error
>>> -Wl,-rpath=/usr/local/lib/gcc46 -march=amdfam10aliasing -pipe -march=amdfam10 -c
>>> -o
>>> out/Release/obj.target/skia_opts_ssse3/third_party/skia/src/opts/SkBitmapProcState_opts_SSSE3.o
>>> trc/opts/SkBitmapProcState_opts_SSSE3.cp
>>>
>>> According to the wikipedia (I know, I know) SSSE3 [note three S-s] is supported
>>> only on newest AMD processors, I have an older generation (Athlon II):
>>> http://en.wikipedia.org/wiki/SSSE3#CPUs_with_SSSE3
>>> (while on Intel it is supported for a far wider range of the CPUs).
>>>
>>> Is the SSSE3 support mis-detected or mis-enabled?
>>>
>>> Final notes:
>>> $ g++46 -E -dM -O2 -march=amdfam10 -x c /dev/null | fgrep SSE
>>> #define __SSE2_MATH__ 1
>>> #define __SSE4A__ 1
>>> #define __SSE_MATH__ 1
>>> #define __SSE2__ 1
>>> #define __SSE__ 1
>>> #define __SSE3__ 1
>>>
>>> CPU: AMD Athlon(tm) II X2 250 Processor (3013.79-MHz K8-class CPU)
>>> Origin = "AuthenticAMD" Id = 0x100f62 Family = 10 Model = 6 Stepping = 2
>>>
>>> Features=0x178bfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,MMX,FXSR,SSE,SSE2,HTT>
>>> Features2=0x802009<SSE3,MON,CX16,POPCNT>
>>> AMD Features=0xee500800<SYSCALL,NX,MMX+,FFXSR,Page1GB,RDTSCP,LM,3DNow!+,3DNow!>
>>> AMD
>>> Features2=0x37ff<LAHF,CMP,SVM,ExtAPIC,CR8,ABM,SSE4A,MAS,Prefetch,OSVW,IBS,SKINIT,WDT>
>>> --
>>> Andriy Gapon
>>
>> Hello,
>>
>> I will have time later today to work on the issue; in the meantime you
>> can probably disable ssse3 from skia/skia.gyp [0].
>> Search for -mssse3, remove freebsd and you should be able to compile.
>>
>> [0] http://src.chromium.org/svn/trunk/src/skia/skia.gyp
>
> Hmm, the problem appears to be the opposite - it doesn't look like -mssse3 was
> actually passed to the compiler...
>
> --
> Andriy Gapon
Duhh, sorry I am multitasking at work.
Then if i understand correctly we should drop the dependency to the
skia_opts_ssse3 target.
There is a line[1135] which does this for android, try to add freebsd
in the condition.
The skia_opts_ssse3 target includes SkBitmapProcState_opts_SSSE3.cpp,
which uses tmmintrin.h.
More information about the freebsd-chromium
mailing list