gdb-4.16.85: Setting breakpoints at arbitrary addresses broken

Peter.Schauer Peter.Schauer@Regent.E-Technik.TU-Muenchen.DE
Mon Feb 9 12:09:00 GMT 1998

This change:

Fri Jan 23 07:47:06 1998  Fred Fish  <>

	* symtab.c (decode_line_1): Remove assignment of sals[0].pc field.

inhibits the setting of breakpoints on arbitrary assembler statements
via `break *loc', the breakpoint is set at the start of the corresponding
source line instead.
An example from a debug session debugging GDB itself is included below.
I intended to look at the result of the `read' call, but I cannot set
the breakpoint just after the call.

Please reconsider this change, if it has not been done accidentally,
being able to set a breakpoint `within a line' is pretty valuable.

(top-gdb) i line history.c:511
Line 511 of "/gnuwin32/gdb-4.16.85/readline/history.c"
   starts at address 0x5056c0 <read_history_range+108>
   and ends at 0x5056df <read_history_range+139>.
(top-gdb) x/9i
0x5056c0 <read_history_range+108>:      movl   0xffffffc4(%ebp),%eax
0x5056c3 <read_history_range+111>:      pushl  %eax
0x5056c4 <read_history_range+112>:      movl   0xfffffff8(%ebp),%eax
0x5056c7 <read_history_range+115>:      pushl  %eax
0x5056c8 <read_history_range+116>:      movl   0xfffffff4(%ebp),%eax
0x5056cb <read_history_range+119>:      pushl  %eax
0x5056cc <read_history_range+120>:      call   0x51c778 <read>
0x5056d1 <read_history_range+125>:      addl   $0xc,%esp
0x5056d4 <read_history_range+128>:      movl   %eax,%eax
(top-gdb) b *0x5056d4
Breakpoint 3 at 0x5056c0: file /gnuwin32/gdb-4.16.85/readline/history.c, line 511

Peter Schauer

More information about the Gdb mailing list