Revision e6e5906b hw/pl110.c
b/hw/pl110.c | ||
---|---|---|
185 | 185 |
addr = base; |
186 | 186 |
|
187 | 187 |
dirty = cpu_physical_memory_get_dirty(addr, VGA_DIRTY_FLAG); |
188 |
new_dirty = dirty; |
|
188 | 189 |
for (i = 0; i < s->rows; i++) { |
189 |
new_dirty = 0; |
|
190 |
if ((addr & TARGET_PAGE_MASK) + src_width >= TARGET_PAGE_SIZE) { |
|
190 |
if ((addr & ~TARGET_PAGE_MASK) + src_width >= TARGET_PAGE_SIZE) { |
|
191 | 191 |
uint32_t tmp; |
192 |
new_dirty = 0; |
|
192 | 193 |
for (tmp = 0; tmp < src_width; tmp += TARGET_PAGE_SIZE) { |
193 | 194 |
new_dirty |= cpu_physical_memory_get_dirty(addr + tmp, |
194 | 195 |
VGA_DIRTY_FLAG); |
Also available in: Unified diff