Turbo Pascal 7.0
Aufruf des Compilers TPC
Turbo Pascal Version 7.0 Copyright (c) 1983,92 Borland International Syntax: TPC [options] filename [options] -B = Build all units -L = Link buffer on disk -D<syms> = Define conditionals -M = Make modified units -E<path> = EXE/TPU directories -O<path> = Object directories -F<seg>:<ofs> = Find error -Q = Quiet compile -GD = Detailed map file -T<path> = TPL/CFG directory -GP = Map file with publics -U<path> = Unit directories -GS = Map file with segments -V = Debug information in EXE -I<path> = Include directories -$<dir> = Compiler directive Compiler switches: -$<letter><state> (defaults are shown below) A+ Word alignment I+ I/O error checking R- Range checking B- Full boolean eval L+ Local debug symbols S+ Stack checking D+ Debug information N- 80x87 instructions T- Typed pointers E+ 80x87 emulation O- Overlays allowed V+ Strict var-strings F- Force FAR calls P- Open string params X+ Extended syntax G- 80286 instructions Q- Overflow checking Memory sizes: -$M<stack>,<heapmin>,<heapmax> (default: 16384,0,655360)
Borland Delphi 1.0
Aufruf des Compilers DCC
Delphi Compiler Version 8.0 Copyright (c) 1983,95 Borland International Syntax: DCC [options] filename [options] Target: Windows -B = Build all units -M = Make modified units -D<syms> = Define conditionals -O<path> = Object directories -E<path> = EXE/DCU directories -Q = Quiet compile -F<seg>:<ofs> = Find error -R<path> = Resource directories -GD = Detailed map file -T<path> = DSL/CFG directory -GP = Map file with publics -U<path> = Unit directories -GS = Map file with segments -V = Debug information in EXE -I<path> = Include directories -$<dir> = Compiler directive -L = Link buffer on disk Compiler switches: -$<letter><state> (defaults are shown below) A+ Word alignment L+ Local debug symbols T- Typed pointers B- Full boolean eval M- Runtime type info U+ Pentium safe FDIV D+ Debug information N+ 80x87 instructions V+ Strict var-strings E+ 80x87 emulation O- Overlays allowed W- Windows stack frames F- Force FAR calls P+ Open string params X+ Extended syntax G+ 80286 instructions Q- Overflow checking Y+ Symbol reference info I+ I/O error checking R- Range checking Z- Word-sized enums K+ Smart callbacks S+ Stack checking Memory sizes: -$M<stack>,<localheap> (default: 16384,8192)
Borland Delphi 2.0
Aufruf des Compilers DCC32
Delphi for Win32 Version 9.0 Copyright (c) 1983,96 Borland International Syntax: DCC32 [options] filename [options] -A<unit>=<alias> = Set unit alias -J = Generate .obj file -B = Build all units -K<addr> = Set image base addr -CC = Console target -M = Make modified units -CG = GUI target -O<paths> = Object directories -D<syms> = Define conditionals -P = look for 8.3 file names also -E<path> = EXE output directory -Q = Quiet compile -F<offset> = Find error -R<paths> = Resource directories -GD = Detailed map file -U<paths> = Unit directories -GP = Map file with publics -V = Debug information in EXE -GS = Map file with segments -W = Output warning messages -H = Output hint messages -$<dir> = Compiler directive -I<paths> = Include directories Compiler switches: -$<letter><state> (defaults are shown below) A+ Aligned record fields Q- Integer overflow checking B- Full boolean Evaluation R- Range checking D+ Debug information T- Typed @ operator H+ Use long strings by default U- Pentium(tm)-safe divide I+ I/O checking V+ Strict var-strings J+ Writeable structured consts W- Generate stack frames L+ Local debug symbols X+ Extended syntax M- Runtime type info Y- Symbol reference info O+ Optimization Z1 Minimum size of enum types P+ Open string params Stack size: -$M<minStackSize[,maxStackSize]> (default 16384,1048576)
Pascal++
Compiler ppl
Pascal++ System Version 1.12 Copyright (c) 1989-1994 FAVOR Software/Flemming Andersen & Anders V. Olsen. All rights reserved Command syntax : <Pascal++ command> ::= PPL <argument>+ <argument> ::= /<option> | <input file> <option> ::= <any-available-option> | <show-available-options> <show-available-options> ::= ?
XL Pascal
Compiler xlp
IBM AIX XL Pascal Compiler/6000
Usage:
xlp [ option | inputfile ]...
Description:
The xlp command compiles XL Pascal source files. It also processes
assembler source files and object files. Unless the -c option is
specified, xlp calls the linkage editor to produce a single object
file. Input files may be any of the following:
- file name with .pas suffix: Pascal source file
- file name with .s suffix: assembler source file
- file name with .o suffix: object file
Options:
Options can be flag options or keyword options:
1. Flag options:
-c Requests that object files not be sent to the
link editor.
-F<x>[:<stanza>]
Specifies an alternate configuration file name
as <x> and an optional stanza name as <stanza>.
If the stanza name is not specified, xlp is used.
-g Produces information for the debugger.
-I<dir> Specifies the search path for include files.
-o<name> Specifies the name of the object file as <name>.
-O Requests code optimization during compilation.
-O2 Same as -O
-O3 Perform the -O level optimization and additional
optimizations that are memory or compile time
intensive.
-p Sets up the object file for profiling.
-pg Includes BSD profiling support code.
-S Generates an assembler file (.s) for each source
file, as opposed to the executable file that is
generated when this option is not specified. The
resulting .s files can be assembled to produce
object files (.o) or an executable file (a.out).
-U Preserves upper case and lower case letters in
Pascal source code.
-v Displays language processing commands as they
are invoked by xlp.
-y<x> Specifies how floating point expressions are
rounded when they are evaluated during
compilation. The rounding method is specified
as <x>, which may be any one of the following:
d Do not round
m Round toward minus infinity
p Round toward plus infinity
n Round to nearest
z Round toward zero
-# Displays language processing commands but does
not invoke them.
Flag options must appear exactly as shown here.
2. Keyword options:
Keyword options are specified in one of the following ways:
-q<option>
-q<option>=<parameter>
-q<option>=<parameter>:<parameter>
where <option> is an option name and <parameter> is a
parameter value.
Keyword options with no parameters represent switches
that may be either on or off. The keyword by itself turns
the switch on, and the keyword preceded by the letters NO
turns the switch off. For example, -qLIST tells the
compiler to produce a listing and -qNOLIST tells the
compiler not to produce a listing. If an option that
represents a switch is set more than once, the compiler
uses the last setting.
Keyword option and parameter names may appear in either
UPPER CASE or lower case letters in the xlp command.
Some of the names may be abbreviated. These descriptions
show some of the letters in upper case and some in lower
case. The letters shown in upper case must appear when the
name appears in an xlp command. The letters shown in lower
case may appear or they may be omitted.
For example, the option shown as "SPILLsize=n" may appear
in the xlp command in any of these ways:
SPILL=n spill=n SPILLSIZE=n spillsize=n
OPTIONS AFFECTING THE OBJECT CODE:
ARCH
The ARCH option specifies the architecture on which the
executable program will be run. You can specify the
architecture using the following values:
COM Produces an object that contains instructions
that run on all the POWER, POWER2 and PowerPC
hardware platforms.
PPC Produces an object that contains instructions
that run on any of the 32-bit PowerPC hardware
platforms.
PWR Produces an object that contains instructions
that run on any of the POWER hardware platforms.
PWR2 Produces an object that contains instructions
that run on the POWER2 hardware platforms.
PWRX Same as PWR2.
CHECK
CHECK generates trap code to check for error conditions
while the program is running. CHECK also enables %CHECK
directives to control whether the compiler generates trap
code for specific conditions. NOCHECK leaves out the trap
code and also causes the compiler to ignore %CHECK
directives. The default is CHECK.
COMPACT
COMPACT reduces optimizations that increase code size.
The default is NOCOMPACT.
DBCS
DBCS allows the compiler to accept double byte characters
in literals and comments. NODBCS does not allow the compiler
to accept double byte characters. The default is NODBCS.
DBG
DBG puts information that the symbolic debugger needs into the
object code. The debugger can access variables and routines
by name when object code is compiled with option DBG.
NODBG does not put debugger information into the object code.
The default is NODBG. The -g flag is equivalent to DBG.
DDNAME
DDNAME controls how the compiler generates DDNAMEs for files.
DDNAME has one parameter, which may be one of the following:
UNIQUE Generate distinct DDNAMEs for all files.
DDNAME=UNIQUE is the default for LANGLVL=STANDARD.
COMPAT Generate DDNAMEs that are compatible with DDNAMEs
generated by VS Pascal. DDNAME=COMPAT is the default
for LANGLVL=VS.
EXTCHK
EXTCHK puts information into the object code that lets the
linkage editor check for conflicts between the declarations
of external identifiers in different programs and segments.
NOEXTCHK leaves that information out of the object code.
The default is EXTCHK.
FLOAT
FLOAT specifies various floating-point suboptions. Suboptions
include:
HSFLT Never round single-precision expressions,
and do not perform range checking for floating-
point to integer conversions.
HSSNGL Round single-precision expressions only when the
results are stored in real memory locations.
NANS Detect conversion of single-precision NaNS to
double precision.
NOFOLD Suppress compile-time evaluation of constant
floating-point evaluation.
NOMAF Suppress generation of multiply-add instructions.
RNDSNGL Ensure strict adherence to IEEE standard. That is,
all operations on single-precision values produce
results that remain in single precision.
RRM Specify run-time rounding mode. Compile with this
option if the run-time rounding mode is round toward
minus infinity, round toward positive infinity, or
not known.
RSQRT Change a division by the result of a square root
operation into a multiply by the reciprocalof the
square root.
SPNANS Detect conversion of single-precision NaNS to double
precision.
FLTTRAP
FLTTRAP option specifies enhanced detection of floating-point
exceptions. Suboptions allow the specification of specific
floating-point exception types to detect, the automatic enabling
of exceptions, and imprecise detection of exceptions. Suboptions
include:
OVerflow Detect floating-point overflow
UNDerflow Detect floating-point underflow
ZEROdivide Detect floating-point division by zero
INValid Detect floating-point invalid operation
INEXact Detect floating-point inexact
ENable Enable the specified exceptions
IMPrecise Imprecise exception detection
FOLD
FOLD evaluates floating point expressions with constant operands
during compilation. NOFOLD generates code to evaluate all
floating point operations even if the operands are constants.
The default is FOLD.
FPRET
FPRET controls how code is generated to process floating point
values returned by functions. FPRET has one parameter, which
specifies where functions place floating point return values
and also where function calls expect to find floating point
return values. The parameter may be one of the following:
STD FPRET=STD generates code that puts floating point
return values of functions both in general registers
and in floating point registers. In addition, it
generates code for function calls that expects to
find floating point return values both in general
registers and in floating point registers (default).
RETURN FPRET=RETURN generates code that puts floating point
return values of functions both in general registers
and in floating point registers. In addition, generates
code for function calls that expects to find floating
point return values only in floating point registers.
FAST FPRET=FAST generates code that puts floating point
return values of functions only in floating point
registers. In addition, generates code for function
calls that expects to find floating point return
values only in floating point registers.
IEEE
The IEEE option controls how floating point arithmetic is
done during compilation. The IEEE option may have either one
or two parameters. The first parameter specifies the direction
of rounding. The second parameter specifies whether strict
compliance with IEEE rules must be followed when calculating
intermediate results within expressions.
The first parameter may have the following values:
Nearest Round towards Nearest (default).
Plus Round to Plus infinity.
Minus Round towards Minus infinity.
Zero Round towards Zero.
The second parameter specifies Strict compliance with IEEE
floating point arithmetic rules and causes all intermediate
results to be rounded to single precision. The second parameter
may have the following values:
Comply Intermediate results must be rounded to single
precision, which is the same as Pascal SHORTREAL.
Nocomply Intermediate results may be double precision,
which is the same as Pascal REAL.
LANGLVL
LANGLVL controls which version of the Pascal language the
compiler processes. LANGLVL has one parameter, which specifies
the version of Pascal:
VS IBM VS Pascal (default).
STANDard The 1983 ANSI and IEEE Standard Pascal.
LOG
LOG prepares a log of floating point exceptions that happen
during compilation. NOLOG deletes the floating point exception
log. The default is NOLOG.
MAF
MAF allows the compiler to generate combined multiply and add
floating point operations. NOMAF makes the compiler generate
separate multiply operations and add operations. The default
is MAF.
MAXMEM=<n>
Limit the amount of memory used by space intensive optimizations
to <n> kilobytes, where <n> is a positive integer. Specifying
NOMAXMEM may be used to indicate unlimited memory usage. The
default is MAXMEM=2048.
MBCS
MBCS allows the compiler to accept multi byte characters
in literals and comments. NOMBCS does not allow the compiler
to accept multi byte characters. The default is NOMBCS.
MIXED
MIXED keeps identifiers in mixed upper case and lower case
letters exactly as they appear in source code. MIXED treats
identifiers that are the same except for differences between
upper and lower case letters as different identifiers.
NOMIXED converts all letters in identifiers to lower case.
The default is NOMIXED.
OPT=<n>
OPT has one parameter, which sets the level of compiler
optimization. The parameter <n> must be either 0, 2 or 3.
The -O flag is equivalent to OPT=2. The default is OPT=0.
RRM
RRM will prevent the compiler from doing certain floating
point optimizations with combinations of multiply and
subtraction operations. It should be used when the
Run-time Rounding Mode is unknown or will be round toward
plus or minus infinity.
SPILLsize=<n>
SPILLsize has one parameter, <n>, which sets the size of the
register spill area allocated for each routine call while
the program is running. The default is SPILL=512.
STRICT
STRICT ensures that optimizations done by the -O3 option
do not alter the semantics of a program. The default is
NOSTRICT with -O3.
TRACEID
TRACEID includes routine names in traceback tables so the TRACE
procedure can display routine names. NOTRACEID removes routine
names from traceback tables. With NOTRACEID the display produced
by the TRACE procedure does not contain routine names.
The default is TRACEID.
TUNE
The TUNE option specifies the architecture on which the
executable program is optimized. You can specify the
architecture using the following values:
PPC601 Produces an object optimized for all the
PowerPC601 processors.
PWR Produces an object optimized for the POWER
hardware platforms.
PWR2 Produces an object optimized for the POWER2
hardware platforms.
PWRX Same as PWR2.
PRIME FILE HANDLING:
PRIME=fn
PRIME specifies that the compiler dictionary is initialized with
declarations from a prime file. PRIME has one parameter, which
specifies the name of the prime file. NOPRIME specifies that the
compiler dictionary is not initialized from a prime file.
The default is PRIME=xlp_prime.
PRIMEOUT=fn
PRIMEOUT specifies that the compiler creates a prime file from
the compiled declarations. PRIMEOUT has one parameter, which
specifies the name of the prime file to be created.
OPTIONS DESCRIBING COMPILER OUTPUT:
MARgins=<left>:<right>
MARGINS specifies that only columns <left> through <right>
in the source code file are processed by the compiler.
The default is MARGINS=1:256.
LISTING AND DISPLAY OPTIONS:
ATTRibutes
ATTRibutes includes the attributes of all identifiers that are
used by the program in the listing file. ATTR=FULL includes
the attributes of all identifiers that appear in the program,
whether they are used or not. NOATTR specifies that attributes
of identifiers do not appear in the listing.
The default is NOATTR.
FLAG=<n>
FLAG=<n>:<m>
FLAG=<n> with one parameter specifies that no diagnostic
messages whose severity is less than <n> are included in the
listing file. FLAG=<n>:<m> with two parameters specifies that
no diagnostic messages whose severity is less than <m> are
displayed on the standard output.
The severity parameters <n> and <m> may be any of the following,
starting from the least severe:
Q All messages
I Information messages
W Warning messages
E Error messages
S Severe error messages
U Unrecoverable compiler error messages.
HALT=<n>
HALT=<n> specifies that the compiler stops compilation after
any phase in which a diagnostic message of severity <n> or
higher is issued. The severity parameter <s> may be any of
the following, starting from the least severe:
I Information messages
W Warning messages
E Error messages
S Severe Error messages
LIST
LIST produces an assembly listing of the object code. LIST
also enables %LIST directives to control assembly listing of
separate routines. NOLIST specifies that no assembly listing
is included in the listing. The default is NOLIST.
OPTIONs
OPTION puts a list of all of the options that are in effect
into the listing. NOOPTIONS specifies that no options are put
into the listing. The default is NOOPTIONs.
QUIET
QUIET specifies that the compiler does not display any
information besides diagnostic messages to the standard
output. NOQUIET specifies that the compiler displays timing
information for each phase of the compiler to the standard
output. The default is QUIET.
SOURCE
SOURCE includes the source code in the listing file.
NOSOURCE leaves source code out of the listing file.
The default is NOSOURCE.
WRITE
WRITE enables %WRITE directives to display output on the
standard output. NOWRITE specifies that %WRITE directives
do not display any output. The default is NOWRITE.
XREF
XREF includes cross reference information about identifiers
that are used by the program in the listing file.
XREF=FULL includes cross reference information about all
identifiers that appear in the program, whether they are
used or not. NOXREF specifies that cross reference information
does not appear in the listing.
The default is NOXREF.
MISCELLANEOUS OPTIONS:
WAIT=<n>
WAIT specifies the maximum wait time in seconds for a network
license token. NOWAIT specifies indefinite wait time. The default
is NOWAIT.
COMPILER RETURN VALUE:
The compiler's return value gives the severity of the most severe
diagnostic message that was issued:
0 There were no diagnostic messages.
1 There is a minor error in the program.
2 The compiler detected an error that will cause a
trap if the program runs.
3 There is a severe error in the program, and the
compiler did not generate object code.
4 to 8 There was an error in the compiler itself, such as
an internal table overflow. The compiler did not
generate object code.
Pascal-XSC
Compiler pxsc
Compiler options are: default:
+v verbose, Compiler reports, what he is doing
No 'Compiling ...', but path & module info
-v Compiler is quiet
+l listing, direct messages to file *.lst -l
-l display messages on terminal -l
+w warning, report warnings +w
-w suppress warnings +w
+m merge, merge source text into code -m
-m no source text in code -m
+a abort, abort compilation in case of error -a
-a continue compilation in case of error -a
+f fastfor, for-loops for vector processors -f
-f standard conform for-loops -f
+c code, code generation in any case
code generation only if error free
-c no code generation
+x index, generate index checks +x
-x no index checks +x
+n number, generate line numbers into code +n
-n no line numbers in code +n
+d dump, internal dump, for debugging only -d
-d no dump -d
+t terminal,write code to stdout -t
-t write code to file -t
+r rename, rename Pascal identifiers +r
-r preserve Pascal identifiers +r
+s srcdir, output to directory of source file -s
-s output to current directory (working dir) -s