2002-08-01 Michael Snyder * mips-tdep.c: Define new macros MIPS_NEWABI, MIPS_OLDABI (by analogy with MIPS_EABI). (mips_use_struct_convention): NEWABI (n32 and n64) uses same scheme as EABI. Index: mips-tdep.c =================================================================== RCS file: /cvs/src/src/gdb/mips-tdep.c,v retrieving revision 1.87 diff -c -3 -p -r1.87 mips-tdep.c *** mips-tdep.c 1 Aug 2002 21:36:27 -0000 1.87 --- mips-tdep.c 2 Aug 2002 02:19:11 -0000 *************** struct gdbarch_tdep *** 146,153 **** enum gdb_osabi osabi; }; ! #define MIPS_EABI (gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_EABI32 \ ! || gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_EABI64) #define MIPS_LAST_FP_ARG_REGNUM (gdbarch_tdep (current_gdbarch)->mips_last_fp_arg_regnum) --- 146,162 ---- enum gdb_osabi osabi; }; ! #define MIPS_EABI \ ! (gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_EABI32 \ ! || gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_EABI64) ! ! #define MIPS_NEWABI \ ! (gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_N32 \ ! || gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_N64) ! ! #define MIPS_OLDABI \ ! (gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_O32 \ ! || gdbarch_tdep (current_gdbarch)->mips_abi == MIPS_ABI_O64) #define MIPS_LAST_FP_ARG_REGNUM (gdbarch_tdep (current_gdbarch)->mips_last_fp_arg_regnum) *************** show_mask_address (char *cmd, int from_t *** 561,570 **** int mips_use_struct_convention (int gcc_p, struct type *type) { ! if (MIPS_EABI) return (TYPE_LENGTH (type) > 2 * MIPS_SAVED_REGSIZE); else ! return 1; /* Structures are returned by ref in extra arg0 */ } /* Tell if the program counter value in MEMADDR is in a MIPS16 function. */ --- 570,579 ---- int mips_use_struct_convention (int gcc_p, struct type *type) { ! if (MIPS_EABI || MIPS_NEWABI) return (TYPE_LENGTH (type) > 2 * MIPS_SAVED_REGSIZE); else ! return 1; /* Old ABI: structures are returned by ref in extra arg0 */ } /* Tell if the program counter value in MEMADDR is in a MIPS16 function. */