qemu/target/i386/hax-all.c
/* The sregs has been synced with HAX kernel already before this call */
The sregs has been synced with HAX kernel already before this call
The sregs has been synced with HAX kernel already before this call
static int hax_get_segments(CPUArchState *env, struct vcpu_state_t *sregs)
{
    get_seg(&env->segs[R_CS], &sregs->_cs);
    get_seg(&env->segs[R_DS], &sregs->_ds);
    get_seg(&env->segs[R_ES], &sregs->_es);
    get_seg(&env->segs[R_FS], &sregs->_fs);
    get_seg(&env->segs[R_GS], &sregs->_gs);
    get_seg(&env->segs[R_SS], &sregs->_ss);
    get_seg(&env->tr, &sregs->_tr);
    get_seg(&env->ldt, &sregs->_ldt);
    env->idt.limit = sregs->_idt.limit;
    env->idt.base = sregs->_idt.base;
    env->gdt.limit = sregs->_gdt.limit;
    env->gdt.base = sregs->_gdt.base;
    return 0;
}
static int hax_get_segments ( CPUArchState * env , struct vcpu_state_t * sregs ) { get_seg ( & env -> segs [ R_CS ] , & sregs -> _cs ) ; get_seg ( & env -> segs [ R_DS ] , & sregs -> _ds ) ; get_seg ( & env -> segs [ R_ES ] , & sregs -> _es ) ; get_seg ( & env -> segs [ R_FS ] , & sregs -> _fs ) ; get_seg ( & env -> segs [ R_GS ] , & sregs -> _gs ) ; get_seg ( & env -> segs [ R_SS ] , & sregs -> _ss ) ; get_seg ( & env -> tr , & sregs -> _tr ) ; get_seg ( & env -> ldt , & sregs -> _ldt ) ; env -> idt . limit = sregs -> _idt . limit ; env -> idt . base = sregs -> _idt . base ; env -> gdt . limit = sregs -> _gdt . limit ; env -> gdt . base = sregs -> _gdt . base ; return 0 ; }
The sregs has been synced with HAX kernel already before this call
The sregs has been synced with HAX kernel already before this call