* breakpoint.c (expand_line_sal_maybe): Adjust adjust the SAL
authorJoel Brobecker <brobecker@gnat.com>
Tue, 24 Nov 2009 21:37:52 +0000 (21:37 +0000)
committerJoel Brobecker <brobecker@gnat.com>
Tue, 24 Nov 2009 21:37:52 +0000 (21:37 +0000)
        past the function prologue in the case where we were given only
        one SAL.

gdb/ChangeLog
gdb/breakpoint.c

index 71a5bd4..a1056d7 100644 (file)
@@ -1,3 +1,9 @@
+2009-11-24  Joel Brobecker  <brobecker@adacore.com>
+
+       * breakpoint.c (expand_line_sal_maybe): Adjust adjust the SAL
+       past the function prologue in the case where we were given only
+       one SAL.
+
 2009-11-24  Pedro Alves  <pedro@codesourcery.com>
 
        * record.c (init_record_ops, init_record_core_ops): Actually
index 90d9247..8a6813c 100644 (file)
@@ -6340,13 +6340,14 @@ expand_line_sal_maybe (struct symtab_and_line sal)
 
   if (expanded.nelts == 1)
     {
-      /* We had one sal, we got one sal.  Without futher
-        processing, just return the original sal.  */
+      /* We had one sal, we got one sal.  Return that sal, adjusting it
+         past the function prologue if necessary.  */
       xfree (expanded.sals);
       expanded.nelts = 1;
       expanded.sals = xmalloc (sizeof (struct symtab_and_line));
       sal.pc = original_pc;
       expanded.sals[0] = sal;
+      skip_prologue_sal (&expanded.sals[0]);
       do_cleanups (old_chain);
       return expanded;      
     }