Closed Bug 1420202 Opened 8 years ago Closed 8 years ago

icecream: Error compiling files that include smmintrin.h

Categories

(Firefox Build System :: General, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED INVALID

People

(Reporter: jya, Unassigned)

Details

This isn't a bug per say... Just one thing blocking from getting icecream working on a mac. I haven't found a way to resolve this as of yet. .mozconfig: CC="/usr/local/Cellar/icecream/1.1/libexec/icecc/bin/clang --target=x86_64-apple-darwin16.0.0 -mmacosx-version-min=10.12" CXX="/usr/local/Cellar/icecream/1.1/libexec/icecc/bin/clang++ --target=x86_64-apple-darwin16.0.0 -mmacosx-version-min=10.12" Compiling any files that include the system smmintrin.h will fail due to builtins being implicitly declared (and as such, defined as returning int) example: ICECC_VERSION="x86_64:/Users/jyavenard/Work/Mozilla/icecream/build/clang-5.0.0-x86_64-x86_64.tar.gz" ./mach build --verbose media/libopus/ -j1 /usr/local/Cellar/icecream/1.1/libexec/icecc/bin/clang --target=x86_64-apple-darwin16.0.0 -mmacosx-version-min=10.12 -std=gnu99 -o celt_lpc_sse.o -c -fvisibility=hidden -fvisibility-inlines-hidden -DDEBUG=1 -DOPUS_BUILD '-DOPUS_VERSION="v1.2.1-mozilla"' -DUSE_ALLOCA -DOPUS_EXPORT= -DENABLE_ASSERTIONS -DHAVE_LRINTF -DOPUS_HAVE_RTCD -DOPUS_X86_MAY_HAVE_SSE -DOPUS_X86_MAY_HAVE_SSE2 -DOPUS_X86_MAY_HAVE_SSE4_1 -DOPUS_X86_MAY_HAVE_AVX -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -I/Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus -I/Users/jyavenard/Work/Mozilla/obj-ff-dbg/media/libopus -I/Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/celt -I/Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/include -I/Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/silk -I/Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/src -I/Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/silk/float -I/Users/jyavenard/Work/Mozilla/obj-ff-dbg/dist/include -I/Users/jyavenard/Work/Mozilla/obj-ff-dbg/dist/include/nspr -I/Users/jyavenard/Work/Mozilla/obj-ff-dbg/dist/include/nss -fPIC -include /Users/jyavenard/Work/Mozilla/obj-ff-dbg/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -Qunused-arguments -Wall -Wempty-body -Wignored-qualifiers -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wclass-varargs -Wloop-analysis -Wstring-conversion -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -fno-strict-aliasing -fno-math-errno -pthread -pipe -g -fno-omit-frame-pointer '-Wno-#pragma-messages' -MD -MP -MF .deps/celt_lpc_sse.o.pp -fcolor-diagnostics -msse4.1 /Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/celt/x86/celt_lpc_sse.c 0:01.02 In file included from /Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/celt/x86/celt_lpc_sse.c:34: 0:01.02 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/9.0.0/include/smmintrin.h:146:10: error: invalid conversion between vector type '__m128i' (vector of 2 'long long' values) and integer type 'int' of different size 0:01.02 return (__m128i) __builtin_ia32_movntdqa ((const __v2di *) __V); 0:01.02 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 0:01.02 1 error generated. 0:01.02 ICECC[71172] 17:04:59: Compiled on 192.168.1.11 0:01.02 make[1]: *** [celt_lpc_sse.o] Error 1 this is the commands ran on the linux host: /usr/bin/clang -x c -Xclang -main-file-name -Xclang /Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/celt/x86/celt_lpc_sse.c -Xclang -fdebug-compilation-dir -Xclang /Users/jyavenard/Work/Mozilla/obj-ff-dbg/media/libopus -c --target=x86_64-apple-darwin16.0.0 -mmacosx-version-min=10.12 -std=gnu99 -fvisibility=hidden -fvisibility-inlines-hidden -DDEBUG=1 -DOPUS_BUILD -DOPUS_VERSION="v1.2.1-mozilla" -DUSE_ALLOCA -DOPUS_EXPORT= -DENABLE_ASSERTIONS -DHAVE_LRINTF -DOPUS_HAVE_RTCD -DOPUS_X86_MAY_HAVE_SSE -DOPUS_X86_MAY_HAVE_SSE2 -DOPUS_X86_MAY_HAVE_SSE4_1 -DOPUS_X86_MAY_HAVE_AVX -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -fPIC -DMOZILLA_CLIENT -Qunused-arguments -Qunused-arguments -Wall -Wempty-body -Wignored-qualifiers -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wclass-varargs -Wloop-analysis -Wstring-conversion -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -fno-strict-aliasing -fno-math-errno -pthread -pipe -g -fno-omit-frame-pointer -Wno-#pragma-messages -fcolor-diagnostics -msse4.1 - -o icecc-22581_ee11f36c.o -no-canonical-prefixes /usr/bin/clang -cc1 -triple x86_64-apple-macosx10.12.0 -Wdeprecated-objc-isa-usage -Werror=deprecated-objc-isa-usage -emit-obj -mrelax-all -disable-free -disable-llvm-verifier -discard-value-names -main-file-name - -mrelocation-model pic -pic-level 2 -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -masm-verbose -munwind-tables -faligned-alloc-unavailable -target-cpu penryn -target-feature +sse4.1 -dwarf-column-info -debug-info-kind=standalone -dwarf-version=4 -debugger-tuning=lldb -coverage-notes-file /tmp/icecc-22581_ee11f36c.gcno -resource-dir /usr/lib/clang/5.0.0 -D DEBUG=1 -D OPUS_BUILD -D OPUS_VERSION="v1.2.1-mozilla" -D USE_ALLOCA -D OPUS_EXPORT= -D ENABLE_ASSERTIONS -D HAVE_LRINTF -D OPUS_HAVE_RTCD -D OPUS_X86_MAY_HAVE_SSE -D OPUS_X86_MAY_HAVE_SSE2 -D OPUS_X86_MAY_HAVE_SSE4_1 -D OPUS_X86_MAY_HAVE_AVX -D STATIC_EXPORTABLE_JS_API -D MOZ_HAS_MOZGLUE -D MOZILLA_INTERNAL_API -D IMPL_LIBXUL -D MOZILLA_CLIENT -Wall -Wempty-body -Wignored-qualifiers -Wpointer-arith -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return -Wclass-varargs -Wloop-analysis -Wstring-conversion -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wformat -Wformat-security -Wno-gnu-zero-variadic-macro-arguments -Wno-#pragma-messages -std=gnu99 -fdebug-compilation-dir /tmp -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -fvisibility-inlines-hidden -pthread -stack-protector 1 -fblocks -fobjc-runtime=macosx-10.12.0 -fencode-extended-block-signature -fmax-type-align=16 -fdiagnostics-show-option -fcolor-diagnostics -main-file-name /Users/jyavenard/Work/Mozilla/mozilla-central/media/libopus/celt/x86/celt_lpc_sse.c -fdebug-compilation-dir /Users/jyavenard/Work/Mozilla/obj-ff-dbg/media/libopus -o icecc-22581_ee11f36c.o -x c - Found some interesting comments there (not sure if they are relevant) https://groups.google.com/d/msg/isl-development/03T4Q5zReGg/63GQEd2U214J
addendum: I had in .mozconfig ac_add_options --with-macos-sdk=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk however, even with this line removed it doesn't work. however, if I change CC and CXX respectively as: CC=/Users/jyavenard/Work/Mozilla/icecream/build/clang+llvm-5.0.0-x86_64-apple-darwin/bin/clang CXX=/Users/jyavenard/Work/Mozilla/icecream/build/clang+llvm-5.0.0-x86_64-apple-darwin/bin/clang++ and add: ac_add_options --with-compiler-wrapper="/usr/local/Cellar/icecream/1.1/bin/icecc" it then no longer attempts to use /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/clang/9.0.0/include/smmintrin.h (but I'm guessing clang+llvm-5.0.0-x86_64-apple-darwin/lib/clang/5.0.0/include/smmintrin.h)
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → INVALID
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.