This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
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