VirtualBox

Changeset 35996 in vbox


Ignore:
Timestamp:
Feb 16, 2011 1:57:53 PM (14 years ago)
Author:
vboxsync
Message:

optimize tlb_flush a little bit

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/recompiler/exec.c

    r35346 r35996  
    19231923}
    19241924
     1925static CPUTLBEntry s_cputlb_empty_entry = {
     1926    .addr_read  = -1,
     1927    .addr_write = -1,
     1928    .addr_code  = -1,
     1929    .addend     = -1,
     1930};
     1931
    19251932/* NOTE: if flush_global is true, also flush global entries (not
    19261933   implemented yet) */
     
    19281935{
    19291936    int i;
     1937
    19301938#if defined(DEBUG_TLB)
    19311939    printf("tlb_flush:\n");
     
    19361944
    19371945    for(i = 0; i < CPU_TLB_SIZE; i++) {
    1938         env->tlb_table[0][i].addr_read = -1;
    1939         env->tlb_table[0][i].addr_write = -1;
    1940         env->tlb_table[0][i].addr_code = -1;
    1941         env->tlb_table[1][i].addr_read = -1;
    1942         env->tlb_table[1][i].addr_write = -1;
    1943         env->tlb_table[1][i].addr_code = -1;
    1944 #if defined(VBOX) && !defined(REM_PHYS_ADDR_IN_TLB)
    1945         env->phys_addends[0][i] = -1;
    1946         env->phys_addends[1][i] = -1;
    1947 #endif
    1948 #if (NB_MMU_MODES >= 3)
    1949         env->tlb_table[2][i].addr_read = -1;
    1950         env->tlb_table[2][i].addr_write = -1;
    1951         env->tlb_table[2][i].addr_code = -1;
    1952 #if defined(VBOX) && !defined(REM_PHYS_ADDR_IN_TLB)
    1953         env->phys_addends[2][i] = -1;
    1954 #endif
    1955 #if (NB_MMU_MODES == 4)
    1956         env->tlb_table[3][i].addr_read = -1;
    1957         env->tlb_table[3][i].addr_write = -1;
    1958         env->tlb_table[3][i].addr_code = -1;
    1959 #if defined(VBOX) && !defined(REM_PHYS_ADDR_IN_TLB)
    1960         env->phys_addends[3][i] = -1;
    1961 #endif
    1962 #endif
    1963 #endif
     1946        int mmu_idx;
     1947        for (mmu_idx = 0; mmu_idx < NB_MMU_MODES; mmu_idx++) {
     1948            env->tlb_table[mmu_idx][i] = s_cputlb_empty_entry;
     1949        }
    19641950    }
    19651951
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette