Commit 7525b550 authored by Richard Henderson's avatar Richard Henderson Committed by Eduardo Habkost
Browse files

target-i386: Optimize setting dr[0-3]



If the debug register is not enabled, we need
do nothing besides update the register.

Signed-off-by: default avatarRichard Henderson <rth@twiddle.net>
Signed-off-by: default avatarEduardo Habkost <ehabkost@redhat.com>
parent 696ad9e4
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -228,9 +228,14 @@ void helper_movl_drN_T0(CPUX86State *env, int reg, target_ulong t0)
{
#ifndef CONFIG_USER_ONLY
    if (reg < 4) {
        if (hw_breakpoint_enabled(env->dr[7], reg)
            && hw_breakpoint_type(env->dr[7], reg) != DR7_TYPE_IO_RW) {
            hw_breakpoint_remove(env, reg);
            env->dr[reg] = t0;
            hw_breakpoint_insert(env, reg);
        } else {
            env->dr[reg] = t0;
        }
    } else if (reg == 7) {
        cpu_x86_update_dr7(env, t0);
    } else {