Article View: gnu.gdb.bug
Article #397Bug in gdb-4.6.
From: Randall Smith
Date: Wed, 26 Aug 1992 22:06
Date: Wed, 26 Aug 1992 22:06
63 lines
2977 bytes
2977 bytes
In gdb 4.6 on a sparcstation, I had a problem with the "break" command. Specifically, it refused to take an assembly language address for an argument. Following is a transcript of part of the gdb session; the first instance of the rror is marked with "<===". -- Randy (gdb) p/x (int) cmcom_pe_get_1W_GET $1 = 0x356c8 (gdb) x/10i $pc 0x35778 <cmcom_pe_get_1W_GET+176>: ld [%l7+0x254], %l7 ! 0x33095254 <_mb_cur_max+855179528> 0x3577c <cmcom_pe_get_1W_GET+180>: tst %l7 0x35780 <cmcom_pe_get_1W_GET+184>: bne 0x357ec <cmcom_pe_get_1W_GET+292> 0x35784 <cmcom_pe_get_1W_GET+188>: nop 0x35788 <cmcom_pe_get_1W_GET+192>: ld [%g5+0xe00], %i5 0x3578c <cmcom_pe_get_1W_GET+196>: btst 0x10, %i5 0x35790 <cmcom_pe_get_1W_GET+200>: be 0x357a0 <cmcom_pe_get_1W_GET+216> 0x35794 <cmcom_pe_get_1W_GET+204>: nop 0x35798 <cmcom_pe_get_1W_GET+208>: b 0x357ac <cmcom_pe_get_1W_GET+228> 0x3579c <cmcom_pe_get_1W_GET+212>: nop (gdb) x/10i $pc - 8 0x35770 <cmcom_pe_get_1W_GET+168>: or %o0, 0xbb, %o0 ! 0xd80bb <cmtra_constants_base+33135> 0x35774 <cmcom_pe_get_1W_GET+172>: sethi %hi(0x33095000), %l7 0x35778 <cmcom_pe_get_1W_GET+176>: ld [%l7+0x254], %l7 ! 0x33095254 <_mb_cur_max+855179528> 0x3577c <cmcom_pe_get_1W_GET+180>: tst %l7 0x35780 <cmcom_pe_get_1W_GET+184>: bne 0x357ec <cmcom_pe_get_1W_GET+292> 0x35784 <cmcom_pe_get_1W_GET+188>: nop 0x35788 <cmcom_pe_get_1W_GET+192>: ld [%g5+0xe00], %i5 0x3578c <cmcom_pe_get_1W_GET+196>: btst 0x10, %i5 0x35790 <cmcom_pe_get_1W_GET+200>: be 0x357a0 <cmcom_pe_get_1W_GET+216> 0x35794 <cmcom_pe_get_1W_GET+204>: nop (gdb) p $l7 $2 = 856248320 (gdb) p/x $l7 $3 = 0x33095000 (gdb) p/x &cmcom_pe_node_level $4 = 0xcc254 (gdb) break 0x35774 Function "0x35774" not defined. <=== Error, I believe (gdb) help break Set breakpoint at specified line or function. Argument may be line number, function name, or "*" and an address. If line number is specified, break at start of code for that line. If function is specified, break at start of code for that function. If an address is specified, break at that exact address. With no arg, uses current execution address of selected stack frame. This is useful for breaking on return to a stack frame. Multiple breakpoints at one place are permitted, and useful if conditional. Do "help breakpoints" for info on other commands dealing with breakpoints. (gdb) break (int *()) 0x25774 Function "" not defined. (gdb) p (int) 0x35774 $5 = 218996 (gdb) break $5 Function "" not defined. (gdb) break 218996 No line 218996 in file "../src/cmrt_addresses.c". (gdb)
Technical Details
Message-ID:
<9208262206.AA02539@ncube.think.com>Path:
arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!think.com!randysShow Full Headers
Complete Article Headers
Newsgroups: gnu.gdb.bug Path: arc1-ca.pugleaf.net!sparky!uunet!cis.ohio-state.edu!think.com!randys From: randys@think.com (Randall Smith) Subject: Bug in gdb-4.6. Message-ID: <9208262206.AA02539@ncube.think.com> Sender: gnulists@ai.mit.edu Organization: GNUs Not Usenet Distribution: gnu Date: Wed, 26 Aug 1992 22:06:34 GMT Approved: bug-gdb@prep.ai.mit.edu Lines: 64