Paul Brook wrote: > On Thursday 19 April 2007 22:30, Jan Kiszka wrote: >> + registers[_GP_REGS+2] = env->segs[R_CS].selector; >> + registers[_GP_REGS+3] = env->segs[R_SS].selector; >> + registers[_GP_REGS+4] = env->segs[R_DS].selector; >> + registers[_GP_REGS+5] = env->segs[R_ES].selector; >> + registers[_GP_REGS+6] = env->segs[R_FS].selector; >> + registers[_GP_REGS+7] = env->segs[R_GS].selector; >> >> + registers[_FPCTL_OFS] = env->fpuc; >> + registers[_FPCTL_OFS+1] = fpus; >> + registers[_FPCTL_OFS+2] = 0; /* XXX: convert tags */ >> + registers[_FPCTL_OFS+3] = 0; /* fiseg */ >> + registers[_FPCTL_OFS+4] = 0; /* fioff */ >> + registers[_FPCTL_OFS+5] = 0; /* foseg */ >> + registers[_FPCTL_OFS+6] = 0; /* fooff */ >> + registers[_FPCTL_OFS+7] = 0; /* fop */ >> + for (i = _FPCTL_OFS; i < _FPCTL_OFS+8; i++) >> tswapls(®isters[i]); > > These are all wrong on x86-64. > Then what about pointing me to the correct information to fix this, hmm? I browsed gdb code and docs but found no obvious packet format description. Constructive help is welcome, likely I'm just blind. Jan