lundi 29 août 2016

clang-3.6 program segfaulting when linking against cuda code with opimizations enabled

When I build my CUDA program using clang 3.6 as the host compiler with -O3 or -O2 enabled, the program segfaults during the dynamic library initialisation stage. When I remove the CUDA libraries, it works fine.

Program received signal SIGSEGV, Segmentation fault.
mcount () at ../sysdeps/x86_64/_mcount.S:45
45      ../sysdeps/x86_64/_mcount.S: No such file or directory.
(gdb) bt
#0  mcount () at ../sysdeps/x86_64/_mcount.S:45
#1  0x0000000000000000 in ?? ()

This happens when I link against any CUDA library, even if I don't use any symbols in it.

The project layout is similar to this -

executable
    - host only static libraries
    - CUDA dynamic libraries

I am running Ubuntu 14.04.5

Aucun commentaire:

Enregistrer un commentaire