1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114
|
0.8:
----
- Platforms:
* PSP - build it (Tassilo), test (Daniel)
- mailing list announcements (html email?)
- manual (Tas)
- Website:
* platform matrix (wie im Handbuch oder Daniels Disse)
- fix for NDS:
* ARM:
- callback_plain retval wrong (not only platform)
* THUMB:
- ellipsis (might be test itself, not respecting fixed part of args)
- retvals of call_suite (maybe all retvals, in general)
- callback_plain retval
- callf
build-system:
-------------
- cmake mac os x universal binary builds with *.S does not build
multiple architectures
portasm:
--------
- add solaris support for x64
dyncall:
--------
- port ppc64
- support for return values: aggregate return values
- support for argument values: structures, half-precision, vector types, long double
- varargs for mips (might exist, but test all ABIs)
- consider automatic type-promotion for arguments passed through DC_CALL_C_ELLIPSIS_VARARGS;
this would make it easier to just pass arguments instead of having to know about the C
type promotions
- add dcArgF, so CallF without the call; this would allow to use sig for building stack, only
and is more flexible; bindings would benefit if statically typed as it decouples call from
convenient stack building
dynload:
--------
- bug: test/nm crashes on qemu mips linux o32 debian etch
- test/resolve_self crashes/asserts on windows and bsds
- rename SymsInit to InitSyms and similar for cleanup function to reflect naming
in dyncall
- get rid of Dl_info and friends (_GNU_SOURCE) in dynload/dynload_syms_elf.c
for implementation of dlSymsNameFromValue(..)
- check if PSP can support dynload (missing elf.h, dlfcn.h, etc.); fixup readme if successful
dyncallback:
------------
- callback_plain's return value not correct anymore on NDS (maybe just broken testcode?)
- add MIPS callbacks (thunks seem to be working, but maybe buggy)
- finish PPC32 callbacks (see bugs section, below)
urgent issues:
--------------
- finish SPARC/SPARC64 calling conventions in doc's callconv-appendix !!!
- finish dyncallback doc, finish dynload doc, add both to troff doc
- Haiku/gmake build doesn't build dynload due to the fact, that elf.h is not found
on default installations (one has to install the system headers)
* add to doc
- Solaris/gmake build doesn't build dynload and tests anymore (maybe not even dyncallback)
- test arm32/ATPCS/THUMB (and then change Status in doc Appendix)
- look over code and fix TODO or @@@ marks
- consider moving bindings into dyncall/ such that releases include it in the future
* or, alternatively, pack them separately and put them on the website, for releases
- add note to documentation, that bindings are svn-only ATM
- add pcc-support to doc
- rename configure to configure.sh (so we would have .sh, .rc and .bat in the future)
nice to have:
-------------
- enhance manual with a couple of examples (e.g. calling MessageBoxA on windows, etc.)
- update: microsoft visual c++ build files - integrate all test suites in solution file
- maybe rename DC__Arch_PowerPC to ...PPC32 for coherency reasons (...PPC64)?
- consistency: on x64 platforms: make both ABIs available ('win64','sysv') for all x64 OS ports
- microsoft build enhancement: autodetect assembly via C preprocessor (like with .S gcc files)
- test/thunk: some platforms do not allow for allocation of executable code on heap and stack --
currently this test will crash, maybe we should collect information which platforms allow and which not.
bugs:
-----
- callbacks on ppc32 only work on apple (osx abi)
- vararg function calls don't work for ARM THUMB mode (Daniel's new interface for modesetting for varag
args should be used); adapt test/ellipsis and/or retest
missing implementations (descending priority):
----------------------------------------------
- ppc64
- itanium
- 68k, 88k, 6502, etc.
- alpha
- superh
- cell
- blackfin
- z80
- hppa
- vax
- atmel avr
- propeller
- amd29k
- arc
- seaforth
available hardware for outstanding ports:
-----------------------------------------
- 68k: Tassilo's old Palm m100 (MC68EZ328 (16MHz))
- sh4: Tassilo's Dreamcast
- mips R5900: Daniel's PS2
- mips (?): Daniel's router
- sigmatel stmp3550b: Daniel's iPod Nano
|