This is the mail archive of the
gdb-prs@sources.redhat.com
mailing list for the GDB project.
symtab/1375: problem debugging 64-bit sparc processes
- From: mattias at virtutech dot se
- To: gdb-gnats at sources dot redhat dot com
- Cc: gustav at virtutech dot se
- Date: 12 Sep 2003 20:38:04 -0000
- Subject: symtab/1375: problem debugging 64-bit sparc processes
- Reply-to: mattias at virtutech dot se
>Number: 1375
>Category: symtab
>Synopsis: problem debugging 64-bit sparc processes
>Confidential: no
>Severity: critical
>Priority: medium
>Responsible: unassigned
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Fri Sep 12 20:48:01 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator: mattias@virtutech.se
>Release: 5.3
>Organization:
>Environment:
solaris 8
gdb built as 64-bit binary with either gcc 3.3 or Sun Forte 7 C 5.4
configured for host/target/build: sparcv9-sun-solaris2.8
>Description:
When debugging 64-bit sparc processes emitted by Sun Forte 7, stabs are misread and function addresses are reported as zero.
The Sun C compiler sets the value field of FUN stabs to zero, which is the probable cause.
Also, it seems that GDB must be built as a 64-bit binary to debug 64-bit processes for system interface reasons; this is easy to get wrong and it would be nice if the configure script checked this.
>How-To-Repeat:
Build gdb as indicated. Debug any solaris 64-bit binary built with stabs by the Sun C compiler. Say "print main".
>Fix:
Adding the line
#define SOFUN_ADDRESS_MAYBE_MISSING
to gdb/config/sparc/tm-sp64.h seems to work. I'm not sure if more solaris-specific stuff should be borrowed from tm-sun4sol2.
>Release-Note:
>Audit-Trail:
>Unformatted: