Eliminate some uses of T2
[qemu/malc.git] / TODO
blobfcf8baa770762f40ed5aace0ed8eabd89e804ecf
1 short term:
2 ----------
3 - x86_64: fxsave/fxrestore bugs
4 - x86_64: lcall/ljmp intel/amd differences
5 - x86_64: cmpxchgl
6 - x86_64: cmovl bug
7 - x86: monitor invalid 
8 - cycle counter for all archs
9 - cpu_interrupt() win32/SMP fix
10 - support variable tsc freq
11 - USB host async
12 - IDE async
13 - debug option in 'configure' script + disable -fomit-frame-pointer
14 - Precise VGA timings for old games/demos (malc patch)
15 - merge PIC spurious interrupt patch
16 - warning for OS/2: must not use 128 MB memory (merge bochs cmos patch ?)
17 - config file (at least for windows/Mac OS X)
18 - update doc: PCI infos.
19 - basic VGA optimizations
20 - better code fetch (different exception handling + CS.limit support)
21 - do not resize vga if invalid size.
22 - avoid looping if only exceptions
23 - TLB code protection support for PPC
24 - see openMosix Doc
25 - disable SMC handling for ARM/SPARC/PPC (not finished)
26 - see undefined flags for BTx insn
27 - user/kernel PUSHL/POPL in helper.c
28 - keyboard output buffer filling timing emulation
29 - return UD exception if LOCK prefix incorrectly used
30 - test ldt limit < 7 ?
31 - tests for each target CPU
32 - fix CCOP optimisation
33 - fix all remaining thread lock issues (must put TBs in a specific invalid
34   state, find a solution for tb_flush()).
36 ppc specific:
37 ------------
38 - TLB invalidate not needed if msr_pr changes
39 - enable shift optimizations ?
41 linux-user specific:
42 -------------------
43 - add IPC syscalls
44 - handle rare page fault cases (in particular if page fault in helpers or
45   in syscall emulation code).
46 - more syscalls (in particular all 64 bit ones, IPCs, fix 64 bit
47   issues, fix 16 bit uid issues)
48 - use page_unprotect_range in every suitable syscall to handle all
49   cases of self modifying code.
50 - fix thread stack freeing (use kernel 2.5.x CLONE_CHILD_CLEARTID)
51 - use kernel traps for unaligned accesses on ARM ?
54 lower priority:
55 --------------
56 - int15 ah=86: use better timing
57 - suppress shift_mem ops
58 - fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret)
59 - optimize FPU operations (evaluate x87 stack pointer statically)
60 - use -msoft-float on ARM