Contents|Index|Previous|Next

Option Summary

The following documentation lists the options available, and they are grouped by type. Each group of options has corresponding documentation discussing usage of the options.

Overall Options

See Options Controlling the Kind of Output.

-c  -S  -E  -o  file  -pipe  -v  -x   language

C Language Options

See Options Controlling C Dialect.

-ansi  -fallow-single-precision  -fcond-mismatch  
-fno-asm -fno-builtin  -fsigned-bitfields  -fsigned-char
-funsigned-bitfields  -funsigned-char 
-fwritable-strings  -traditional  -traditional-cpp  
-trigraphs

C++ Language Options

See Options that Control C++ Dialect.

-fall-virtual  -fdollars-in-identifiers  
-felide-constructors -fenum-int-equiv  
-fexternal-templates  -ffor-scope  -fno-for-scope  
-fhandle-signatures  -fmemoize-lookups  
-fno-default-inline  -fno-gnu-keywords  
-fnonnull-objects  -foperator-names  -fstrict-prototype
-fthis-is-variable  -nostdinc++  -traditional   +en

Warning Options

See Options to Request or Suppress Warnings.

-fsyntax-only  -pedantic  -pedantic-errors -w -W -Wall  
-Waggregate-return  -Wbad-function-cast  -Wcast-align  
-Wcast-qual  -Wchar-subscript  -Wcomment  -Wconversion  
-Werror  -Wformat -Wid-clash-len  -Wimplicit  -Wimport  
-Winline  -Wlarger-than-len -Wmissing-declarations
-Wmissing-prototypes  -Wnested-externs  -Wno-import  
-Woverloaded-virtual  -Wparentheses  -Wpointer-arith  
-Wredundant-decls  -Wreorder  -Wreturn-type  -Wshadow  
-Wsign-compare  -Wstrict-prototypes  -Wswitch  -Wsynth  
-Wtemplate-debugging   -Wtraditional   -Wtrigraphs
-Wuninitialized  -Wunused -Wwrite-strings

Debugging Options

See Options for Debugging Your Program or GCC.

-a  -ax  -dletters  -fpretend-float  -fprofile-arcs  
-ftest-coverage  -g  -glevel  -gcoff -gdwarf -gdwarf-1  
-gdwarf+1  -gdwarf-2  -ggdb  -gstabs  -gstabs+  
-gxcoff  -gxcoff+  -p   -pg  -print-file-name=library  
-print-libgcc-file-name  -print-prog-name=program  
-print-search-dirs  -save-temps

Optimization Options

See Options that Control Optimization.

-fbranch-probabilities -fcaller-saves
-fcombine-statics -fcse-follow-jumps -fcse-skip-blocks   -fdelayed-branch -fexpensive-optimizations 
-ffast-math  -ffloat-store  -fforce-addr  -fforce-mem  
-ffunction-sections  -finline-functions  
-fkeep-inline-functions  -fno-default-inline  
-fno-defer-pop  -fno-function-cse  -fno-inline  
-fno-peephole  -fomit-frame-pointer
-frerun-cse-after-loop  -fschedule-insns
-fschedule-insns2  -fshorten-lifetimes  -fregmove  
-fstrength-reduce  -fthread-jumps  -funroll-all-loops  
-funroll-loops  -O  -O0  -O1  -O2  -O3

Preprocessor Options

See Options Controlling the Preprocessor.

-Aquestion(answer) -C -dD   -dM   -dN   -Dmacro[=defn]  
-E  -H   -idirafter  dir -include  file   -imacros file
-iprefix  file -iwithprefix dir -iwithprefixbefore  dir 
-isystem  dir  -M  -MD  -MM  -MMD  -MG  -nostdinc   -P  
-trigraphs  -undef   -Umacro    -Wp, option

Assembler Option

See Passing Options to the Assembler.

-Wa, option

Linker Options

See Options for Linking.

object-file-name  -llibrary
-nostartfiles   -nodefaultlibs   -nostdlib
-s   -static   -shared   -symbolic
-Wl, option   -Xlinker option
-u symbol

Directory Options

See Options for Directory Search.

-Bprefix    -Idir   -I-   -Ldir

Target Options

See Specifying Target Machine and Compiler Version.

-bmachine   -Vversion

Machine Dependent Options

See Hardware Models and Configurations.

M680x0 Options (see M680x0 Options)

-m68000  -m68020  -m68020-40 -m68030 -m68040  
-m68060  -m5200  -m68881  -mbitfield -mc68000 -mc68020 
-mfpa -mnobitfield  -mrtd -mshort -msoft-float

VAX Options (see VAX Options)

-mg -mgnu -munix

SPARC Options (see SPARC Options)

-mcpu=cpu type   -mtune=cpu type
-mapp-regs  -mbroken-saverestore  -mcypress -mepilogue  
-mflat -mfpu -mfullany   -mhard-float   -mhard-quad-float
-mimpure-text -mint32  -mint64  -mliveg0  -mlong32 -mlong64 -mmedlow -mmedany -mno-app-regs   -mno-epilogue   -mno-flat -mno-fpu  -mno-impure-text  -mno-stack-bias
-mno-unaligned-doubles  -msoft-float  -msoft-quad-float
-msparclite  -mstack-bias  -msupersparc -munaligned-doubles -mv8

Convex Options (see Convex Options)

-mc1 -mc2 -mc32 -mc34 -mc38 -margcount -mnoargcount
-mlong32 -mlong64 -mvolatile-cache -mvolatile-nocache

AMD29K Options (see AMD29K Options)

