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
- C Language Options
- C++ Language Options
- Warning Options
- Debugging Options
- Optimization Options
- Preprocessor Options
- Assembler Option
- Linker Options
- Directory Options
- Target Options
- Machine Dependent Options

- M680x0 Options
- VAX Options
- SPARC Options
- Convex Options
- AMD29K Options
- ARM Options
- M88K Options
- IBM RS/6000 and PowerPC Options
- IBM RT Options
- MIPS Options
- Intel 386 Options
- HPPA Options
- Intel 960 Options
- DEC Alpha Options
- Clipper Options
- SH Options
- H8/300 Options
- System V Options

- Code Generation 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