Revision 8f091a59 target-i386/helper2.c

b/target-i386/helper2.c
106 106
        env->cpuid_version = (family << 8) | (model << 4) | stepping;
107 107
        env->cpuid_features = (CPUID_FP87 | CPUID_DE | CPUID_PSE |
108 108
                               CPUID_TSC | CPUID_MSR | CPUID_MCE |
109
                               CPUID_CX8 | CPUID_PGE | CPUID_CMOV);
109
                               CPUID_CX8 | CPUID_PGE | CPUID_CMOV |
110
                               CPUID_PAT);
111
        env->pat = 0x0007040600070406ULL;
110 112
        env->cpuid_ext_features = 0;
111 113
        env->cpuid_features |= CPUID_FXSR | CPUID_MMX | CPUID_SSE | CPUID_SSE2 | CPUID_PAE | CPUID_SEP;
112 114
        env->cpuid_xlevel = 0;
......
128 130
        env->cpuid_ext2_features = (env->cpuid_features & 0x0183F3FF);
129 131
        env->cpuid_ext2_features |= CPUID_EXT2_LM | CPUID_EXT2_SYSCALL;
130 132
        env->cpuid_xlevel = 0x80000008;
133

  
134
        /* these features are needed for Win64 and aren't fully implemented */
135
        env->cpuid_features |= CPUID_MTRR | CPUID_CLFLUSH | CPUID_MCA;
131 136
#endif
132 137
    }
133 138
    cpu_single_env = env;
......
546 551
}
547 552

  
548 553
/* XXX: also flush 4MB pages */
549
void cpu_x86_flush_tlb(CPUX86State *env, uint32_t addr)
554
void cpu_x86_flush_tlb(CPUX86State *env, target_ulong addr)
550 555
{
551 556
    tlb_flush_page(env, addr);
552 557
}

Also available in: Unified diff