Commit graph

58 commits

Author SHA1 Message Date
Andrew Cagney
8e65ff28b0 Add __FILE__ and __LINE__ parameter to internal_error() /
internal_verror().
2001-02-08 06:03:54 +00:00
Andrew Cagney
9516075289 Addd set_gdbarch_data() method. Update register_gdbarch_data() interface. 2001-02-07 02:17:48 +00:00
John R. Moore
338d7c5c40 Changed free() to xfree() where appropriate. Also changed Copyright to
include 2001.
2001-02-02 20:01:16 +00:00
Nicholas Duffek
58d5518ebe * gdbarch.sh (PARM_BOUNDARY): Define.
* gdbarch.c: Regenerate.
	* gdbarch.h: Regenerate.
2001-01-22 23:32:49 +00:00
Andrew Cagney
2649061d59 Multi-arch REGISTER_BYTES_OK. 2000-12-15 12:33:08 +00:00
Andrew Cagney
88c72b7d71 Multiarch STAB_REG_TO_REGNUM, ECOFF_REG_TO_REGNUM,
DWARF_REG_TO_REGNUM, SDB_REG_TO_REGNUM, DWARF2_REG_TO_REGNUM.
2000-12-04 04:01:16 +00:00
Michael Snyder
f44c642f36 2000-11-08 Michael Snyder <msnyder@cleaver.cygnus.com>
* gdbarch.sh: Spelling correction: registrary -> registry.
        * gdbarch.c: Ditto.
2000-11-08 23:58:46 +00:00
J.T. Conklin
8e1a459b89 * gdbarch.sh, hp-psymtab-read.c, hpread.c, m3-nat.c, mcore-tdep.c,
mips-tdep.c, monitor.c, regcache.c, remote-es.c, ser-unix.c,
somread.c, tracepoint.c: Fix spelling errors in comments.
* gdbarch.c: Regenerate.

* gnu-nat.c (S_exception_raise_request): Fix typos and spelling
errors in strings.
* m3-nat.c (intercept_exec_calls, mach_thread_parse_id): Likewise.
* mcore-tdep.c (mcore_analyze_prologue): Likewise.
* mips-tdep.c (mips16_next_pc, _initialize_mips_tdep): Likewise.
* remote-e7000.c (e7000_start_remote): Likewise.
* remote-rdp.c (handle_swi): Likewise.
* remote-vx.c (vx_load_command): Likewise.
* sh-tdep.c (sh_do_pseudo_register): Likewise.
* sol-thread.c (td_err_string): Likewise.
* symtab.c (decode_line_2): Likewise.
-------------------------------------------------------------------
2000-10-30 21:50:58 +00:00
J.T. Conklin
ec3d358c9f * arch-utils.c (set_architecture, set_architecture_from_arch_mach,
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-27 19:17:57 +00:00
David Anderson
7e73cedf75 Corrected spelling errors in comments.
gdbarch.{c,sh} removed a word from a comment.
2000-10-27 15:02:42 +00:00
Peter Schauer
f517ea4ebb * arch-utils.c, arch-utils.h (default_convert_from_func_ptr_addr):
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-10-26 07:41:25 +00:00
Andrew Cagney
3d9a5942bd Revamp so that it works with Solarises version of SH. 2000-09-04 11:40:20 +00:00
David Anderson
0fa6923a1a Corrected spelling in comments: dependant->dependent swaped->swapped. 2000-09-02 00:02:54 +00:00
David Taylor
52204a0b3a Fri Aug 25 12:11:21 2000 David Taylor <taylor@texas.cygnus.com>
* 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-25 20:51:19 +00:00
Andrew Cagney
be8dfb8711 * regcache.c (TARGET_WRITE_PC, TARGET_READ_PC, TARGET_READ_FP,
TARGET_WRITE_FP, TARGET_READ_SP, TARGET_WRITE_SP): Move
        initialization from here.
        * gdbarch.sh: To here.
        * gdbarch.h, gdbarch.c: Regenerate.
2000-08-11 03:19:22 +00:00
Andrew Cagney
66b43ecb0f Move TARGET_*_PTR to gdbarch.h. 2000-08-11 02:55:38 +00:00
Andrew Cagney
16f33e2966 Rename gdbarch_update() to gdbarch_update_p() 2000-08-11 01:30:11 +00:00
Andrew Cagney
0a49d05ee0 Multi-arch EXTRA_STACK_ALIGNMENT_NEEDED (nee NO_EXTRA_ALIGNMENT_NEEDED). 2000-08-04 03:17:57 +00:00
Jimmy Guo
7861024dc2 * gdbarch.sh: Add print_p field for CALL_DUMMY_BREAKPINT_OFFSET
to be printed only if CALL_DUMMY_BREAKPOINT_OFFSET_P.

* gdbarch.c: Regenerated.
2000-08-02 22:18:42 +00:00
Andrew Cagney
7c7651b2d0 Multi-arch REGISTER_SIM_REGNO. Update d10v. 2000-08-02 11:05:50 +00:00
Elena Zannoni
666e11c5d4 2000-08-01 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* 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-01 14:48:01 +00:00
Andrew Cagney
34620563ed Copy comments from gdbarch.sh to gdbarch.h. Fix a number of K&R params. 2000-08-01 10:31:19 +00:00
Andrew Cagney
6166d547d8 Move GDB_MULTI_ARCH selection to configure*. Makes tm.h optional. 2000-07-27 04:01:24 +00:00
Elena Zannoni
7f1b25859d 2000-07-24 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* 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 14:29:23 +00:00
Elena Zannoni
0aba124455 * gdbarch.sh: Add NUM_PSEUDO_REGS to the gdbarch structure.
* gdbarch.c: Regenerate.
	* gdbarch.h: Regenerate.
	* inferior.h (NUM_PSEUDO_REGS): Delete macro.
2000-07-24 14:25:22 +00:00
Andrew Cagney
63e69063c6 Don't try to dump void macros (when non multi-arch). They could
contain C statements.
2000-06-12 00:35:34 +00:00
Andrew Cagney
4b9b395931 Re-implement gdbach_dump() so that it prints out the macro values.
Add ``maint print arch'' command.
Add ``gdbarch_register()'' function that also takes gdbarch_dump_tdep().
Use in mips-tdep.c.
2000-06-10 05:37:47 +00:00
Andrew Cagney
b4a2023990 The attatched moves the remaining guff from gdbarch.{h,c,sh} to
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-07 04:38:02 +00:00
Andrew Cagney
193e3b1a00 Move generic_register_convertible_not and frame_num_args_unknown from
gdbarch.* to arch-utils.*.
2000-06-06 06:45:19 +00:00
Andrew Cagney
ac2e2ef7e2 Add host_pointer_to_address() and address_to_host_pointer(). Add
signed_pointer_to_address() etc.  Rename generic_pointer_to_address()
to unsigned_pointer_to_address() etc.
2000-06-04 13:46:37 +00:00
Andrew Cagney
f0d4cc9e0e Multiarch TARGET_FLOAT_FORMAT, TARGET_DOUBLE_FORMAT,
TARGET_LONG_DOUBLE_FORMAT.  Update d10v.
2000-06-02 01:59:13 +00:00
Andrew Cagney
0b8f9e4d9d * gdbarch.sh: Add field ``postdefault''. Rename fields
``startup'' and ``default'' to ``staticdefault'' and
``predefault''.  Fix initialization of valid_p.  Create/compare
gdbarch.log.
2000-05-30 01:29:26 +00:00
Andrew Cagney
d1e3cf4998 Convert SAVE_DUMMY_FRAME_TOS to multi-arch. 2000-05-15 06:27:18 +00:00
Andrew Cagney
381323f4f8 Only try to print a macro when it is defined (in gdbarch_dump). 2000-05-11 11:49:21 +00:00
Michael Snyder
6005439332 2000-05-08 Michael Snyder <msnyder@seadog.cygnus.com>
* 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-10 17:38:16 +00:00
Andrew Cagney
0386318224 Multi-arch NPC_REGNUM NNPC_REGNUM. 2000-05-02 09:36:57 +00:00
Andrew Cagney
33489c5bed re-do how gdbarch provides non-multi arch defaults so that non-
multi-arch gdbservers can continue to compile.
2000-05-02 08:57:21 +00:00
Andrew Cagney
dad41f9aa4 Convert SKIP_PROLOGUE_FRAMELESS_P into PROLOGUE_FRAMELESS_P. 2000-04-29 08:55:45 +00:00
Michael Snyder
06b8da7db5 2000-04-27 Michael Snyder <msnyder@seadog.cygnus.com>
* 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-28 05:21:23 +00:00
Andrew Cagney
d03e67c95f Convert REG_STRUCT_HAS_ADDR to multi-arch. Use REG_STRUCT_HAS_ADDR_P
in conversion.
2000-04-22 06:44:39 +00:00
Andrew Cagney
2ada493ad1 * valops.c (hand_function_call): Replace #ifdef STACK_ALIGN with
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-21 04:17:18 +00:00
Andrew Cagney
ba886e9d72 * gdbarch.sh: Make multi-arch variable defaults, defaults for non-
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-20 04:24:04 +00:00
Jim Blandy
71a9f22e4f Bring RETURN_VALUE_ON_STACK under gdbarch's control.
* 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-19 23:22:14 +00:00
Andrew Cagney
301ab94d77 Only dump IEEE_FLOAT when defined. 2000-04-17 05:59:42 +00:00
Andrew Cagney
bc1821e659 * remote.c (REMOTE_TRANSLATE_XFER_ADDRESS), mem-break.c
(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.
2000-04-17 02:27:37 +00:00
Jim Blandy
7355ddbace Bring IEEE_FLOAT under gdbarch's control.
* gdbarch.sh (IEEE_FLOAT): New entry.
* gdbarch.c, gdbarch.h: Regenerated.
* valprint.c (IEEE_FLOAT): Provide a default #definition for this.
(print_floating): Use IEEE_FLOAT as if it were an expression; use
the code specific to IEEE-format numbers whenever the value of
IEEE_FLOAT is non-zero.
* config/a29k/tm-a29k.h, config/alpha/tm-alpha.h,
config/arc/tm-arc.h, config/arm/tm-arm.h, config/fr30/tm-fr30.h,
config/h8300/tm-h8300.h, config/i386/tm-i386.h,
config/i960/tm-i960.h, config/m88k/tm-m88k.h,
config/mips/tm-mips.h, config/pa/tm-hppa.h,
config/sparc/tm-sparc.h, config/delta/tm-delta.h,
config/frv/tm-frv.h (IEEE_FLOAT): For all ports that #define
IEEE_FLOAT, make sure they give it the value (1).
2000-04-14 19:14:19 +00:00
Jim Blandy
4478b372e9 * gdbarch.sh (POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Two new
functions which architectures can redefine, defaulting to
generic_pointer_to_address and generic_address_to_pointer.
* findvar.c (extract_typed_address, store_typed_address,
generic_pointer_to_address, generic_address_to_pointer): New
functions.
(POINTER_TO_ADDRESS, ADDRESS_TO_POINTER): Provide default
definitions.
(extract_address, store_address): Doc fixes.
* values.c (value_as_pointer): Doc fix.
(value_from_pointer): New function.
* defs.h (extract_typed_address, store_typed_address): New
declarations.
* inferior.h (generic_address_to_pointer,
generic_pointer_to_address): New declarations.
* value.h (value_from_pointer): New declaration.

* ax-gdb.c (const_var_ref): Use value_from_pointer, not
value_from_longest.
* blockframe.c (generic_push_dummy_frame): Use read_pc and
read_sp, not read_register.
* c-valprint.c (c_val_print): Use extract_typed_address instead of
extract_address to extract vtable entries and references.
* cp-valprint.c (cp_print_value_fields): Use value_from_pointer
instead of value_from_longest to extract the vtable's address.
* eval.c (evaluate_subexp_standard): Use value_from_pointer
instead of value_from_longest to compute `this', and for doing
pointer-to-member dereferencing.
* findvar.c (read_register): Use extract_unsigned_integer, not
extract_address.
(read_var_value): Use store_typed_address instead of store_address
for building label values.
(locate_var_value): Use value_from_pointer instead of
value_from_longest.
* hppa-tdep.c (find_stub_with_shl_get): Use value_from_pointer,
instead of value_from_longest, to build arguments to __d_shl_get.
* printcmd.c (set_next_address): Use value_from_pointer, not
value_from_longest.
(x_command): Use value_from_pointer, not value_from_longest.
* tracepoint.c (set_traceframe_context): Use value_from_pointer,
not value_from_longest.
* valarith.c (value_add, value_sub): Use value_from_pointer, not
value_from_longest.
* valops.c (find_function_in_inferior, value_coerce_array,
value_coerce_function, value_addr, hand_function_call): Same.
* value.h (COERCE_REF): Use unpack_pointer, not unpack_long.
* values.c (unpack_long): Use extract_typed_address to produce
addresses from pointers and references, not extract_address.
(value_from_longest): Use store_typed_address instead of
store_address to produce pointer and reference values.
2000-04-14 18:43:41 +00:00
Andrew Cagney
c0e8c25248 * gdbarch-utils.h, gdbarch-utils.c: New files.
* Makefile.in (SFILES, COMMON_OBS): Update.
(gdbarch_utils_h) Define.
(gdbarch-utils.o): Add dependencies.

* gdbarch.c, gdbarch.sh: Include "gdbarch-utils.h". Fix code
handling default method values.
(startup_gdbarch): Rename default_gdbarch, name misleading.
(breakpoint_from_pc): Default to legacy_breakpoint_from_pc.
(register_name): Default to legacy_register_name.
(call_dummy_words): Default to legacy_call_dummy_words.
(sizeof_call_dummy_words): Default to
legacy_sizeof_call_dummy_words.
(register_convertible): Default to
generic_register_convertible_not.
(breakpoint_from_pc): Default to legacy_breakpoint_from_pc.
(remote_translate_xfer_address): Default to
generic_remote_translate_xfer_address.
(frameless_function_invocation): Default to
generic_frameless_function_invocation_not.
2000-04-03 00:00:32 +00:00
Andrew Cagney
59233f88f1 gdbarch cleanups. 2000-03-30 05:32:23 +00:00
Jim Blandy
058f20d52a * gdbarch.sh: Emit a definition and declaration for gdbarch_free,
a companion to gdbarch_alloc, which allows a gdbarch init function
to free partially-built gdbarch structures.
* gdbarch.c, gdbarch.h: Regenerated.
2000-03-21 20:40:43 +00:00