Go forward to Overall Options.
Go up to Invoking GCC.
Option Summary
==============
Here is a summary of all the options, grouped by type. Explanations
are in the following sections.
*Overall Options*
See Options Controlling the Kind of Output: Overall Options.
-c -S -E -o FILE -pipe -v -x LANGUAGE
*C Language Options*
See Options Controlling C Dialect: C Dialect Options.
-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 Controlling C++ Dialect: C++ Dialect Options.
-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: Warning Options.
-fsyntax-only -pedantic -pedantic-errors
-w -W -Wall -Waggregate-return -Wbad-function-cast
-Wcast-align -Wcast-qual -Wchar-subscript -Wcomment
-Wconversion -Wenum-clash -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
-Wstrict-prototypes -Wswitch -Wsynth -Wtemplate-debugging
-Wtraditional -Wtrigraphs -Wuninitialized -Wunused
-Wwrite-strings
*Debugging Options*
See Options for Debugging Your Program or GCC: Debugging Options.
-a -dLETTERS -fpretend-float
-g -gLEVEL -gcoff -gdwarf -gdwarf+
-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: Optimize Options.
-fcaller-saves -fcse-follow-jumps -fcse-skip-blocks
-fdelayed-branch -fexpensive-optimizations
-ffast-math -ffloat-store -fforce-addr -fforce-mem
-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 -fstrength-reduce -fthread-jumps
-funroll-all-loops -funroll-loops
-O -O0 -O1 -O2 -O3
*Preprocessor Options*
See Options Controlling the Preprocessor: Preprocessor Options.
-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: Assembler Options.
-Wa,OPTION
*Linker Options*
See Options for Linking: Link Options.
OBJECT-FILE-NAME -lLIBRARY
-nostartfiles -nodefaultlibs -nostdlib
-s -static -shared -symbolic
-Wl,OPTION -Xlinker OPTION
-u SYMBOL
*Directory Options*
See Options for Directory Search: Directory Options.
-BPREFIX -IDIR -I- -LDIR
*Target Options*
See Target Options.
-b MACHINE -V VERSION
*Machine Dependent Options*
See Hardware Models and Configurations: Submodel Options.
*M680x0 Options*
-m68000 -m68020 -m68020-40 -m68030 -m68040 -m68881
-mbitfield -mc68000 -mc68020 -mfpa -mnobitfield
-mrtd -mshort -msoft-float
*VAX Options*
-mg -mgnu -munix
*SPARC Options*
-mapp-regs -mcypress -mepilogue -mflat -mfpu -mhard-float
-mhard-quad-float -mno-app-regs -mno-flat -mno-fpu
-mno-epilogue -mno-unaligned-doubles
-msoft-float -msoft-quad-float
-msparclite -msupersparc -munaligned-doubles -mv8
SPARC V9 compilers support the following options
in addition to the above:
-mmedlow -mmedany
-mint32 -mint64 -mlong32 -mlong64
-mno-stack-bias -mstack-bias
*Convex Options*
-mc1 -mc2 -mc32 -mc34 -mc38
-margcount -mnoargcount
-mlong32 -mlong64
-mvolatile-cache -mvolatile-nocache
*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*
-mapcs -m2 -m3 -m6 -mbsd -mxopen -mno-symrename
*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
*RS/6000 and PowerPC Options*
-mcpu=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
-msoft-float -mhard-float -mmultiple -mno-multiple
-mstring -mno-string -mbit-align -mno-bit-align
-mstrict-align -mno-strict-align -mrelocatable -mno-relocatable
-mtoc -mno-toc -mtraceback -mno-traceback
-mlittle -mlittle-endian -mbig -mbig-endian
-mcall-aix -mcall-sysv -mprototype
*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*
-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*
-m386 -m486 -mno-fancy-math-387
-mno-fp-ret-in-387 -mno-ieee-fp -mno-wide-multiply
-mprofiler-epilogue -mrtd -msoft-float
-msvr3-shlib -malign-double
-mreg-alloc=LIST -mregparm=NUM
-malign-jumps=NUM -malign-loops=NUM
-malign-functions=NUM
*HPPA Options*
-mdisable-fpregs -mdisable-indexing -mfast-indirect-calls
-mgas -mjump-in-delay -mlong-millicode-calls -mno-disable-fpregs
-mno-disable-indexing -mno-fast-indirect-calls -mno-gas
-mno-jump-in-delay -mno-millicode-long-calls
-mno-portable-runtime -mno-soft-float -msoft-float
-mpa-risc-1-0 -mpa-risc-1-1 -mportable-runtime -mschedule=LIST
*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*
-mfp-regs -mno-fp-regs -mno-soft-float
-msoft-float
*Clipper Options*
-mc300 -mc400
*H8/300 Options*
-mrelax -mh
*System V Options*
-Qy -Qn -YP,PATHS -Ym,DIR
*Code Generation Options*
See Options for Code Generation Conventions: Code Gen Options.
-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 -fvolatile -fvolatile-global
-fverbose-asm -fpack-struct +e0 +e1
Menu
- Overall Options
- Controlling the kind of output:
an executable, object files, assembler files,
or preprocessed source.
- C Dialect Options
- Controlling the variant of C language compiled.
- C++ Dialect Options
- Variations on C++.
- Warning Options
- How picky should the compiler be?
- Debugging Options
- Symbol tables, measurements, and debugging dumps.
- Optimize Options
- How much optimization?
- Preprocessor Options
- Controlling header files and macro definitions.
Also, getting dependency information for Make.
- Assembler Options
- Passing options to the assembler.
- Link Options
- Specifying libraries and so on.
- Directory Options
- Where to find header files and libraries.
Where to find the compiler executable files.
- Target Options
- Running a cross-compiler, or an old version of GNU CC.