This section tells you what options to use from the millions that GCC provides (sometimes choice is a daunting prospect):
We use 4 compiler strings
In the case of problems or unexpected results we use an assembler output to see what the compiler is doing. Typically this uses an unoptimized compilation but sometimes you need to see EXACTLY what the compiler is doing. These compiler guys are supper smart and 'hoist' code all over the place to get the best results - an optimzed assembler listing can be very confusing - but that's why you are a programmer 'cos you like confusing stuff!
|-g||Include debugging information for GDB - it does no harm to include this always.|
|-mcpu=860||This includes the 850, 855T and all their variants.|
|-S||Stop when an assembly listing has been created - but do not run the assembler.|
|-fverbose-asm||Create an annotated assembly listing.|
|-c||Stop when there is an object file (do C -> assembler, then run assembler) but do not link.|
|-o||(Little letter O) defines the destination file.|
|-fno-hosted||Assume no library functions.|
|-Os||Optimize for speed.|
|-O3||Maximum optimisation almost no chance of de-bugging sensibly.|
|-O||Mimimum optimisation - you stand a chance of de-bugging sensibly.|
|-O0||(Letter 0 with number 0)No optimisation.|
Problems, comments, suggestions, corrections (including broken links) or something to add? Please take the time from a busy life to 'mail us' (at top of screen), the webmaster (below) or info-support at zytrax. You will have a warm inner glow for the rest of the day.
If you are happy it's OK - but your browser is giving a less than optimal experience on our site. You could, at no charge, upgrade to a W3C standards compliant browser such as Firefox