Adding debug symbols causes segmentation faults with GCC-4.1 and MIPS...
Steven J. Hill
sjhill@realitydiluted.com
Tue Sep 13 21:37:00 GMT 2005
Joe Buck wrote:
>
> You might want to first make sure that your program has no memory
> access errors. You could try building it for x86 and debugging
> with valgrind, to see if that catches anything.
>
A good idea. I built it for x86. Unfortunately, from the output it
appears that 'clone' is not supported, or rather not very well. Here
is a link to the source:
http://www.uclibc.org/cgi-bin/viewcvs.cgi/*checkout*/trunk/uClibc/test/unistd/clone.c?content-type=text%2Fplain&rev=10696
The only interesting output is:
==4032== Syscall param clone(parent_tidptr) contains uninitialised byte(s)
==4032== at 0x1BA108AC: clone (clone.S:100)
==4032== by 0x1B96C412: __libc_start_main (libc-start.c:250)
==4032== by 0x80484A0: ??? (start.S:119)
==4032==
==4032== Syscall param clone(tlsinfo) contains uninitialised byte(s)
==4032== at 0x1BA108AC: clone (clone.S:100)
==4032== by 0x1B96C412: __libc_start_main (libc-start.c:250)
==4032== by 0x80484A0: ??? (start.S:119)
==4032==
==4032== Syscall param clone(child_tidptr) contains uninitialised byte(s)
==4032== at 0x1BA108AC: clone (clone.S:100)
==4032== by 0x1B96C412: __libc_start_main (libc-start.c:250)
==4032== by 0x80484A0: ??? (start.S:119)
==4032==
==4032== Unsupported clone() flags: 0x0
==4032==
==4032== The only supported clone() uses are:
==4032== - via a threads library (LinuxThreads or NPTL)
==4032== - via the implementation of fork or vfork
==4032== - for the Quadrics Elan3 user-space driver
I don't feel like I can trust the output since valgrind admitted it does
not do clone very well.
-Steve
More information about the Gcc
mailing list