[LLVMbugs] [Bug 7743] New: Missing or invalid line-related debug infos on Linux x86

bugzilla-daemon at llvm.org bugzilla-daemon at llvm.org
Thu Jul 29 02:47:27 PDT 2010


http://llvm.org/bugs/show_bug.cgi?id=7743

           Summary: Missing or invalid line-related debug infos on Linux
                    x86
           Product: clang
           Version: trunk
          Platform: PC
        OS/Version: Linux
            Status: NEW
          Severity: normal
          Priority: P
         Component: LLVM Codegen
        AssignedTo: unassignedclangbugs at nondot.org
        ReportedBy: qmathe at gmail.com
                CC: llvmbugs at cs.uiuc.edu


With GDB on Ubuntu 9.04 x86, it is not possible to set a breakpoint on a file
line or step through a function/method for a C or ObjC program compiled with
Clang (trunk r109551).

With a test source file named testffi.c:
#include <ffi.h>

int main(int argc, char **argv)
{
        return 1;
}

$ clang -g -o testffi testffi.c 

$ gdb testffi
GNU gdb 6.8-debian
This GDB was configured as "i486-linux-gnu"...
(gdb) b testffi.c:5
No line 5 in file "testffi.c".

Here is a more complex example with an ObjC program debugged with GDB 6.8:

Breakpoint 3, 0x08053426 in -[ETFCGIWebApp handleServerData:] (self=0xa25dd98, 
    _cmd=0xb6fede88, notification=0xa04ea48)
(gdb) n
Single stepping until exit from function _i_ETFCGIWebApp__handleServerData_, 
which has no line number information.
-[NSNotificationCenter _postAndRelease:] (self=0xa04dd88, _cmd=0xb6feded0, 
    notification=0xa25dd98) at NSNotificationCenter.m:1163
1163              NS_HANDLER
(gdb) bt
#0  -[NSNotificationCenter _postAndRelease:] (self=0xa04dd88, _cmd=0xb6feded0, 
    notification=0xa25dd98) at NSNotificationCenter.m:1163
#1  0xb6e7253d in -[NSNotificationCenter postNotification:] (self=0xa04dd88, 
    _cmd=0xb6fee708, notification=0xa25dd98) at NSNotificationCenter.m:1190
#2  0xb6e73934 in notify (center=0xa04dd88, list=0xa2de890, mode=0xb7001498, 
    zone=0xb7022dc0) at NSNotificationQueue.m:625
#3  0xb6e739dd in GSPrivateNotifyASAP (mode=0xb7001498)
    at NSNotificationQueue.m:649
#4  0xb6f82b20 in -[GSRunLoopCtxt pollUntil:within:] (self=0xa298be8, 
    _cmd=0xb7001d50, milliseconds=28958, contexts=0xa2dbdd0)
    at GSRunLoopCtxt.m:641
#5  0xb6ebd91f in -[NSRunLoop acceptInputForMode:beforeDate:] (self=0xa327680, 
    _cmd=0xb7001d78, mode=0xb7001498, limit_date=0xa2de880) at NSRunLoop.m:1197
#6  0xb6ebdd40 in -[NSRunLoop runMode:beforeDate:] (self=0xa327680, 
    _cmd=0xb7001d88, mode=0xb7001498, date=0xa2da5d8) at NSRunLoop.m:1265
#7  0xb6ebdefb in -[NSRunLoop runUntilDate:] (self=0xa327680, _cmd=0xb7001d80, 
    date=0xa2da5d8) at NSRunLoop.m:1296
#8  0xb6ebdddf in -[NSRunLoop run] (self=0xa327680, _cmd=0x806f860)
    at NSRunLoop.m:1279
#9  0x0805ae24 in main ()
(gdb) b ETFCGIWebApp.m:76
No line 76 in file "ETFCGIWebApp.m".

Here is the verbose output for the compilation of the first program:

$ clang -v -g -o testffi testffi.c

clang version 2.8 (trunk 109551)
Target: i386-pc-linux-gnu
Thread model: posix
 "/home/qmathe/reps/llvm/Release+Debug+Asserts/bin/clang" -cc1 -triple
