go to single .html
authorkbongers <kbongers@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Mon, 2 Jul 2001 06:02:34 +0000 (06:02 +0000)
committerkbongers <kbongers@4a8a32a2-be11-0410-ad9d-d568d2c75423>
Mon, 2 Jul 2001 06:02:34 +0000 (06:02 +0000)
git-svn-id: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk/sdcc@991 4a8a32a2-be11-0410-ad9d-d568d2c75423

doc/SDCCUdoc-2.html [deleted file]
doc/SDCCUdoc-3.html [deleted file]
doc/SDCCUdoc-4.html [deleted file]

diff --git a/doc/SDCCUdoc-2.html b/doc/SDCCUdoc-2.html
deleted file mode 100644 (file)
index 5820d30..0000000
+++ /dev/null
@@ -1,267 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<HTML>
-<HEAD>
- <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
- <TITLE>SDCC Compiler User Guide: Installation </TITLE>
- <LINK HREF="SDCCUdoc-3.html" REL=next>
- <LINK HREF="SDCCUdoc-1.html" REL=previous>
- <LINK HREF="SDCCUdoc.html#toc2" REL=contents>
-</HEAD>
-<BODY>
-<A HREF="SDCCUdoc-3.html">Next</A>
-<A HREF="SDCCUdoc-1.html">Previous</A>
-<A HREF="SDCCUdoc.html#toc2">Contents</A>
-<HR>
-<H2><A NAME="Installation"></A> <A NAME="s2">2. Installation </A> </H2>
-
-<P>What you need before you start installation of SDCC ? A C Compiler, not
-just any C Compiler, gcc to be exact, you can get adventurous and try another
-compiler , I HAVEN'T tried it. GCC is free , and is available for almost all
-major platforms, if you are using linux you probably already have it, if you
-are using Windows 95/NT go to www.cygnus.com and download CYGWIN32 you will
-need the full development version of their tool (full.exe), follow their instructions
-for installation (this is also free and is very easy to install), Windows 95/NT
-users be aware that the compiler runs substantially slower on the Windows platform,
-I am not sure why.
-<P>After you have installed gcc you are ready to build the compiler (sorry
-no binary distributions yet). SDCC is native to Linux but can be ported to
-any platform on which GCC is available . Extract the source file package (.zip
-or .tar.gz) into some directory , which we shall refer to as SDCCDIR from now
-on.
-<H2><A NAME="Components"></A> <A NAME="ss2.1">2.1 Components of SDCC</A>
- </H2>
-
-<H3>gc ( a conservative garbage collector) </H3>
-
-<P>SDCC relies on this component to do all the memory management, this excellent
-package is copyrighted by Jans J Boehm(boehm@sgi.com) and Alan J Demers but
-can be used with minimum restrictions. The GC source will be extracted into
-the directory SDCCDIR/gc. 
-<H3>cpp ( C-Preprocessor) </H3>
-
-<P>The preprocessor is extracted into the directory SDCCDIR/cpp, it is a modified
-version of the GNU preprocessor.
-<H3>asxxxx &amp; aslink ( The assembler and Linkage Editor) </H3>
-
-<P>This is retargettable assembler &amp; linkage editor, it was developed
-by Alan Baldwin, John Hartman created the version for 8051, and I (Sandeep)
-have some enhancements and bug fixes for it to work properly with the SDCC.
-This component is extracted into the directory SDCCDIR/asxxxx.
-<H3>SDCC - The compiler. </H3>
-
-<P>This is the actual compiler, it uses gc and invokes the assembler and linkage
-editor. All files with the prefix SDCC are part of the compiler and is extracted
-into the the directory SDCCDIR.
-<H3>S51 - Simulator </H3>
-
-<P>Version 2.1.8 onwards contains s51 a freeware , opensource simulator developed
-by Daniel Drotos &lt;drdani@mazsola.iit.uni-miskolc.hu&gt;. The executable
-is built as part of build process, for more information visit Daniel's website
-at &lt;http://mazsola.iit.uni-miskolc.hu/~drdani/embedded/s51/&gt;.
-<H3>SDCDB - Source level Debugger. </H3>
-
-<P>SDCDB is the companion source level debugger . The current version of the
-debugger uses Daniel's Simulator S51, but can be easily changed to use other
-simulators.
-<H2><A NAME="ss2.2">2.2 Installation for Version &lt;= 2.1.7</A>
- </H2>
-
-<P>After the package is extracted (Windows 95/NT users start CYGWIN shell),
-change to the directory where you extracted the package and give the command.
-<P>
-<PRE>
-./sdccbuild.sh
-</PRE>
-<P>This is a bash shell script, it will compile all the above mentioned components
-and install the executables into the directory SDCCDIR/bin make sure you add
-this directory to your PATH environment variable. This script will also compile
-all the support routines ( library routines ) using SDCC. The support routines
-are all developed in C and need to be compiled.
-<H2><A NAME="ss2.3">2.3 Installation for Version &gt;= 2.1.8a</A>
- </H2>
-
-<P>The distribution method from Version 2.1.8a has been changed to be conforment
-with the "autoconf" utility. The source is now distributed as <B>sdcc-&lt;version
-number&gt;.tar.gz format</B> , instead of the older .zip format. The steps for
-installation are as follows.
-<H3>Unpack the sources. </H3>
-
-<P>This is usually done by the following command "<B>gunzip -c sdcc-&lt;version
-number&gt;.tar.gz | tar -xv -</B>"
-<H3>Change to the main source directory (usually sdcc or sdcc-&lt;version number&gt;) </H3>
-
-<H3>Issue command to configure your system </H3>
-
-<P>The configure command has several options the most commonly used option
-is --prefix=&lt;directory name&gt;, where &lt;directory name&gt; is the final
-location for the sdcc executables and libraries, (default location is /usr/local).
-The installation process will create the following directory structure under
-the &lt;directory name&gt; specified.
-<P>
-<PRE>
-bin/ - binary exectables (add to PATH environment variable) 
-share/ 
-      sdcc51inc/
- - include header files 
-      sdcc51lib/ - 
-             small/ - Object &amp;
- Library files for small model library 
-             large/ - Object &amp; library
- files for large model library
-</PRE>
-<P>The command 
-<P><B>'./configure --prefix=/usr/local" </B>
-<P>will create configure the compiler to be installed in directory /usr/local/bin.
-<H3>make </H3>
-
-<P>After configuration step issue the command 
-<P><B>"make"</B>
-<P>This will compile the compiler
-<H3>"make install" </H3>
-
-<P>Will install the compiler and libraries in the appropriate directories.
-<H3>Special Notes for Windows Users. Provided by Michael Jamet[ mjamet@computer.org] </H3>
-
-<P> 
-<P>  How to install SDCC from source on a Windows 95 or Windows NT 4 system
-<P>
-<P> 
-<P>  This document describes how to install SDCC on a Win 95 or Win NT 4 system.
-<P>
-<P>  These instructions probably work for Win 98 as well, but have not been
-<P>
-<P>  tested on that platform. 
-<P> 
-<P>  There are lots of little differences between UNIX and the Win32 Cygnus
-<P>
-<P>  environment which make porting more difficult than it should be.  If
-<P>
-<P>  you want the details, please contact me.  Otherwise just follow these
-<P>
-<P>  instructions. 
-<P> 
-<P>  1. Install the Cygnus Software 
-<P>  Go to http://sourceware.cygnus.com/cygwin.  Cygnus provides a UNIX like
-<P>
-<P>  environment for Win 32 systems.  Download &quot;full.exe&quot; and
-install.  You 
-<P>  MUST install it on your C drive.  &quot;full.exe&quot; contains a shell
-AND many 
-<P>  common UNIX utilities. 
-<P> 
-<P>  2. Download and Extract the Latest SDCC 
-<P>  The latest version can be found at 
-<P>   www.geocities.com/ResearchTriange/Forum/1353. 
-<P>  It can be uncompressed with winzip. 
-<P> 
-<P>  3.  Start a Cygnus Shell 
-<P>  There should be an entry in the Start Menu for Cygnus.  Invoke the shell.
-<P>
-<P>  This gives you a UNIX like environment.  FROM THIS POINT ON, DIRECTORIES
-<P>
-<P>  MUST BE SPECIFIED WITH FORWARD SLASHES (/) NOT THE DOS STYLE BACK 
-<P>  SLASHES (\) BECAUSE THIS IS WHAT UNIX EXPECTS.  - 
-<P>   ex. &quot;\winnt&quot; would be &quot;/winnt&quot; under the
-shell. 
-<P> 
-<P>  4. Change Directory to Where SDCC was extracted (referred to as INSTALLDIR)
-<P>
-<P> 
-<P>  ex. cd /sdcc218Da.  If you extracted to a drive OTHER THAN C, the drive
-<P>
-<P>  must be specified as part of the path. For example, if you extracted
-to 
-<P>  your &quot;g drive&quot;, type the following: &quot;cd //g/mydir&quot;. 
-You must use &quot;//&quot; 
-<P>  to specify the drive. 
-<P> 
-<P>  5. Make Dirs Which are Automatically Made During the UNIX Installation
-<P>
-<P>  From the INSTALLDIR, 
-<P> 
-<P>   mkdir -p bin   (not a typo, just &quot;bin&quot;) 
-<P>   mkdir -p /bin 
-<P>   mkdir -p /usr/local/bin 
-<P>   mkdir -p /usr/local/share 
-<P>   mkdir -p /usr/local/share/sdcc51lib 
-<P>   mkdir -p /usr/local/share/sdcc51inc 
-<P>   mkdir -p /tmp 
-<P> 
-<P>  (When a path from the root directory is specified WITHOUT a drive, the
-<P>
-<P>  drive defaults to c.  For example /michael/newuser =&gt; c:\michael\newuser)
-<P>
-<P> 
-<P>  6.  Add Programs to /bin Expected by the Installation Process 
-<P>   - Look at your path: echo $PATH 
-<P>     One of the fields is the diretory with the CYGNUS programs. 
-<P>    ex. /CYGNUS/CYGWIN~1/H-I586/BIN 
-<P> 
-<P>   - cd to the directory found above.  You may have to fiddle with the
-<P>
-<P>     case (upper or lower) here because the PATH is SHOWN as all upper
-<P>
-<P>     case, but is actually mixed.  To help you along, you may type 
-<P>     a letter or 2 followed by the escape key.  The shell will fill 
-<P>     out the remaining letters IF THEY describe a unique directory. 
-<P>     If you have problems here, cd one directory and type &quot;ls&quot;. 
-&quot;ls&quot; 
-<P>     is the equivalent of &quot;dir/w&quot;. 
-<P> 
-<P>   - Copy the following: 
-<P>    cp sh.exe /bin 
-<P>    cp pwd.exe /bin 
-<P>    cp echo.exe /bin 
-<P> 
-<P>  7. Go back to the INSTALLDIR 
-<P>   cd INSTALLDIR 
-<P>  ex. cd //d/sdcc218Da 
-<P> 
-<P>  8. Run the configure Program 
-<P>   ./configure 
-<P>  The &quot;./&quot; is important because your current directory is NOT
-in your path. 
-<P>  Under DOS, your current directory was implicitly always the first entry
-<P>
-<P>  in your path. 
-<P> 
-<P>  9. Run make 
-<P>   make 
-<P> 
-<P>  This process takes quite some time under Win 32. 
-<P> 
-<P>  10. Install the Newly Built Software 
-<P>   make install 
-<P> 
-<P>  This will partially install the software into the /usr/local directories
-<P>
-<P>  created in step 5.  What it actually doing is copying the .c, .h and
-<P>
-<P>  library files to directories under /usr/local/share. 
-<P> 
-<P>  It will NOT be able to install the actual programs (binaries) because
-<P>
-<P>  it does not know programs on Win32 systems have &quot;.exe&quot; extensions.
-<P>
-<P>  For example, it tries to install sdcc instead of sdcc.exe. 
-<P> 
-<P>  After the automated part is finished, you must manually copy the binaries:
-<P>
-<P>   cd bin  (This is the bin directory in your INSTALLDIR) 
-<P>   cp * /usr/local/bin 
-<P> 
-<P>  11. Make sure /usr/local/bin is in Your PATH 
-<P>  You may add c:\usr\local\bin to your path however your
-Win32 system allows.  For 
-<P>  example you may add it to the PATH statement in autoexec.bat. 
-<P> 
-<P>  Good luck.  If you have any questions send them to me or post them 
-<P>  to the list. 
-<HR>
-<A HREF="SDCCUdoc-3.html">Next</A>
-<A HREF="SDCCUdoc-1.html">Previous</A>
-<A HREF="SDCCUdoc.html#toc2">Contents</A>
-</BODY>
-</HTML>
diff --git a/doc/SDCCUdoc-3.html b/doc/SDCCUdoc-3.html
deleted file mode 100644 (file)
index ef2fc5b..0000000
+++ /dev/null
@@ -1,100 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<HTML>
-<HEAD>
- <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
- <TITLE>SDCC Compiler User Guide: Compiling.</TITLE>
- <LINK HREF="SDCCUdoc-4.html" REL=next>
- <LINK HREF="SDCCUdoc-2.html" REL=previous>
- <LINK HREF="SDCCUdoc.html#toc3" REL=contents>
-</HEAD>
-<BODY>
-<A HREF="SDCCUdoc-4.html">Next</A>
-<A HREF="SDCCUdoc-2.html">Previous</A>
-<A HREF="SDCCUdoc.html#toc3">Contents</A>
-<HR>
-<H2><A NAME="Compiling"></A> <A NAME="s3">3. Compiling.</A> </H2>
-
-<H2><A NAME="One Source File"></A> <A NAME="ss3.1">3.1 Single Source file projects.</A>
- </H2>
-
-<P>For single source file projects the process is very simple. Compile your
-programs with the following command
-<P>
-<PRE>
-sdcc sourcefile.c
-</PRE>
-<P>The above command will compile ,assemble and link your source file. Output
-files are as follows.
-<P>
-<UL>
-<LI>sourcefile.asm - Assembler source file created by the compiler</LI>
-<LI>sourcefile.lst - Assembler listing file created by the Assembler</LI>
-<LI>sourcefile.rst - Assembler listing file updated with linkedit information
-, created by linkage editor</LI>
-<LI>sourcefile.sym - symbol listing for the sourcefile, created by the assembler.</LI>
-<LI>sourcefile.rel - Object file created by the assembler, input to Linkage
-editor.</LI>
-<LI>sourcefile.map - The memory map for the load module, created by the Linker.</LI>
-<LI>sourcefile.&lt;ihx | s19&gt; - The load module : ihx - Intel hex format
-(default ), s19 - Motorola S19 format when compiler option --out-fmt-s19 is
-used.</LI>
-</UL>
-<H2><A NAME="ss3.2">3.2 Projects with multiple source files.</A>
- </H2>
-
-<P>SDCC can compile only ONE file at a time. Let us for example assume that
-you have a project containing the following files.
-<P>
-<PRE>
-foo1.c ( contains some functions )foo2.c (contains some more functions)foomain.c (contains more functions and the function main)
-</PRE>
-<P>The first two files will need to be compiled separately with the commands
-<P>
-<PRE>
-sdcc -c foo1.csdcc -c foo2.c
-</PRE>
-<P>Then compile the source file containing main and link the other files together
-with the following command.
-<P>
-<PRE>
-sdcc foomain.c foo1.rel foo2.rel
-</PRE>
-<P>Alternatively foomain.c can be separately compiled as well
-<P>
-<PRE>
-sdcc -c foomain.c sdcc foomain.rel foo1.rel foo2.rel
-</PRE>
-<P>The file containing the main function MUST be the FIRST file specified
-in the command line , since the linkage editor processes file in the order
-they are presented to it.
-<H2><A NAME="ss3.3">3.3 Projects with additional libraries.</A>
- </H2>
-
-<P>Some reusable routines may be compiled into a library, see the documentation
-for the assembler and linkage editor in the directory SDCCDIR/asxxxx/asxhtm.htm
-this describes how to create a .lib library file, the libraries created in
-this manner may be included using the command line, make sure you include the
--L &lt;library-path&gt; option to tell the linker where to look for these files.
-Here is an example, assuming you have the source file 'foomain.c' and a library
-'foolib.lib' in the directory 'mylib'.
-<P>
-<PRE>
-sdcc foomain.c foolib.lib -L mylib
-</PRE>
-<P>Note here that 'mylib' must be an absolute path name.
-<P>The view of the way the linkage editor processes the library files, it
-is recommended that you put each source routine in a separate file and combine
-them using the .lib file. For an example see the standard library file 'libsdcc.lib'
-in the directory SDCCDIR/sdcc51lib.
-<HR>
-<A HREF="SDCCUdoc-4.html">Next</A>
-<A HREF="SDCCUdoc-2.html">Previous</A>
-<A HREF="SDCCUdoc.html#toc3">Contents</A>
-</BODY>
-</HTML>
diff --git a/doc/SDCCUdoc-4.html b/doc/SDCCUdoc-4.html
deleted file mode 100644 (file)
index 92f8bbe..0000000
+++ /dev/null
@@ -1,263 +0,0 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
-<HTML>
-<HEAD>
- <META NAME="GENERATOR" CONTENT="SGML-Tools 1.0.7">
- <TITLE>SDCC Compiler User Guide: Command Line options</TITLE>
- <LINK HREF="SDCCUdoc-5.html" REL=next>
- <LINK HREF="SDCCUdoc-3.html" REL=previous>
- <LINK HREF="SDCCUdoc.html#toc4" REL=contents>
-</HEAD>
-<BODY>
-<A HREF="SDCCUdoc-5.html">Next</A>
-<A HREF="SDCCUdoc-3.html">Previous</A>
-<A HREF="SDCCUdoc.html#toc4">Contents</A>
-<HR>
-<H2><A NAME="Command Line Options"></A> <A NAME="s4">4. Command Line options</A> </H2>
-
-<P>
-<UL>
-<LI><B>--model-large
-<A NAME="--model-large"></A> </B> Generate code for Large model programs see section Memory
-Models for more details. If this option is used all source files in the project
-should be compiled with this option. In addition the standard library routines
-are compiled with small model , they will need to be recompiled.</LI>
-<LI><B>--model-small</B> 
-<A NAME="--model-small"></A> Generate code for Small Model programs see section Memory
-Models for more details. This is the default model.</LI>
-<LI><B>--model-flat24</B> 
-<A HREF="SDCCUdoc-17.html#--model-flat24">--model-flat24</A>Generate code for Small Model programs see section Memory
-Models for more details. This is the default model.</LI>
-<LI><B>--stack-auto</B> 
-<A NAME="--stack-auto"></A> All functions in the source file will be compiled as reentrant,
-i.e. the parameters and local variables will be allocated on the stack. see
-section Parameters and Local Variables for more details. If this option is
-used all source files in the project should be compiled with this option. </LI>
-<LI><B>--xstack</B>
-<A NAME="--xstack"></A>  Uses a pseudo stack in the first 256 bytes in the external ram
-for allocating variables and passing parameters. See section on external stack
-for more details.</LI>
-<LI><B>--nogcse</B>
-<A NAME="--nogcse"></A>  Will not do global subexpression elimination, this option may
-be used when the compiler creates undesirably large stack/data spaces to store
-compiler temporaries. A warning message will be generated when this happens
-and the compiler will indicate the number of extra bytes it allocated. It recommended
-that this option NOT be used , #pragma NOGCSE can be used to turn off global
-subexpression elimination for a given function only.</LI>
-<LI><B>--noinvariant</B>
-<A NAME="--noinvariant"></A>  Will not do loop invariant optimizations, this may be turned
-off for reasons explained for the previous option . For more details of loop
-optimizations performed see section Loop Invariants.It recommended that this
-option NOT be used , #pragma NOINVARIANT can be used to turn off invariant
-optimizations for a given function only.</LI>
-<LI><B>--noinduction</B>
-<A NAME="--noinduction"></A>  Will not do loop induction optimizations, see section Strength
-reduction for more details.It recommended that this option NOT be used , #pragma
-NOINDUCTION can be used to turn off induction optimizations for given function
-only.</LI>
-<LI><B>--nojtbound </B>
-<A NAME="--nojtbound"></A>  Will not generate boundary condition check when switch statements
-are implemented using jump-tables. See section Switch Statements for more details.It
-recommended that this option NOT be used , #pragma NOJTBOUND can be used
-to turn off boundary checking for jump tables for a given function only.</LI>
-<LI><B>--noloopreverse</B> 
-<A NAME="--noloopreverse"></A> Will not do loop reversal optimization</LI>
-<LI><B>--noregparms</B>
-<A NAME="--noregparms"></A>  By default the first parameter is passed using global registers
-(DPL,DPH,B,ACC). This option will disable parameter passing using registers.
-NOTE: if your program uses the 16/32 bit support routines (for multiplication/division)
-these library routines will need to be recompiled with the --noregparms option
-as well.</LI>
-<LI><B>--callee-saves function1[,function2][,function3]....</B>
-<A NAME="--callee-saves"></A> The compiler by default uses a caller saves convention for register saving
-across function calls, however this can cause unneccessary register pushing
-&amp; popping when calling small functions from larger functions. This option
-can be used to switch the register saving convention for the function names
-specified. The compiler will not save registers when calling these functions,
-extra code will be generated at the entry &amp; exit for these functions to
-save &amp; restore the registers used by these functions, this can SUBSTANTIALLY
-reduce code &amp; improve run time performance of the generated code. In future
-the compiler (with interprocedural analysis) will be able to determine the
-appropriate scheme to use for each function call. DO NOT use this option for
-built-in functions such as _muluint..., if this option is used for a library
-function the appropriate library function needs to be recompiled with the same
-option. If the project consists of multiple source files then all the source
-file should be compiled with the same --callee-saves option string. Also see
-Pragma Directive
-<A HREF="SDCCUdoc-19.html#Pragmaa"></A> CALLEE-SAVES.
-<A HREF="SDCCUdoc-19.html#pragma callee-saves"></A> .</LI>
-<LI><B>--debug </B>
-<A NAME="--debug"></A> When this option is used the compiler will generate debug information
-, that can be used with the SDCDB. The debug information is collected in a
-file with .cdb extension. For more information see documentation for SDCDB.</LI>
-<LI><B>--regextend </B>
-<A NAME="--regextend"></A>  This option will cause the compiler to define pseudo registers
-, if this option is used, all source files in the project should be compiled
-with this option. See section Register Extension for more details.</LI>
-<LI><B>--compile-only</B>(-c) 
-<A NAME="--compile-only"></A>  will compile and assemble the source only, will not
-call the linkage editor.</LI>
-<LI><B>--xram-loc </B>
-<A NAME="--xram-loc"></A> &lt;Value&gt; The start location of the external ram, default
-value is 0. The value entered can be in Hexadecimal or Decimal format .eg.
---xram-loc 0x8000 or --xram-loc 32768.</LI>
-<LI><B>--code-loc </B>
-<A NAME="--code-loc"></A> &lt;Value&gt; The start location of the code segment , default
-value 0. Note when this option is used the interrupt vector table is also relocated
-to the given address. The value entered can be in Hexadecimal or Decimal format
-.eg. --code-loc 0x8000 or --code-loc 32768.</LI>
-<LI><B>--stack-loc</B>
-<A NAME="--stack-loc"></A> &lt;Value&gt; The initial value of the stack pointer. The default
-value of the stack pointer is 0x07 if only register bank 0 is used, if other
-register banks are used then the stack pointer is initialized to the location
-above the highest register bank used. eg. if register banks 1 &amp; 2 are used
-the stack pointer will default to location 0x18. The value entered can be in
-Hexadecimal or Decimal format .eg. --stack-loc 0x20 or --stack-loc 32. If all
-four register banks are used the stack will be placed after the data segment
-(equivalent to --stack-after-data)</LI>
-<LI><B>--stack-after-data</B>
-<A NAME="--stack-after-data"></A> This option will cause the stack to be located in the
-internal ram after the data segment.</LI>
-<LI><B>--data-loc</B> 
-<A NAME="--data-loc"></A> &lt;Value&gt; The start location of the internal ram data segment,
-the default value is 0x30.The value entered can be in Hexadecimal or Decimal
-format .eg. --data-loc 0x20 or --data-loc 32.</LI>
-<LI><B>--idata-loc</B>
-<A NAME="--idata-loc"></A> &lt;Value&gt; The start location of the indirectly addressable
-internal ram, default value is 0x80. The value entered can be in Hexadecimal
-or Decimal format .eg. --idata-loc 0x88 or --idata-loc 136.</LI>
-<LI><B>--peep-file
-<A NAME="--peep-file"></A>  </B>&lt;filename&gt; This option can be used to use additional
-rules to be used by the peep hole optimizer. See section Peep Hole optimizations
-for details on how to write these rules.</LI>
-<LI><B>--lib-path (-L) </B>
-<A NAME="--lib-path"></A> &lt;absolute path to additional libraries&gt; This option
-is passed to the linkage editor, additional libraries search path. The path
-name must be absolute. Additional library files may be specified in the command
-line . See section Compiling programs for more details.</LI>
-<LI><B>-I &lt;path&gt;
-<A NAME="-I"></A> </B> The additional location where the pre processor will look
-for &lt;..h&gt; or "..h" files.</LI>
-<LI><B>-D&lt;macro[=value]&gt;</B> 
-<A NAME="-D"></A> Command line definition of macros. Passed
-to the pre processor.</LI>
-<LI><B>-E</B>
-<A NAME="-E"></A>  Run only the C preprocessor. Preprocess all the C source files specified
-and output the results to standard output.</LI>
-<LI><B>-M
-<A NAME="-M"></A> </B> Tell the preprocessor to output a rule suitable for make describing
-the dependencies of each object file. For each source file, the preprocessor
-outputs one make-rule whose target is the object file name for that source
-file and whose dependencies are all the files `#include'd in it. This rule
-may be a single line or may be continued with `\'-newline if it is long.
-The list of rules is printed on standard output instead of the preprocessed
-C program. `-M' implies `-E'.</LI>
-<LI><B>-C</B> 
-<A NAME="-C"></A> Tell the preprocessor not to discard comments. Used with the `-E' option.</LI>
-<LI><B>-MM </B>
-<A NAME="-MM"></A> Like `-M' but the output mentions only the user header files included
-with `#include file&quot;'. System header files included with `#include
-&lt;file&gt;' are omitted.</LI>
-<LI><B>-Aquestion(answer)</B>
-<A NAME="-Aquestion(answer)"></A>  Assert the answer answer for question, in case it is
-tested with a preprocessor conditional such as `#if #question(answer)'.
-`-A-' disables the standard asser- tions that normally describe the target
-machine.</LI>
-<LI><B>-Aquestion</B>
-<A NAME="-Aquestion"></A>  (answer) Assert the answer answer for question, in case it is
-tested with a preprocessor conditional such as `#if #question(answer)'.
-`-A-' disables the standard assertions that normally describe the target machine.</LI>
-<LI><B>-Umacro</B>
-<A NAME="-Umacro"></A>  Undefine macro macro. `-U' options are evaluated after all `-D'
-options, but before any `-include' and `-imac- ros' options.</LI>
-<LI><B>-dM</B>
-<A NAME="-dM"></A>  Tell the preprocessor to output only a list of the mac- ro definitions
-that are in effect at the end of prepro- cessing. Used with the `-E' option.</LI>
-<LI><B>-dD</B> 
-<A NAME="-dD"></A> Tell the preprocessor to pass all macro definitions into the output,
-in their proper sequence in the rest of the output.</LI>
-<LI><B>-dN </B>
-<A NAME="-dN"></A> Like `-dD' except that the macro arguments and contents are omitted.
-Only `#define name' is included in the output.</LI>
-<LI><B>-S </B>
-<A NAME="-S"></A> Stop after the stage of compilation proper; do not as- semble. The output
-is an assembler code file for the input file specified.</LI>
-<LI><B>-Wa asmOption[,asmOption]</B>... Pass the asmOption to the assembler</LI>
-<LI><B>-Wl linkOption[,linkOption]</B> .. Pass the linkOption to the linker.</LI>
-<LI><B>--int-long-reent</B> 
-<A NAME="--int-long-rent"></A>  Integer (16 bit) and long (32 bit) libraries have been
-compiled as reentrant. Note by default these libraries are compiled as non-reentrant.
-See section Installation for more details.</LI>
-<LI><B>--cyclomatic </B>
-<A NAME="--cyclomatic"></A> This option will cause the compiler to generate an information
-message for each function in the source file. The message contains some important
-information about the function. The number of edges and nodes the compiler
-detected in the control flow graph of the function, and most importantly the
-cyclomatic complexity see section on Cyclomatic Complexity for more details.</LI>
-<LI><B>--float-reent </B>
-<A NAME="--float-reent"></A>  Floating point library is compiled as reentrant.See section
-Installation for more details.</LI>
-<LI><B>--out-fmt-ihx
-<A NAME="--out-fmt-ihx"></A>  </B>The linker output (final object code) is in Intel Hex format.
-(This is the default option).</LI>
-<LI><B>--out-fmt-s19 </B>
-<A NAME="--out-fmt-s19"></A> The linker output (final object code) is in Motorola S19
-format.</LI>
-<LI><B>--nooverlay</B> 
-<A NAME="--nooverlay"></A>  The compiler will not overlay parameters and local variables
-of any function, see section Parameters and local variables for more details.</LI>
-<LI><B>--main-return</B>
-<A NAME="--main-return"></A>  This option can be used when the code generated is called
-by a monitor program. The compiler will generate a 'ret' upon return from the
-'main' function. The default option is to lock up i.e. generate a 'ljmp .'
-.</LI>
-<LI><B>--no-peep</B> 
-<A NAME="--no-peep"></A>  Disable peep-hole optimization.</LI>
-<LI><B>--peep-asm</B> 
-<A NAME="--peep-asm"></A>  Pass the inline assembler code through the peep hole optimizer.
-Can cause unexpected changes to inline assembler code , please go through the
-peephole optimizer rules defnied in file 'SDCCpeeph.def' before using this
-option.</LI>
-<LI><B>--iram-size</B>
-<A NAME="--iram-size"></A>  &lt;Value&gt; Causes the linker to check if the interal ram
-usage is within limits of the given value.</LI>
-</UL>
-<P>The following options are provided for the purpose of retargetting and
-debugging the compiler . These provided a means to dump the intermediate code
-(iCode) generated by the compiler in human readable form at various stages
-of the compilation process. 
-<P>
-<UL>
-<LI><B>--dumpraw </B>
-<A NAME="--dumpraw"></A> . This option will cause the compiler to dump the intermediate
-code into a file of named &lt;source filename&gt;.dumpraw just after the intermediate
-code has been generated for a function , i.e. before any optimizations are
-done. The basic blocks at this stage ordered in the depth first number, so
-they may not be in sequence of execution.</LI>
-<LI><B>--dumpgcse</B>.
-<A NAME="--dumpgcse"></A>  Will create a dump if iCode, after global subexpression elimination,
-into a file named &lt;source filename&gt;.dumpgcse.</LI>
-<LI><B>--dumpdeadcode </B>
-<A NAME="--dumpdeadcode"></A> .Will create a dump if iCode, after deadcode elimination,
-into a file named &lt;source filename&gt;.dumpdeadcode.</LI>
-<LI><B>--dumploop.</B> 
-<A NAME="--dumploop"></A> Will create a dump if iCode, after loop optimizations, into
-a file named &lt;source filename&gt;.dumploop.</LI>
-<LI><B>--dumprange.</B> 
-<A NAME="--dump-range"></A> Will create a dump if iCode, after live range analysis, into
-a file named &lt;source filename&gt;.dumprange.</LI>
-<LI><B>--dumpregassign. </B>
-<A NAME="--dumpregassign"></A> Will create a dump if iCode, after register assignment
-, into a file named &lt;source filename&gt;.dumprassgn.</LI>
-<LI><B>--dumpall. </B>
-<A NAME="--dumpall"></A> Will cause all the above mentioned dumps to be created.</LI>
-</UL>
-<P>Note that the files created for the dump are appended to each time. So
-the files should be deleted manually , before each dump is created. 
-<P>When reporting bugs, it will be very helpful if you could include these
-dumps along with the portion of the code that is causing the problem.
-<HR>
-<A HREF="SDCCUdoc-5.html">Next</A>
-<A HREF="SDCCUdoc-3.html">Previous</A>
-<A HREF="SDCCUdoc.html#toc4">Contents</A>
-</BODY>
-</HTML>