]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commit - sim/d10v/interp.c
Tue Oct 29 12:13:52 1996 Martin M. Hunt <hunt@pizza.cygnus.com>
authorMartin Hunt <hunt@redhat.com>
Tue, 29 Oct 1996 20:31:08 +0000 (20:31 +0000)
committerMartin Hunt <hunt@redhat.com>
Tue, 29 Oct 1996 20:31:08 +0000 (20:31 +0000)
commitc422ecc7a4731f016b1ef02af33560ecd3a70bc0
tree665e20d33763e563dd54865b5ffe514fac70f14e
parent2385d90a81bb8378de8c8dc9fa94a45b8f71b2a4
Tue Oct 29 12:13:52 1996  Martin M. Hunt  <hunt@pizza.cygnus.com>

* interp.c (sim_size): Now allocates unified memory for imap segments
0,1,2, and 127. Initializes imap0 and imap1 to 0x1000.  Initializes dmap to 0.
(sim_write): Just call xfer_mem().
(sim_read): Just call xfer_mem().
(xfer_mem): New function. Does appropriate memory mapping and copies bytes.
(dmem_addr): New function. Reads dmap register and translates data
  addresses to local addresses.
(pc_addr): New function. Reads imap register and computes local address
corresponding to contents of the PC.
(sim_resume): Change to use pc_addr().
(sim_create_inferior): Change reinitialization code. Also reinitializes
imap[01] and dmap.
(sim_fetch_register): Add fake registers 32,33,34 for imap0, imap1, and dmap.
(sim_store_register): Add fake registers 32,33,34 for imap0, imap1, and dmap.

* simops.c (MEMPTR): Redefine to use dmem_addr().
(OP_5F00): Replace references to STate.imem with dmem_addr().

* d10v-sim.h (State): Remove mem_min and mem_max. Add umem[128].
(RB,SW,RW,SLW,RLW): Redefine to use dmem_addr().
(IMAP0,IMAP1,DMAP,SET_IMAP,SET_IMAP1,SET_DMAP): Define.
sim/d10v/ChangeLog
sim/d10v/d10v_sim.h
sim/d10v/interp.c
sim/d10v/simops.c