aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog5
-rw-r--r--gdb/solib-sunos.c8
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))
{