history.hss 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275
  1. [Main]
  2. Title=History
  3. [Top]
  4. <B>Note:</B> Click <A HREF="$$INFOLINK(history)">here</A> for the history of the library, or <A HREF="$$INFOLINK(ide/history)">here</A> for the history of the IDE.
  5. <BR><BR>
  6. <B>October ??, 2007: TIGCC v0.96 Beta 9, ld-tigcc v1.07, Library v2.7, IDE v2.94</B>
  7. <UL>
  8. <LI>Added: A new installer for the Win32 release, based on
  9. <A HREF="http://nsis.sourceforge.net">NSIS</A>.</LI>
  10. <LI>Updated: Many documentation and library updates, see the
  11. <A HREF="$$INFOLINK(history)">TIGCCLIB history</A> for details.</LI>
  12. <LI>Added: A completely new ExePack (PPG) launcher, with an almost halved size.</LI>
  13. <LI>Added: Support for reordering of startup sections (sharing the same startup number) in the
  14. linker.</LI>
  15. <LI>Added: Support for Mlink-format relocs
  16. (<A HREF="$$INFOLINK(httigcc/advanced_mlinkrelocs)">MLINK_FORMAT_RELOCS</A>,
  17. <A HREF="$$INFOLINK(httigcc/advanced_mlinkbss)">MLINK_FORMAT_BSS</A>,
  18. <A HREF="$$INFOLINK(httigcc/advanced_mlinkrom)">MLINK_FORMAT_ROM_CALLS</A>,
  19. <A HREF="$$INFOLINK(httigcc/advanced_mlinkdata)">MLINK_FORMAT_DATA_VAR</A>).</LI>
  20. <LI>Added: Support for debugging information in DWARF 2 format (to be used with a GDB-enabled
  21. TiEmu), including some toolchain bugfixes required to support this feature.</LI>
  22. <LI>Added: Support for the new _nostub comment specification 1.01 and its new
  23. <A HREF="$$INFOLINK(httigcc/comment_authors)">COMMENT_AUTHORS</A> entry.</LI>
  24. <LI>Updated: Patched GCC 4.1.2 (prerelease) and GNU as 2.16.1 with the TIGCC patch.</LI>
  25. <LI>Bugfix: References in assembly code with an explicitly-coded size are now marked unoptimizable
  26. in order to make the linker honor the explicit size as well, not just the assembler.</LI>
  27. <LI>Bugfix: <CODE>tprbuilder</CODE> doesn't crash on long <CODE>tigcc.exe</CODE> command lines
  28. under Windows 9x/Me anymore.</LI>
  29. <LI>Bugfix: <CODE>ld-tigcc</CODE> doesn't try to range-cut in files compiled without range-cutting
  30. support (in programs containing files compiled both with and without range-cutting support)
  31. anymore.</LI>
  32. <LI>Bugfix: Removing unused sections in <CODE>ld-tigcc</CODE> now really removes <I>all</I> unused
  33. sections.</LI>
  34. <LI>Bugfix: Uninitialized static or global variables are now always emitted to the expected section
  35. by GCC.</LI>
  36. <LI>Updated: Bugfixes and improvements to external data variable support.</LI>
  37. <LI>Bugfix: Fixed a segfault during constant-merging in <CODE>ld-tigcc</CODE>.</LI>
  38. <LI>Bugfix: Fixed invalid kernel ROM_CALL or RAM_CALL tables emitted by <CODE>ld-tigcc</CODE> when
  39. unused section removal optimized all ROM or RAM_CALLs away.</LI>
  40. <LI>Bugfix: <CODE>A68k</CODE> doesn't crash on EQUs doing arithmetic with other EQUs which do
  41. arithmetic with undefined symbols anymore, this invalid code now gives a proper error message.</LI>
  42. <LI>Bugfix: Fixed <CODE>-v</CODE> and <CODE>-v0</CODE> being limited to 255 characters in the
  43. Windows command-line compiler.</LI>
  44. <LI>Added: The command-line compiler now supports <CODE>-isystem</CODE> properly.</LI>
  45. <LI>Bugfix: Fixed compilation problems on *BSD and Mac OS X.</LI>
  46. <LI>Added: The standalone version of <CODE>ld-tigcc</CODE> supports a new
  47. <CODE>--outputbin-main-only</CODE> switch to be used by KTIGCC.</LI>
  48. <LI>Updated: ExePack compression support is now Free Software.</LI>
  49. <LI>Updated: On Windows, <CODE>MSVCRT.DLL</CODE> is now required. This DLL comes with all Windows
  50. versions since Windows 95 OSR 2. For the original Windows 95, it is usually installed by Internet
  51. Explorer or Microsoft Office.</LI>
  52. <LI>Bugfix: Fixed *nix install script not to attempt symlinking <CODE>os.h</CODE> to
  53. <CODE>OS.h</CODE> on case-insensitive file systems.</LI>
  54. <LI>Bugfix: Fixed external data variable support for compressed programs in the *nix command-line
  55. compiler.</LI>
  56. <LI>Bugfix: Fixed multiple uses of -Wa or -WA in the *nix command-line compiler.</LI>
  57. <LI>Updated: The IDE now supports TiEmu (20061030 or later) instead of VTI for debugging/testing.</LI>
  58. </UL>
  59. <B>October 24, 2004: TIGCC v0.95, ld-tigcc v1.06, Library v2.6, IDE v2.92</B>
  60. <UL>
  61. <LI>Added: An entirely new <A HREF="$$INFOLINK(ld)">linker</A>, as a basis for
  62. all other improvements (see <A HREF="$$INFOLINK(httigcc/advanced)">Advanced Options of TIGCC</A>).</LI>
  63. <LI>Added: Support for dynamic BSS sections in nostub mode.</LI>
  64. <LI>Added: Linker-side <A HREF="$$INFOLINK(ld/bincode)">code optimization</A>.</LI>
  65. <LI>Added: Support for data variables.</LI>
  66. <LI>Added: Support for <A HREF="$$INFOLINK(gnuexts/SEC85_constructor)">contructors
  67. and destructors</A>.</LI>
  68. <LI>Added: Experimental optional Fargo II support.</LI>
  69. <LI>Updated: Patched GCC 3.3.1 with the TIGCC patch.</LI>
  70. <LI>Updated: Updated PPG launcher created by the
  71. <A HREF="http://tict.ticalc.org/">TI-Chess Team</A>.</LI>
  72. <LI>Added: Basic TI-89 Titanium support.</LI>
  73. </UL>
  74. <B>January 24, 2003: TIGCC v0.94 SP4, Obj2TI v1.01e, Library v2.5 SP4, IDE v2.91</B>
  75. <UL>
  76. <LI>Bugfix: Fixed <A HREF="$$LINK(error.h/ER_throw)">ER_throw</A> bug with
  77. 4-digit error numbers.</LI>
  78. <LI>Bugfix: Fixed bug in
  79. <CODE><A HREF="$$INFOLINK(htretval/retval)">ENABLE_ERROR_RETURN</A></CODE>
  80. with <CODE><A HREF="$$INFOLINK(httigcc/minams)">MIN_AMS</A></CODE>
  81. values of 200 or higher.</LI>
  82. <LI>Bugfix: Removed the rejection of a minimum AMS version of 2.07.</LI>
  83. </UL>
  84. <B>January 13, 2003: TIGCC v0.94 SP3, Obj2TI v1.01e, Library v2.5 SP3, IDE v2.91</B>
  85. <UL>
  86. <LI>Bugfix: Incorporated a fix for <A HREF="$$LINK(stdio.h/fclose)">fclose</A>.</LI>
  87. </UL>
  88. <B>January 12, 2003: TIGCC v0.94 SP2, Obj2TI v1.01e, Library v2.5 SP2, IDE v2.91</B>
  89. <UL>
  90. <LI>Bugfix: Important bugfixes for <A HREF="$$LINK(stdio.h/fopen)">fopen</A>,
  91. <A HREF="$$LINK(stdio.h/fread)">fread</A> and
  92. <A HREF="$$LINK(stdio.h/fwrite)">fwrite</A>.</LI>
  93. <LI>Bugfix: Changed <A HREF="$$LINK(default.h/import_binary)">import_binary</A> to
  94. export the symbol, and changed the IDE to make it work with it.</LI>
  95. </UL>
  96. <B>December 30, 2002: TIGCC v0.94 SP1, Obj2TI v1.01e, Library v2.5 SP1, IDE v2.91</B>
  97. <UL>
  98. <LI>Bugfix: Fixed <CODE><A HREF="$$INFOLINK(httigcc/advanced_fileinuse)">SET_FILE_IN_USE_BIT</A></CODE>.</LI>
  99. <LI>Bugfix: Fixed the prototype of <A HREF="$$LINK(rsa.h/MD5Update)">MD5Update</A>.</LI>
  100. </UL>
  101. <B>December 21, 2002: TIGCC v0.94, Obj2TI v1.01e, Library v2.5, IDE v2.91</B>
  102. <UL>
  103. <LI>Updated: Patched GCC 3.2.1 with the TIGCC patch, with a lot of modifications.</LI>
  104. <LI>Updated: Greatly changed the internal structure of the library.</LI>
  105. <LI>Added: Applied a patch for argument passing through registers.</LI>
  106. <LI>Added: Implemented <A HREF="$$INFOLINK(httigcc/advanced_flinerom)">F-Line ROM Calls</A>.</LI>
  107. <LI>Added: Implemented support for PreOS libraries in <CODE>obj2ti</CODE>.</LI>
  108. <LI>Bugfix: Repaired the <B>'-freg-relative-<I>reg</I>'</B> option.</LI>
  109. <LI>Updated: Created an option to ignore system folders in the setup program.</LI>
  110. <LI>Added: Finally wrote a program to update the version numbers in all places.</LI>
  111. <LI>Updated: Enhanced the help file tools to generate the header files as well.</LI>
  112. <LI>Added: Added tools to edit the help system files.</LI>
  113. <LI>Added: Implemented HTML checking for help system files.</LI>
  114. <LI>Added: Added a switch to <CODE>tigcc</CODE> to create archives.</LI>
  115. <LI>Updated: Made <CODE>tigcc</CODE> look for archives in the <CODE>'Lib'</CODE> subfolder of the installation.</LI>
  116. <LI>Updated: Repaired some bugs to support debugging switches like <B>'-ggdb'</B>.</LI>
  117. <LI>Updated: Recompiled all programs under <A HREF="http://www.mingw.org/">MinGW32</A>, thereby removing the need to use <A HREF="http://www.cygwin.com/">Cygwin</A>.</LI>
  118. <LI>Updated: Compressed setup program using <A HREF="http://upx.sourceforge.net/">UPX</A>.</LI>
  119. <LI>Added: Added "See Also" links to the help system.</LI>
  120. <LI>Added: Extracted all examples from the documentation, with a lot of help from <A HREF="mailto:joelt49@yahoo.com">Joel Thompson</A>.</LI>
  121. <LI>Added: Added support for <A HREF="$$INFOLINK(htdll)">nostub libraries</A>.</LI>
  122. <LI>Added: Added missing <CODE><A HREF="$$INFOLINK(gnuexts/SEC72)">long long</A></CODE> operator support.</LI>
  123. </UL>
  124. <B>February 3, 2002: TIGCC v0.93, Obj2TI v1.01, Library v2.41, IDE v2.9</B>
  125. <UL>
  126. <LI>Updated: A lot of updates in the IDE.</LI>
  127. <LI>Updated: Completely redesigned the documentation.</LI>
  128. <LI>Updated: <A HREF="mailto:mig53@yahoo.com">Peter J. Rowe</A> corrected grammar and spelling mistakes in a large part of the doc.</LI>
  129. <LI>Added: Allowed the use of paths for files compiled with <CODE>tigcc</CODE>.</LI>
  130. <LI>Bugfix: Fixed a problem with linking multiple A68k files.</LI>
  131. <LI>Added: Added the <B>'-WA,...'</B> option to pass switches to <CODE>a68k</CODE>.</LI>
  132. <LI>Bugfix: Cleaned up the whole patch code, including the support for <A HREF="$$LINK(stdlib.h/exit)">exit</A> and <A HREF="$$LINK(stdlib.h/atexit)">atexit</A>.
  133. Fixes were developed by Patrick Pélissier, Kevin Kofler, and Stephan Effelsberg.</LI>
  134. <LI>Bugfix: Used an updated version of the ExePack launcher by Thomas Nussbaumer, with fixes contributed by Olivier Armand and Kevin Kofler.</LI>
  135. <LI>Bugfix: Small fixes in the GNU and A68k assemblers.</LI>
  136. <LI>Updated: Changed the setup program to only overwrite the files that were really changed.</LI>
  137. </UL>
  138. <B>November 25, 2001: TIGCC v0.92 SP2, Obj2TI v1.01, Library v2.4 SP1, IDE v2.8 SP4</B>
  139. <UL>
  140. <LI>Updated: Applied the TIGCC patch to GCC 3.0.2.</LI>
  141. <LI>Bugfix: Fixed a bug which made uninitialized global variables slower and larger.</LI>
  142. <LI>Added: Automated the setup creation process to shorten release cycles.</LI>
  143. <LI>Updated: Detected Windows NT in setup.</LI>
  144. </UL>
  145. <B>November 9, 2001: TIGCC v0.92 SP1, Obj2TI v1.01, Library v2.4 SP1, IDE v2.8 SP3</B>
  146. <UL>
  147. <LI>Bugfix: Fixed the problem in obj2ti with uninitialized global variables in kernel mode.</LI>
  148. <LI>Bugfix: Fixed the A68k integration problem (in objcopy) which prevented RAM calls from being used in 16-bit addressing mode.</LI>
  149. <LI>Bugfix: Fixed the IDE bug which made closing large files really slow.</LI>
  150. <LI>Added: In the IDE, it is now possible to switch between files quickly using <CODE>Ctrl+Tab</CODE>.</LI>
  151. <LI>Updated: The program decompressor is stored as an object file now, instead of an assembly file; this removes the need to run the assembler for compression.</LI>
  152. <LI>Updated: Greatly updated the setup program to prevent legal problems.</LI>
  153. </UL>
  154. <B>September 29, 2001: TIGCC v0.92, Obj2TI v1.0, Library v2.4 SP1, IDE v2.8 SP2</B>
  155. <UL>
  156. <LI>Updated: Applied the TIGCC patch to GCC 3.0, which introduces some optimizations and more warnings.</LI>
  157. <LI>Updated: Replaced Xavier's linker with new <CODE>obj2ti</CODE> by <A HREF="mailto:Julien@tigcc.ticalc.org">Julien Muchembled</A>.</LI>
  158. <LI>Added: Added an AmigaOS to COFF converter for A68k programs. This allows for seamless A68k integration in TIGCC.</LI>
  159. <LI>Updated: Included new 32-bit version of A68k by <A HREF="mailto:ghk.kofler@gmx.net">Kevin Kofler</A>.</LI>
  160. <LI>Updated: Implemented floating point constant folding. The floating point system can now be used the same way as on any other machine.</LI>
  161. <LI>Added: The <B>'-Wl,...'</B> and <B>'-Wa,...'</B> options are now available in the command line compiler. This means that you can pass options to the GNU assembler and GNU linker.</LI>
  162. </UL>
  163. <B>May 1, 2001: TIGCC v0.91 SP1, Link v1.2, Library v2.4 SP1, IDE v2.8 SP1</B>
  164. <UL>
  165. <LI>Bugfix: Kernel support is fixed.</LI>
  166. <LI>Bugfix: Support for exit and atexit is clean now. Thanks to <A HREF="mailto:Julien.Muchembled@netcourrier.com">Julien Muchembled</A> for the information.</LI>
  167. <LI>Added: A short credits list is now included in the documentation.</LI>
  168. <LI>Updated: Little maintainance updates in the IDE had to be made.</LI>
  169. <LI>Updated: A few minor bugfixes were also necessary.</LI>
  170. </UL>
  171. <B>March 24, 2001: TIGCC v0.91, Link v1.2, Library v2.4, IDE v2.8</B>
  172. <UL>
  173. <LI>Added: Support for multiple files is now stable since the GNU linker is used.</LI>
  174. <LI>Added: Archives (extension <CODE>.a</CODE>) are now supported. A file <CODE>tigcc.a</CODE> has been created, which is included automatically in all projects.</LI>
  175. <LI>Added: Important debug information is now included in the <CODE>.s</CODE> file(s) if a program is compiled with the <B>'-g'</B> switch or with the corresponding option in the IDE.</LI>
  176. <LI>Added: Support for binary values (<CODE>0b...</CODE>) has been implemented, but its use is strongly deprecated for portability reasons.</LI>
  177. <LI>Updated: Various updates in the IDE have been made.</LI>
  178. </UL>
  179. <B>December 18, 2000: TIGCC v0.9, Link v1.2, Library v2.3, IDE v2.71</B>
  180. <UL>
  181. <LI>Updated: Fixed various bugs in the compiler.</LI>
  182. <LI>Added: Implemented native floating point support.</LI>
  183. <LI>Updated: The IDE and <CODE>tigcc</CODE> now include the necessary patches automatically.</LI>
  184. <LI>Bugfix: GCC now works around the uninitialized data bug if the <B>'-mmlink'</B> switch is not used. This makes programs larger, but it is possible not to initialize data and still compile the program correctly until the bug is fixed.</LI>
  185. <LI>Added: The compiler now accepts the switches <B>'-mpcrel'</B>, <B>'-mlong'</B>, <B>'-mno-tios'</B>, and <B>'-mmlink'</B>.</LI>
  186. <LI>Updated: <CODE>tigcc</CODE> now accepts the <B>'-bsr'</B> switch for using bsr code where possible, the <B>'-pack'</B> switch for compression, and <B>'v'</B> as well as <B>'-v0'</B>.</LI>
  187. <LI>Updated: Made some additions and fixes in the IDE and the library.</LI>
  188. <LI>Updated: Changed the directory structure again, since the previous one didn't really make sense any more.</LI>
  189. </UL>
  190. <B>October 11, 2000: TIGCC v0.8, Link v1.2, Library v2.22, IDE v2.7</B>
  191. <UL>
  192. <LI>Updated: Recompiled GCC using the latest tools and sources.</LI>
  193. <LI>Updated: Included latest versions of the IDE and the Library.</LI>
  194. </UL>
  195. <B>June 26, 2000: TIGCC v0.7, Link v1.2, Library v2.0, IDE v2.6</B>
  196. <UL>
  197. <LI>Updated: The linker now supports <CODE>EXTRA_RAM_TABLE</CODE> symbols.</LI>
  198. <LI>Updated: The linker accepts a new switch: <B>'-outputbin'</B> will make it output the raw executable file as it is on the calculator. Of course this <CODE>'.bin'</CODE> file can not be transferred to the calculator.</LI>
  199. <LI>Updated: The linker will display the compiled file size even with the quiet switch <B>'-q'</B> enabled.</LI>
  200. <LI>Updated: Included library is TIGCCLIB 2.0.</LI>
  201. <LI>Added: Included TIGCC IDE by Sebastian Reichelt.</LI>
  202. <LI>Updated: The directory structure has been completely changed and is now clearer.</LI>
  203. <LI>Updated: The installation is a lot easier thanks to Sebastian Reichelt's setup program.</LI>
  204. </UL>
  205. <B>April 6, 2000: TIGCC v0.65, Link v1.1, Library v1.5</B>
  206. <UL>
  207. <LI>Bugfix: sometimes some weird characters were appended to the file name and it wasn't compiled.</LI>
  208. <LI>Updated: TIGCCLIB is now version 1.5.</LI>
  209. </UL>
  210. <B>Februar 5, 2000: TIGCC v0.6, Link v1.1, Library v1.1</B>
  211. <UL>
  212. <LI>Added: The library tigcclib by Zeljko Juric is added in the package.</LI>
  213. <LI>The source of <CODE>tigccins</CODE> (the installation program) is included in the distribution.</LI>
  214. <LI>Bugfix: Libraries are now compiled correctly (there was a strange bug before).</LI>
  215. <LI>Bugfix: Linking multiple object files now seems to work perfectly (mail
  216. <A HREF="mailto:xvassor@mail.dotcom.fr">Xavier Vassor</A> if you find a bug).</LI>
  217. <LI><CODE>link</CODE>, <CODE>tigcc</CODE>, <CODE>tigccins</CODE> are now 32-bit
  218. console programs (instead of 16-bit DOS programs)</LI>
  219. </UL>
  220. <B>September 26, 1999: TIGCC v0.51, Link v1.01</B>
  221. <UL>
  222. <LI>Bugfix: C symbols that where exported out-of-order by GCC (i.e.
  223. <CODE>library@0000</CODE>, <CODE>library@0002</CODE>, <CODE>library@0001</CODE>...)
  224. are now inserted properly in the <CODE>.89z</CODE>/<CODE>.9xz</CODE> file. This will make it possibe to write libraries in C the way it should be done.</LI>
  225. <LI>Bugfix: The <CODE>_comment</CODE> symbol is now properly recognized in both C and
  226. assembly programs.
  227. Added: Both <CODE>tigcc</CODE> and <CODE>link</CODE> now have the <B>'-q'</B>
  228. option for quiet assembling or compilation. Does not affect warnings and errors.</LI>
  229. <LI>The source of <CODE>link</CODE> and <CODE>tigcc</CODE> is included in the distribution.</LI>
  230. </UL>
  231. <B>July 16, 1999: TIGCC v0.5, Link v1.0</B>
  232. <UL>
  233. <LI>Initial release.</LI>
  234. </UL>