Subversion Repositories Kolibri OS

Rev

Rev 6460 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed

  1. Siemargl port comments
  2.  
  3. Used github branch https://github.com/TinyCC/tinycc
  4. It have a vesion 0.9.26 with heads up to 0.9.27 - see ChangeLog
  5.  
  6. Kolibri version specifics
  7. errata/changelog - moved to trunk/readme.txt
  8.  
  9. -added TCC_TARGET_MEOS as needed
  10. -leading_underscore by default is 0 (can use -f[no-]leading-underscore),
  11. otherwise (error) underscoring all symbols, not only cdecl
  12. -added message in tccmeos.c about missed symbols when linking KOS executable
  13. -start.o added automatically, when -nostdlib not used
  14. -to use standard ktcc lib must add -lck at commandline
  15. -default search paths are ./include ./lib from executable (under KOS need to
  16.  use -Bpath_to_ktcc and put start.o in current dir)
  17. -when config.h is ready, compiler can be easy builded as [kos32-]gcc tcc.c libtcc.c
  18.  see also makefile.kos32
  19. -impossible using with mingw-gcc compiled lib, incompatible library format:
  20.  .o is PE-format from gcc but ELF from tcc, may be linux-gcc does it ok
  21. -__fastcall incompatible with other compilers. now stack freed by caller.
  22.  must fix i386-gen.c@490,572 (fixed in other branch https://github.com/mirror/tinycc)
  23.  
  24.  
  25. -using __attribute__((packed)) see test82. need naming struct twice as in kos32sys1.h
  26. -using __attribute__ ((alias xxx)) restricted only for non "static inline" functions
  27. -erroneous or "non TCC" member using in nested structs or unions can lead to compiler internal error
  28. -bench timing coarse (0s or 1s), no usec in newlib gettimeofday. OK
  29.  
  30. Tests status:
  31. asmtest +
  32. abitest not tested (embedding compiler)
  33. libtcctest not tested (embedding compiler)
  34. boundtest ----- alloca removed from tcc  libtcc.c:945 (really not worked)
  35. tcctest most test ok, some problems with long double
  36. vla_test.c +
  37.  
  38. pp/* +  (minor comment error in 13.s)
  39.  
  40. tests2/* : see below
  41.  
  42. // errata
  43. skippin' tests
  44. test76 fail dollars in identifiers
  45. test34 fail (array assignment not supported)
  46. test73 fail compile (no stdint.h), printfloat, ARM specific
  47. test46 no stdin - removed funtionality read from console, but file ops works
  48.  
  49.  
  50.