Andrew Cagney
6c0e89edf9
2003-03-30 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_DUMMY_WRITE_SP): Replace TARGET_WRITE_SP.
* gdbarch.h, gdbarch.c: Regenerate.
* v850-tdep.c (v850_gdbarch_init): Set deprecated_dummy_write_sp.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* m68k-tdep.c (m68k_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* vax-tdep.c (vax_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* ns32k-tdep.c (ns32k_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* alpha-tdep.c (alpha_gdbarch_init): Ditto.
* sparc-tdep.c (sparc_push_dummy_frame, sparc_pop_frame): Update.
* config/sparc/tm-sp64.h (DEPRECATED_DUMMY_WRITE_SP): Update.
* config/pa/tm-hppa.h (DEPRECATED_DUMMY_WRITE_SP): Define.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* valops.c (hand_function_call): Replace TARGET_WRITE_SP with
DEPRECATED_DUMMY_WRITE_SP. Call when the method is available,
instead of when push_dummy_call is not available.
2003-03-30 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Remove
reference to TARGET_WRITE_SP.
2003-03-30 14:59:02 +00:00
Andrew Cagney
b81774d89c
2003-03-26 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (DEPRECATED_PUSH_ARGUMENTS): Rename PUSH_ARGUMENTS.
(push_dummy_call): New pure multi-arch replacement with gdbarch,
regcache and dummy_addr parameters.
* gdbarch.h, gdbarch.c: Re-generate.
* valops.c (hand_function_call): Use gdbarch_push_dummy_call when
available; assume it will handle stack alignment and return
address issues. Fall back to DEPRECATED_PUSH_ARGUMENTS and
legacy_push_arguments.
(legacy_push_arguments): Rename default_push_arguments.
* value.h (legacy_push_arguments): Rename default_push_arguments.
* i386-tdep.c (i386_push_arguments): Call legacy_push_arguments.
* config/sparc/tm-sparc.h (DEPRECATED_PUSH_ARGUMENTS): Update.
* config/sparc/tm-sp64.h (DEPRECATED_PUSH_ARGUMENTS): Update.
* config/pa/tm-hppa.h (DEPRECATED_PUSH_ARGUMENTS): Update.
* config/i386/tm-symmetry.h: Update.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* x86-64-tdep.c (x86_64_init_abi): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* hppa-tdep.c (hppa_gdbarch_init): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* d10v-tdep.c (d10v_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* arm-linux-tdep.c (arm_linux_init_abi): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
2003-03-26 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Replace
PUSH_ARGUMENTS with push_dummy_call, add gdbarch, regcache and
dummy_addr parameters.
2003-03-26 22:39:53 +00:00
Andrew Cagney
1bf6d5cced
2003-03-25 Andrew Cagney <cagney@redhat.com>
...
* gdbarch.sh (CALL_DUMMY_STACK_ADJUST_P): Delete.
(DEPRECATED_CALL_DUMMY_STACK_ADJUST): Replace
CALL_DUMMY_STACK_ADJUST with a predicate variable.
* gdbarch.h, gdbarch.c: Regenerate.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Do not set
call_dummy_stack_adjust_p.
* vax-tdep.c (vax_gdbarch_init): Ditto.
* v850-tdep.c (v850_gdbarch_init): Ditto.
* sh-tdep.c (sh_gdbarch_init): Ditto.
* s390-tdep.c (s390_gdbarch_init): Ditto.
* rs6000-tdep.c (rs6000_gdbarch_init): Ditto.
* ns32k-tdep.c (ns32k_gdbarch_init): Ditto.
* mn10300-tdep.c (mn10300_gdbarch_init): Ditto.
* mips-tdep.c (mips_gdbarch_init): Ditto.
* mcore-tdep.c (mcore_gdbarch_init): Ditto.
* m68k-tdep.c (m68k_gdbarch_init): Ditto.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Ditto.
* ia64-tdep.c (ia64_gdbarch_init): Ditto.
* i386-tdep.c (i386_gdbarch_init): Ditto.
* h8300-tdep.c (h8300_gdbarch_init): Ditto.
* frv-tdep.c (frv_gdbarch_init): Ditto.
* d10v-tdep.c (d10v_gdbarch_init): Ditto.
* cris-tdep.c (cris_gdbarch_init): Ditto.
* avr-tdep.c (avr_gdbarch_init): Ditto.
* arm-tdep.c (arm_gdbarch_init): Ditto.
* alpha-tdep.c (alpha_gdbarch_init): Ditto.
* config/sparc/tm-sp64.h (CALL_DUMMY_STACK_ADJUST): Update.
* config/sparc/tm-sparc.h (CALL_DUMMY_STACK_ADJUST): Update.
* config/sparc/tm-sp64.h (CALL_DUMMY_STACK_ADJUST): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update. Do not set
call_dummy_stack_adjust_p.
* inferior.h (CALL_DUMMY_STACK_ADJUST_P): Delete macro.
(CALL_DUMMY_STACK_ADJUST): Delete macro.
* sparc-tdep.c (sparc32_push_arguments): Update.
* valops.c (hand_function_call): Update.
2003-03-25 Andrew Cagney <cagney@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete
reference to CALL_DUMMY_STACK_ADJUST_P. Rename
CALL_DUMMY_STACK_ADJUST to DEPRECATED_CALL_DUMMY_STACK_ADJUST.
Add reference to PUSH_ARGUMENTS.
2003-03-25 18:54:16 +00:00
Andrew Cagney
a0ed55327d
2003-03-03 Andrew Cagney <cagney@redhat.com>
...
Make MAX_REGISTER_RAW_SIZE and MAX_REGISTER_VIRTUAL_SIZE optional.
* gdbarch.sh (DEPRECATED_MAX_REGISTER_RAW_SIZE): Variable with
predicate. Replace MAX_REGISTER_RAW_SIZE.
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto for
MAX_REGISTER_VIRTUAL_SIZE.
* regcache.c (legacy_max_register_raw_size): New function.
(legacy_max_register_virtual_size): New function.
* defs.h (MAX_REGISTER_VIRTUAL_SIZE): Define.
(MAX_REGISTER_RAW_SIZE): Define.
(legacy_max_register_raw_size): Declare.
(legacy_max_register_virtual_size): Declare.
* config/sparc/tm-sparc.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Update.
* config/sparc/tm-sp64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto.
* config/pa/tm-hppa.h (DEPRECATED_MAX_REGISTER_RAW_SIZE)
(DEPRECATED_MAX_REGISTER_VIRTUAL_SIZE): Ditto.
* config/pa/tm-hppa64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
* config/ia64/tm-ia64.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
* config/i386/tm-ptx.h (DEPRECATED_MAX_REGISTER_RAW_SIZE): Ditto.
* xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
* vax-tdep.c (vax_gdbarch_init): Update.
* v850-tdep.c (v850_gdbarch_init): Update.
* sparc-tdep.c (sparc_gdbarch_init): Update.
* sh-tdep.c (sh_gdbarch_init): Update.
* s390-tdep.c (s390_gdbarch_init): Update.
* rs6000-tdep.c (rs6000_gdbarch_init): Update.
* ns32k-tdep.c (ns32k_gdbarch_init): Update.
* mn10300-tdep.c (mn10300_gdbarch_init): Update.
* mips-tdep.c (mips_gdbarch_init): Update.
* mcore-tdep.c (mcore_gdbarch_init): Update.
* m68k-tdep.c (m68k_gdbarch_init): Update.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
* ia64-tdep.c (ia64_gdbarch_init): Update.
* i386-tdep.c (i386_gdbarch_init): Update.
* hppa-tdep.c (hppa_gdbarch_init): Update.
* h8300-tdep.c (h8300_gdbarch_init): Update.
* frv-tdep.c (frv_gdbarch_init): Update.
* cris-tdep.c (cris_gdbarch_init): Update.
* avr-tdep.c (avr_gdbarch_init): Update.
* arm-tdep.c (arm_gdbarch_init): Update.
* alpha-tdep.c (alpha_gdbarch_init): Update.
* d10v-tdep.c (d10v_gdbarch_init): Do not set
max_register_raw_size or max_register_virtual_size.
2003-03-03 20:50:20 +00:00
Andrew Cagney
570b8f7c95
2003-01-18 Andrew Cagney <ac131313@redhat.com>
...
* cris-tdep.c: Fix function declaration indentation.
* dwarfread.c, gdbcore.h, gdbtypes.h, i386v-nat.c: Ditto.
* mips-tdep.c, monitor.h, parse.c, proc-utils.h: Ditto.
* rs6000-nat.c, ser-go32.c, somread.c, stabsread.c: Ditto.
* symfile.h, symtab.h, target.c, target.h, value.h: Ditto.
* xcoffread.c, config/pa/tm-hppa.h: Ditto.
* config/sparc/tm-sp64.h, config/sparc/tm-sparc.h: Ditto.
2003-01-19 04:06:47 +00:00
Andrew Cagney
ae45cd1682
2002-12-01 Andrew Cagney <ac131313@redhat.com>
...
* gdbarch.sh (DEPRECATED_PC_IN_CALL_DUMMY): Rename
PC_IN_CALL_DUMMY. Change to predicate. Always allow call.
* gdbarch.h, gdbarch.c: Re-generate.
* config/sparc/tm-sparc.h, config/sparc/tm-sp64.h: Update.
* config/mn10200/tm-mn10200.h, config/h8500/tm-h8500.h: Update.
* config/pa/tm-hppa.h, frame.h: Update.
* x86-64-tdep.c, vax-tdep.c, sparc-tdep.c: Update.
* s390-tdep.c, ns32k-tdep.c, mn10300-tdep.c: Update.
* m68k-tdep.c, i386-tdep.c, frv-tdep.c: Update.
* cris-tdep.c, alpha-tdep.c: Update.
* frame.c (set_unwind_by_pc, create_new_frame): Use either
DEPRECATED_PC_IN_CALL_DUMMY or pc_in_dummy_frame.
(get_prev_frame): Ditto.
Index: doc/ChangeLog
2002-12-01 Andrew Cagney <ac131313@redhat.com>
* gdbint.texinfo (Target Architecture Definition): Delete
PC_IN_CALL_DUMMY.
2002-12-01 19:07:16 +00:00
Andrew Cagney
ed5cedc515
2002-11-27 Andrew Cagney <cagney@redhat.com>
...
* config/z8k/tm-z8k.h (PC_IN_CALL_DUMMY): Update definition to use
deprecated pc_in_call_dummy function.
* config/sparc/tm-sparc.h (PC_IN_CALL_DUMMY): Ditto.
* config/sparc/tm-sp64.h (PC_IN_CALL_DUMMY): Ditto.
* config/pa/tm-hppa.h (PC_IN_CALL_DUMMY): Ditto.
* config/mn10200/tm-mn10200.h (PC_IN_CALL_DUMMY): Ditto.
* config/h8500/tm-h8500.h (PC_IN_CALL_DUMMY): Ditto.
2002-11-27 20:44:10 +00:00
Andrew Cagney
e92b0cc9b1
2002-11-26 Andrew Cagney <ac131313@redhat.com>
...
* config/h8500/tm-h8500.h (CALL_DUMMY_LOCATION): Define as ON_STACK.
(USE_GENERIC_DUMMY_FRAMES): Define as zero.
(PC_IN_CALL_DUMMY): Define as pc_in_call_dummy_on_stack.
* config/mn10200/tm-mn10200.h (PC_IN_CALL_DUMMY): Define as
pc_in_call_dummy_at_entry_point.
* config/pa/tm-hppa.h (CALL_DUMMY_LOCATION): Define as ON_STACK.
(USE_GENERIC_DUMMY_FRAMES): Define as zero.
(PC_IN_CALL_DUMMY): Define as pc_in_call_dummy_on_stack.
* config/pa/tm-hppa64.h (CALL_DUMMY_LOCATION): Delete undefine.
* config/sparc/tm-sparc.h (PC_IN_CALL_DUMMY): Define as
pc_in_call_dummy_on_stack.
* config/sparc/tm-sp64.h (PC_IN_CALL_DUMMY): Redefine as
pc_in_call_dummy_at_entry_point and pc_in_call_dummy_on_stack.
* config/z8k/tm-z8k.h (CALL_DUMMY_LOCATION): Define as ON_STACK.
(USE_GENERIC_DUMMY_FRAMES): Define as zero.
(PC_IN_CALL_DUMMY): Defile as pc_in_call_dummy_on_stack.
2002-11-27 01:08:50 +00:00
Andrew Cagney
26e9b323da
+ * gdbarch.sh (DEPRECATED_EXTRACT_RETURN_VALUE): Rename
...
+ EXTRACT_RETURN_VALUE.
+ (DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS): Rename
+ EXTRACT_STRUCT_VALUE_ADDRESS.
+ * gdbarch.h, gdbarch.c: Regenerate.
+
+ * values.c (value_being_returned): Handle
+ DEPRECATED_EXTRACT_STRUCT_VALUE_ADDRESS.
+ (EXTRACT_RETURN_VALUE): Define as DEPRECATED_EXTRACT_RETURN_VALUE.
+
+ * arm-linux-tdep.c (arm_linux_init_abi): Update.
+ * arm-tdep.c (arm_gdbarch_init): Update.
+ * avr-tdep.c (avr_gdbarch_init): Update.
+ * cris-tdep.c (cris_gdbarch_init): Update.
+ * d10v-tdep.c (d10v_gdbarch_init): Update.
+ * ia64-tdep.c (ia64_gdbarch_init): Update.
+ * m68hc11-tdep.c (m68hc11_gdbarch_init): Update.
+ * rs6000-tdep.c (rs6000_gdbarch_init): Update.
+ * s390-tdep.c (s390_gdbarch_init): Update.
+ * sh-tdep.c (sh_gdbarch_init): Update.
+ * s390-tdep.c (s390_gdbarch_init): Update.
+ * sparc-tdep.c (sparc_gdbarch_init): Update.
+ * ns32k-tdep.c (ns32k_gdbarch_init): Update.
+ * v850-tdep.c (v850_gdbarch_init): Update.
+ * vax-tdep.c (vax_gdbarch_init): Update.
+ * x86-64-tdep.c (x86_64_gdbarch_init): Update.
+ * xstormy16-tdep.c (xstormy16_gdbarch_init): Update.
+
+ * config/arc/tm-arc.h: Update.
+ * config/d30v/tm-d30v.h: Update.
+ * config/fr30/tm-fr30.h: Update.
+ * config/h8300/tm-h8300.h: Update.
* config/h8500/tm-h8500.h: Update.
* config/i386/tm-i386.h: Update.
* config/i386/tm-ptx.h: Update.
* config/i386/tm-symmetry.h: Update.
* config/i960/tm-i960.h: Update.
* config/m32r/tm-m32r.h: Update.
* config/m68k/tm-delta68.h: Update.
* config/m68k/tm-linux.h: Update.
* config/m68k/tm-m68k.h: Update.
* config/m88k/tm-m88k.h: Update.
* config/mcore/tm-mcore.h: Update.
* config/mips/tm-mips.h: Update.
* config/mn10200/tm-mn10200.h: Update.
* config/pa/tm-hppa.h: Update.
* config/pa/tm-hppa64.h: Update.
* config/sparc/tm-sp64.h: Update.
* config/sparc/tm-sparc.h: Update.
* config/sparc/tm-sparclet.h: Update.
* config/z8k/tm-z8k.h: Update.
2002-06-14 22:55:51 +00:00
Andrew Cagney
8227c0ffb1
* h8500-tdep.c (h8500_write_fp): Delete function.
...
* dwarf2cfi.c (cfi_write_fp): Document as not used.
* mips-tdep.c (mips_gdbarch_init): Do not set write_fp.
* ia64-tdep.c (ia64_gdbarch_init): Do not set write_fp.
* m68hc11-tdep.c (m68hc11_gdbarch_init): Do not set write_fp.
* rs6000-tdep.c (rs6000_gdbarch_init): Do not set write_fp.
* s390-tdep.c (s390_gdbarch_init): Do not set write_fp.
(s390_write_fp):
* sh-tdep.c (sh_gdbarch_init): Do not set write_fp.
* x86-64-tdep.c (i386_gdbarch_init): Do not set write_fp.
* d10v-tdep.c (d10v_gdbarch_init): Do not set write_fp.
(d10v_write_fp): Delete function.
* inferior.h (write_fp, generic_target_write_fp): Delete
declarations.
* regcache.c (generic_target_write_fp): Delete function.
(write_fp): Delete function.
* gdbarch.sh (TARGET_WRITE_FP): Delete.
* gdbarch.h, gdbarch.c: Regenerate.
* config/v850/tm-v850.h (TARGET_WRITE_FP): Delete macro.
* config/sparc/tm-sp64.h (TARGET_WRITE_FP): Delete macro.
(sparc64_write_fp): Delete declaration.
* config/h8500/tm-h8500.h (TARGET_WRITE_FP): Delete macro.
(h8500_write_fp): Delete declaration.
2002-04-06 00:02:52 +00:00
Andrew Cagney
080fe24b58
Fix PR gdb/287. From wiz at danbala. Then->than and typos.
2002-02-25 02:13:10 +00:00
Andrew Cagney
64c4637f92
* config/sparc/tm-sp64.h (GDB_MULTI_ARCH): Down grade to
...
GDB_MULTI_ARCH_PARTIAL from two. SOFTWARE_SINGLE_STEP is not
multi-arch.
* gdbarch.sh (SOFTWARE_SINGLE_STEP): Add.
* gdbarch.h, gdbarch.c: Re-generate.
* target.h (SOFTWARE_SINGLE_STEP_P)
(SOFTWARE_SINGLE_STEP): Delete macro definitions.
2001-03-24 02:07:49 +00:00
Kevin Buettner
b6ba6518e9
Update/correct copyright notices.
2001-03-06 08:22:02 +00:00
Kevin Buettner
a14ed312fd
PARAMS removal.
2000-05-28 01:12:42 +00:00
Michael Snyder
5af923b0f0
2000-05-10 Michael Snyder <msnyder@seadog.cygnus.com>
...
Make Sparc a Multi-Arch target. Discard PARAMS macro (require ANSI).
* sparc-tdep.c: include arch-utils.h.
(SPARC_HAS_FPU, FP_REGISTER_BYTES, FP_MAX_REG NUM, SPARC_INTREG_SIZE,
DUMMY_REG_SAVE_OFFSET): provide multi-arch-compatible definitions.
(GDB_TARGET_IS_SPARC64): make into a runtime test.
(struct frame_extra_info): Define, use instead of the macro.
(Many places): Use alloca instead of statically allocated buffers
that depend on a multi-arch variable such as MAX_REGISTER_RAW_SIZE.
(sparc_extract_struct_value_address): Accept a pointer arg instead
of an array sized by REGISTER_BYTES.
(examine_prologue): Accept a pointer to an array of CORE_ADDR,
instead of the defunct struct frame_saved_regs. Recognize new
Sparc64 store instructions as part of the prologue. Ignore the
destination of a frame store when parsing the prologue (so long
as it's on the stack).
(sparc_push_dummy_frame): Fix incorrect buffer offset for PSTATE.
(sparc_frame_find_saved_regs): Accept a ptr to an array of CORE_ADDR
instead of the defunct struct frame_saved_regs.
(supply_gregset): Discard unnecessary 'zerobuf': just send NULL to
supply_register. Provide 4-byte offset to compensate for diff
between size of the prgreg_t elements on a 64-bit host and size
of the registers for a 32-bit target. Fill all inaccessible regs
with zero so they won't keep being requested again and again.
(fill_gregset): Handle 32/64 size difference between registers
and prgreg_t. Handle as many new 64-bit regs as possible.
(supply_fpregset, fill_fpregset): Attempt to handle 64-bit world.
(sparc_push_arguments): Rename to sparc32_push_arguments.
Copy arguments into registers as well as onto stack, so that the
CALL_DUMMY (code pushed onto the target stack) is not required.
(sparc_extract_return_value): Rename to sparc32_extract_return_value.
(sparc_store_return_value): Use memset instead of bzero.
Use write_register_gen instead of write_register_bytes.
(sparclet_store_return_value): New function.
(_initialize_sparc_tdep): Call register_gdbarch_init to activate
the gdbarch multi-architecture system.
(sp64_push_arguments): Rename to sparc64_push_arguments.
Extend to store arguments in general registers as well as on stack.
(sparc64_extract_return_value): Rename to sp64_extract_return_value.
Use as a private function, to be called by the new external function
sparc64_extract_return_value.
(sparclet_extract_return_value): New function.
(sparc32_stack_align, sparc64_stack_align, sparc32_register_name,
sparc64_register_name, sparc_print_extra_frame_info,
sparclite_register_name, sparclet_register_name,
sparc_push_return_address, sparc64_use_struct_convention,
sparc32_store_struct_return, sparc64_store_struct_return,
sparc32_register_virtual_type, sparc64_register_virtual_type,
sparc32_register_size, sparc64_register_size,
sparc32_register_byte, sparc64_register_byte,
sparc_gdbarch_skip_prologue, sparc_convert_to_virtual,
sparc_convert_to_raw, sparc_frame_init_saved_regs,
sparc_frame_address, sparc_gdbarch_fix_call_dummy,
sparc_coerce_float_to_double, sparc_call_dummy_address,
sparc_y_regnum, sparc_reg_struct_has_addr, sparc_intreg_size,
sparc_return_value_on_stack): New functions supporting multi-arch.
(sparc_gdbarch_init): New function; initialize multi-arch.
(struct gdbarch_tdep): Define, use for private multi-arch data.
* config/sparc/tm-sparc.h: Move definitions around, enclose with
#ifdef GDB_MULTI_ARCH tests, provide some multi-arch alternate
definitions. Add enums for register names, to help debugging gdb.
This header file must work for non-multi-arch and for multi-arch.
* config/sparc/tm-sp64.h: Add GDB_MULTI_ARCH configuration. Also add
AT_ENTRY_POINT definitions for CALL_DUMMY, for non-multi-arch case.
Define GDB_MULTI_ARCH.
* config/sparc/tm-sparclet.h: Add GDB_MULTI_ARCH configuration.
Do not define GDB_MULTI_ARCH (bfd does not correctly identify target).
* config/sparc/tm-sparclite.h: Ditto.
* config/sparc/tm-sun4sol2.h: Define GDB_MULTI_ARCH.
* sparclet-rom.c (sparclet_regnames): Initialize explicitly, to
avoid using deprecated REGISTER_NAMES macro.
* Makefile.in: Let sparc-tdep.c depend on arch-utils.h.
2000-05-10 20:07:25 +00:00
Jason Molenda
104c1213b4
import gdb-1999-08-30 snapshot
1999-08-31 01:14:27 +00:00
Jason Molenda
c5aa993b1f
import gdb-1999-07-07 post reformat
1999-07-07 20:19:36 +00:00
Jason Molenda
392a587b05
import gdb-1999-05-25 snapshot
1999-05-25 18:09:09 +00:00
Stan Shebs
c906108c21
Initial creation of sourceware repository
1999-04-16 01:35:26 +00:00
Stan Shebs
071ea11e85
Initial creation of sourceware repository
1999-04-16 01:34:07 +00:00
Stan Shebs
7bfe11e286
* tm-sp64.h (SETUP_ARBITRARY_FRAME, RAME_SPECIFICATION_DYADIC):
...
Remove, nevermore used.
1998-10-16 02:53:37 +00:00
Mark Alexander
33c65ba3b3
* sparc-tdep.c (sparc_target_architecture_hook): New function to
...
set endianness based on machine type.
(_initialize_sparc_tdep): Initialize target_architecture_hook.
(sparc_print_register_hook): Print PSR and FPSR in fancy format
on 32-bit machines.
* config/sparc/tm-sparc.h (PRINT_REGISTER_HOOK): Redefine to
call sparc_print_register_hook instead of using inline code.
* config/sparc/tm-sp64.h (PRINT_REGISTER_HOOK): Remove.
1998-06-02 09:19:54 +00:00
Bob Manson
1e9c814fb9
* config/sparc/tm-sp64.h (CALL_DUMMY): Store and retrieve
...
%o0-%o5 as 64-bit values; compensate for stack bias.
(USE_STRUCT_CONVENTION): We only pass pointers to structs
if they're larger than 32 bytes.
(REG_STRUCT_HAS_ADDR): Ditto.
* sparc-tdep.c (sparc_init_extra_frame_info): Use read_sp()
instead of read_register. If the target is a sparc64 and the frame
pointer is odd, compensate for the stack bias.
(get_saved_register): Use read_sp().
(DUMMY_STACK_REG_BUF_SIZE): Use FP_REGISTER_BYTES.
(sparc_push_dummy_frame): Use read_sp()/write_sp(). On sparc64,
save the PC, NPC, CCR, FSR, FPRS, Y and ASI registers.
(sparc_frame_find_saved_regs): Use read_sp(). Read the PC, NPC,
CCR, FSR, FPRS, Y and ASI registers from the frame, if it's a
dummy frame.
(sparc_pop_frame): Use write_sp(). If the target is a sparc64 and
the FP is odd, compensate for stack bias.
(sparc_store_return_value): Right-justify the return value before
writing it to %o0.
(sparc_fix_call_dummy): Don't NOP out part of the call dummy on
sparc64.
(sparc64_read_sp, sparc64_read_fp, sparc64_write_sp,
sparc64_write_fp, sp64_push_arguments,
sparc64_extract_return_value): New functions to support the
sparc64 ABI.
* dwarfread.c (handle_producer): Set processing_gcc_compilation to
the right version number.
* dwarf2read.c (read_file_scope): Assume we're processing
GCC2 output.
1998-05-08 05:30:24 +00:00
Fred Fish
94b4f75666
* rs6000-tdep.c: Fix typo in comment.
...
* valops.c (call_function_by_hand): Set using_gcc to 2
for code compiled without -g, per comment in code.
* config/a29k/tm-a29k.h (STACK_ALIGN): Add comment.
* config/sparc/tm-sparc.h (STACK_ALIGN): Add comment.
* config/sparc/tm-sp64.h (STACK_ALIGN): Add comment.
* config/pyr/tm-pyr.h (STACK_ALIGN): Add comment.
* config/m88k/tm-m88k.h (STACK_ALIGN): Add comment.
* config/pa/tm-hppa.h (PUSH_ARGUMENTS): Enclose args in ()'s.
(STACK_ALIGN): Add comment, move to be with other associated
macros, and document.
* config/mips/tm-mips.h (PUSH_ARGUMENTS): Enclose args in ()'s.
(STACK_ALIGN): Remove completely, handled by PUSH_ARGUMENTS.
* config/alpha/tm-alpha.h (PUSH_ARGUMENTS): Enclose args in ()'s.
* config/rs6000/tm-rs6000.h (STACK_ALIGN): Remove completely,
handled by PUSH_ARGUMENTS.
(PUSH_ARGUMENTS): Enclose args in ()'s.
1996-08-25 07:17:22 +00:00
Fred Fish
3f550b5940
* configure.in: Add test for "long long" support.
...
* configure: Regenerate with autoconf.
* acconfig.h: Add CC_HAS_LONG_LONG
* config.in: Regenerate with autoheader.
* config/mips/tm-mips64.h (FORCE_LONG_LONG): Remove
* config/sparc/tm-sp64.h (CC_HAS_LONG_LONG): Remove.
* config/mips/tm-vr4300el.h (CC_HAS_LONG_LONG): Remove.
* config/mips/tm-vr4300.h (CC_HAS_LONG_LONG): Remove.
* config/mips/xm-irix5.h (CC_HAS_LONG_LONG): Remove
(PRINTF_HAS_LONG_LONG): Remove.
(FORCE_LONG_LONG): Remove.
* config/powerpc/xm-aix.h (UINT_MAX): Undef and use gdb's version.
* config/convex/xm-convex.h (CC_HAS_LONG_LONG): Remove
(PRINTF_HAS_LONG_LONG): Remove.
* config/xm-nbsd.h (CC_HAS_LONG_LONG): Remove.
(PRINTF_HAS_LONG_LONG): Remove.
* config/pa/tm-hppa.h (GET_FIELD): Put parens around
subtraction inside shift. Put parens around subtraction
in operand of bitwise and.
(struct frame_info): Forward declare
if __STDC__ defined.
(frame_saved_regs): Ditto.
(struct value): Ditto.
(struct type): Ditto.
(struct inferior_status): Ditto.
(init_extra_frame_info): Add prototype.
(skip_prologue): Ditto.
(frameless_function_invocation): Ditto.
(frame_chain): Ditto.
(frame_chain_valid): Ditto.
(saved_pc_after_call): Ditto.
(hppa_fix_call_dummy): Ditto.
(hppa_push_arguments): Ditto.
(pa_do_registers_info): Ditto.
(in_solib_call_trampoline): Ditto.
(in_solib_return_trampoline): Ditto.
(push_dummy_frame): Ditto.
* convex-tdep.c (decout): Use print_longest rather than
fprintf_filtered.
* defs.h: Remove use of FORCE_LONG_LONG and __GNUC__ to set
CC_HAS_LONG_LONG.
(INT_MIN): Fix so it works correctly when assigned to a long long.
* valprint.c (longest_to_int): Rewrite to remove dependence
on INT_MIN and INT_MAX.
(print_longest): Rewrite the code that falls back to synthesized
hex output when LONGEST value is not representable as in a long and
printf doesn't support printing long longs.
* ch-valprint.c (chill_val_print): Cast 2nd arg of
chill_print_type_scalar to LONGEST.
chill_print_type_scalar): Make static and add prototype.
* hppa-tdep.c (get_field): Ifdef out unused function.
(set_field): Ditto.
(extract_3): Ditto.
(extract_5_store): Ditto.
(extract_11): Ditto.
(extract_12): Ditto.
(deposit_17): Ditto.
(extract_14): Convert to static and add prototype.
(deposit_14): Ditto.
(extract_21): Ditto.
(deposit_21): Ditto.
(extract_17): Ditto.
(extract_5r_store): Ditto.
(extract_5R_store): Ditto.
(extract_5_load): Ditto.
(find_proc_framesize): Ditto.
(find_dummy_frame_regs): Ditto.
(sign_extend): Ditto.
(find_unwind_entry): Add prototype.
(find_return_regnum): Ditto.
(unwind_command): Ditto.
(find_dummy_frame_regs): Add parens around subtraction in operand
of bitwise-and.
(skip_prologue): Add parens around operands of logical-and inside
operand of logical-or.
(sign_extend): Add parens around operands of subtraction inside
operand of shift.
(low_sign_extend): Ditto.
* top.c (filename_completer): Convert old style decl of
filename_completion_function into prototype.
* f-lang.c (patch_common_entries): Ifdef out unused function.
* stabsread.c (read_cfront_baseclasses): Remove unused local
variable "msg_noterm".
(resolve_cfront_continuation): Remove unused local variable "fip".
(read_type): Remove unused variable xtypenums.
(read_cfront_static_fields): Remove unused variable "i".
(read_cfront_static_fields): Remove unused variable "nfields".
(read_cfront_member_functions): Add missing comment terminator.
(read_cfront_static_fields): Return 1 rather than random value.
(read_cfront_baseclasses): Ditto.
(read_cfront_baseclasses): Ditto.
(read_cfront_baseclasses): Ditto.
* somsolib.c (som_solib_create_inferior_hook): Remove unused
variable "u".
(som_solib_create_inferior_hook): Remove unused variable
shadow_contents.
(language.h): Add for needed prototypes.
(som_solib_sharedlibrary_command): Add prototype.
* hpread.c: (hpread_read_array_type): Add prototype.
* somread.c (hpread_build_pysmtabs): Add prototype.
(hpread_symfile_finish): Ditto.
(hpread_symfile_init): Ditto.
* hppah-nat.c (fetch_register): Convert old style decl
to prototype.
(gdbcore.h): Include for needed prototypes.
(fetch_register): Remove unused variable "mess".
* remote-pa.c (get_offsets): Ifdef out unused function.
(remote_start_remote): Remove unused variable "timeout".
(boot_board): Add prototype.
(reaad_frame): Add prototype.
(getpkt): Remove unused variable "bp".
(remote_kill): Add prototype.
(remote_mourn): Add prototype.
(remote_insert_breakpoint): Add prototype.
(remote_remove_breakpoint): Add prototype.
* valops.c (value_push): Only use if PUSH_ARGUMENTS is not defined.
* infcmd.c (do_registers_info): Only need prototype if
DO_REGISTERS_INFO is not defined.
(breakpoint_auto_delete_contents): Only need if
CALL_DUMMY_BREAKPOINT_OFFSET is defined.
1996-07-28 06:32:48 +00:00
David Edelsohn
70943b5f0b
* config/sparc/tm-sp64.h (REGISTER_RAW_SIZE): Lower 32 fp regs
...
have size 4.
(REGISTER_VIRTUAL_SIZE): Likewise.
(REGISTER_VIRTUAL_TYPE): Lower 32 fp regs have type float.
Upper 32 fp regs have type double.
* sparc-tdep.c (NUM_SPARC_FPREGS): Replace with
(FP_REGISTER_BYTES): this, and update all uses.
(FP_MAX_REGNUM): Define if not already.
(get_saved_register): Handle new sparc64 fp regs.
(sparc_frame_find_saved_regs): Likewise.
(sparc_print_register_hook): Only print fp regs < 32 as doubles.
Add code to handle long doubles when gdb does.
(_initialize_sparc_tdep): Use print_insn_sparc64 if sparc64.
1995-09-06 21:35:20 +00:00
Fred Fish
6c9638b444
Update FSF address.
1995-08-02 03:41:12 +00:00
David Edelsohn
1cd3b16334
* sparc/tm-sp64.h (USE_STRUCT_CONVENTION): Define.
...
(EXTRACT_STRUCT_VALUE_ADDRESS): Delete.
1995-03-04 01:35:34 +00:00
David Edelsohn
0fb8b15a92
* sparc/tm-sp64.h (REGISTER_NAMES): Fix some typos.
1995-03-03 08:57:52 +00:00
David Edelsohn
9e3501580c
* sparc-tdep.c (NUM_SPARC_FPREGS): Define.
...
(SPARC_INTREG_SIZE): Define.
(*): Use SPARC_INTREG_SIZE instead of REGISTER_RAW_SIZE (intreg)
where appropriate.
(enum branch_type): New value `done_retry'.
(isbranch): Renamed from isannulled. All callers changed.
Support new sparc64 branch insns.
(single_step): Handle done_retry.
(sparc_extract_struct_value_address): Don't assume 4 byte regs.
(get_saved_register): Likewise.
(sparc_push_dummy_frame): Likewise.
(sparc_frame_find_saved_regs): Likewise.
(sparc_pop_frame): Likewise. Don't refer to FPS_REGNUM, CPS_REGNUM,
or PS_REGNUM if not sparc64. sparc64 has 64 fp regs.
(sparc64_extract_struct_value_address): New function.
(dump_ccreg, sparc_print_register_hook): Likewise.
* sp64-tdep.c: Deleted.
* sparc/tm-sp64.h (GDB_TARGET_IS_SPARC64): Define.
(NUM_REGS): Reduce by 2, cle/tle are in the pstate reg.
(CC_HAS_LONG_LONG): Define.
(REGISTER_NAMES): Delete cle/tle and reorganize.
(PS_REGNUM, FPS_REGNUM, CPS_REGNUM): Delete, they're ifdef'd out of
sparc-tdep.c now.
(REGISTER_BYTES): Update.
(REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW): Delete.
(EXTRACT_RETURN_VALUE): Delete. Use definition in tm-sparc.h.
(NO_SINGLE_STEP): Likewise.
* sparc/tm-sparc.h (EXTRACT_VALUE_RETURN): Don't assume 4 byte regs.
* sparc/sp64.mt: Move simulator support ...
* sparc/sp64sim.mt: ... to here.
1995-03-02 00:11:22 +00:00
David Edelsohn
5029b1148d
(FPS_REGNUM, CPS_REGNUM): Define (so sparc-tdep.c compiles).
...
(TARGET_PTR_BIT): Must be a constant now, fix at 64.
1994-03-20 23:36:50 +00:00
David Edelsohn
3b22d69a5f
sp64.mt: New file.
...
tm-sp64.h (FRAME_CHAIN, FRAME_SAVED_PC): Deleted.
(PRINT_REGISTER_HOOK): Call new fn sparc_print_register_hook.
1993-07-30 18:40:05 +00:00
David Edelsohn
a94019bcc1
Initial versions of port to sparc64 simulators.
1993-07-08 03:08:49 +00:00