This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] 64-bit support for Irix 6


I've committed the change below.
Where is the fire?

set_gdbarch_integer_to_address (gdbarch, mips_integer_to_address);
+
+ set_gdbarch_register_virtual_type (gdbarch, mips_register_virtual_type);
Can you please add a comment here explaining that many MIPS targets do not yet use this method because they are still defining the macro.

As a separate patch, could you please update things so that:

+static struct type *
+mips_register_virtual_type (int reg)
+{
+  if (FP0_REGNUM <= reg && reg < FP0_REGNUM + 32)
+    return builtin_type_double;
This returns ieee_double big/little.

+  else if (reg == PS_REGNUM /* CR */)
+    return builtin_type_uint32;
+  else if (FCRCS_REGNUM <= reg && reg <= LAST_EMBED_REGNUM)
+    return builtin_type_uint32;
+  else
+    {
+      /* Everything else... return ``long long'' when registers
+         are 64-bits wide, ``int'' otherwise.  */
+      if (MIPS_REGSIZE == TYPE_LENGTH (builtin_type_long_long))
+	return builtin_type_long_long;
This returns builtin_type_uint64.

+      else

+	return builtin_type_int;
This returns builtin_type_uint32.

Andrew



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]