diff options
author | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-11-18 21:08:15 +0000 |
---|---|---|
committer | aliguori <aliguori@c046a42c-6fe2-441c-8c8c-71466251a162> | 2008-11-18 21:08:15 +0000 |
commit | 01df040b52474b463d00fe908d5a14e1ecdc75bc (patch) | |
tree | 2d12dee18e87fae0438a76c4ae588a5f5a149eab /target-i386/machine.c | |
parent | Introduce BP_CPU as a breakpoint type (Jan Kiszka) (diff) | |
download | qemu-kvm-01df040b52474b463d00fe908d5a14e1ecdc75bc.tar.gz qemu-kvm-01df040b52474b463d00fe908d5a14e1ecdc75bc.tar.bz2 qemu-kvm-01df040b52474b463d00fe908d5a14e1ecdc75bc.zip |
x86: Debug register emulation (Jan Kiszka)
Built on top of previously enhanced breakpoint/watchpoint support, this
patch adds full debug register emulation for the x86 architecture.
Many corner cases were considered, and the result was successfully
tested inside a Linux guest with gdb, but I won't be surprised if one
or two scenarios still behave differently in reality.
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5747 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-i386/machine.c')
-rw-r--r-- | target-i386/machine.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/target-i386/machine.c b/target-i386/machine.c index 7f78b0da9..faab2eb4c 100644 --- a/target-i386/machine.c +++ b/target-i386/machine.c @@ -259,6 +259,10 @@ int cpu_load(QEMUFile *f, void *opaque, int version_id) for(i = 0; i < 8; i++) qemu_get_betls(f, &env->dr[i]); + cpu_breakpoint_remove_all(env, BP_CPU); + cpu_watchpoint_remove_all(env, BP_CPU); + for (i = 0; i < 4; i++) + hw_breakpoint_insert(env, i); /* MMU */ qemu_get_sbe32s(f, &a20_mask); |