History

updated

bellard committed 24 years ago

Commit 5370be41 parent f946dff1 file · +10 −7Browse files

Unified · Split

TODO+10−7
@@ -2,28 +2,28 @@ TODO list: · 1 unmodified line
2 2
3- add separate symbol/offset handling (= fix some constant3- add separate symbol/offset handling (= fix some constant
4 initialisation bugs)4 initialisation bugs)
5- setjmp is not supported properly in bound checking.
5- add 'CType' structure to optimize type handling (= compile even faster)6- add 'CType' structure to optimize type handling (= compile even faster)
6- suppress unneeded hash table for Symbols (= compile even faster)7- suppress unneeded hash table for Symbols (= compile even faster)
7- 8- add checks for multiple including of same file (= compile even faster)
8- better local variables handling (needed for other targets)9- better local variables handling (needed for other targets)
9- setjmp is not supported properly in bound checking.
10- To check: bound checking and float/long long/struct copy code
11- To fix: 'sizeof' generate code if too complex expression is given.
12- fix bound check code with '&' on local variables (currently done10- fix bound check code with '&' on local variables (currently done
13 only for local arrays).11 only for local arrays).
12- To check: bound checking and float/long long/struct copy code
13- To fix: 'sizeof' generate code if too complex expression is given.
14- free all allocated data and use longjmp for errors (useful for libtcc use)14- free all allocated data and use longjmp for errors (useful for libtcc use)
15 15
16Not critical:16Not critical:
17 17
18- C99: add variable size arrays18- C99: add variable size arrays
19- C99: add complex types19- C99: add complex types
20- add PowerPC or ARM code generator and improve codegen for RISC (need
21 to suppress VT_LOCAL and use a base register instead).
22- interactive mode / integrated debugger
23- C99: fix multiple compound literals inits in blocks (ISOC9920- C99: fix multiple compound literals inits in blocks (ISOC99
24 normative example - only relevant when using gotos! -> must add21 normative example - only relevant when using gotos! -> must add
25 boolean variable to tell if compound literal was already22 boolean variable to tell if compound literal was already
26 initialized).23 initialized).
24- add PowerPC or ARM code generator and improve codegen for RISC (need
25 to suppress VT_LOCAL and use a base register instead).
26- interactive mode / integrated debugger
27- fix preprocessor symbol redefinition27- fix preprocessor symbol redefinition
28- better constant opt (&&, ||, ?:)28- better constant opt (&&, ||, ?:)
29- add portable byte code generator and interpreter for other29- add portable byte code generator and interpreter for other
@@ -33,3 +33,6 @@ Not critical: · 3 unmodified lines
33 al. check GetModuleHandle for dlls. check exception code (exception33 al. check GetModuleHandle for dlls. check exception code (exception
34 filter func).34 filter func).
35- handle void (__attribute__() *ptr)()35- handle void (__attribute__() *ptr)()
36- handle '? x, y : z' in reversed function arguments or unsized
37 variable initialization (',' is considered incorrectly as separator
38 in preparser).