Revision 3b46e624 kqemu.c
b/kqemu.c | ||
---|---|---|
286 | 286 |
{ |
287 | 287 |
int i; |
288 | 288 |
unsigned long page_index; |
289 |
|
|
289 |
|
|
290 | 290 |
for(i = 0; i < nb_modified_ram_pages; i++) { |
291 | 291 |
page_index = modified_ram_pages[i] >> TARGET_PAGE_BITS; |
292 | 292 |
modified_ram_pages_table[page_index] = 0; |
... | ... | |
364 | 364 |
{ |
365 | 365 |
int fptag, i, j; |
366 | 366 |
struct fpstate fp1, *fp = &fp1; |
367 |
|
|
367 |
|
|
368 | 368 |
fp->fpuc = env->fpuc; |
369 | 369 |
fp->fpus = (env->fpus & ~0x3800) | (env->fpstt & 0x7) << 11; |
370 | 370 |
fptag = 0; |
... | ... | |
470 | 470 |
struct kqemu_cpu_state *kenv) |
471 | 471 |
{ |
472 | 472 |
int selector; |
473 |
|
|
473 |
|
|
474 | 474 |
selector = (env->star >> 32) & 0xffff; |
475 | 475 |
#ifdef __x86_64__ |
476 | 476 |
if (env->hflags & HF_LMA_MASK) { |
... | ... | |
501 | 501 |
#endif |
502 | 502 |
{ |
503 | 503 |
env->regs[R_ECX] = (uint32_t)kenv->next_eip; |
504 |
|
|
504 |
|
|
505 | 505 |
cpu_x86_set_cpl(env, 0); |
506 | 506 |
cpu_x86_load_seg_cache(env, R_CS, selector & 0xfffc, |
507 | 507 |
0, 0xffffffff, |
... | ... | |
605 | 605 |
} |
606 | 606 |
} |
607 | 607 |
qsort(pr, nb_pc_records, sizeof(PCRecord *), pc_rec_cmp); |
608 |
|
|
608 |
|
|
609 | 609 |
f = fopen("/tmp/kqemu.stats", "w"); |
610 | 610 |
if (!f) { |
611 | 611 |
perror("/tmp/kqemu.stats"); |
... | ... | |
697 | 697 |
kenv->nb_ram_pages_to_update = nb_ram_pages_to_update; |
698 | 698 |
#endif |
699 | 699 |
nb_ram_pages_to_update = 0; |
700 |
|
|
700 |
|
|
701 | 701 |
#if KQEMU_VERSION >= 0x010300 |
702 | 702 |
kenv->nb_modified_ram_pages = nb_modified_ram_pages; |
703 | 703 |
#endif |
... | ... | |
828 | 828 |
env->hflags |= HF_OSFXSR_MASK; |
829 | 829 |
else |
830 | 830 |
env->hflags &= ~HF_OSFXSR_MASK; |
831 |
|
|
831 |
|
|
832 | 832 |
#ifdef DEBUG |
833 | 833 |
if (loglevel & CPU_LOG_INT) { |
834 | 834 |
fprintf(logfile, "kqemu: kqemu_cpu_exec: ret=0x%x\n", ret); |
Also available in: Unified diff