diff options
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/solib-sunos.c | 8 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index a9e32cf..3690ec9 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2007-06-15 Ulrich Weigand <uweigand@de.ibm.com> + + * solib-sunos.c (sunos_solib_create_inferior_hook): Add comment + explaining why the PC adjustment code is necessary. + 2007-06-15 Vladimir Prus <vladimir@codesourcery.com> * m68k-tdep.h (enum m68k_flavour): New. diff --git a/gdb/solib-sunos.c b/gdb/solib-sunos.c index 6f5c589..0717607 100644 --- a/gdb/solib-sunos.c +++ b/gdb/solib-sunos.c @@ -775,7 +775,13 @@ sunos_solib_create_inferior_hook (void) /* We are now either at the "mapping complete" breakpoint (or somewhere else, a condition we aren't prepared to deal with anyway), so adjust the PC as necessary after a breakpoint, disable the breakpoint, and - add any shared libraries that were mapped in. */ + add any shared libraries that were mapped in. + + Note that adjust_pc_after_break did not perform any PC adjustment, + as the breakpoint the inferior just hit was not inserted by GDB, + but by the dynamic loader itself, and is therefore not found on + the GDB software break point list. Thus we have to adjust the + PC here. */ if (gdbarch_decr_pc_after_break (current_gdbarch)) { |