diff options
author | Frank Ch. Eigler <fche@redhat.com> | 1998-04-08 22:22:58 +0000 |
---|---|---|
committer | Frank Ch. Eigler <fche@redhat.com> | 1998-04-08 22:22:58 +0000 |
commit | 11c47f314bf5b03fb674275920386fbec2a13aca (patch) | |
tree | 89102bf79bfca77af260043ea188cfc4d9f423d9 /sim/mips | |
parent | 4118c63ccd7c23676cd358dd1d50d1ae02ef3868 (diff) | |
download | gdb-11c47f314bf5b03fb674275920386fbec2a13aca.zip gdb-11c47f314bf5b03fb674275920386fbec2a13aca.tar.gz gdb-11c47f314bf5b03fb674275920386fbec2a13aca.tar.bz2 |
* R5900 sky COP2 testing continuing. Today only small
VCALLMS-related were found/fixed.
[ChangeLog.sky]
* sky-vu.c ({read,write}_vu_special_reg): Add CMSAR[01] as special
registers for a VU. Behavior not as mandated.
({read,write}_vu_{misc,special}_reg): Create sim_io_error upon
access to unknown register. Behavior not as mandated.
* sky-vu.h (anonymous register numbering enum): Add CMSAR[01].
* sky-libvpe.c (indebug): Cache $ENV{'SKY_DEBUG'}.
[ChangeLog]
* Makefile.in (SIM_SKY_OBJS): Added sky-vudis.o.
* interp.c (decode_coproc): Refer to VU CIA as a "special"
register, not as a "misc" register. Aha. Add activity
assertions after VCALLMS* instructions.
Diffstat (limited to 'sim/mips')
-rw-r--r-- | sim/mips/ChangeLog | 11 | ||||
-rw-r--r-- | sim/mips/Makefile.in | 1 | ||||
-rw-r--r-- | sim/mips/interp.c | 10 |
3 files changed, 19 insertions, 3 deletions
diff --git a/sim/mips/ChangeLog b/sim/mips/ChangeLog index ecd4caf..80cfcdc 100644 --- a/sim/mips/ChangeLog +++ b/sim/mips/ChangeLog @@ -1,4 +1,15 @@ start-sanitize-sky + Wed Apr 8 18:12:13 1998 Frank Ch. Eigler <fche@cygnus.com> + + * Makefile.in (SIM_SKY_OBJS): Added sky-vudis.o. + + * interp.c (decode_coproc): Refer to VU CIA as a "special" + register, not as a "misc" register. Aha. Add activity + assertions after VCALLMS* instructions. + +end-sanitize-sky + +start-sanitize-sky Tue Apr 7 18:32:49 1998 Frank Ch. Eigler <fche@cygnus.com> * interp.c (decode_coproc): Do not apply superfluous E (end) flag diff --git a/sim/mips/Makefile.in b/sim/mips/Makefile.in index b3c4924..28ae81c 100644 --- a/sim/mips/Makefile.in +++ b/sim/mips/Makefile.in @@ -18,6 +18,7 @@ SIM_SKY_OBJS = \ sky-libvpe.o \ sky-pke.o \ sky-vu.o \ + sky-vudis.o \ sky-gs.o \ sky-gdb.o # end-sanitize-sky diff --git a/sim/mips/interp.c b/sim/mips/interp.c index 2d5d4f4..12da45d 100644 --- a/sim/mips/interp.c +++ b/sim/mips/interp.c @@ -3375,7 +3375,9 @@ decode_coproc (SIM_DESC sd, vu0_issue(sd); /* write to reserved CIA register to get VU0 moving */ - write_vu_misc_reg(&(vu0_device.regs), VU_REG_CIA, & data); + write_vu_special_reg(& vu0_device, VU_REG_CIA, & data); + + ASSERT(vu0_busy()); } else if(i_5_0 == 0x39) /* VCALLMSR */ { @@ -3384,9 +3386,11 @@ decode_coproc (SIM_DESC sd, while(vu0_busy()) vu0_issue(sd); - read_vu_misc_reg(&(vu0_device.regs), VU_REG_CMSAR0, & data); + read_vu_special_reg(& vu0_device, VU_REG_CMSAR0, & data); /* write to reserved CIA register to get VU0 moving */ - write_vu_misc_reg(&(vu0_device.regs), VU_REG_CIA, & data); + write_vu_special_reg(& vu0_device, VU_REG_CIA, & data); + + ASSERT(vu0_busy()); } /* handle all remaining UPPER VU instructions in one block */ else if((i_5_0 < 0x30) || /* VADDx .. VMINI */ |