aboutsummaryrefslogtreecommitdiff
path: root/gdb/mips-tdep.c
diff options
context:
space:
mode:
authorAndrew Cagney <cagney@redhat.com>2004-02-17 15:21:22 +0000
committerAndrew Cagney <cagney@redhat.com>2004-02-17 15:21:22 +0000
commit634aa483dd4a87a16b9ebd0a1bd8621dc4196fb2 (patch)
tree66014fc7bd03522f4684fa59da67075bad2c6c58 /gdb/mips-tdep.c
parent6c74ac8bb4bd637279571bbe78fa224a6e01d41c (diff)
downloadgdb-634aa483dd4a87a16b9ebd0a1bd8621dc4196fb2.zip
gdb-634aa483dd4a87a16b9ebd0a1bd8621dc4196fb2.tar.gz
gdb-634aa483dd4a87a16b9ebd0a1bd8621dc4196fb2.tar.bz2
2004-02-17 Andrew Cagney <cagney@redhat.com>
* symtab.c (skip_prologue_using_sal): New function. * symtab.h (skip_prologue_using_sal): Declare. * frv-tdep.c: Include "symtab.h". (skip_prologue_using_sal): Delete function. * mips-tdep.c (skip_prologue_using_sal): Delete function. * rs6000-tdep.c (refine_prologue_limit): Mention skip_prologue_using_sal. * ia64-tdep.c (refine_prologue_limit): Ditto. * Makefile.in: Update dependencies.
Diffstat (limited to 'gdb/mips-tdep.c')
-rw-r--r--gdb/mips-tdep.c56
1 files changed, 0 insertions, 56 deletions
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index fb80964..9638b08 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -4564,62 +4564,6 @@ mips_step_skips_delay (CORE_ADDR pc)
extract_unsigned_integer (buf, MIPS_INSTLEN));
}
-
-/* Given PC at the function's start address, attempt to find the
- prologue end using SAL information. Return zero if the skip fails.
-
- A non-optimized prologue traditionally has one SAL for the function
- and a second for the function body. A single line function has
- them both pointing at the same line.
-
- An optimized prologue is similar but the prologue may contain
- instructions (SALs) from the instruction body. Need to skip those
- while not getting into the function body.
-
- The functions end point and an increasing SAL line are used as
- indicators of the prologue's endpoint.
-
- This code is based on the function refine_prologue_limit (versions
- found in both ia64 and ppc). */
-
-static CORE_ADDR
-skip_prologue_using_sal (CORE_ADDR func_addr)
-{
- struct symtab_and_line prologue_sal;
- CORE_ADDR start_pc;
- CORE_ADDR end_pc;
-
- /* Get an initial range for the function. */
- find_pc_partial_function (func_addr, NULL, &start_pc, &end_pc);
- start_pc += FUNCTION_START_OFFSET;
-
- prologue_sal = find_pc_line (start_pc, 0);
- if (prologue_sal.line != 0)
- {
- while (prologue_sal.end < end_pc)
- {
- struct symtab_and_line sal;
-
- sal = find_pc_line (prologue_sal.end, 0);
- if (sal.line == 0)
- break;
- /* Assume that a consecutive SAL for the same (or larger)
- line mark the prologue -> body transition. */
- if (sal.line >= prologue_sal.line)
- break;
- /* The case in which compiler's optimizer/scheduler has
- moved instructions into the prologue. We look ahead in
- the function looking for address ranges whose
- corresponding line number is less the first one that we
- found for the function. This is more conservative then
- refine_prologue_limit which scans a large number of SALs
- looking for any in the prologue */
- prologue_sal = sal;
- }
- }
- return prologue_sal.end;
-}
-
/* Skip the PC past function prologue instructions (32-bit version).
This is a helper function for mips_skip_prologue. */