diff options
author | Jason Thorpe <thorpej@netbsd.org> | 2002-01-20 01:33:15 +0000 |
---|---|---|
committer | Jason Thorpe <thorpej@netbsd.org> | 2002-01-20 01:33:15 +0000 |
commit | 8d99d99d7e6183fea5ed481a16e5fe6cdd5470fc (patch) | |
tree | 2f07089a785aae92bd99c0476a6a5be9fa6379e6 /gdb/alpha-tdep.c | |
parent | ebfe9b6e39ec91bb08ba67f3572e416fce54d63c (diff) | |
download | gdb-8d99d99d7e6183fea5ed481a16e5fe6cdd5470fc.tar.gz |
* alpha-tdep.c (alpha_register_byte): New function.
(alpha_register_raw_size): Ditto.
(alpha_register_virtual_size): Ditto.
(alpha_skip_prologue_internal): Renamed from
alpha_skip_prologue.
(alpha_skip_prologue): New version that calls
alpha_skip_prologue_internal.
(alpha_in_lenient_prologue): Use alpha_skip_prologue_internal.
* config/alpha/tm-alpha.h (SKIP_PROLOGUE): Remove
second argument from alpha_skip_prologue.
(REGISTER_BYTE): Use alpha_register_byte.
(REGISTER_RAW_SIZE): Use alpha_register_raw_size.
(REGISTER_VIRTUAL_SIZE): Use alpha_register_virtual_size.
(FRAMELESS_FUNCTION_INVOCATION): Use
generic_frameless_function_invocation_not.
(FRAME_NUM_ARGS): Use frame_num_args_unknown.
(COERCE_FLOAT_TO_DOUBLE): Use standard_coerce_float_to_double.
Diffstat (limited to 'gdb/alpha-tdep.c')
-rw-r--r-- | gdb/alpha-tdep.c | 30 |
1 files changed, 27 insertions, 3 deletions
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c index b894fbdf086..971dd632f24 100644 --- a/gdb/alpha-tdep.c +++ b/gdb/alpha-tdep.c @@ -322,6 +322,24 @@ alpha_register_virtual_type (int regno) return ((regno >= FP0_REGNUM && regno < (FP0_REGNUM+31)) ? builtin_type_double : builtin_type_long); } + +int +alpha_register_byte (int regno) +{ + return (regno * 8); +} + +int +alpha_register_raw_size (int regno) +{ + return 8; +} + +int +alpha_register_virtual_size (int regno) +{ + return 8; +} /* Guaranteed to set frame->saved_regs to some values (it never leaves it @@ -1277,8 +1295,8 @@ alpha_pop_frame (void) Currently we must not skip more on the alpha, but we might need the lenient stuff some day. */ -CORE_ADDR -alpha_skip_prologue (CORE_ADDR pc, int lenient) +static CORE_ADDR +alpha_skip_prologue_internal (CORE_ADDR pc, int lenient) { unsigned long inst; int offset; @@ -1350,6 +1368,12 @@ alpha_skip_prologue (CORE_ADDR pc, int lenient) return pc + offset; } +CORE_ADDR +alpha_skip_prologue (CORE_ADDR addr) +{ + return (alpha_skip_prologue_internal (addr, 0)); +} + #if 0 /* Is address PC in the prologue (loosely defined) for function at STARTADDR? */ @@ -1357,7 +1381,7 @@ alpha_skip_prologue (CORE_ADDR pc, int lenient) static int alpha_in_lenient_prologue (CORE_ADDR startaddr, CORE_ADDR pc) { - CORE_ADDR end_prologue = alpha_skip_prologue (startaddr, 1); + CORE_ADDR end_prologue = alpha_skip_prologue_internal (startaddr, 1); return pc >= startaddr && pc < end_prologue; } #endif |