Swap the GDB builtin types when ever the architecture changes.
This commit is contained in:
Andrew Cagney 1998-12-16 15:05:19 +00:00
parent dcf46491d8
commit 115c338d20
2 changed files with 42 additions and 0 deletions

View File

@ -1,4 +1,10 @@
start-sanitize-carp start-sanitize-vr4xxx
Thu Dec 17 02:01:58 1998 Andrew Cagney <cagney@chook>
* gdbtypes.c (_initialize_gdbtypes): Register all builtin types
with gdbarch so that they are updated whenever the architecture is
changed.
Thu Dec 17 01:58:16 1998 Andrew Cagney <cagney@chook>
* gdbarch.h (GDB_MULTI_ARCH): New macro, default to zero.

View File

@ -2003,4 +2003,40 @@ void
_initialize_gdbtypes ()
{
build_gdbtypes ();
/* start-sanitize-carp start-sanitize-vr4xxx */
/* FIXME - For the moment, handle types by swapping them in and out.
Should be using the per-architecture data-pointer and a large
struct. */
register_gdbarch_swap (&builtin_type_void, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_char, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_short, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_int, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_long, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_long_long, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_signed_char, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_unsigned_char, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_unsigned_short, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_unsigned_int, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_unsigned_long, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_unsigned_long_long, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_float, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_double, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_long_double, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_complex, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_double_complex, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_string, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_int8, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_uint8, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_int16, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_uint16, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_int32, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_uint32, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_int64, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_uint64, sizeof (struct type*), NULL);
/* start-sanitize-r5900 */
register_gdbarch_swap (&builtin_type_int128, sizeof (struct type*), NULL);
register_gdbarch_swap (&builtin_type_uint128, sizeof (struct type*), NULL);
/* end-sanitize-r5900 */
register_gdbarch_swap (NULL, 0, build_gdbtypes);
/* end-sanitize-carp end-sanitize-vr4xxx */
}