-m29000 -m29050 -mbw -mnbw -mdw -mndw -mlarge -mnormal
-msmall -mkernel-registers -mno-reuse-arg-regs
-mno-stack-check -mno-storem-bug -mreuse-arg-regs
-msoft-float -mstack-check -mstorem-bug -muser-registers

ARM Options (see ARM Options)

-mapcs-frame -mapcs-26 -mapcs-32 -mlittle-endian -mbig-endian -mwords-little-endian -mshort-load-bytes
-mno-short-load-bytes -msoft-float -mhard-float
-mbsd -mxopen -mno-symrename

M88K Options (see M88K Options)

-m88000 -m88100 -m88110 -mbig-pic
-mcheck-zero-division -mhandle-large-shift
-midentify-revision -mno-check-zero-division
-mno-ocs-debug-info -mno-ocs-frame-position
-mno-optimize-arg-area -mno-serialize-volatile
-mno-underscores -mocs-debug-info
-mocs-frame-position -moptimize-arg-area
-mserialize-volatile -mshort-data- num -msvr3
-msvr4 -mtrap-large-shift -muse-div-instruction
-mversion-03.00 -mwarn-passed-structs

IBM RS/6000 and PowerPC Options (see IBM RS/6000 and PowerPC Options)

-mcpu=cpu type
-mtune=cpu type -mpower -mno-power -mpower2 -mno-power2
-mpowerpc -mno-powerpc -mpowerpc-gpopt -mno-powerpc-gpopt
-mpowerpc-gfxopt -mno-powerpc-gfxopt -mnew-mnemonics -mno
-new-mnemonics -mfull-toc -mminimal-toc -mno-fop-in-toc
-mno-sum-in-toc -mxl-call -mno-xl-call  -mthreads  -mpe
-msoft-float -mhard-float -mmultiple -mno-multiple
-mstring -mno-string -mbit-align -mno-bit-align
-mstrict-align -mno-strict-align -mrelocatable
-mno-relocatable -mrelocatable-lib -mno-relocatable-lib
-mtoc -mno-toc -mtraceback -mno-traceback
-mlittle -mlittle-endian -mbig -mbig-endian
-mcall-aix -mcall-sysv -mprototype -mno-prototype
-msim -mmvme -memb -msdata  -msdata=opt -G num

IBM RT Options (see IBM RT Options)

-mcall-lib-mul -mfp-arg-in-fpregs -mfp-arg-in-gregs
-mfull-fp-blocks -mhc-struct-return -min-line-mul
-mminimum-fp-blocks -mnohc-struct-return

MIPS Options (see MIPS Options)

-mabicalls -mcpu=cpu type -membedded-data
-membedded-pic -mfp32 -mfp64 -mgas -mgp32 -mgp64
-mgpopt -mhalf-pic -mhard-float -mint64 -mips1
-mips2 -mips3 -mlong64 -mlong-calls -mmemcpy
-mmips-as -mmips-tfile -mno-abicalls
-mno-embedded-data -mno-embedded-pic -mno-gpopt
-mno-long-calls -mno-memcpy -mno-mips-tfile
-mno-rnames -mno-stats -mrnames -msoft-float -m4650
-msingle-float -mmad -mstats -EL -EB -G num -nocpp

i386 Options (see Intel 386 Options)

-m486 -m386 -mieee-fp -mno-fancy-math-387
-mno-fp-ret-in-387 -msoft-float -msvr3-shlib
-mno-wide-multiply -mrtd -malign-double
-mreg-alloc=list -mregparm= num -malign-jumps=num
-malign-loops=num -malign-functions=num

HPPA Options (see HPPA Options)

-mdisable-fpregs -mdisable-indexing
-mfast-indirect-calls  -mgas
-mjump-in-delay
-mlong-load-store -mno-disable-fpregs -mno-disable-indexing
-mfast-indirect-calls  -mno-gas   -mno-jump-in-delay
-mno-long-load-store -mno-portable-runtime -mno-soft-float
-mno-space -mno-space-regs -msoft-float
-mpa-risc-1-0 -mpa-risc-1-1 -mportable-runtime
-mschedule=list -mspace -mspace-regs

Intel 960 Options (see Intel 960 Options)

-mcpu type -masm-compat -mclean-linkage
-mcode-align -mcomplex-addr -mleaf-procedures
-mic-compat -mic2.0-compat -mic3.0-compat
-mintel-asm -mno-clean-linkage -mno-code-align
-mno-complex-addr -mno-leaf-procedures
-mno-old-align -mno-strict-align -mno-tail-call
-mnumerics -mold-align -msoft-float -mstrict-align
-mtail-call

DEC Alpha Options (see DEC Alpha Options)

-mfp-regs -mno-fp-regs -mno-soft-float
-msoft-float  -mieee  -mieee-with-inexact  -mieee-conformant
-mfp-trap-mode  -mfp-rounding-mode  -mtrap-precision
-mbuild-constants

Clipper Options (see Clipper Options)

-mc300 -mc400

H8/300 Options (see H8/300 Options)

-mrelax -mh -mint32 -malign-300

SH Options (see SH Options)

-m1  -m2  -m3  -m3e  -mb  -ml  -mrelax

System V Options (see System V Options)

-Qy -Qn -YP,paths -Ym,dir

Code Generation Options

See Options for Code Generation Conventions.

-fcall-saved-reg -fcall-used-reg
-ffixed-reg -finhibit-size-directive
-fno-common -fno-ident -fno-gnu-linker
-fpcc-struct-return -fpic -fPIC
-freg-struct-return -fshared-data -fshort-enums
-fshort-double -funaligned-pointers
-funaligned-struct-hack -fvolatile -fvolatile-global
-fverbose-asm -fpack-struct +e0 +e1