aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.h
AgeCommit message (Collapse)AuthorFilesLines
2001-07-10Clean up the D10V port so that GDB and the target program noJim Blandy1-110/+0
longer disagree on how big pointers are. * findvar.c (value_from_register): Remove special case code for D10V. * printcmd.c (print_frame_args): Same. * valops.c (value_at, value_fetch_lazy): Same. * values.c (unpack_long): Same. * gdbarch.sh: Changes to effect the following: * gdbarch.h (GDB_TARGET_IS_D10V, D10V_MAKE_DADDR, gdbarch_d10v_make_daddr_ftype, gdbarch_d10v_make_daddr, set_gdbarch_d10v_make_daddr, D10V_MAKE_IADDR, gdbarch_d10v_make_iaddr_ftype, gdbarch_d10v_make_iaddr, set_gdbarch_d10v_make_iaddr, D10V_DADDR_P, gdbarch_d10v_daddr_p_ftype, gdbarch_d10v_daddr_p, set_gdbarch_d10v_daddr_p, D10V_IADDR_P, gdbarch_d10v_iaddr_p_ftype, gdbarch_d10v_iaddr_p, set_gdbarch_d10v_iaddr_p, D10V_CONVERT_DADDR_TO_RAW, gdbarch_d10v_convert_daddr_to_raw_ftype, gdbarch_d10v_convert_daddr_to_raw, set_gdbarch_d10v_convert_daddr_to_raw, D10V_CONVERT_IADDR_TO_RAW, gdbarch_d10v_convert_iaddr_to_raw_ftype, gdbarch_d10v_convert_iaddr_to_raw, set_gdbarch_d10v_convert_iaddr_to_raw): Delete declarations. * gdbarch.c: Delete the corresponding definitions. (struct gdbarch): Delete members d10v_make_daddr, d10v_make_iaddr, d10v_daddr_p, d10v_iaddr_p, d10v_convert_daddr_to_raw, and d10v_convert_iaddr_to_raw. (startup_gdbarch): Remove initializers for the above. (verify_gdbarch, gdbarch_dump): Don't verify or dump them any more. * d10v-tdep.c (d10v_register_virtual_type): Rather that claiming the stack pointer and PC are 32 bits long (which they aren't), say that the stack pointer is an int16_t, and the program counter is a function pointer. This allows the rest of GDB to make the appropriate conversions between the code pointer format and real addresses. (d10v_register_convertible, d10v_register_convert_to_virtual, d10v_register_convert_to_raw): Delete function; no registers are convertible now, so we use generic_register_convertible_not instead. (d10v_address_to_pointer, d10v_pointer_to_address): New gdbarch methods. (d10v_push_arguments, d10v_extract_return_value): Remove special cases for code and data pointers. (d10v_gdbarch_init): Set gdbarch_ptr_bit to 16, so that GDB and the target agree on how large pointers are. Say that addresses are 32 bits long. Register the address_to_pointer and pointer_to_address conversion functions. Since no registers are convertible now, register generic_register_convertible_not as the gdbarch_register_convertible method instead of d10v_register_convertible. Remove registrations for d10v_register_convert_to_virtual, d10v_register_convert_to_raw, gdbarch_d10v_make_daddr, gdbarch_d10v_make_iaddr, gdbarch_d10v_daddr_p, gdbarch_d10v_iaddr_p, gdbarch_d10v_convert_daddr_to_raw, and gdbarch_d10v_convert_iaddr_to_raw.
2001-06-18* gdbarch.sh: Generate an error when conflicting macroAndrew Cagney1-0/+385
definitions. Generate an error when both pure multi-arch and "tm.h". * gdbarch.h, gdbarch.c: Regenerate. * defs.h (GDB_MULTI_ARCH_TM): Rewrite definition.
2001-06-16* arch-utils.c (init_frame_pc_default): New functionAndrew Cagney1-1/+1
* arch-utils.h (init_frame_pc_default): Declare. * gdbarch.sh (INIT_FRAME_PC): Default to init_frame_pc_default and not init_frame_pc_noop. * gdbarch.h, gdbarch.c: Re-generate. * blockframe.c (INIT_FRAME_PC): Delete macro definition. * mips-tdep.c (mips_gdbarch_init): Set init_frame_pc to init_frame_pc_noop.
2001-06-15Multi-arch CANNOT_FETCH_REGISTER() and CANNOT_STORE_REGISTER().Andrew Cagney1-0/+28
2001-06-15Multi-arch INIT_FRAME_PC() and INIT_FRAME_PC_FIRST().Andrew Cagney1-0/+28
2001-06-15multi-arch ADDR_BITS_REMOVE.Andrew Cagney1-1/+25
2001-06-15* gdbarch.sh (EXTRACT_STRUCT_VALUE_ADDRESS_P): Delete definition.Andrew Cagney1-11/+22
(EXTRACT_STRUCT_VALUE_ADDRESS): Change to a function with predicate. * gdbarch.h, gdbarch.c: Regenerate. * values.c (value_being_returned): Change the reference to EXTRACT_STRUCT_VALUE_ADDRESS_P to a function call.
2001-06-06* gdbarch.sh: Changes to effect the following:Jim Blandy1-0/+4
* gdbarch.c (initialize_non_multiarch): New function. * gdbarch.h (initialize_non_multiarch): New declaration. * arch-utils.c (initialize_current_architecture): For non-multiarch configurations, call initialize_non_multiarch.
2001-05-14Fix logic selecting a new architecture. Use the sequence:Andrew Cagney1-12/+5
o provided by INFO o hard-wired by (gdb) set ... o reversed engineered from INFO.abfd o default to previous architecture
2001-05-04Phase 1 of the ptid_t changes.Kevin Buettner1-8/+8
2001-04-062001-04-06 David Smith <dsmith@redhat.com>David Smith1-0/+14
* arch-utils.c (default_prepare_to_proceed) (generic_prepare_to_proceed): Added new functions. * arch-utils.h: New function declarations for default_prepare_to_proceed() and generic_prepare_to_proceed(). * gdbarch.sh: Added PREPARE_TO_PROCEED. * gdbarch.c: Regenerated. * gdbarch.h: Regenerated. * inferior.h: Added get_last_target_status() declaration. * infrun.c (get_last_target_status): Added new function. (handle_inferior_event): Saves last pid and waitstatus, which will get returned by get_last_target_status(). * hppa-tdep.c (prepare_to_proceed): Added comment stating that prepare_to_proceed() is potentially redundant since default_prepare_to_proceed() has been added. * linux-thread.c (prepare_to_proceed): Ditto. * lin-lwp.c (prepare_to_proceed): Ditto. * m3-nat.c (prepare_to_proceed): Ditto.
2001-03-24* config/sparc/tm-sp64.h (GDB_MULTI_ARCH): Down grade toAndrew Cagney1-0/+40
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-24Re-vamp the register code so that a lot more is routed throughAndrew Cagney1-0/+12
{read,write}_register_gen. Hook that function with multi-arch.
2001-03-21* gdbarch.sh: Allow a non- multi-arch target to override aAndrew Cagney1-0/+8
predicate. * gdbarch.h: Regenerate.
2001-02-08Add __FILE__ and __LINE__ parameter to internal_error() /Andrew Cagney1-15/+15
internal_verror().
2001-02-07Addd set_gdbarch_data() method. Update register_gdbarch_data() interface.Andrew Cagney1-12/+23
2001-02-02Changed free() to xfree() where appropriate. Also changed Copyright toJohn R. Moore1-1/+1
include 2001.
2001-01-22 * gdbarch.sh (PARM_BOUNDARY): Define.Nicholas Duffek1-0/+8
* gdbarch.c: Regenerate. * gdbarch.h: Regenerate.
2000-12-15Multi-arch REGISTER_BYTES_OK.Andrew Cagney1-0/+29
2000-12-04Multiarch STAB_REG_TO_REGNUM, ECOFF_REG_TO_REGNUM,Andrew Cagney1-0/+80
DWARF_REG_TO_REGNUM, SDB_REG_TO_REGNUM, DWARF2_REG_TO_REGNUM.
2000-10-27* arch-utils.c (set_architecture, set_architecture_from_arch_mach,J.T. Conklin1-1/+1
set_gdbarch_from_file): Fix spelling error. * v850-tdep.c (v850_target_architecture_hook): Likewise. * gdbarch.sh: Fix spelling errors in comment. * gdbarch.c, gdbarch.h: Regenerate. * ppcnbsd-nat.c (fetch_core_registers, fetch_inferior_registers, store_inferior_registers): Support older NetBSD/powerpc systems from before fp reg support was added. Adapt to register number changes caused when powerpc target was multi-arched.
2000-10-26 * arch-utils.c, arch-utils.h (default_convert_from_func_ptr_addr):Peter Schauer1-0/+14
New function. * gdbarch.sh (CONVERT_FROM_FUNC_PTR_ADDR): Add. * gdbarch.c, gdbarch.h: Regenerate. * valops.c (find_function_addr): Use CONVERT_FROM_FUNC_PTR_ADDR unconditionally. * config/rs6000/tm-rs6000.h (CONVERT_FROM_FUNC_PTR_ADDR): Delete definition. * config/powerpc/tm-linux.h (CONVERT_FROM_FUNC_PTR_ADDR): Remove undef. * rs6000-tdep.c (rs6000_convert_from_func_ptr_addr): Fix comment. (rs6000_gdbarch_init): Register rs6000_convert_from_func_ptr_addr if not ELFOSABI_LINUX.
2000-09-02Fixed spelling errors in comments: dependant->dependent in several places.David Anderson1-7/+7
2000-08-25Fri Aug 25 12:11:21 2000 David Taylor <taylor@texas.cygnus.com>David Taylor1-3/+26
* symtab.c (search_symbols): Fix off by one error in index for initializing variables ourtype, ourtype2, ourtype3, and ourtype4. (symtab_symbol_info): fix similar off by one error. Fri Aug 25 12:03:15 2000 David Taylor <taylor@texas.cygnus.com> * gdbarch.sh (TARGET_ADDR_BIT): New macro for the number of bits in gdb's representation of a target address. * gdbarch.c, gdbarch.h: Regenerated. * gdbtypes.c (build_gdbtypes): Use TARGET_ADDR_BIT instead of TARGET_PTR_BIT when initializing builtin_type_CORE_ADDR. * printcmd.c (print_address_numeric): Use TARGET_ADDR_BIT instead of TARGET_PTR_BIT, because we're printing an address, not a pointer.
2000-08-11 * regcache.c (TARGET_WRITE_PC, TARGET_READ_PC, TARGET_READ_FP,Andrew Cagney1-0/+30
TARGET_WRITE_FP, TARGET_READ_SP, TARGET_WRITE_SP): Move initialization from here. * gdbarch.sh: To here. * gdbarch.h, gdbarch.c: Regenerate.
2000-08-11Move TARGET_*_PTR to gdbarch.h.Andrew Cagney1-20/+81
2000-08-11Rename gdbarch_update() to gdbarch_update_p()Andrew Cagney1-5/+7
2000-08-04Multi-arch EXTRA_STACK_ALIGNMENT_NEEDED (nee NO_EXTRA_ALIGNMENT_NEEDED).Andrew Cagney1-0/+13
2000-08-02Multi-arch REGISTER_SIM_REGNO. Update d10v.Andrew Cagney1-0/+17
2000-08-012000-08-01 Elena Zannoni <ezannoni@kwikemart.cygnus.com>Elena Zannoni1-0/+14
* gdbarch.sh: Multiarch DO_REGISTERS_INFO macro. * gdbarch.h, gdbarch.c: Regenerate. * infcmd.c (do_registers_info): Make not static and unconditionalize. * inferior.h (do_registers_info): Export.
2000-08-01Copy comments from gdbarch.sh to gdbarch.h. Fix a number of K&R params.Andrew Cagney1-0/+17
2000-07-27Move GDB_MULTI_ARCH selection to configure*. Makes tm.h optional.Andrew Cagney1-152/+144
2000-07-242000-07-24 Elena Zannoni <ezannoni@kwikemart.cygnus.com>Elena Zannoni1-0/+28
* gdbarch.sh: Add FETCH_PSEUDO_REGISTER and STORE_PSEUDO_REGISTER to the gdbarch structure. * gdbarch.c: Regenerate. * gdbarch.h: Regenerate. * inferior.h (FETCH_PSEUDO_REGISTER, STORE_PSEUDO_REGISTER): Delete macros. * regcache.c (write_register, read_register, write_register_bytes, write_register_gen, read_register_bytes, read_register_gen): Rename ARCH_FECTH_PSEUDO_REGISTERS to FETCH_PSEUDO_REGISTERS and ARCH_STORE_PSEUDO_REGISTER to STORE_PSEUDO_REGISTER.
2000-07-24 * gdbarch.sh: Add NUM_PSEUDO_REGS to the gdbarch structure.Elena Zannoni1-0/+13
* gdbarch.c: Regenerate. * gdbarch.h: Regenerate. * inferior.h (NUM_PSEUDO_REGS): Delete macro.
2000-06-10Re-implement gdbach_dump() so that it prints out the macro values.Andrew Cagney1-4/+16
Add ``maint print arch'' command. Add ``gdbarch_register()'' function that also takes gdbarch_dump_tdep(). Use in mips-tdep.c.
2000-06-07The attatched moves the remaining guff from gdbarch.{h,c,sh} toAndrew Cagney1-13/+8
arch-utils.{h,c}. The ``set architecutre'' and ``set endian'' commands (part of the move) were implemented to use add_set_enum_cmd() so that ``set architecture <tab>'' works.
2000-06-06Move generic_register_convertible_not and frame_num_args_unknown fromAndrew Cagney1-5/+0
gdbarch.* to arch-utils.*.
2000-06-04Add host_pointer_to_address() and address_to_host_pointer(). AddAndrew Cagney1-6/+6
signed_pointer_to_address() etc. Rename generic_pointer_to_address() to unsigned_pointer_to_address() etc.
2000-06-02Multiarch TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT,Andrew Cagney1-0/+39
TARGET_LONG_DOUBLE_FORMAT. Update d10v.
2000-05-15Convert SAVE_DUMMY_FRAME_TOS to multi-arch.Andrew Cagney1-0/+29
2000-05-102000-05-08 Michael Snyder <msnyder@seadog.cygnus.com>Michael Snyder1-0/+13
* gdbarch.sh: Add FP0_REGNUM to list of multi-arched register numbers. * gdbarch.c, gdbarch.h: Regenerate. * core-regset.c: Change FP0_REGNUM to a runtime test. * procfs.c: Ditto. * sun3-nat.c: Ditto. * sparc-tdep.c: Ditto. * i386mach-nat.c: Remove unnecessary ifdef for FP0_REGNUM. * ptx4-nat.c: Ditto. * sol-thread.c (sol_thread_create_inferior): only add the thread to the thread list if it is not already in there. (prototypes for thread_db func ptrs): pretty up formatting.
2000-05-02Multi-arch NPC_REGNUM NNPC_REGNUM.Andrew Cagney1-0/+26
2000-05-02re-do how gdbarch provides non-multi arch defaults so that non-Andrew Cagney1-0/+192
multi-arch gdbservers can continue to compile.
2000-04-29Convert SKIP_PROLOGUE_FRAMELESS_P into PROLOGUE_FRAMELESS_P.Andrew Cagney1-0/+7
2000-04-282000-04-27 Michael Snyder <msnyder@seadog.cygnus.com>Michael Snyder1-8/+0
* gdbarch.sh (d10v_daddr_p, d10v_iaddr_p, d10v_convert_daddr_to_raw, d10v_convert_iaddr_to_raw): make these multi-arch functions optional. * gdbarch.c, gdbarch.h: regenerate
2000-04-22Convert REG_STRUCT_HAS_ADDR to multi-arch. Use REG_STRUCT_HAS_ADDR_PAndrew Cagney1-0/+17
in conversion.
2000-04-21* valops.c (hand_function_call): Replace #ifdef STACK_ALIGN withAndrew Cagney1-0/+17
run-time test for STACK_ALIGN_P. * gdbarch.sh: Add support for function and variable predicates. (STACK_ALIGN): Add. Implement with predicate - STACK_ALIGN_P. * gdbarch.h, gdbarch.c: Re-generate.
2000-04-20* gdbarch.sh: Make multi-arch variable defaults, defaults for non-Andrew Cagney1-8/+0
multi-arch targets. (TARGET_BFD_VMA_BIT, IEEE_FLOAT, CALL_DUMMY_WORDS, SIZEOF_CALL_DUMMY_WORDS): Update. * inferior.h (CALL_DUMMY_WORDS, SIZEOF_CALL_DUMMY_WORDS): Default provided by gdbarch. (CALL_DUMMY_P): Add FIXME. gdbarch should provide default. * valprint.c (IEEE_FLOAT): Default provided by gdbarch.
2000-04-19Bring RETURN_VALUE_ON_STACK under gdbarch's control.Jim Blandy1-0/+7
* gdbarch.sh (RETURN_VALUE_ON_STACK): New entry. * gdbarch.c, gdbarch.h: Regenerated. * arch-utils.c (default_return_value_on_stack): New function. * arch-utils.h (default_return_value_on_stack): New declaration. * values.c (RETURN_VALUE_ON_STACK): Delete default definition.
2000-04-17* remote.c (REMOTE_TRANSLATE_XFER_ADDRESS), mem-break.cAndrew Cagney1-73/+0
(MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT), target.h (BREAKPOINT_FROM_PC), valops.c (COERCE_FLOAT_TO_DOUBLE), gdbarch.sh (D10V_MAKE_DADDR, D10V_MAKE_IADDR, FRAMELESS_FUNCTION_INVOCATION, REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW, REGISTER_NAME), findvar.c (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Delete default definition. Handled by gdbarch. * gdbarch.sh: Make multi-arch defaults, defaults for non- multi-arch targets. (REGISTER_NAME, COERCE_FLOAT_TO_DOUBLE, REGISTER_CONVERTIBLE, REGISTER_CONVERT_TO_VIRTUAL, REGISTER_CONVERT_TO_RAW, D10V_MAKE_DADDR, D10V_MAKE_IADDR, BREAKPOINT_FROM_PC, MEMORY_INSERT_BREAKPOINT, MEMORY_REMOVE_BREAKPOINT, REMOTE_TRANSLATE_XFER_ADDRESS, FRAMELESS_FUNCTION_INVOCATION): Provide default/legacy implementation. (REGISTER_NAMES, CALL_DUMMY): Allow legacy definition. * gdbarch.h, gdbarch.c: Re-generate.