VirtualBox

Changeset 13708

Show
Ignore:
Timestamp:
10/31/08 11:26:14 (2 months ago)
Author:
vboxsync
Message:

Skip the TB flush as that's rather expensive and not necessary for single instruction emulation.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/recompiler/VBoxRecompiler.c

    r13565 r13708  
    730730REMR3DECL(int) REMR3EmulateInstruction(PVM pVM) 
    731731{ 
     732    bool fFlushTBs; 
     733 
    732734    Log2(("REMR3EmulateInstruction: (cs:eip=%04x:%08x)\n", CPUMGetGuestCS(pVM), CPUMGetGuestEIP(pVM))); 
    733735 
     
    738740        pVM->rem.s.Env.state |= CPU_RAW_HWACC; 
    739741 
     742    /* Skip the TB flush as that's rather expensive and not necessary for single instruction emulation. */ 
     743    fFlushTBs = pVM->rem.s.fFlushTBs; 
     744    pVM->rem.s.fFlushTBs = false; 
     745 
    740746    /* 
    741747     * Sync the state and enable single instruction / single stepping. 
    742748     */ 
    743749    int rc = REMR3State(pVM); 
     750    pVM->rem.s.fFlushTBs = fFlushTBs; 
    744751    if (VBOX_SUCCESS(rc)) 
    745752    { 
  • trunk/src/recompiler_new/VBoxRecompiler.c

    r13652 r13708  
    731731        pVM->rem.s.Env.state |= CPU_RAW_HWACC; 
    732732 
     733    /* Skip the TB flush as that's rather expensive and not necessary for single instruction emulation. */ 
     734    fFlushTBs = pVM->rem.s.fFlushTBs; 
     735    pVM->rem.s.fFlushTBs = false; 
     736 
    733737    /* 
    734738     * Sync the state and enable single instruction / single stepping. 
    735739     */ 
    736740    rc = REMR3State(pVM); 
     741    pVM->rem.s.fFlushTBs = fFlushTBs; 
    737742    if (VBOX_SUCCESS(rc)) 
    738743    { 

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy