Commit Graph

59 Commits

Author SHA1 Message Date
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
1dd4193b86 Missing GDBARCH updates for EXTRA_STACK_ALIGNMENT needed. 2000-08-04 04:00:44 +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
Kevin Buettner
fba45db2fa Protoization. 2000-07-30 01:48:28 +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
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
1ad03bde8a Rename gdbarch-utils.[hc] to arch-utils.[hc] 2000-04-09 14:37:28 +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
Daniel Berlin
5d161b2419 The set debug changes 2000-03-28 02:25:14 +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
Jim Blandy
b9a8e3bfd4 Bring COERCE_FLOAT_TO_DOUBLE under gdbarch's control.
* valops.c (COERCE_FLOAT_TO_DOUBLE): Rework definition to be
more function-like.
(default_coerce_float_to_double, standard_coerce_float_to_double):
New functions.
(value_arg_coerce): Adjust for new definition.
* value.h (default_coerce_float_to_double,
standard_coerce_float_to_double): New declarations for the above.
* gdbarch.sh (coerce_float_to_double): New entry, replacing macro.
* gdbarch.c, gdbarch.h: Regenerated.
* tm-alpha.h, tm-fr30.h, tm-m32r.h, tm-mips.h, tm-hppa.h,
tm-rs6000.h, tm-sh.h, tm-sparc.h (COERCE_FLOAT_TO_DOUBLE): Change
definitions.
* mips-tdep.c (mips_coerce_float_to_double): Supply our own custom
function here.
(mips_gdbarch_init): Install that as our coerce_float_to_double
function.
2000-02-22 19:18:53 +00:00
Andrew Cagney
03f2053f96 Replace ../include/wait.h with gdb_wait.h. 2000-02-09 08:52:47 +00:00
Jason Molenda
c4093a6ab3 import gdb-1999-12-13 snapshot 1999-12-14 01:06:04 +00:00
Jason Molenda
e514a9d642 import gdb-1999-10-25 snapshot 1999-10-26 03:43:48 +00:00
Jason Molenda
917317f4c6 import gdb-1999-10-18 snapshot 1999-10-19 02:47:02 +00:00
Jason Molenda
104c1213b4 import gdb-1999-08-30 snapshot 1999-08-31 01:14:27 +00:00
Jason Molenda
7be570e7ce import gdb-1999-08-16 snapshot 1999-08-16 19:57:19 +00:00
Jason Molenda
96baa820df import gdb-1999-08-09 snapshot 1999-08-09 21:36:23 +00:00
Jason Molenda
adf40b2e16 import gdb-1999-07-19 snapshot 1999-07-19 23:30:11 +00:00
Jason Molenda
c5aa993b1f import gdb-1999-07-07 post reformat 1999-07-07 20:19:36 +00:00
Jason Molenda
0f71a2f66f import gdb-1999-06-14 snapshot 1999-06-14 18:08:47 +00:00
Jason Molenda
cce74817d9 import gdb-1999-06-07 snapshot 1999-06-07 19:19:32 +00:00
Jason Molenda
392a587b05 import gdb-1999-05-25 snapshot 1999-05-25 18:09:09 +00:00