* m68k-tdep.c (m68k_register_virtual_type): Use architecture
authorAndreas Schwab <schwab@linux-m68k.org>
Fri, 22 Nov 2002 23:59:20 +0000 (23:59 +0000)
committerAndreas Schwab <schwab@linux-m68k.org>
Fri, 22 Nov 2002 23:59:20 +0000 (23:59 +0000)
invariant return values.

gdb/ChangeLog
gdb/m68k-tdep.c

index 9bd4cab9acdbdd50f1a6f110c99ff398a58b89e8..df3ed27a58093c9f122c5ad721472aab328de6da 100644 (file)
@@ -1,3 +1,8 @@
+2002-11-23  Andreas Schwab  <schwab@suse.de>
+
+       * m68k-tdep.c (m68k_register_virtual_type): Use architecture
+       invariant return values.
+
 2002-11-22  Andreas Schwab  <schwab@suse.de>
 
        * valops.c (value_slice): Move declaration of `offset' to avoid
index 7039e644c24f52294022361dc6840cf4b0a64d54..6859b505ef4789f7cd148e7b1b484d9a2d25d0d3 100644 (file)
@@ -159,18 +159,19 @@ m68k_register_virtual_size (int regnum)
 static struct type *
 m68k_register_virtual_type (int regnum)
 {
-  if (regnum == E_FPI_REGNUM)
-    return lookup_pointer_type (builtin_type_void);
-  else if ((unsigned) regnum >= E_FPC_REGNUM)
-    return builtin_type_int;
-  else if ((unsigned) regnum >= FP0_REGNUM)
-    return builtin_type_long_double;
-  else if (regnum == PS_REGNUM)
-    return builtin_type_int;
-  else if ((unsigned) regnum >= A0_REGNUM)
-    return lookup_pointer_type (builtin_type_void);
-  else
-    return builtin_type_int;
+  if (regnum >= FP0_REGNUM && regnum <= FP0_REGNUM + 7)
+    return builtin_type_m68881_ext;
+
+  if (regnum == E_FPI_REGNUM || regnum == PC_REGNUM)
+    return builtin_type_void_func_ptr;
+
+  if (regnum == E_FPC_REGNUM || regnum == E_FPS_REGNUM || regnum == PS_REGNUM)
+    return builtin_type_int32;
+
+  if (regnum >= A0_REGNUM && regnum <= A0_REGNUM + 7)
+    return builtin_type_void_data_ptr;
+
+  return builtin_type_int32;
 }
 
 /* Function: m68k_register_name
This page took 0.042714 seconds and 4 git commands to generate.