diff options
author | James Lemke <jlemke@cygnus> | 1998-06-04 20:50:55 +0000 |
---|---|---|
committer | James Lemke <jlemke@cygnus> | 1998-06-04 20:50:55 +0000 |
commit | 037f29c526b22ac1505c81f901b3741204b83d57 (patch) | |
tree | 7383e4e9cbd0a7814bc034c0837b4854072f1332 /sim/mips/interp.c | |
parent | d6b6757b7ab2fca3efc939eea7d33a3d77c30935 (diff) | |
download | gdb-037f29c526b22ac1505c81f901b3741204b83d57.zip gdb-037f29c526b22ac1505c81f901b3741204b83d57.tar.gz gdb-037f29c526b22ac1505c81f901b3741204b83d57.tar.bz2 |
Added support for the VU insn D (debug) & T (trace) bits.
Diffstat (limited to 'sim/mips/interp.c')
-rw-r--r-- | sim/mips/interp.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/sim/mips/interp.c b/sim/mips/interp.c index e0ec3e3..07b7e6b 100644 --- a/sim/mips/interp.c +++ b/sim/mips/interp.c @@ -3545,7 +3545,10 @@ decode_coproc (SIM_DESC sd, unsigned_4 data; /* enum + int calculation, argh! */ id = VU_REG_MST + 16 * id; - read_vu_misc_reg(&(vu0_device.regs), id, & data); + if (id >= VU_REG_CMSAR0) + read_vu_special_reg(&vu0_device, id, & data); + else + read_vu_misc_reg(&(vu0_device.regs), id, & data); GPR[rt] = EXTEND32(T2H_4(data)); } } @@ -3584,8 +3587,11 @@ decode_coproc (SIM_DESC sd, { unsigned_4 data = H2T_4(GPR[rt]); /* enum + int calculation, argh! */ - id = VU_REG_MST + 16 * id; - write_vu_misc_reg(&(vu0_device.regs), id, & data); + id = VU_REG_VI + 16 * id; + if (id >= VU_REG_CMSAR0) + write_vu_special_reg(&vu0_device, id, & data); + else + write_vu_misc_reg(&(vu0_device.regs), id, & data); } } else if(i_10_0 == 0x3bf) /* VWAITQ */ |