2002-03-05 Chris Demetriou <cgd@broadcom.com>
authorChris Demetriou <cgd@google.com>
Wed, 6 Mar 2002 05:41:40 +0000 (05:41 +0000)
committerChris Demetriou <cgd@google.com>
Wed, 6 Mar 2002 05:41:40 +0000 (05:41 +0000)
        * mips.igen (check_fpu): Enable check for coprocessor 1 usability.
        * sim-main.h (COP_Usable): Define, but for now coprocessor 1
        is always enabled.
        (SignalExceptionCoProcessorUnusable): Take as argument the
        unusable coprocessor number.

sim/mips/ChangeLog
sim/mips/mips.igen
sim/mips/sim-main.h

index f4f58923f2cf92f310fd6c378d0fffd7b38f55f8..3bcc294859d333257e81eea96ec3bce7cf10dc65 100644 (file)
@@ -1,3 +1,11 @@
+2002-03-05  Chris Demetriou  <cgd@broadcom.com>
+
+       * mips.igen (check_fpu): Enable check for coprocessor 1 usability.
+       * sim-main.h (COP_Usable): Define, but for now coprocessor 1
+       is always enabled.
+       (SignalExceptionCoProcessorUnusable): Take as argument the
+       unusable coprocessor number.
+
 2002-03-05  Chris Demetriou  <cgd@broadcom.com>
 
        * mips.igen: Fix formatting of all SignalException calls.
index 9b20a6bcf44fec69a761dcba7469027a4a836ccf..d1a3f1ad3fa259913149d66348477ea55f98e514 100644 (file)
 *vr5000:
 *r3900:
 {
-#if 0  /* XXX FIXME: For now, never treat the FPU as disabled.  */
   if (! COP_Usable (1))
     SignalExceptionCoProcessorUnusable (1);
-#endif
 }
 
 
index 8e8511fae9f02a8f7228a901d4579e0fa90cd516..1870c965cd053da954f721815d9608905dcd7945 100644 (file)
@@ -653,7 +653,7 @@ void signal_exception (SIM_DESC sd, sim_cpu *cpu, address_word cia, int exceptio
 #define SignalExceptionSimulatorFault(buf)   signal_exception (SD, CPU, cia, SimulatorFault, buf)
 #define SignalExceptionFPE()                 signal_exception (SD, CPU, cia, FPE)
 #define SignalExceptionIntegerOverflow()     signal_exception (SD, CPU, cia, IntegerOverflow)
-#define SignalExceptionCoProcessorUnusable() signal_exception (SD, CPU, cia, CoProcessorUnusable)
+#define SignalExceptionCoProcessorUnusable(cop) signal_exception (SD, CPU, cia, CoProcessorUnusable)
 #define SignalExceptionNMIReset()            signal_exception (SD, CPU, cia, NMIReset)
 #define SignalExceptionTLBRefillStore()      signal_exception (SD, CPU, cia, TLBStore, TLB_REFILL)
 #define SignalExceptionTLBRefillLoad()       signal_exception (SD, CPU, cia, TLBLoad, TLB_REFILL)
@@ -663,6 +663,9 @@ void signal_exception (SIM_DESC sd, sim_cpu *cpu, address_word cia, int exceptio
 
 /* Co-processor accesses */
 
+/* XXX FIXME: For now, assume that FPU (cp1) is always usable.  */
+#define COP_Usable(coproc_num)         (coproc_num == 1)
+
 void cop_lw  PARAMS ((SIM_DESC sd, sim_cpu *cpu, address_word cia, int coproc_num, int coproc_reg, unsigned int memword));
 void cop_ld  PARAMS ((SIM_DESC sd, sim_cpu *cpu, address_word cia, int coproc_num, int coproc_reg, uword64 memword));
 unsigned int cop_sw PARAMS ((SIM_DESC sd, sim_cpu *cpu, address_word cia, int coproc_num, int coproc_reg));