diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2003-05-28 00:27:57 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2003-05-28 00:27:57 +0000 |
commit | df0f11a03b5bda2a16b8fd9530b1feeef93da8e5 (patch) | |
tree | 7e6f003799bcdfa3abbc7a56e9da18fd57678df8 /TODO | |
parent | 2d92f0b8f006fdd4ed2a2fdd6ada54761fe3ea56 (diff) |
updatev0.2.0
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@197 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'TODO')
-rw-r--r-- | TODO | 31 |
1 files changed, 19 insertions, 12 deletions
@@ -1,15 +1,22 @@ -- fix gcc 2.96 compile bug -- fix thread locks -- optimize translated cache chaining (DLL PLT-like system) + +- fix iret/lret/fpush not before mem load restarting +- fix all remaining thread lock issues (must put TBs in a specific invalid + state, find a solution for tb_flush()). +- handle fp87 state in signals +- add gcc 2.96 test configure (some gcc3 flags are needed) +- optimize FPU operations (evaluate x87 stack pointer statically) +- add IPC syscalls +- submit a patch to fix DOSEMU coopthreads + +lower priority: +-------------- +- handle rare page fault cases (in particular if page fault in heplers or + in syscall emulation code). - fix thread stack freeing (use kernel 2.5.x CLONE_CHILD_CLEARTID) -- fix x86 stack allocation -- fix iret/lret restarting - more syscalls (in particular all 64 bit ones, IPCs, fix 64 bit issues, fix 16 bit uid issues) -- finish signal handing (fp87 state, more siginfo conversions) -- fix FPU exceptions (in particular: gen_op_fpush not before mem load) -- handle self-modifying code (track mmap and mark all pages containing - translated code as readonly. use a custom signal handler to flush - parts of the translation cache if write access to a readonly page - containing translated code). -- use gcc to compile to static code +- use page_unprotect_range in every suitable syscall to handle all + cases of self modifying code. +- use gcc as a backend to generate better code (easy to do by using + op-i386.c operations as local inline functions). +- add SSE2/MMX operations |