static void invalidate_and_set_dirty(target_phys_addr_t addr,

                                     target_phys_addr_t length)

{

    if (!cpu_physical_memory_is_dirty(addr)) {

        /* invalidate code */

        tb_invalidate_phys_page_range(addr, addr + length, 0);

        /* set dirty bit */

        cpu_physical_memory_set_dirty_flags(addr, (0xff & ~CODE_DIRTY_FLAG));

    }

    xen_modified_memory(addr, length);

}

static void invalidate_and_set_dirty(target_phys_addr_t addr,

                                     target_phys_addr_t length)

{

    if (!cpu_physical_memory_is_dirty(addr)) {

        

        tb_invalidate_phys_page_range(addr, addr + length, 0);

        

        cpu_physical_memory_set_dirty_flags(addr, (0xff & ~CODE_DIRTY_FLAG));

    }

    xen_modified_memory(addr, length);

}

static void FUNC_0(target_phys_addr_t VAR_0,

                                     target_phys_addr_t VAR_1)

{

    if (!cpu_physical_memory_is_dirty(VAR_0)) {

        

        tb_invalidate_phys_page_range(VAR_0, VAR_0 + VAR_1, 0);

        

        cpu_physical_memory_set_dirty_flags(VAR_0, (0xff & ~CODE_DIRTY_FLAG));

    }

    xen_modified_memory(VAR_0, VAR_1);

}

static void FUNC_0(target_phys_addr_t VAR_0,
target_phys_addr_t VAR_1)
{ if (!cpu_physical_memory_is_dirty(VAR_0)) { tb_invalidate_phys_page_range(VAR_0, VAR_0 + VAR_1, 0); cpu_physical_memory_set_dirty_flags(VAR_0, (0xff & ~CODE_DIRTY_FLAG)); } xen_modified_memory(VAR_0, VAR_1); }