aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog6
-rw-r--r--gdb/gdbtypes.c36
2 files changed, 42 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 840415d..705b890 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -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.
diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
index 2bc4003..8d3f320 100644
--- a/gdb/gdbtypes.c
+++ b/gdb/gdbtypes.c
@@ -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 */
}