fpc/compiler/cws.txt
1998-06-19 16:51:10 +00:00

122 lines
2.9 KiB
Plaintext

******************************************************************************
>>> Tips for adding things to the compiler
******************************************************************************
- Assigned should be used instead of checking for nil directly, as
it can help solving pointer problems when in real mode.
- All compiler files should be saved in UNIX format
- Try to omit Tabs, or else use a tabsize of 8
******************************************************************************
>>> Compiler Defines
******************************************************************************
Include compiler Parts
-------------------------
$define GDB include GDB stab debugging (-g) support
$define UseBrowser include Browser (-b) support
Leave Out specific Parts
-------------------------
$define NoOpt will leave out the optimizer
** i386 only **
$define NoAg386Int No intel (masm/tasm) writer
$define NoAg386Nsm No nasm writer
$define NoAg386Att No att (gas) writer
$define NoRA386Int No intel asm parser
$define NoRA386Att No att asm parser
$define NoRA386Dir No direct asm parser
** m68k only: **
$define NoAg68kGas No gas asm writer
$define NoAg68kMit No mit asm writer
$define NoAg68kMot No mot asm writer
$define NoRA68kMot No Motorola parser
******************************************************************************
>>> Location of the codegenerator functions
******************************************************************************
The names are given for the i386, for the m68k rename the 386 to 68k
cg386con - Constant generation
- secondordconst
- secondrealconst
- secondstringconst
- secondfixconst
- secondsetconst
- secondniln
cg386mat - Mathematic functions
- secondmoddiv
- secondshlshr
- secondumminus
- secondnot
cg386cnv - Type conversion functions
- secondtypeconv
- secondis
- secondas
cg386add - Add/concat functions
- secondadd
cg386mem - Memory functions
- secondvecn
- secondaddr
- seconddoubleaddr
- secondsimplenewdispose
- secondhnewn
- secondhdisposen
- secondselfn
- secondwith
- secondloadvmt
- secondsubscriptn
- secondderef
cg386flw - Flow functions
- secondifn
- second_while_repeatn
- secondfor
- secondcontinuen
- secondbreakn
- secondexitn
- secondlabel
- secondgoto
- secondtryfinally
- secondtryexcept
- secondraise
- secondfail
cg386ld - Load/Store functions
- secondload
- secondassignment
- secondfuncret
cg386set - Set functions
- secondcase
- secondin
cg386cal - Call/inline functions
- secondparacall
- secondcall
- secondprocinline
- secondinline
cgi386 - Main secondpass handling
- secondnothing
- seconderror
- secondasm
- secondblockn
- secondstatement