Sedat Dilek
2015-Feb-07 22:42 UTC
[LLVMdev] mesa-10.4.4: BROKEN TLS support in GLX with llvm-toolchain v3.6.0rc2
[ Please CC me I am not subscribed to mesa-dev and llvmdev MLs ] Hi, I already reported this when playing 1st time with my llvm-toolchain v3.6.0rc2 and mesa v10.3.7 [1]. The issue still remains in mesa v10.4.4. So, this is a field test to see if LLVM/Clang v3.6.0rc2 fits my needs. I see the following build-error... ... make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' CC shared_glapi_libglapi_la-entry.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name entry.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -D MAPI_MODE_GLAPI -D "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" ignoring duplicate directory "." ignoring duplicate directory "." #include "..." search starts here: #include <...> search starts here: . ../../include /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. In file included from ../../src/mapi/entry.c:49: ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed to have one element x86_64_entry_start[]; ^ fatal error: error in backend: symbol 'x86_64_entry_start' is already defined clang: error: clang frontend command failed with exit code 70 (use -v to see invocation) clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script. clang: note: diagnostic msg: ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang: note: diagnostic msg: /tmp/entry-f26a8a.c clang: note: diagnostic msg: /tmp/entry-f26a8a.sh clang: note: diagnostic msg: ******************** make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' make: *** [all-recursive] Error 1 Command exited with non-zero status 2 ... I have attached my build-script, the detailed full build-log (used 'clang -v' and 'make -j1') and the two diagnostic tmp-files. I am not sure if this is fixable in mesa by refactoring the code - that's why I CCed especially Jose. If it's a llvm/clang bug, so the folks there should look. If you need more informations, please let me know. Thanks. Regards, - Sedat - [1] http://lists.freedesktop.org/archives/mesa-dev/2015-February/075821.html -------------- next part -------------- autoreconf: Entering directory `.' autoreconf: configure.ac: not using Gettext autoreconf: running: aclocal -I m4 autoreconf: configure.ac: tracing autoreconf: running: libtoolize --install --copy libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `bin'. libtoolize: copying file `bin/config.guess' libtoolize: copying file `bin/config.sub' libtoolize: copying file `bin/install-sh' libtoolize: copying file `bin/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'. libtoolize: copying file `m4/libtool.m4' libtoolize: copying file `m4/ltoptions.m4' libtoolize: copying file `m4/ltsugar.m4' libtoolize: copying file `m4/ltversion.m4' libtoolize: copying file `m4/lt~obsolete.m4' autoreconf: running: /usr/bin/autoconf autoreconf: configure.ac: not using Autoheader autoreconf: running: automake --add-missing --copy --no-force configure.ac:23: installing `bin/ar-lib' configure.ac:54: installing `bin/compile' configure.ac:15: installing `bin/missing' src/egl/drivers/dri2/Makefile.am: installing `bin/depcomp' src/mesa/Makefile.sources:7: BUILDDIR multiply defined in condition TRUE ... src/mesa/Makefile.am:63: `src/mesa/Makefile.sources' included from here src/mesa/Makefile.am:62: ... `BUILDDIR' previously defined here autoreconf: Leaving directory `.' configure: WARNING: unrecognized options: --disable-gallium-egl checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... gawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for style of include used by make... GNU checking for gcc... clang -v checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether clang -v accepts -g... yes checking for clang -v option to accept ISO C89... none needed checking dependency style of clang -v... gcc3 checking for ar... ar checking the archiver (ar) interface... ar checking how to run the C preprocessor... clang-cpp checking for gcc... (cached) clang -v checking whether we are using the GNU C compiler... (cached) yes checking whether clang -v accepts -g... (cached) yes checking for clang -v option to accept ISO C89... (cached) none needed checking dependency style of clang -v... (cached) gcc3 checking whether we are using the GNU C++ compiler... yes checking whether clang++ accepts -g... yes checking dependency style of clang++... gcc3 checking whether clang -v and cc understand -c and -o together... yes checking dependency style of clang -v... gcc3 checking for GNU make... make checking for python2... python2 checking for a sed that does not truncate output... /bin/sed checking for special C compiler options needed for large files... no checking for _FILE_OFFSET_BITS value needed for large files... no checking how to print strings... printf checking for a sed that does not truncate output... (cached) /bin/sed checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for fgrep... /bin/grep -F checking for ld used by clang -v... /usr/bin/ld checking if the linker (/usr/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop checking for /usr/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for dlltool... no checking how to associate runtime and link libraries... printf %s\n checking for archiver @FILE support... @ checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from clang -v object... ok checking for sysroot... no checking for mt... mt checking if mt is a manifest tool... no checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking for objdir... .libs checking if clang -v supports -fno-rtti -fno-exceptions... no checking for clang -v option to produce PIC... -fPIC -DPIC checking if clang -v PIC flag -fPIC -DPIC works... no checking if clang -v static flag -static works... no checking if clang -v supports -c -o file.o... no checking if clang -v supports -c -o file.o... (cached) no checking if we can lock with hard links... yes checking whether the clang -v linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking how to run the C++ preprocessor... clang++ -E checking for ld used by clang++... /usr/bin/ld -m elf_x86_64 checking if the linker (/usr/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the clang++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking for clang++ option to produce PIC... -fPIC -DPIC checking if clang++ PIC flag -fPIC -DPIC works... yes checking if clang++ static flag -static works... yes checking if clang++ supports -c -o file.o... yes checking if clang++ supports -c -o file.o... (cached) yes checking whether the clang++ linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... (cached) GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking for bison... bison -y checking if bison is the parser generator... yes checking for flex... flex checking lex output file root... lex.yy checking lex library... -lfl checking whether yytext is a pointer... yes checking if flex is the lexer generator... yes checking for indent... cat checking if compiling with clang... yes checking for __builtin_bswap32... yes checking for __builtin_bswap64... yes checking for __builtin_clz... yes checking for __builtin_clzll... yes checking for __builtin_ctz... yes checking for __builtin_expect... yes checking for __builtin_ffs... yes checking for __builtin_ffsll... yes checking for __builtin_popcount... yes checking for __builtin_popcountll... yes checking for __builtin_unreachable... yes checking for __attribute__((flatten))... no checking for __attribute__((format))... no checking for __attribute__((malloc))... no checking for __attribute__((packed))... no checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking whether clang -v supports -Werror=missing-prototypes... yes checking whether clang -v supports -fvisibility=hidden... yes checking whether clang++ supports -fvisibility=hidden... yes checking if ld supports -Bsymbolic... yes checking whether ld supports --gc-sections... yes checking if the linker supports version-scripts... yes checking if the linker supports --dynamic-list... yes checking whether to enable assembly... yes, x86_64 checking xlocale.h usability... yes checking xlocale.h presence... yes checking for xlocale.h... yes checking for strtof... yes checking for dlopen... no checking for dlopen in -ldl... yes checking for dladdr... yes checking for clock_gettime... no checking for clock_gettime in -lrt... yes checking for posix_memalign... yes checking for the pthreads library -lpthreads... no checking whether pthreads work without any flags... no checking whether pthreads work with -Kthread... no checking whether pthreads work with -kthread... no checking for the pthreads library -llthread... no checking whether pthreads work with -pthread... yes checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE checking if more special flags are required for pthreads... no checking for PTHREAD_PRIO_INHERIT... no checking for LIBDRM... yes checking for LIBUDEV... yes checking for GLPROTO... yes checking for DRI2PROTO... yes checking for XF86VIDMODE... yes checking for DRIGL... yes checking for EXPAT... no checking expat.h usability... yes checking expat.h presence... yes checking for expat.h... yes checking for XML_ParserCreate in -lexpat... yes checking for INTEL... yes checking for mincore... yes checking for elf_memory in -lelf... yes checking for XCB_DRI2... yes checking for llvm-config... /opt/llvm/bin/llvm-config configure: WARNING: Building mesa with statically linked LLVM may cause compilation issues Package libva was not found in the pkg-config search path. Perhaps you should add the directory containing `libva.pc' to the PKG_CONFIG_PATH environment variable No package 'libva' found Package libva was not found in the pkg-config search path. Perhaps you should add the directory containing `libva.pc' to the PKG_CONFIG_PATH environment variable No package 'libva' found configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating src/egl/drivers/dri2/Makefile config.status: creating src/egl/main/Makefile config.status: creating src/egl/main/egl.pc config.status: creating src/egl/wayland/Makefile config.status: creating src/egl/wayland/wayland-drm/Makefile config.status: creating src/egl/wayland/wayland-egl/Makefile config.status: creating src/egl/wayland/wayland-egl/wayland-egl.pc config.status: creating src/gallium/Makefile config.status: creating src/gallium/auxiliary/Makefile config.status: creating src/gallium/auxiliary/pipe-loader/Makefile config.status: creating src/gallium/drivers/freedreno/Makefile config.status: creating src/gallium/drivers/galahad/Makefile config.status: creating src/gallium/drivers/i915/Makefile config.status: creating src/gallium/drivers/identity/Makefile config.status: creating src/gallium/drivers/ilo/Makefile config.status: creating src/gallium/drivers/llvmpipe/Makefile config.status: creating src/gallium/drivers/noop/Makefile config.status: creating src/gallium/drivers/nouveau/Makefile config.status: creating src/gallium/drivers/r300/Makefile config.status: creating src/gallium/drivers/r600/Makefile config.status: creating src/gallium/drivers/radeon/Makefile config.status: creating src/gallium/drivers/radeonsi/Makefile config.status: creating src/gallium/drivers/rbug/Makefile config.status: creating src/gallium/drivers/softpipe/Makefile config.status: creating src/gallium/drivers/svga/Makefile config.status: creating src/gallium/drivers/trace/Makefile config.status: creating src/gallium/drivers/vc4/Makefile config.status: creating src/gallium/drivers/vc4/kernel/Makefile config.status: creating src/gallium/state_trackers/clover/Makefile config.status: creating src/gallium/state_trackers/dri/Makefile config.status: creating src/gallium/state_trackers/glx/xlib/Makefile config.status: creating src/gallium/state_trackers/nine/Makefile config.status: creating src/gallium/state_trackers/omx/Makefile config.status: creating src/gallium/state_trackers/osmesa/Makefile config.status: creating src/gallium/state_trackers/va/Makefile config.status: creating src/gallium/state_trackers/vdpau/Makefile config.status: creating src/gallium/state_trackers/vega/Makefile config.status: creating src/gallium/state_trackers/xa/Makefile config.status: creating src/gallium/state_trackers/xvmc/Makefile config.status: creating src/gallium/targets/d3dadapter9/Makefile config.status: creating src/gallium/targets/d3dadapter9/d3d.pc config.status: creating src/gallium/targets/dri/Makefile config.status: creating src/gallium/targets/egl-static/Makefile config.status: creating src/gallium/targets/gbm/Makefile config.status: creating src/gallium/targets/libgl-xlib/Makefile config.status: creating src/gallium/targets/omx/Makefile config.status: creating src/gallium/targets/opencl/Makefile config.status: creating src/gallium/targets/osmesa/Makefile config.status: creating src/gallium/targets/osmesa/osmesa.pc config.status: creating src/gallium/targets/pipe-loader/Makefile config.status: creating src/gallium/targets/va/Makefile config.status: creating src/gallium/targets/vdpau/Makefile config.status: creating src/gallium/targets/xa/Makefile config.status: creating src/gallium/targets/xa/xatracker.pc config.status: creating src/gallium/targets/xvmc/Makefile config.status: creating src/gallium/tests/trivial/Makefile config.status: creating src/gallium/tests/unit/Makefile config.status: creating src/gallium/winsys/freedreno/drm/Makefile config.status: creating src/gallium/winsys/i915/drm/Makefile config.status: creating src/gallium/winsys/intel/drm/Makefile config.status: creating src/gallium/winsys/nouveau/drm/Makefile config.status: creating src/gallium/winsys/radeon/drm/Makefile config.status: creating src/gallium/winsys/svga/drm/Makefile config.status: creating src/gallium/winsys/sw/dri/Makefile config.status: creating src/gallium/winsys/sw/fbdev/Makefile config.status: creating src/gallium/winsys/sw/kms-dri/Makefile config.status: creating src/gallium/winsys/sw/null/Makefile config.status: creating src/gallium/winsys/sw/wayland/Makefile config.status: creating src/gallium/winsys/sw/wrapper/Makefile config.status: creating src/gallium/winsys/sw/xlib/Makefile config.status: creating src/gallium/winsys/vc4/drm/Makefile config.status: creating src/gbm/Makefile config.status: creating src/gbm/main/gbm.pc config.status: creating src/glsl/Makefile config.status: creating src/glx/Makefile config.status: creating src/glx/apple/Makefile config.status: creating src/glx/tests/Makefile config.status: creating src/gtest/Makefile config.status: creating src/loader/Makefile config.status: creating src/mapi/Makefile config.status: creating src/mapi/es1api/glesv1_cm.pc config.status: creating src/mapi/es2api/glesv2.pc config.status: creating src/mapi/glapi/gen/Makefile config.status: creating src/mapi/vgapi/Makefile config.status: creating src/mapi/vgapi/vg.pc config.status: creating src/mesa/Makefile config.status: creating src/mesa/gl.pc config.status: creating src/mesa/drivers/dri/dri.pc config.status: creating src/mesa/drivers/dri/common/Makefile config.status: creating src/mesa/drivers/dri/common/xmlpool/Makefile config.status: creating src/mesa/drivers/dri/i915/Makefile config.status: creating src/mesa/drivers/dri/i965/Makefile config.status: creating src/mesa/drivers/dri/Makefile config.status: creating src/mesa/drivers/dri/nouveau/Makefile config.status: creating src/mesa/drivers/dri/r200/Makefile config.status: creating src/mesa/drivers/dri/radeon/Makefile config.status: creating src/mesa/drivers/dri/swrast/Makefile config.status: creating src/mesa/drivers/osmesa/Makefile config.status: creating src/mesa/drivers/osmesa/osmesa.pc config.status: creating src/mesa/drivers/x11/Makefile config.status: creating src/mesa/main/tests/Makefile config.status: creating src/util/Makefile config.status: creating src/util/tests/hash_table/Makefile config.status: executing depfiles commands config.status: executing libtool commands configure: WARNING: unrecognized options: --disable-gallium-egl prefix: /opt/xorg exec_prefix: ${prefix} libdir: ${exec_prefix}/lib includedir: ${prefix}/include OpenGL: yes (ES1: no ES2: yes) OpenVG: no OSMesa: no DRI platform: drm DRI drivers: i965 DRI driver dir: /opt/xorg/lib/dri GLX: DRI-based EGL: yes EGL platforms: x11 EGL drivers: builtin:egl_dri2 llvm: yes llvm-config: /opt/llvm/bin/llvm-config llvm-version: 3.6.0 Gallium: yes Shared libs: yes Static libs: no Shared-glapi: yes CFLAGS: -Qunused-arguments -Wall -std=c99 -Werror=implicit-function-declaration -Werror=missing-prototypes -fno-strict-aliasing -fno-builtin-memcmp -g -O0 -Qunused-arguments CXXFLAGS: -Qunused-arguments -Wall -fno-strict-aliasing -fno-builtin-memcmp -g -O0 -Qunused-arguments Macros: -DUSE_EXTERNAL_DXTN_LIB=1 -D_GNU_SOURCE -DUSE_SSE41 -DDEBUG -DUSE_X86_64_ASM -DHAVE_XLOCALE_H -DHAVE_STRTOF -DHAVE_DLOPEN -DHAVE_POSIX_MEMALIGN -DHAVE_LIBDRM -DGLX_USE_DRM -DHAVE_LIBUDEV -DGLX_INDIRECT_RENDERING -DGLX_DIRECT_RENDERING -DGLX_USE_TLS -DHAVE_ALIAS -DHAVE_MINCORE -DHAVE_LLVM=0x0306 -DLLVM_VERSION_PATCH=0 LLVM_CFLAGS: -I/opt/llvm-toolchain-3.6.0rc2/include -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS LLVM_CXXFLAGS: -I/opt/llvm-toolchain-3.6.0rc2/include -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -std=c++11 -fno-rtti LLVM_CPPFLAGS: -I/opt/llvm-toolchain-3.6.0rc2/include -D_DEBUG -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS PYTHON2: python2 Run 'make' to build Mesa Making all in src make[1]: Entering directory `/home/wearefam/src/mesa/mesa-git/src' Making all in gtest make[2]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/gtest' make[2]: Nothing to be done for `all'. make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/gtest' Making all in util make[2]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/util' GEN format_srgb.c make all-recursive make[3]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/util' Making all in . make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/util' CC libmesautil_la-hash_table.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name hash_table.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/util/hash_table.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/libmesautil_la-hash_table.Tpo -sys-header-deps -MP -MT libmesautil_la-hash_table.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -I . -I ../../include -I ../../src -I ../../src/mapi -I ../../src/mesa -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/util -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o hash_table.o -x c hash_table.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: . ../../include ../../src ../../src/mapi ../../src/mesa /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. CC libmesautil_la-ralloc.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name ralloc.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/util/ralloc.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/libmesautil_la-ralloc.Tpo -sys-header-deps -MP -MT libmesautil_la-ralloc.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -I . -I ../../include -I ../../src -I ../../src/mapi -I ../../src/mesa -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/util -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o ralloc.o -x c ralloc.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: . ../../include ../../src ../../src/mapi ../../src/mesa /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. CC libmesautil_la-register_allocate.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name register_allocate.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/util/register_allocate.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/libmesautil_la-register_allocate.Tpo -sys-header-deps -MP -MT libmesautil_la-register_allocate.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -I . -I ../../include -I ../../src -I ../../src/mapi -I ../../src/mesa -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/util -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o register_allocate.o -x c register_allocate.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: . ../../include ../../src ../../src/mapi ../../src/mesa /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. CC libmesautil_la-rgtc.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name rgtc.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/util/rgtc.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/libmesautil_la-rgtc.Tpo -sys-header-deps -MP -MT libmesautil_la-rgtc.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -I . -I ../../include -I ../../src -I ../../src/mapi -I ../../src/mesa -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/util -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o rgtc.o -x c rgtc.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: . ../../include ../../src ../../src/mapi ../../src/mesa /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. CXX libmesautil_la-strtod.lo CC libmesautil_la-format_srgb.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name format_srgb.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/util/format_srgb.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/libmesautil_la-format_srgb.Tpo -sys-header-deps -MP -MT libmesautil_la-format_srgb.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -I . -I ../../include -I ../../src -I ../../src/mapi -I ../../src/mesa -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/util -ferror-limit 19 -fmessage-length 0 -fvisibility hidden -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o format_srgb.o -x c format_srgb.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" #include "..." search starts here: #include <...> search starts here: . ../../include ../../src ../../src/mapi ../../src/mesa /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. CXXLD libmesautil.la make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/util' Making all in tests/hash_table make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/util/tests/hash_table' make[4]: Nothing to be done for `all'. make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/util/tests/hash_table' make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/util' make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/util' Making all in mapi make[2]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' GEN shared-glapi/glapi_mapi_tmp.h GEN es2api/glapi_mapi_tmp.h make all-recursive make[3]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' Making all in glapi/gen make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi/glapi/gen' GEN ../../../../src/mapi/glapi/glapi_mapi_tmp.h GEN ../../../../src/mapi/glapi/glprocs.h GEN ../../../../src/mapi/glapi/glapitemp.h GEN ../../../../src/mapi/glapi/glapitable.h GEN ../../../../src/mapi/glapi/glapi_gentable.c GEN ../../../../src/mapi/glapi/glapi_x86-64.S GEN ../../../../src/mesa/main/enums.c GEN ../../../../src/mesa/main/api_exec.c GEN ../../../../src/mesa/main/dispatch.h GEN ../../../../src/mesa/main/remap_helper.h GEN ../../../../src/glx/indirect.c GEN ../../../../src/glx/indirect.h GEN ../../../../src/glx/indirect_init.c GEN ../../../../src/glx/indirect_size.h GEN ../../../../src/glx/indirect_size.c make all-am make[5]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi/glapi/gen' make[5]: Nothing to be done for `all-am'. make[5]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi/glapi/gen' make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi/glapi/gen' Making all in . make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' CC shared_glapi_libglapi_la-entry.lo clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 Candidate multilib: .;@m64 Candidate multilib: 32;@m32 Selected multilib: .;@m64 "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free -main-file-name entry.c -mrelocation-model static -mthread-model posix -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 -D MAPI_MODE_GLAPI -D "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include -internal-isystem /usr/local/include -internal-isystem /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include -internal-externc-isystem /usr/include/x86_64-linux-gnu -internal-externc-isystem /include -internal-externc-isystem /usr/include -O0 -Wall -Werror=implicit-function-declaration -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target x86_64-unknown-linux-gnu ignoring nonexistent directory "/include" ignoring duplicate directory "." ignoring duplicate directory "." #include "..." search starts here: #include <...> search starts here: . ../../include /opt/xorg/include /usr/local/include /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include /usr/include/x86_64-linux-gnu /usr/include End of search list. In file included from ../../src/mapi/entry.c:49: ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed to have one element x86_64_entry_start[]; ^ fatal error: error in backend: symbol 'x86_64_entry_start' is already defined clang: error: clang frontend command failed with exit code 70 (use -v to see invocation) clang version 3.6.0 (tags/RELEASE_360/rc2) Target: x86_64-unknown-linux-gnu Thread model: posix clang: note: diagnostic msg: PLEASE submit a bug report to http://llvm.org/bugs/ and include the crash backtrace, preprocessed source, and associated run script. clang: note: diagnostic msg: ******************** PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: Preprocessed source(s) and associated run script(s) are located at: clang: note: diagnostic msg: /tmp/entry-f26a8a.c clang: note: diagnostic msg: /tmp/entry-f26a8a.sh clang: note: diagnostic msg: ******************** make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' make[3]: *** [all-recursive] Error 1 make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' make[2]: *** [all] Error 2 make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' make: *** [all-recursive] Error 1 Command exited with non-zero status 2 real 27.90 user 25.44 sys 2.12 -------------- next part -------------- A non-text attachment was scrubbed... Name: entry-f26a8a.c Type: text/x-csrc Size: 1696232 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150207/e1963ec9/attachment.c> -------------- next part -------------- A non-text attachment was scrubbed... Name: entry-f26a8a.sh Type: application/x-sh Size: 2195 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150207/e1963ec9/attachment.sh> -------------- next part -------------- A non-text attachment was scrubbed... Name: build_mesa-with-llvm.sh Type: application/x-sh Size: 4104 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150207/e1963ec9/attachment-0001.sh>
Sedat Dilek
2015-Feb-07 22:53 UTC
[LLVMdev] mesa-10.4.4: BROKEN TLS support in GLX with llvm-toolchain v3.6.0rc2
Just as a hint: You need to cherry-pick... commit ef7e0b39a24966526b102643523feac765771842 "gallivm: Update for RTDyldMemoryManager becoming an unique_ptr." ...from mesa upstream to build v10.4.4 successfully. - Sedat - On Sat, Feb 7, 2015 at 11:42 PM, Sedat Dilek <sedat.dilek at gmail.com> wrote:> [ Please CC me I am not subscribed to mesa-dev and llvmdev MLs ] > > Hi, > > I already reported this when playing 1st time with my llvm-toolchain > v3.6.0rc2 and mesa v10.3.7 [1]. > The issue still remains in mesa v10.4.4. > > So, this is a field test to see if LLVM/Clang v3.6.0rc2 fits my needs. > > I see the following build-error... > ... > > make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > CC shared_glapi_libglapi_la-entry.lo > clang version 3.6.0 (tags/RELEASE_360/rc2) > Target: x86_64-unknown-linux-gnu > Thread model: posix > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 > Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 > Candidate multilib: .;@m64 > Candidate multilib: 32;@m32 > Selected multilib: .;@m64 > "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple > x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free > -main-file-name entry.c -mrelocation-model static -mthread-model posix > -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose > -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu > x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info > -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c > -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 > -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo > -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D > "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D > "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D > "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" > -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D > STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D > HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D > HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D > HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D > YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D > HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D > HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D > HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D > HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D > HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D > HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D > USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D > USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D > HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D > GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D > HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 > -D MAPI_MODE_GLAPI -D > "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I > ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include > -internal-isystem /usr/local/include -internal-isystem > /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include > -internal-externc-isystem /usr/include/x86_64-linux-gnu > -internal-externc-isystem /include -internal-externc-isystem > /usr/include -O0 -Wall -Werror=implicit-function-declaration > -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir > /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 > -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc > -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c > clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target > x86_64-unknown-linux-gnu > ignoring nonexistent directory "/include" > ignoring duplicate directory "." > ignoring duplicate directory "." > #include "..." search starts here: > #include <...> search starts here: > . > ../../include > /opt/xorg/include > /usr/local/include > /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include > /usr/include/x86_64-linux-gnu > /usr/include > End of search list. > In file included from ../../src/mapi/entry.c:49: > ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed > to have one element > x86_64_entry_start[]; > ^ > fatal error: error in backend: symbol 'x86_64_entry_start' is already defined > clang: error: clang frontend command failed with exit code 70 (use -v > to see invocation) > clang version 3.6.0 (tags/RELEASE_360/rc2) > Target: x86_64-unknown-linux-gnu > Thread model: posix > clang: note: diagnostic msg: PLEASE submit a bug report to > http://llvm.org/bugs/ and include the crash backtrace, preprocessed > source, and associated run script. > clang: note: diagnostic msg: > ******************** > > PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: > Preprocessed source(s) and associated run script(s) are located at: > clang: note: diagnostic msg: /tmp/entry-f26a8a.c > clang: note: diagnostic msg: /tmp/entry-f26a8a.sh > clang: note: diagnostic msg: > > ******************** > make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 > make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > make[3]: *** [all-recursive] Error 1 > make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > make[2]: *** [all] Error 2 > make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' > make: *** [all-recursive] Error 1 > Command exited with non-zero status 2 > ... > > I have attached my build-script, the detailed full build-log (used > 'clang -v' and 'make -j1') and the two diagnostic tmp-files. > > I am not sure if this is fixable in mesa by refactoring the code - > that's why I CCed especially Jose. > > If it's a llvm/clang bug, so the folks there should look. > > If you need more informations, please let me know. > > Thanks. > > > Regards, > - Sedat - > > [1] http://lists.freedesktop.org/archives/mesa-dev/2015-February/075821.html
Jose Fonseca
2015-Feb-07 23:04 UTC
[LLVMdev] mesa-10.4.4: BROKEN TLS support in GLX with llvm-toolchain v3.6.0rc2
I think we decided not to support unreleased LLVM builds on stable releases. This is because building without errors is not enough -- there are often other changes that need to go with this. Furthermore it's often a moving target. In short, if you want to use bleeding edge LLVM, you must use bleeding edge Mesa too. What I think it might be worthwhile to do is have a ceiling on the maximum supported LLVM version on a stable branch. That is, fail configure if the user attempts to build with a LLVM that's too new. Jose On 07/02/15 22:53, Sedat Dilek wrote:> Just as a hint: > > You need to cherry-pick... > > commit ef7e0b39a24966526b102643523feac765771842 > "gallivm: Update for RTDyldMemoryManager becoming an unique_ptr." > > ...from mesa upstream to build v10.4.4 successfully. > > - Sedat - > > > On Sat, Feb 7, 2015 at 11:42 PM, Sedat Dilek <sedat.dilek at gmail.com> wrote: >> [ Please CC me I am not subscribed to mesa-dev and llvmdev MLs ] >> >> Hi, >> >> I already reported this when playing 1st time with my llvm-toolchain >> v3.6.0rc2 and mesa v10.3.7 [1]. >> The issue still remains in mesa v10.4.4. >> >> So, this is a field test to see if LLVM/Clang v3.6.0rc2 fits my needs. >> >> I see the following build-error... >> ... >> >> make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> CC shared_glapi_libglapi_la-entry.lo >> clang version 3.6.0 (tags/RELEASE_360/rc2) >> Target: x86_64-unknown-linux-gnu >> Thread model: posix >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 >> Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 >> Candidate multilib: .;@m64 >> Candidate multilib: 32;@m32 >> Selected multilib: .;@m64 >> "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple >> x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free >> -main-file-name entry.c -mrelocation-model static -mthread-model posix >> -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose >> -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu >> x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info >> -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c >> -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 >> -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo >> -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D >> "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D >> "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D >> "PACKAGE_BUGREPORT=\"https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.freedesktop.org_enter-5Fbug.cgi-3Fproduct-3DMesa&d=AwIBaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=v1Q5d0xLrpLdBsHNMciHYlRYr673KPaVUvoUHKGZo40&s=3E29z8re4h9Gj47n8ZUg8WuKtNUUqZPJBj2rEYda0R8&e= \"" >> -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D >> STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D >> HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D >> HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D >> HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D >> YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D >> HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D >> HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D >> HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D >> HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D >> HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D >> HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D >> USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D >> USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D >> HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D >> GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D >> HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 >> -D MAPI_MODE_GLAPI -D >> "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I >> ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include >> -internal-isystem /usr/local/include -internal-isystem >> /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include >> -internal-externc-isystem /usr/include/x86_64-linux-gnu >> -internal-externc-isystem /include -internal-externc-isystem >> /usr/include -O0 -Wall -Werror=implicit-function-declaration >> -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir >> /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 >> -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc >> -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c >> clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target >> x86_64-unknown-linux-gnu >> ignoring nonexistent directory "/include" >> ignoring duplicate directory "." >> ignoring duplicate directory "." >> #include "..." search starts here: >> #include <...> search starts here: >> . >> ../../include >> /opt/xorg/include >> /usr/local/include >> /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include >> /usr/include/x86_64-linux-gnu >> /usr/include >> End of search list. >> In file included from ../../src/mapi/entry.c:49: >> ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed >> to have one element >> x86_64_entry_start[]; >> ^ >> fatal error: error in backend: symbol 'x86_64_entry_start' is already defined >> clang: error: clang frontend command failed with exit code 70 (use -v >> to see invocation) >> clang version 3.6.0 (tags/RELEASE_360/rc2) >> Target: x86_64-unknown-linux-gnu >> Thread model: posix >> clang: note: diagnostic msg: PLEASE submit a bug report to >> https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_bugs_&d=AwIBaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=v1Q5d0xLrpLdBsHNMciHYlRYr673KPaVUvoUHKGZo40&s=uwXQXTXN9NBR3u-0SKn5TbvnDq3mcm5bEADxrW8HHJY&e= and include the crash backtrace, preprocessed >> source, and associated run script. >> clang: note: diagnostic msg: >> ******************** >> >> PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: >> Preprocessed source(s) and associated run script(s) are located at: >> clang: note: diagnostic msg: /tmp/entry-f26a8a.c >> clang: note: diagnostic msg: /tmp/entry-f26a8a.sh >> clang: note: diagnostic msg: >> >> ******************** >> make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 >> make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[3]: *** [all-recursive] Error 1 >> make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[2]: *** [all] Error 2 >> make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' >> make: *** [all-recursive] Error 1 >> Command exited with non-zero status 2 >> ... >> >> I have attached my build-script, the detailed full build-log (used >> 'clang -v' and 'make -j1') and the two diagnostic tmp-files. >> >> I am not sure if this is fixable in mesa by refactoring the code - >> that's why I CCed especially Jose. >> >> If it's a llvm/clang bug, so the folks there should look. >> >> If you need more informations, please let me know. >> >> Thanks. >> >> >> Regards, >> - Sedat - >> >> [1] https://urldefense.proofpoint.com/v2/url?u=http-3A__lists.freedesktop.org_archives_mesa-2Ddev_2015-2DFebruary_075821.html&d=AwIBaQ&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=v1Q5d0xLrpLdBsHNMciHYlRYr673KPaVUvoUHKGZo40&s=d-b8u5fk9lYJzle-Z7dcSGr3d1iXx8bOwkZ4LvCqTvk&e=
Emil Velikov
2015-Feb-09 17:44 UTC
[LLVMdev] mesa-10.4.4: BROKEN TLS support in GLX with llvm-toolchain v3.6.0rc2
Hi Sedat, On 07/02/15 22:42, Sedat Dilek wrote:> [ Please CC me I am not subscribed to mesa-dev and llvmdev MLs ] > > Hi, > > I already reported this when playing 1st time with my llvm-toolchain > v3.6.0rc2 and mesa v10.3.7 [1]. > The issue still remains in mesa v10.4.4. > > So, this is a field test to see if LLVM/Clang v3.6.0rc2 fits my needs. > > I see the following build-error... > ... > > make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > CC shared_glapi_libglapi_la-entry.lo > clang version 3.6.0 (tags/RELEASE_360/rc2) > Target: x86_64-unknown-linux-gnu > Thread model: posix > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 > Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 > Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 > Candidate multilib: .;@m64 > Candidate multilib: 32;@m32 > Selected multilib: .;@m64 > "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple > x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free > -main-file-name entry.c -mrelocation-model static -mthread-model posix > -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose > -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu > x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info > -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c > -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 > -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo > -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D > "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D > "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D > "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" > -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D > STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D > HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D > HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D > HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D > YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D > HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D > HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D > HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D > HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D > HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D > HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D > USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D > USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D > HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D > GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D > HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 > -D MAPI_MODE_GLAPI -D > "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I > ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include > -internal-isystem /usr/local/include -internal-isystem > /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include > -internal-externc-isystem /usr/include/x86_64-linux-gnu > -internal-externc-isystem /include -internal-externc-isystem > /usr/include -O0 -Wall -Werror=implicit-function-declaration > -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir > /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 > -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc > -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c > clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target > x86_64-unknown-linux-gnu > ignoring nonexistent directory "/include" > ignoring duplicate directory "." > ignoring duplicate directory "." > #include "..." search starts here: > #include <...> search starts here: > . > ../../include > /opt/xorg/include > /usr/local/include > /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include > /usr/include/x86_64-linux-gnu > /usr/include > End of search list. > In file included from ../../src/mapi/entry.c:49: > ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed > to have one element > x86_64_entry_start[]; > ^ > fatal error: error in backend: symbol 'x86_64_entry_start' is already defined > clang: error: clang frontend command failed with exit code 70 (use -v > to see invocation) > clang version 3.6.0 (tags/RELEASE_360/rc2) > Target: x86_64-unknown-linux-gnu > Thread model: posix > clang: note: diagnostic msg: PLEASE submit a bug report to > http://llvm.org/bugs/ and include the crash backtrace, preprocessed > source, and associated run script. > clang: note: diagnostic msg: > ******************** > > PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: > Preprocessed source(s) and associated run script(s) are located at: > clang: note: diagnostic msg: /tmp/entry-f26a8a.c > clang: note: diagnostic msg: /tmp/entry-f26a8a.sh > clang: note: diagnostic msg: > > ******************** > make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 > make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > make[3]: *** [all-recursive] Error 1 > make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > make[2]: *** [all] Error 2 > make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' > make[1]: *** [all-recursive] Error 1 > make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' > make: *** [all-recursive] Error 1 > Command exited with non-zero status 2 > ... > > I have attached my build-script, the detailed full build-log (used > 'clang -v' and 'make -j1') and the two diagnostic tmp-files. > > I am not sure if this is fixable in mesa by refactoring the code - > that's why I CCed especially Jose. > > If it's a llvm/clang bug, so the folks there should look. > > If you need more informations, please let me know. >Perhaps getting some (rough) idea of the commit this started failing is a nice start. Currently mapi is built in 3-4 different "modes", and it builds fine with gcc/msvc. It may be that it's a bug on our end, but it's a bit painful going through all the auto generated sources, the 10+ define guards and other magic that's inside src/mapi. Getting some idea on llvm/clang behaviour change should help out :-) Please open a bug-report with llvm and/or mesa, so that we have all the info in one place and things don't get lost. Thanks Emil
Sedat Dilek
2015-Feb-09 17:52 UTC
[LLVMdev] mesa-10.4.4: BROKEN TLS support in GLX with llvm-toolchain v3.6.0rc2
On Mon, Feb 9, 2015 at 6:44 PM, Emil Velikov <emil.l.velikov at gmail.com> wrote:> Hi Sedat, > > On 07/02/15 22:42, Sedat Dilek wrote: >> [ Please CC me I am not subscribed to mesa-dev and llvmdev MLs ] >> >> Hi, >> >> I already reported this when playing 1st time with my llvm-toolchain >> v3.6.0rc2 and mesa v10.3.7 [1]. >> The issue still remains in mesa v10.4.4. >> >> So, this is a field test to see if LLVM/Clang v3.6.0rc2 fits my needs. >> >> I see the following build-error... >> ... >> >> make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> CC shared_glapi_libglapi_la-entry.lo >> clang version 3.6.0 (tags/RELEASE_360/rc2) >> Target: x86_64-unknown-linux-gnu >> Thread model: posix >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 >> Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 >> Candidate multilib: .;@m64 >> Candidate multilib: 32;@m32 >> Selected multilib: .;@m64 >> "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple >> x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free >> -main-file-name entry.c -mrelocation-model static -mthread-model posix >> -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose >> -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu >> x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info >> -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c >> -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 >> -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo >> -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D >> "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D >> "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D >> "PACKAGE_BUGREPORT=\"https://bugs.freedesktop.org/enter_bug.cgi?product=Mesa\"" >> -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D >> STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D >> HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D >> HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D >> HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D >> YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D >> HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D >> HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D >> HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D >> HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D >> HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D >> HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D >> USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D >> USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D >> HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D >> GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D >> HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 >> -D MAPI_MODE_GLAPI -D >> "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I >> ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include >> -internal-isystem /usr/local/include -internal-isystem >> /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include >> -internal-externc-isystem /usr/include/x86_64-linux-gnu >> -internal-externc-isystem /include -internal-externc-isystem >> /usr/include -O0 -Wall -Werror=implicit-function-declaration >> -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir >> /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 >> -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc >> -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c >> clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target >> x86_64-unknown-linux-gnu >> ignoring nonexistent directory "/include" >> ignoring duplicate directory "." >> ignoring duplicate directory "." >> #include "..." search starts here: >> #include <...> search starts here: >> . >> ../../include >> /opt/xorg/include >> /usr/local/include >> /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include >> /usr/include/x86_64-linux-gnu >> /usr/include >> End of search list. >> In file included from ../../src/mapi/entry.c:49: >> ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed >> to have one element >> x86_64_entry_start[]; >> ^ >> fatal error: error in backend: symbol 'x86_64_entry_start' is already defined >> clang: error: clang frontend command failed with exit code 70 (use -v >> to see invocation) >> clang version 3.6.0 (tags/RELEASE_360/rc2) >> Target: x86_64-unknown-linux-gnu >> Thread model: posix >> clang: note: diagnostic msg: PLEASE submit a bug report to >> http://llvm.org/bugs/ and include the crash backtrace, preprocessed >> source, and associated run script. >> clang: note: diagnostic msg: >> ******************** >> >> PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: >> Preprocessed source(s) and associated run script(s) are located at: >> clang: note: diagnostic msg: /tmp/entry-f26a8a.c >> clang: note: diagnostic msg: /tmp/entry-f26a8a.sh >> clang: note: diagnostic msg: >> >> ******************** >> make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 >> make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[3]: *** [all-recursive] Error 1 >> make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[2]: *** [all] Error 2 >> make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' >> make: *** [all-recursive] Error 1 >> Command exited with non-zero status 2 >> ... >> >> I have attached my build-script, the detailed full build-log (used >> 'clang -v' and 'make -j1') and the two diagnostic tmp-files. >> >> I am not sure if this is fixable in mesa by refactoring the code - >> that's why I CCed especially Jose. >> >> If it's a llvm/clang bug, so the folks there should look. >> >> If you need more informations, please let me know. >> > Perhaps getting some (rough) idea of the commit this started failing is > a nice start. Currently mapi is built in 3-4 different "modes", and it > builds fine with gcc/msvc. > > It may be that it's a bug on our end, but it's a bit painful going > through all the auto generated sources, the 10+ define guards and other > magic that's inside src/mapi. Getting some idea on llvm/clang behaviour > change should help out :-) > > Please open a bug-report with llvm and/or mesa, so that we have all the > info in one place and things don't get lost. >I am unsure if it is a bug in llvm/clang or in mesa. Shall I open 2 bug-reports - in mesa and llvm BTS? - Sedat -
Jose Fonseca
2015-Feb-09 20:51 UTC
[LLVMdev] mesa-10.4.4: BROKEN TLS support in GLX with llvm-toolchain v3.6.0rc2
On 09/02/15 17:44, Emil Velikov wrote:> Hi Sedat, > > On 07/02/15 22:42, Sedat Dilek wrote: >> [ Please CC me I am not subscribed to mesa-dev and llvmdev MLs ] >> >> Hi, >> >> I already reported this when playing 1st time with my llvm-toolchain >> v3.6.0rc2 and mesa v10.3.7 [1]. >> The issue still remains in mesa v10.4.4. >> >> So, this is a field test to see if LLVM/Clang v3.6.0rc2 fits my needs. >> >> I see the following build-error... >> ... >> >> make[4]: Entering directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> CC shared_glapi_libglapi_la-entry.lo >> clang version 3.6.0 (tags/RELEASE_360/rc2) >> Target: x86_64-unknown-linux-gnu >> Thread model: posix >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.6.4 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 >> Found candidate GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9.2 >> Selected GCC installation: /usr/lib/gcc/x86_64-linux-gnu/4.9 >> Candidate multilib: .;@m64 >> Candidate multilib: 32;@m32 >> Selected multilib: .;@m64 >> "/opt/llvm-toolchain-3.6.0rc2/bin/clang" -cc1 -triple >> x86_64-unknown-linux-gnu -emit-obj -mrelax-all -disable-free >> -main-file-name entry.c -mrelocation-model static -mthread-model posix >> -mdisable-fp-elim -relaxed-aliasing -fmath-errno -masm-verbose >> -mconstructor-aliases -munwind-tables -fuse-init-array -target-cpu >> x86-64 -target-linker-version 2.22 -v -g -dwarf-column-info >> -coverage-file /home/wearefam/src/mesa/mesa-git/src/mapi/entry.c >> -resource-dir /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0 >> -dependency-file .deps/shared_glapi_libglapi_la-entry.Tpo >> -sys-header-deps -MP -MT shared_glapi_libglapi_la-entry.lo -D >> "PACKAGE_NAME=\"Mesa\"" -D "PACKAGE_TARNAME=\"mesa\"" -D >> "PACKAGE_VERSION=\"10.4.4\"" -D "PACKAGE_STRING=\"Mesa 10.4.4\"" -D >> "PACKAGE_BUGREPORT=\"https://urldefense.proofpoint.com/v2/url?u=https-3A__bugs.freedesktop.org_enter-5Fbug.cgi-3Fproduct-3DMesa&d=AwID-g&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=LdbG9btkWrIw7ABhWDTiHtGwFnB7cDCY6cHlnzXawlQ&s=sH_YjhwwusfBRXm5X-z7LRFkCz68ItpSfCmRnHJAYkw&e= \"" >> -D "PACKAGE_URL=\"\"" -D "PACKAGE=\"mesa\"" -D "VERSION=\"10.4.4\"" -D >> STDC_HEADERS=1 -D HAVE_SYS_TYPES_H=1 -D HAVE_SYS_STAT_H=1 -D >> HAVE_STDLIB_H=1 -D HAVE_STRING_H=1 -D HAVE_MEMORY_H=1 -D >> HAVE_STRINGS_H=1 -D HAVE_INTTYPES_H=1 -D HAVE_STDINT_H=1 -D >> HAVE_UNISTD_H=1 -D HAVE_DLFCN_H=1 -D "LT_OBJDIR=\".libs/\"" -D >> YYTEXT_POINTER=1 -D HAVE___BUILTIN_BSWAP32=1 -D >> HAVE___BUILTIN_BSWAP64=1 -D HAVE___BUILTIN_CLZ=1 -D >> HAVE___BUILTIN_CLZLL=1 -D HAVE___BUILTIN_CTZ=1 -D >> HAVE___BUILTIN_EXPECT=1 -D HAVE___BUILTIN_FFS=1 -D >> HAVE___BUILTIN_FFSLL=1 -D HAVE___BUILTIN_POPCOUNT=1 -D >> HAVE___BUILTIN_POPCOUNTLL=1 -D HAVE___BUILTIN_UNREACHABLE=1 -D >> HAVE_DLADDR=1 -D HAVE_PTHREAD=1 -D HAVE_LIBEXPAT=1 -D >> USE_EXTERNAL_DXTN_LIB=1 -D _GNU_SOURCE -D USE_SSE41 -D DEBUG -D >> USE_X86_64_ASM -D HAVE_XLOCALE_H -D HAVE_STRTOF -D HAVE_DLOPEN -D >> HAVE_POSIX_MEMALIGN -D HAVE_LIBDRM -D GLX_USE_DRM -D HAVE_LIBUDEV -D >> GLX_INDIRECT_RENDERING -D GLX_DIRECT_RENDERING -D GLX_USE_TLS -D >> HAVE_ALIAS -D HAVE_MINCORE -D HAVE_LLVM=0x0306 -D LLVM_VERSION_PATCH=0 >> -D MAPI_MODE_GLAPI -D >> "MAPI_ABI_HEADER=\"shared-glapi/glapi_mapi_tmp.h\"" -I . -I >> ../../include -I ../../src/mapi -I ../../src/mapi -I /opt/xorg/include >> -internal-isystem /usr/local/include -internal-isystem >> /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include >> -internal-externc-isystem /usr/include/x86_64-linux-gnu >> -internal-externc-isystem /include -internal-externc-isystem >> /usr/include -O0 -Wall -Werror=implicit-function-declaration >> -Werror=missing-prototypes -std=c99 -fdebug-compilation-dir >> /home/wearefam/src/mesa/mesa-git/src/mapi -ferror-limit 19 >> -fmessage-length 0 -pthread -mstackrealign -fobjc-runtime=gcc >> -fdiagnostics-show-option -o entry.o -x c ../../src/mapi/entry.c >> clang -cc1 version 3.6.0 based upon LLVM 3.6.0 default target >> x86_64-unknown-linux-gnu >> ignoring nonexistent directory "/include" >> ignoring duplicate directory "." >> ignoring duplicate directory "." >> #include "..." search starts here: >> #include <...> search starts here: >> . >> ../../include >> /opt/xorg/include >> /usr/local/include >> /opt/llvm-toolchain-3.6.0rc2/bin/../lib/clang/3.6.0/include >> /usr/include/x86_64-linux-gnu >> /usr/include >> End of search list. >> In file included from ../../src/mapi/entry.c:49: >> ./entry_x86-64_tls.h:66:1: warning: tentative array definition assumed >> to have one element >> x86_64_entry_start[]; >> ^ >> fatal error: error in backend: symbol 'x86_64_entry_start' is already defined >> clang: error: clang frontend command failed with exit code 70 (use -v >> to see invocation) >> clang version 3.6.0 (tags/RELEASE_360/rc2) >> Target: x86_64-unknown-linux-gnu >> Thread model: posix >> clang: note: diagnostic msg: PLEASE submit a bug report to >> https://urldefense.proofpoint.com/v2/url?u=http-3A__llvm.org_bugs_&d=AwID-g&c=Sqcl0Ez6M0X8aeM67LKIiDJAXVeAw-YihVMNtXt-uEs&r=zfmBZnnVGHeYde45pMKNnVyzeaZbdIqVLprmZCM2zzE&m=LdbG9btkWrIw7ABhWDTiHtGwFnB7cDCY6cHlnzXawlQ&s=KIoF21N7HeIysvh3fgiAiZkFeeEw8ZEr0gu0BsHmOrU&e= and include the crash backtrace, preprocessed >> source, and associated run script. >> clang: note: diagnostic msg: >> ******************** >> >> PLEASE ATTACH THE FOLLOWING FILES TO THE BUG REPORT: >> Preprocessed source(s) and associated run script(s) are located at: >> clang: note: diagnostic msg: /tmp/entry-f26a8a.c >> clang: note: diagnostic msg: /tmp/entry-f26a8a.sh >> clang: note: diagnostic msg: >> >> ******************** >> make[4]: *** [shared_glapi_libglapi_la-entry.lo] Error 1 >> make[4]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[3]: *** [all-recursive] Error 1 >> make[3]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[2]: *** [all] Error 2 >> make[2]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src/mapi' >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory `/home/wearefam/src/mesa/mesa-git/src' >> make: *** [all-recursive] Error 1 >> Command exited with non-zero status 2 >> ... >> >> I have attached my build-script, the detailed full build-log (used >> 'clang -v' and 'make -j1') and the two diagnostic tmp-files. >> >> I am not sure if this is fixable in mesa by refactoring the code - >> that's why I CCed especially Jose.This is an issue with building Mesa with Clang, but I actually don't have much experience with that. (I mostly use LLVM as a JIT library.)>> >> If it's a llvm/clang bug, so the folks there should look. >> >> If you need more informations, please let me know. >> > Perhaps getting some (rough) idea of the commit this started failing is > a nice start. Currently mapi is built in 3-4 different "modes", and it > builds fine with gcc/msvc. > > It may be that it's a bug on our end, but it's a bit painful going > through all the auto generated sources, the 10+ define guards and other > magic that's inside src/mapi. Getting some idea on llvm/clang behaviour > change should help out :-) > > Please open a bug-report with llvm and/or mesa, so that we have all the > info in one place and things don't get lost. > > Thanks > Emil >Yeah, the mapi/glapi code is a bit sensitive -- there are several possible configurations (assembly, no assembly, shared glapi, etc.) -- they all produce slightly different machine code. Jose