VirtualBox

Changeset 13449

Show
Ignore:
Timestamp:
10/21/08 17:22:56 (3 months ago)
Author:
vboxsync
Message:

Fixed default flags for selector register loads in real and V86 mode

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/src/recompiler/target-i386/helper.c

    r13385 r13449  
    176176{ 
    177177    selector &= 0xffff; 
     178#ifdef VBOX 
     179    unsigned flags = DESC_P_MASK | DESC_S_MASK | DESC_W_MASK; 
     180 
     181    if (seg == R_CS) 
     182        flags |= DESC_CS_MASK; 
     183 
     184    cpu_x86_load_seg_cache(env, seg, selector, 
     185                           (selector << 4), 0xffff, flags); 
     186#else 
    178187    cpu_x86_load_seg_cache(env, seg, selector, 
    179188                           (selector << 4), 0xffff, 0); 
     189#endif 
    180190} 
    181191 
  • trunk/src/recompiler/target-i386/op.c

    r11982 r13449  
    12591259    sc->base = (selector << 4); 
    12601260#ifdef VBOX 
    1261     sc->flags = 0; /* clear attributes */ 
     1261    sc->flags = DESC_P_MASK | DESC_S_MASK | DESC_W_MASK; 
     1262    if (PARAM1 == offsetof(CPUX86State,segs[R_CS])) 
     1263        sc->flags |= DESC_CS_MASK; 
    12621264#endif 
    12631265} 

© 2008 Sun Microsystems, Inc.
ContactPrivacy policy