aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2008-05-13 18:27:16 +0000
committerbellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162>2008-05-13 18:27:16 +0000
commit044ef8eaa9848bc7d5606e9b58d043b519fd53eb (patch)
tree155a3f73ed44a785d9cad6e5c21eec7c51e5c13b
parent05ce71f15fc1978f7a2d37108ab701296353373d (diff)
i386 specific TODO
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4454 c046a42c-6fe2-441c-8c8c-71466251a162
-rw-r--r--target-i386/TODO29
1 files changed, 29 insertions, 0 deletions
diff --git a/target-i386/TODO b/target-i386/TODO
new file mode 100644
index 0000000000..1bca8ba88e
--- /dev/null
+++ b/target-i386/TODO
@@ -0,0 +1,29 @@
+Correctness issues:
+
+- rework eflags optimization (will be a consequence of TCG port)
+- SVM: rework the implementation: simplify code, move most intercept
+ tests as dynamic, correct segment access, verify exception safety,
+ remove most of the added CPU state.
+- arpl eflags computation is invalid
+- x86_64: fxsave/fxrestore intel/amd differences
+- x86_64: lcall/ljmp intel/amd differences ?
+- x86_64: cmpxchgl intel/amd differences ?
+- x86_64: cmovl bug intel/amd differences ?
+- x86: monitor invalid
+- better code fetch (different exception handling + CS.limit support)
+- user/kernel PUSHL/POPL in helper.c
+- add missing cpuid tests
+- return UD exception if LOCK prefix incorrectly used
+- test ldt limit < 7 ?
+- fix some 16 bit sp push/pop overflow (pusha/popa, lcall lret)
+- full support of segment limit/rights
+- full x87 exception support
+- improve x87 bit exactness (use bochs code ?)
+
+Optimizations/Features:
+
+- finish TCG port
+- evaluate x87 stack pointer statically
+- find a way to avoid translating several time the same TB if CR0.TS
+ is set or not.
+- move kqemu support outside target-i386.