i386-pc-linux-gnu -S -disable-free -main-file-name testffi.c -mrelocation-model
static -mdisable-fp-elim -mconstructor-aliases -target-cpu pentium4 -v -g
-resource-dir /home/qmathe/reps/llvm/Release+Debug+Asserts/lib/clang/2.8
-ferror-limit 19 -fmessage-length 80 -fgnu-runtime -fdiagnostics-show-option
-fcolor-diagnostics -o /tmp/cc-zteC7E.s -x c testffi.c
clang -cc1 version 2.8 based upon llvm 2.8svn hosted on i386-pc-linux-gnu
#include "..." search starts here:
#include <...> search starts here:
 /usr/local/include
 /home/qmathe/reps/llvm/Release+Debug+Asserts/lib/clang/2.8/include
 /usr/lib/gcc/i486-linux-gnu/4.3.3/include
 /usr/lib/gcc/i486-linux-gnu/4.3.3/include-fixed
 /usr/include/i486-linux-gnu
 /usr/include
End of search list.
 "/usr/bin/gcc" -v -g -c -m32 -o /tmp/cc-EK7Gc8.o -x assembler /tmp/cc-zteC7E.s
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.3-5ubuntu4'
--with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
--with-system-zlib --libexecdir=/usr/lib --without-included-gettext
--enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3
--program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug
--enable-objc-gc --enable-mpfr --enable-targets=all --with-tune=generic
--enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu
--target=i486-linux-gnu
Thread model: posix
gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) 
COLLECT_GCC_OPTIONS='-v' '-g' '-c' '-m32' '-o' '/tmp/cc-EK7Gc8.o'
'-mtune=generic'
 as --gdwarf2 -V -Qy --32 -o /tmp/cc-EK7Gc8.o /tmp/cc-zteC7E.s
GNU assembler version 2.19.1 (i486-linux-gnu) using BFD version (GNU Binutils
for Ubuntu) 2.19.1
COMPILER_PATH=/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-g' '-c' '-m32' '-o' '/tmp/cc-EK7Gc8.o'
'-mtune=generic'
 "/usr/bin/gcc" -v -g -m32 -o testffi /tmp/cc-EK7Gc8.o
Using built-in specs.
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.3.3-5ubuntu4'
--with-bugurl=file:///usr/share/doc/gcc-4.3/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr --enable-shared
--with-system-zlib --libexecdir=/usr/lib --without-included-gettext
--enable-threads=posix --enable-nls --with-gxx-include-dir=/usr/include/c++/4.3
--program-suffix=-4.3 --enable-clocale=gnu --enable-libstdcxx-debug
--enable-objc-gc --enable-mpfr --enable-targets=all --with-tune=generic
--enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu
--target=i486-linux-gnu
Thread model: posix
gcc version 4.3.3 (Ubuntu 4.3.3-5ubuntu4) 
COMPILER_PATH=/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/
LIBRARY_PATH=/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/4.3.3/:/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/:/lib/../lib/:/usr/lib/../lib/:/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../:/lib/:/usr/lib/
COLLECT_GCC_OPTIONS='-v' '-g' '-m32' '-o' 'testffi' '-mtune=generic'
 /usr/lib/gcc/i486-linux-gnu/4.3.3/collect2 --eh-frame-hdr -m elf_i386
--hash-style=both -dynamic-linker /lib/ld-linux.so.2 -o testffi -z relro
/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/crt1.o
/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/crti.o
/usr/lib/gcc/i486-linux-gnu/4.3.3/crtbegin.o
-L/usr/lib/gcc/i486-linux-gnu/4.3.3 -L/usr/lib/gcc/i486-linux-gnu/4.3.3
-L/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib -L/lib/../lib
-L/usr/lib/../lib -L/usr/lib/gcc/i486-linux-gnu/4.3.3/../../.. /tmp/cc-EK7Gc8.o
-lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s
--no-as-needed /usr/lib/gcc/i486-linux-gnu/4.3.3/crtend.o
/usr/lib/gcc/i486-linux-gnu/4.3.3/../../../../lib/crtn.o

-- 
Configure bugmail: http://llvm.org/bugs/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.



More information about the llvm-bugs mailing list