bellard | 728c9fd | 2004-01-05 00:08:14 +0000 | [diff] [blame] | 1 | short term: |
| 2 | ---------- |
bellard | 47378eb | 2006-07-04 16:33:33 +0000 | [diff] [blame] | 3 | - cycle counter for all archs |
bellard | 2023a2c | 2005-11-23 21:03:04 +0000 | [diff] [blame] | 4 | - cpu_interrupt() win32/SMP fix |
bellard | 47378eb | 2006-07-04 16:33:33 +0000 | [diff] [blame] | 5 | - support variable tsc freq |
bellard | 2023a2c | 2005-11-23 21:03:04 +0000 | [diff] [blame] | 6 | - USB host async |
| 7 | - IDE async |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 8 | - debug option in 'configure' script + disable -fomit-frame-pointer |
bellard | 53360e0 | 2004-11-14 18:58:40 +0000 | [diff] [blame] | 9 | - Precise VGA timings for old games/demos (malc patch) |
| 10 | - merge PIC spurious interrupt patch |
bellard | 6df700c | 2005-02-22 19:43:42 +0000 | [diff] [blame] | 11 | - warning for OS/2: must not use 128 MB memory (merge bochs cmos patch ?) |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 12 | - config file (at least for windows/Mac OS X) |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 13 | - update doc: PCI infos. |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 14 | - basic VGA optimizations |
bellard | 52c00a5 | 2004-04-25 21:27:03 +0000 | [diff] [blame] | 15 | - better code fetch (different exception handling + CS.limit support) |
| 16 | - do not resize vga if invalid size. |
| 17 | - avoid looping if only exceptions |
bellard | 2be3bc0 | 2004-01-18 23:14:25 +0000 | [diff] [blame] | 18 | - TLB code protection support for PPC |
ths | 5fafdf2 | 2007-09-16 21:08:06 +0000 | [diff] [blame] | 19 | - see openMosix Doc |
bellard | 52c00a5 | 2004-04-25 21:27:03 +0000 | [diff] [blame] | 20 | - disable SMC handling for ARM/SPARC/PPC (not finished) |
bellard | 2be3bc0 | 2004-01-18 23:14:25 +0000 | [diff] [blame] | 21 | - see undefined flags for BTx insn |
bellard | 82c7e2a | 2004-01-04 16:10:33 +0000 | [diff] [blame] | 22 | - user/kernel PUSHL/POPL in helper.c |
| 23 | - keyboard output buffer filling timing emulation |
bellard | 3d4b4c0 | 2004-01-25 15:22:15 +0000 | [diff] [blame] | 24 | - return UD exception if LOCK prefix incorrectly used |
bellard | 82c7e2a | 2004-01-04 16:10:33 +0000 | [diff] [blame] | 25 | - test ldt limit < 7 ? |
bellard | 285dc33 | 2003-10-27 23:58:04 +0000 | [diff] [blame] | 26 | - tests for each target CPU |
bellard | 411bffc | 2003-06-09 15:38:23 +0000 | [diff] [blame] | 27 | - fix CCOP optimisation |
bellard | df0f11a | 2003-05-28 00:27:57 +0000 | [diff] [blame] | 28 | - fix all remaining thread lock issues (must put TBs in a specific invalid |
| 29 | state, find a solution for tb_flush()). |
bellard | df0f11a | 2003-05-28 00:27:57 +0000 | [diff] [blame] | 30 | |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 31 | ppc specific: |
| 32 | ------------ |
| 33 | - TLB invalidate not needed if msr_pr changes |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 34 | - enable shift optimizations ? |
| 35 | |
bellard | 2023a2c | 2005-11-23 21:03:04 +0000 | [diff] [blame] | 36 | linux-user specific: |
| 37 | ------------------- |
bellard | 285dc33 | 2003-10-27 23:58:04 +0000 | [diff] [blame] | 38 | - add IPC syscalls |
bellard | 8f46820 | 2004-11-07 17:44:42 +0000 | [diff] [blame] | 39 | - handle rare page fault cases (in particular if page fault in helpers or |
bellard | df0f11a | 2003-05-28 00:27:57 +0000 | [diff] [blame] | 40 | in syscall emulation code). |
bellard | b03c60f | 2003-03-23 17:19:56 +0000 | [diff] [blame] | 41 | - more syscalls (in particular all 64 bit ones, IPCs, fix 64 bit |
| 42 | issues, fix 16 bit uid issues) |
bellard | df0f11a | 2003-05-28 00:27:57 +0000 | [diff] [blame] | 43 | - use page_unprotect_range in every suitable syscall to handle all |
| 44 | cases of self modifying code. |
bellard | 2023a2c | 2005-11-23 21:03:04 +0000 | [diff] [blame] | 45 | - fix thread stack freeing (use kernel 2.5.x CLONE_CHILD_CLEARTID) |
| 46 | - use kernel traps for unaligned accesses on ARM ? |
| 47 | |
| 48 | |
| 49 | lower priority: |
| 50 | -------------- |
| 51 | - int15 ah=86: use better timing |
| 52 | - suppress shift_mem ops |
| 53 | - fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret) |
| 54 | - optimize FPU operations (evaluate x87 stack pointer statically) |
| 55 | - use -msoft-float on ARM |