* arm-tdep.c (arm_skip_prologue): Always skip prologue by scanning
the prologue if source is assembler.
This commit is contained in:
parent
02da620696
commit
50f6fb4b7a
@ -1,3 +1,8 @@
|
|||||||
|
2001-12-04 Corinna Vinschen <vinschen@redhat.com>
|
||||||
|
|
||||||
|
* arm-tdep.c (arm_skip_prologue): Always skip prologue by scanning
|
||||||
|
the prologue if source is assembler.
|
||||||
|
|
||||||
2001-12-04 Jackie Smith Cashion <jsmith@redhat.com>
|
2001-12-04 Jackie Smith Cashion <jsmith@redhat.com>
|
||||||
|
|
||||||
* MAINTAINERS (write-after-approval): Add self.
|
* MAINTAINERS (write-after-approval): Add self.
|
||||||
|
@ -402,16 +402,25 @@ arm_skip_prologue (CORE_ADDR pc)
|
|||||||
unsigned long inst;
|
unsigned long inst;
|
||||||
CORE_ADDR skip_pc;
|
CORE_ADDR skip_pc;
|
||||||
CORE_ADDR func_addr, func_end;
|
CORE_ADDR func_addr, func_end;
|
||||||
|
char *func_name;
|
||||||
struct symtab_and_line sal;
|
struct symtab_and_line sal;
|
||||||
|
|
||||||
/* See what the symbol table says. */
|
/* See what the symbol table says. */
|
||||||
|
|
||||||
if (find_pc_partial_function (pc, NULL, &func_addr, &func_end))
|
if (find_pc_partial_function (pc, &func_name, &func_addr, &func_end))
|
||||||
{
|
{
|
||||||
|
struct symbol *sym;
|
||||||
|
|
||||||
|
/* Found a function. */
|
||||||
|
sym = lookup_symbol (func_name, NULL, VAR_NAMESPACE, NULL, NULL);
|
||||||
|
if (sym && SYMBOL_LANGUAGE (sym) != language_asm)
|
||||||
|
{
|
||||||
|
/* Don't use this trick for assembly source files. */
|
||||||
sal = find_pc_line (func_addr, 0);
|
sal = find_pc_line (func_addr, 0);
|
||||||
if ((sal.line != 0) && (sal.end < func_end))
|
if ((sal.line != 0) && (sal.end < func_end))
|
||||||
return sal.end;
|
return sal.end;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* Check if this is Thumb code. */
|
/* Check if this is Thumb code. */
|
||||||
if (arm_pc_is_thumb (pc))
|
if (arm_pc_is_thumb (pc))
|
||||||
|
Loading…
Reference in New Issue
Block a user