* gdb-if.c (hw_breakpoints): Remove.
(sim_store_register): Add an assert() to make sure PC is in range. Delete code which referenced hw_breakpoints[].
This commit is contained in:
parent
b04006e69c
commit
317cc67d75
2 changed files with 15 additions and 10 deletions
|
@ -1,3 +1,9 @@
|
||||||
|
2013-08-07 Kevin Buettner <kevinb@redhat.com>
|
||||||
|
|
||||||
|
* gdb-if.c (hw_breakpoints): Remove.
|
||||||
|
(sim_store_register): Add an assert() to make sure PC is in range.
|
||||||
|
Delete code which referenced hw_breakpoints[].
|
||||||
|
|
||||||
2013-06-03 Mike Frysinger <vapier@gentoo.org>
|
2013-06-03 Mike Frysinger <vapier@gentoo.org>
|
||||||
|
|
||||||
* aclocal.m4, configure: Regenerate.
|
* aclocal.m4, configure: Regenerate.
|
||||||
|
|
|
@ -55,8 +55,6 @@ static struct sim_state the_minisim = {
|
||||||
|
|
||||||
static int open;
|
static int open;
|
||||||
|
|
||||||
static unsigned char hw_breakpoints[MEM_SIZE/8];
|
|
||||||
|
|
||||||
static struct host_callback_struct *host_callbacks;
|
static struct host_callback_struct *host_callbacks;
|
||||||
|
|
||||||
/* Open an instance of the sim. For this sim, only one instance
|
/* Open an instance of the sim. For this sim, only one instance
|
||||||
|
@ -341,7 +339,15 @@ sim_store_register (SIM_DESC sd, int regno, unsigned char *buf, int length)
|
||||||
val = get_le (buf, length);
|
val = get_le (buf, length);
|
||||||
|
|
||||||
if (regno == sim_rl78_pc_regnum)
|
if (regno == sim_rl78_pc_regnum)
|
||||||
|
{
|
||||||
pc = val;
|
pc = val;
|
||||||
|
|
||||||
|
/* The rl78 program counter is 20 bits wide. Ensure that GDB
|
||||||
|
hasn't picked up any stray bits. This has occurred when performing
|
||||||
|
a GDB "return" command in which the return address is obtained
|
||||||
|
from a 32-bit container on the stack. */
|
||||||
|
assert ((pc & ~0x0fffff) == 0);
|
||||||
|
}
|
||||||
else
|
else
|
||||||
memory[reg_addr (regno)] = val;
|
memory[reg_addr (regno)] = val;
|
||||||
return size;
|
return size;
|
||||||
|
@ -456,13 +462,6 @@ sim_resume (SIM_DESC sd, int step, int sig_to_deliver)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (hw_breakpoints[pc >> 3]
|
|
||||||
&& (hw_breakpoints[pc >> 3] & (1 << (pc & 0x7))))
|
|
||||||
{
|
|
||||||
reason = sim_stopped;
|
|
||||||
siggnal = GDB_SIGNAL_TRAP;
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
rc = setjmp (decode_jmp_buf);
|
rc = setjmp (decode_jmp_buf);
|
||||||
if (rc == 0)
|
if (rc == 0)
|
||||||
rc = decode_opcode ();
|
rc = decode_opcode ();
|
||||||
|
|
Loading…
Reference in a new issue