Created
December 8, 2020 01:37
-
-
Save mattbruv/ab8ab3ab4f86ce94cadcd4b9348c0de9 to your computer and use it in GitHub Desktop.
Metrowerks C/C++ Compiler for Embedded PowerPC. Version 2.4.7 build 92 Help
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Metrowerks C/C++ Compiler for Embedded PowerPC. | |
Copyright (c) 2002, Metrowerks Corporation | |
All rights reserved. | |
Version 2.4.7 build 92 | |
Runtime Built: Sep 16 2002 15:14:48 | |
Please enter 'mwcceppc.exe -help' for information about options. | |
------------------------------------------------------------------------------- | |
General Command-Line Options | |
Please see '-help usage' for details about the meaning of this help. | |
------------------------------------------------------------------------------- | |
-help [keyword[,...]] # global; for this tool; | |
# display help | |
usage # show usage information | |
[no]spaces # insert blank lines between options in | |
# printout | |
all # show all standard options | |
[no]normal # show only standard options | |
[no]obsolete # show obsolete options | |
[no]ignored # show ignored options | |
[no]deprecated # show deprecated options | |
[no]meaningless # show options meaningless for this target | |
[no]compatible # show compatibility options | |
opt[ion]=name # show help for a given option; for 'name', | |
# maximum length 63 chars | |
search=keyword # show help for an option whose name or help | |
# contains 'keyword' (case-sensitive); for | |
# 'keyword', maximum length 63 chars | |
group=keyword # show help for groups whose names contain | |
# 'keyword' (case-sensitive); for 'keyword', | |
# maximum length 63 chars | |
tool=keyword[,...] # categorize groups of options by tool; | |
# default | |
all # show all options available in this tool | |
this # show options executed by this tool; | |
# default | |
other|skipped # show options passed to another tool | |
both # show options used in all tools | |
# | |
# | |
-version # global; for this tool; | |
# show version, configuration, and build date | |
-timing # global; collect timing statistics | |
-progress # global; show progress and version | |
-v[erbose] # global; verbose information; cumulative; | |
# implies -progress | |
-search # global; search access paths for source files | |
# specified on the command line; may specify | |
# object code and libraries as well; this | |
# option provides the IDE's 'access paths' | |
# functionality | |
-[no]wraplines # global; word wrap messages; default | |
-maxerrors max # specify maximum number of errors to print, zero | |
# means no maximum; default is 0 | |
-maxwarnings max # specify maximum number of warnings to print, | |
# zero means no maximum; default is 0 | |
-msgstyle keyword # global; set error/warning message style | |
mpw # use MPW message style | |
std # use standard message style; default | |
gcc # use GCC-like message style | |
IDE # use CW IDE-like message style | |
parseable # use context-free machine-parseable message | |
# style | |
# | |
-[no]stderr # global; use separate stderr and stdout streams; | |
# if using -nostderr, stderr goes to stdout | |
------------------------------------------------------------------------------- | |
Preprocessing, Precompiling, and Input File Control Options | |
------------------------------------------------------------------------------- | |
-c # global; compile only, do not link | |
-[no]codegen # global; generate object code | |
-[no]convertpaths # global; interpret #include filepaths specified | |
# for a foreign operating system; i.e., | |
# <sys/stat.h> or <:sys:stat.h>; when enabled, | |
# '/' and ':' will separate directories and | |
# cannot be used in filenames (note: this is | |
# not a problem on Win32, since these | |
# characters are already disallowed in | |
# filenames; it is safe to leave the option | |
# 'on'); default | |
-cwd keyword # specify #include searching semantics: before | |
# searching any access paths, the path | |
# specified by this option will be searched | |
proj # begin search in current working directory; | |
# default | |
source # begin search in directory of source file | |
explicit # no implicit directory; only search '-I' or | |
# '-ir' paths | |
include # begin search in directory of referencing | |
# file | |
# | |
-D+ | -d[efine] # cased; define symbol 'name' to 'value' if | |
name[=value] # specified, else '1' | |
-[no]defaults # global; passed to linker; | |
# same as '-[no]stdinc'; default | |
-dis[assemble] # global; passed to all tools; | |
# disassemble files to stdout | |
-E # global; cased; preprocess source files | |
-EP # global; cased; preprocess and strip out #line | |
# directives | |
-ext extension # global; specify extension for generated object | |
# files; with a leading period ('.'), appends | |
# extension; without, replaces source file's | |
# extension; for 'extension', maximum length 14 | |
# chars; default is none | |
-fatext # global; use 'eppc.o' as extension for generated | |
# object files | |
-gccinc[ludes] # global; adopt GCC #include semantics: add '-I' | |
# paths to system list if '-I-' is not | |
# specified, and search directory of | |
# referencing file first for #includes (same as | |
# '-cwd include') | |
-i- | -I- # global; change target for '-I' access paths to | |
# the system list; implies '-cwd explicit'; | |
# while compiling, user paths then system paths | |
# are searched when using '#include "..."; only | |
# system paths are searched with '#include | |
# <...>' | |
-I+ | -i path # global; cased; append access path to current | |
# #include list(see '-gccincludes' and '-I-') | |
-include file # prefix text file or precompiled header onto all | |
# source files | |
-ir path # global; append a recursive access path to | |
# current #include list | |
-[no]keepobj[ects] # global; keep object files generated after | |
# invoking linker; if disabled, intermediate | |
# object files are temporary and deleted after | |
# link stage; objects are always kept when | |
# compiling | |
-M # global; cased; scan source files for | |
# dependencies and emit Makefile, do not | |
# generate object code | |
-MM # global; cased; like -M, but do not list system | |
# include files | |
-MD # global; cased; like -M, but write dependency | |
# map to a file and generate object code | |
-MMD # global; cased; like -MD, but do not list system | |
# include files | |
-make # global; scan source files for dependencies and | |
# emit Makefile, do not generate object code | |
-nofail # continue working after errors in earlier files | |
-nolink # global; compile only, do not link | |
-noprecompile # do not precompile any files based on the | |
# filename extension | |
-nosyspath # global; treat #include <...> like #include | |
# "..."; always search both user and system | |
# path lists | |
-o file|dir # specify output filename or directory for object | |
# file(s) or text output | |
-P # global; cased; preprocess and send output to | |
# file; do not generate code | |
-precompile file|dir # generate precompiled header from source; write | |
# header to 'file' if specified, or put header | |
# in 'dir'; if argument is "", write header to | |
# source-specified location; if neither is | |
# defined, header filename is derived from | |
# source filename; note: the driver can tell | |
# whether to precompile a file based on its | |
# extension; '-precompile file source' then is | |
# the same as '-c -o file source' | |
-preprocess # global; preprocess source files | |
-prefix file # prefix text file or precompiled header onto all | |
# source files | |
-S # global; cased; passed to all tools; | |
# disassemble and send output to file | |
-[no]stdinc # global; use standard system include paths | |
# (specified by the environment variable | |
# %MWCIncludes%); added after all system '-I' | |
# paths; default | |
-U+ | -u[ndefine] name # cased; undefine symbol 'name' | |
------------------------------------------------------------------------------- | |
Front-End C/C++ Language Options | |
------------------------------------------------------------------------------- | |
-ansi keyword # specify ANSI conformance options, overriding | |
# the given settings | |
off # same as '-stdkeywords off', '-enum min', and | |
# '-strict off'; default | |
on|relaxed # same as '-stdkeywords on', '-enum min', and | |
# '-strict on' | |
strict # same as '-stdkeywords on', '-enum int', and | |
# '-strict on' | |
# | |
-ARM on|off # check code for ARM (Annotated C++ Reference | |
# Manual) conformance; default is off | |
-bool on|off # enable C++ 'bool' type, 'true' and 'false' | |
# constants; default is on | |
-char keyword # set sign of 'char' | |
signed # chars are signed; default | |
unsigned # chars are unsigned | |
# | |
-Cpp_exceptions on|off # enable or disable C++ exceptions; default is on | |
-dialect | -lang keyword # specify source language | |
c # treat source as C always | |
c++ # treat source as C++ always | |
ec++ # generate warnings for use of C++ features | |
# outside Embedded C++ subset (implies | |
# 'dialect cplus') | |
# | |
-enum keyword # specify word size for enumeration types | |
min # use minimum sized enums; default | |
int # use int-sized enums | |
# | |
-inline keyword[,...] # specify inline options | |
on|smart # turn on inlining for 'inline' functions; | |
# default | |
none|off # turn off inlining | |
auto # auto-inline small functions (without | |
# 'inline' explicitly specified) | |
noauto # do not auto-inline; default | |
all # turn on aggressive inlining: same as | |
# '-inline on, auto' | |
deferred # defer inlining until end of compilation | |
# unit; this allows inlining of functions in | |
# both directions | |
level=n # cased; inline functions up to 'n' levels | |
# deep; level 0 is the same as '-inline on'; | |
# for 'n', range 0 - 8 | |
# | |
-iso_templates on|off # enable ISO C++ template parser (note: this | |
# requires a different MSL C++ library); | |
# default is off | |
-[no]mapcr # reverse mapping of '\n' and '\r' so that | |
# '\n'==13 and '\r'==10 (for Macintosh MPW | |
# compatability) | |
-msext keyword # [dis]allow Microsoft VC++ extensions | |
on # enable extensions: redefining macros, | |
# allowing XXX::yyy syntax when declaring | |
# method yyy of class XXX, | |
# allowing extra commas, | |
# ignoring casts to the same type, | |
# treating function types with equivalent | |
# parameter lists but different return types | |
# as equal, | |
# allowing pointer-to-integer conversions, | |
# and various syntactical differences | |
off # disable extensions; default on non-x86 | |
# targets | |
# | |
-[no]multibyte[aware] # enable multi-byte character encodings for | |
# source text, comments, and strings | |
-once # prevent header files from being processed more | |
# than once | |
-pragma ... # define a pragma for the compiler such as | |
# "#pragma ..." | |
-r[equireprotos] # require prototypes | |
-relax_pointers # relax pointer type-checking rules | |
-RTTI on|off # select run-time typing information (for C++); | |
# default is on | |
-som # enable Apple's Direct-to-SOM implementation | |
-som_env_check # enables automatic SOM environment and new | |
# allocation checking; implies -som | |
-stdkeywords on|off # allow only standard keywords; default is off | |
-str[ings] keyword[,...] # specify string constant options | |
[no]reuse # reuse strings; equivalent strings are the | |
# same object; default | |
[no]pool # pool strings into a single data object | |
[no]readonly # make all string constants read-only | |
# | |
-strict on|off # specify ANSI strictness checking; default is | |
# off | |
-trigraphs on|off # enable recognition of trigraphs; default is off | |
-wchar_t on|off # enable wchar_t as a built-in C++ type; default | |
# is on | |
------------------------------------------------------------------------------- | |
Optimizer Options | |
Note that all options besides '-opt off|on|all|space|speed|level=...' | |
(marked with 'compatibility') are for backwards compatibility or special | |
needs only; other optimization options may be superceded by use of '-opt | |
level=xxx'. | |
------------------------------------------------------------------------------- | |
-O # same as '-O2' | |
-O+keyword[,...] # cased; control optimization; you may combine | |
# options as in '-O4,p' | |
0 # same as '-opt off' | |
1 # same as '-opt level=1' | |
2 # same as '-opt level=2, peephole' | |
3 # same as '-opt level=3, peephole' | |
4 # same as '-opt level=4, peephole, schedule' | |
p # same as '-opt speed' | |
s # same as '-opt space' | |
# | |
-opt keyword[,...] # specify optimization options | |
off|none # suppress all optimizations; default | |
on # same as -opt level=2, peephole | |
all|full # same as -opt speed,level=4, peephole, | |
# schedule | |
[no]space # optimize for space | |
[no]speed # optimize for speed | |
l[evel]=num # set optimization level: | |
# level 0: global register allocation only | |
# for temporary values | |
# level 1: adds dead code elimination | |
# level 2: adds common subexpression | |
# elimination and copy propagation | |
# level 3: adds loop transformations, | |
# strength reducation, and loop-invariant | |
# code motion | |
# level 4: adds repeated common | |
# subexpression elimination and | |
# loop-invariant code motion; for 'num', | |
# range 0 - 4; default is 0 | |
[no]cse | # common subexpression elimination | |
[no]commonsubs # | |
[no]deadcode # removal of dead code | |
[no]deadstore # removal of dead assignments | |
[no]lifetimes # computation of variable lifetimes | |
[no]loop[invariants] # removal of loop invariants | |
[no]prop[agation] # propagation of constant and copy assignments | |
[no]strength # strength reduction; reducing multiplication | |
# by an index variable into addition | |
[no]dead # same as -opt [no]deadcode and [no]deadstore | |
[no]peep[hole] # peephole optimization | |
display|dump # display list of active optimizations | |
# | |
------------------------------------------------------------------------------- | |
Embedded PowerPC Options | |
------------------------------------------------------------------------------- | |
-align keyword[,...] # specify structure/array alignment options | |
power[pc] # PowerPC alignment; default | |
mac68k # Macintosh 680x0 alignment | |
mac68k4byte # Mac 680x0 4-byte alignment | |
array[members] # align members of arrays | |
# | |
-common on|off # move all uninitialized data into a common | |
# section; default is off | |
-fp_contract | -maf on| # generate fused multiply-add instructions; | |
off # default is off | |
-func_align keyword # specify function alignment | |
4 # 4 bytes; default | |
8 # 8 bytes | |
16 # 16 bytes | |
32 # 32 bytes | |
64 # 64 bytes | |
128 # 128 bytes | |
# | |
-pool[data] on|off # pool like data objects; default is on | |
-profile on|off # generate calls to at function entry and exit | |
# for use with a profiler; default is off | |
-rostr | -readonlystrings # make string constants read-only | |
-schedule on|off # schedule instructions; default is off | |
-use_lmw_stmw on|off # use multiple-word load/store instructions for | |
# function prologue/epilogue; note: this option | |
# only applies to big-endian machines; default | |
# is off | |
-vector keyword[,...] # specify Altivec vectorization options | |
on # turn on support for vector types / codegen | |
off # turn off vectorization; default | |
vrsave # use VRSAVE prologue/epilogue code, implies | |
# '-vector on' | |
novrsave # do not use VRSAVE prologue/epilogue code; | |
# default | |
# | |
------------------------------------------------------------------------------- | |
Debugging Control Options | |
------------------------------------------------------------------------------- | |
-g # global; cased; generate debugging information; | |
# same as '-sym full' | |
-sym keyword[,...] # global; specify debugging options | |
off # do not generate debugging information; | |
# default | |
on # turn on debugging information | |
full[path] # store full paths to source files | |
# | |
------------------------------------------------------------------------------- | |
C/C++ Warning Options | |
------------------------------------------------------------------------------- | |
-w[arn[ings]] # global; for this tool; | |
keyword[,...] # warning options | |
off # passed to all tools; | |
# turn off all warnings | |
on # passed to all tools; | |
# turn on most warnings | |
[no]cmdline # passed to all tools; | |
# command-line driver/parser warnings | |
[no]err[or] | # passed to all tools; | |
[no]iserr[or] # treat warnings as errors | |
all # turn on all warnings, require prototypes | |
[no]pragmas | # illegal #pragmas | |
[no]illpragmas # | |
[no]empty[decl] # empty declarations | |
[no]possible | # possible unwanted effects | |
[no]unwanted # | |
[no]unusedarg # unused arguments | |
[no]unusedvar # unused variables | |
[no]unused # same as -w [no]unusedarg,[no]unusedvar | |
[no]extracomma | # extra commas | |
[no]comma # | |
[no]pedantic | # pedantic error checking | |
[no]extended # | |
[no]hidevirtual | # hidden virtual functions | |
[no]hidden[virtual] # | |
[no]implicit[conv] # implicit arithmetic conversions | |
[no]notinlined # 'inline' functions not inlined | |
[no]largeargs # passing large arguments to unprototyped | |
# functions | |
[no]structclass # inconsistent use of 'class' and 'struct' | |
[no]padding # padding added between struct members | |
[no]notused # result of non-void-returning function not | |
# used | |
[no]unusedexpr # use of expressions as statements without | |
# side effects | |
[no]ptrintconv # conversions from pointers to integers, and | |
# vice versa | |
display|dump # display list of active warnings | |
# | |
------------------------------------------------------------------------------- | |
Embedded PPC Project Options | |
------------------------------------------------------------------------------- | |
-big # generate code and link for a big-endian target; | |
# default | |
-little # generate code and link for a little-endian | |
# target | |
-proc[essor] keyword # specify processor for scheduling and inline | |
# assembler | |
401 # | |
403 # | |
505 # | |
509 # | |
555 # | |
601 # | |
602 # | |
603 # | |
603e # | |
604 # | |
604e # | |
740 # | |
750 # | |
801 # | |
821 # | |
823 # | |
850 # | |
860 # | |
7400 # | |
7450 # | |
8240 # | |
8260 # | |
e500 # | |
gekko # | |
generic # ; default | |
# | |
-fp keyword # specify floating-point code generation options | |
none|off # no floating point | |
soft[ware] # software FP emulation; default | |
hard[ware] # hardware FP codegen | |
fmadd # same as '-fp hard' and '-fp_contract' | |
# | |
-sdatathreshold short # set maximum size in bytes of mutable data | |
# objects before they are moved from small data | |
# sections; default is 8 | |
-sdata[threshold] short # set maximum size in bytes for mutable data | |
# objects before being spilled from small data | |
# section into data section; default is 8 | |
-sdata2[threshold] short # set maximum size in bytes for constant data | |
# objects before being spilled from constant | |
# section into data section; default is 8 | |
-model keyword # specify code model | |
absolute # absolute code and data addressing; default | |
other # other code model | |
# | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment