* alpha-tdep.c (alpha_breakpoint_from_pc): New function.

(alpha_gdbarch_init): Set gdbarch_breakpoint_from_pc to
alpha_breakpoint_from_pc.  Set gdbarch_function_start_offset
to 0.
* config/alpha/tm-alpha.h: Remove forward decls of struct type
and struct value.
(FUNCTION_START_OFFSET): Remove.
(BREAKPOINT): Ditto.
This commit is contained in:
Jason Thorpe 2002-04-25 06:22:22 +00:00
parent c9b9995a38
commit 95b8070695
3 changed files with 26 additions and 9 deletions

View File

@ -1,3 +1,14 @@
2002-04-25 Jason Thorpe <thorpej@wasabisystems.com>
* alpha-tdep.c (alpha_breakpoint_from_pc): New function.
(alpha_gdbarch_init): Set gdbarch_breakpoint_from_pc to
alpha_breakpoint_from_pc. Set gdbarch_function_start_offset
to 0.
* config/alpha/tm-alpha.h: Remove forward decls of struct type
and struct value.
(FUNCTION_START_OFFSET): Remove.
(BREAKPOINT): Ditto.
2002-04-25 Jason Thorpe <thorpej@wasabisystems.com>
* MAINTAINERS: Reflect that multi-arch is enabled for VAX.

View File

@ -59,6 +59,8 @@ static gdbarch_extract_struct_value_address_ftype
alpha_extract_struct_value_address;
static gdbarch_use_struct_convention_ftype alpha_use_struct_convention;
static gdbarch_breakpoint_from_pc_ftype alpha_breakpoint_from_pc;
static gdbarch_frame_args_address_ftype alpha_frame_args_address;
static gdbarch_frame_locals_address_ftype alpha_frame_locals_address;
@ -1496,6 +1498,16 @@ alpha_register_convert_to_raw (struct type *valtype, int regnum,
error ("Cannot store value in floating point register");
}
static const unsigned char *
alpha_breakpoint_from_pc (CORE_ADDR *pcptr, int *lenptr)
{
static const unsigned char alpha_breakpoint[] =
{ 0x80, 0, 0, 0 }; /* call_pal bpt */
*lenptr = sizeof(alpha_breakpoint);
return (alpha_breakpoint);
}
/* Given a return value in `regbuf' with a type `valtype',
extract and copy its value into `valbuf'. */
@ -2061,7 +2073,10 @@ alpha_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
set_gdbarch_coerce_float_to_double (gdbarch,
standard_coerce_float_to_double);
set_gdbarch_breakpoint_from_pc (gdbarch, alpha_breakpoint_from_pc);
set_gdbarch_decr_pc_after_break (gdbarch, 4);
set_gdbarch_function_start_offset (gdbarch, 0);
set_gdbarch_frame_args_skip (gdbarch, 0);
/* Hook in ABI-specific overrides, if they have been registered. */

View File

@ -31,8 +31,6 @@
#include "coff/symconst.h"
struct frame_info;
struct type;
struct value;
struct symbol;
/* Number of traps that happen between exec'ing the shell
@ -40,13 +38,6 @@ struct symbol;
the inferior code. This is 2 on most implementations. */
#define START_INFERIOR_TRAPS_EXPECTED 3
/* Offset from address of function to start of its code.
Zero on most machines. */
#define FUNCTION_START_OFFSET 0
#define BREAKPOINT {0x80, 0, 0, 0} /* call_pal bpt */
/* Special symbol found in blocks associated with routines. We can hang
alpha_extra_func_info_t's off of this. */