home *** CD-ROM | disk | FTP | other *** search
- What has changed since first release of gcc 2.3.3 for RISC-OS (see also changelog)
- -------------------------------------------------------------
-
-
- overall
- -------
-
- - language changed to English (sorry, German speaking people :-))
-
-
-
- Linker
- ------
-
- - -+ option fixed (works now with fprintf and the like too)
- - enhanced speed
- - option -=<name>=<value> added (e.g. you can define symbol ten
- as follows: -=ten=10)
- - some minor internal modifications and bug fixes
-
-
- AOFconvert
- ----------
-
- - does now work better. Especially there are no more double defined external(s)
- C$$Code ... You should be able to convert EVERY library without any source file
- changes (Though you need not convert any library in future).
-
-
- GCC
- ---
-
- - does automatically invoke linker (if necessary - -c option not specified):
- mulink/link depending on wether or not you specify -aof
- - does output an error message if not enough memory
- - new option: -aof: use aof format for object files instead of
- mupros format. Remember that you absolutely must link clib:o.gccext
- if using AOF (and - of course - the AOF libraries/stubs)
- - added initialization (constructor calls) of global objects.
- call _init_globals() at the beginning of main() procedure
- call _kill_globals() at the end of main() procedure
- (does not work automatically)
- - debugging: when -g option is specified gcc does insert line and source file
- info into object files. This allows restricted source level debugging with
- ASD (there is NO information about procedures, variables and the like).
- DDT DOES NOT ACCEPT LINE INFORMATION INSERTED BY GCC (with some exceptions)
- - option just-show: shows the commands gcc would invoke if option were not
- given (just the commands in opposition to -v)
- - 'Relocation error...' fixed
- - error in floating point sys. fixed (e.g. 1.0-(double)bla did produce a line
- of nonsense in assembler file)
- - a few internal modifications
-
-
-
- Assembler
- ---------
-
- - new directives:
-
- .init <symbol> insert a constructor into init area
- (init area is scanned by _init_globals()/_kill_globals())
- .kill <symbol> insert a destructor into init area
- .file <filename> specifies the source file name (-> source level debugging)
- .line <linenumber> specifies the source file number (dto.)
- .frag begin new line info fragment (should not be used)
- .obligatory to make the currently assembled area an 'obligatory link area'
- (does not work with AOF)
- .optionally to make the currently assembled area an 'optionally link area'
- (does not work with AOF)
- .ignoreline ignore .line directives
- .resumeline self explaining
-
- - -d option added. if -d option specified as creates a debug area containing the
- source level debugging data inserted by .file, .line, .frag
- if -d option is not specified these commands are ignored
- - -A option added (makes assembler output the object file in AOF format)
- - various bug fixes (such as the 'ldr/str from/to an unaligned address' error which
- is in fact not an error)
- - handling of local labels fixed. As did treat every label beginning with 'L' treat
- as local label even if it was obviously not (.global L...).
- - does output separated code and data areas (AOF format only)
-
-
-
- libraries
- ---------
-
- - __fixsfsi and __fixdfsi added to stubsmu(mupros)/gccext(AOF)
- - xfersend replaced (solid sprite dragging). AOF users have to replace it in
- RISC_OSLIB manually (use libfile)
- - some wimp classes created (test version!). Have a look at !sbconfig to see
- how they are used
- - AIF header added to stubsmu (does not touch AOF users)
- - init area handlers added to stubsmu/gccext
- - 'div-fast' code removed. stubs x$divide is faster!
- - thanks to Ferdinand Oeinck the 'iostream' part of the libg++
- library is included
-
-
-
- Thomas Aeby
- Graeffet 406
- 1735 Giffers
- Tel.: 037 38 16 00
- EMail: aeby@uropax.contrib.de
-