aboutsummaryrefslogtreecommitdiff
path: root/sim/mips/sim-main.h
diff options
context:
space:
mode:
authorChris Demetriou <cgd@google.com>2002-05-01 17:26:14 +0000
committerChris Demetriou <cgd@google.com>2002-05-01 17:26:14 +0000
commit402586aa260ba9b74e3a2382276cf31a7abc2b6b (patch)
tree9d41b87e0d4643c93052427e8966e01a70c9c35a /sim/mips/sim-main.h
parenta6befae84def7b445a76e360deba6dde20e03052 (diff)
downloadgdb-402586aa260ba9b74e3a2382276cf31a7abc2b6b.zip
gdb-402586aa260ba9b74e3a2382276cf31a7abc2b6b.tar.gz
gdb-402586aa260ba9b74e3a2382276cf31a7abc2b6b.tar.bz2
2002-05-01 Chris Demetriou <cgd@broadcom.com>
* cp1.c (store_fpr): Remove #ifdef'd out call to UndefinedResult which wouldn't compile anyway. * sim-main.h (unpredictable_action): New function prototype. (Unpredictable): Define to call igen function unpredictable(). (NotWordValue): New macro to call igen function not_word_value(). (UndefinedResult): Remove. * interp.c (undefined_result): Remove. (unpredictable_action): New function. * mips.igen (not_word_value, unpredictable): New functions. (ADD, ADDI, do_addiu, do_addu, BGEZAL, BGEZALL, BLTZAL, BLTZALL) (CLO, CLZ, MADD, MADDU, MSUB, MSUBU, MUL, do_mult, do_multu) (do_sra, do_srav, do_srl, do_srlv, SUB, do_subu): Invoke NotWordValue() to check for unpredictable inputs, then Unpredictable() to handle them.
Diffstat (limited to 'sim/mips/sim-main.h')
-rw-r--r--sim/mips/sim-main.h5
1 files changed, 3 insertions, 2 deletions
diff --git a/sim/mips/sim-main.h b/sim/mips/sim-main.h
index 7c34888..4373c00 100644
--- a/sim/mips/sim-main.h
+++ b/sim/mips/sim-main.h
@@ -771,8 +771,9 @@ INLINE_SIM_MAIN (void) prefetch PARAMS ((SIM_DESC sd, sim_cpu *cpu, address_word
#define Prefetch(CCA,pAddr,vAddr,DATA,hint) \
prefetch (SD, CPU, cia, CCA, pAddr, vAddr, DATA, hint)
-#define UndefinedResult()
-#define Unpredictable()
+void unpredictable_action (sim_cpu *cpu, address_word cia);
+#define NotWordValue(val) not_word_value (SD_, (val))
+#define Unpredictable() unpredictable (SD_)
INLINE_SIM_MAIN (unsigned32) ifetch32 PARAMS ((SIM_DESC sd, sim_cpu *cpu, address_word cia, address_word vaddr));
#define IMEM32(CIA) ifetch32 (SD, CPU, (CIA), (CIA))