aboutsummaryrefslogtreecommitdiff
path: root/sim/mips/sim-main.h
diff options
context:
space:
mode:
authorRichard Sandiford <rdsandiford@googlemail.com>2004-03-29 21:56:02 +0000
committerRichard Sandiford <rdsandiford@googlemail.com>2004-03-29 21:56:02 +0000
commit0e1b7197a41626c931f433e9d09333426d984676 (patch)
treee0555984f9b9ac74b3d16c5ece6e91b87d69909b /sim/mips/sim-main.h
parent9b0de91afe415d014e858bf39900420d91328721 (diff)
downloadgdb-0e1b7197a41626c931f433e9d09333426d984676.zip
gdb-0e1b7197a41626c931f433e9d09333426d984676.tar.gz
gdb-0e1b7197a41626c931f433e9d09333426d984676.tar.bz2
* sim-main.h (MIPS_MACH_HAS_MT_HILO_HAZARD)
(MIPS_MACH_HAS_MULT_HILO_HAZARD, MIPS_MACH_HAS_DIV_HILO_HAZARD): New. * mips.igen (check_mt_hilo, check_mult_hilo, check_div_hilo): Provide separate implementations for mipsIV and mipsV. Use new macros to determine whether the restrictions apply.
Diffstat (limited to 'sim/mips/sim-main.h')
-rw-r--r--sim/mips/sim-main.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/sim/mips/sim-main.h b/sim/mips/sim-main.h
index 2f3ffa4..96a86e9 100644
--- a/sim/mips/sim-main.h
+++ b/sim/mips/sim-main.h
@@ -953,6 +953,18 @@ extern int mips_mach_multi(SIM_DESC sd);
#define MIPS_MACH(SD) MIPS_MACH_DEFAULT
#endif
+/* Macros for determining whether a MIPS IV or MIPS V part is subject
+ to the hi/lo restrictions described in mips.igen. */
+
+#define MIPS_MACH_HAS_MT_HILO_HAZARD(SD) \
+ (MIPS_MACH (SD) != bfd_mach_mips5500)
+
+#define MIPS_MACH_HAS_MULT_HILO_HAZARD(SD) \
+ (MIPS_MACH (SD) != bfd_mach_mips5500)
+
+#define MIPS_MACH_HAS_DIV_HILO_HAZARD(SD) \
+ (MIPS_MACH (SD) != bfd_mach_mips5500)
+
#if H_REVEALS_MODULE_P (SIM_MAIN_INLINE)
#include "sim-main.c"
#endif