1132718Skan; Options for the language- and target-independent parts of the compiler. 2169689Skan 3169689Skan; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. 4132718Skan; 5132718Skan; This file is part of GCC. 6132718Skan; 7132718Skan; GCC is free software; you can redistribute it and/or modify it under 8132718Skan; the terms of the GNU General Public License as published by the Free 9132718Skan; Software Foundation; either version 2, or (at your option) any later 10132718Skan; version. 11169689Skan; 12132718Skan; GCC is distributed in the hope that it will be useful, but WITHOUT ANY 13132718Skan; WARRANTY; without even the implied warranty of MERCHANTABILITY or 14132718Skan; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 15132718Skan; for more details. 16169689Skan; 17132718Skan; You should have received a copy of the GNU General Public License 18132718Skan; along with GCC; see the file COPYING. If not, write to the Free 19169689Skan; Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 20169689Skan; 02110-1301, USA. 21132718Skan 22169689Skan; See the GCC internals manual for a description of this file's format. 23132718Skan 24132718Skan; Please try to keep this file in ASCII collating order. 25132718Skan 26132718Skan-help 27132718SkanCommon 28132718SkanDisplay this information 29132718Skan 30132718Skan-param 31132718SkanCommon Separate 32146895Skan--param <param>=<value> Set parameter <param> to value. See below for a complete list of parameters 33132718Skan 34132718Skan-target-help 35132718SkanCommon 36132718Skan 37132718Skan-version 38132718SkanCommon 39132718Skan 40132718SkanG 41132718SkanCommon Joined Separate UInteger 42132718Skan-G<number> Put global and static data smaller than <number> bytes into a special section (on some targets) 43132718Skan 44132718SkanO 45132718SkanCommon JoinedOrMissing 46132718Skan-O<number> Set optimization level to <number> 47132718Skan 48132718SkanOs 49132718SkanCommon 50132718SkanOptimize for space rather than speed 51132718Skan 52132718SkanW 53132718SkanCommon RejectNegative 54132718SkanThis switch is deprecated; use -Wextra instead 55132718Skan 56132718SkanWaggregate-return 57169689SkanCommon Var(warn_aggregate_return) 58132718SkanWarn about returning structures, unions or arrays 59132718Skan 60169689SkanWattributes 61169689SkanCommon Var(warn_attributes) Init(1) 62169689SkanWarn about inappropriate attribute usage 63169689Skan 64132718SkanWcast-align 65169689SkanCommon Var(warn_cast_align) 66132718SkanWarn about pointer casts which increase alignment 67132718Skan 68132718SkanWdeprecated-declarations 69169689SkanCommon Var(warn_deprecated_decl) Init(1) 70132718SkanWarn about uses of __attribute__((deprecated)) declarations 71132718Skan 72132718SkanWdisabled-optimization 73169689SkanCommon Var(warn_disabled_optimization) 74132718SkanWarn when an optimization pass is disabled 75132718Skan 76132718SkanWerror 77169689SkanCommon Var(warnings_are_errors) 78132718SkanTreat all warnings as errors 79132718Skan 80169689SkanWerror= 81169689SkanCommon Joined 82169689SkanTreat specified warning as error 83169689Skan 84132718SkanWextra 85132718SkanCommon 86132718SkanPrint extra (possibly unwanted) warnings 87132718Skan 88169689SkanWfatal-errors 89169689SkanCommon Var(flag_fatal_errors) 90169689SkanExit on the first error occurred 91169689Skan 92132718SkanWinline 93169689SkanCommon Var(warn_inline) 94132718SkanWarn when an inlined function cannot be inlined 95132718Skan 96132718SkanWlarger-than- 97132718SkanCommon RejectNegative Joined UInteger 98258501Spfg-Wlarger-than-<number> Warn if an object is larger than <number> bytes 99132718Skan 100258501SpfgWframe-larger-than- 101258501SpfgCommon RejectNegative Joined UInteger 102258501Spfg-Wframe-larger-than-<number> Warn if the frame size of a function is larger than <number> bytes 103258501Spfg 104169689SkanWunsafe-loop-optimizations 105169689SkanCommon Var(warn_unsafe_loop_optimizations) 106169689SkanWarn if the loop cannot be optimized due to nontrivial assumptions. 107169689Skan 108132718SkanWmissing-noreturn 109169689SkanCommon Var(warn_missing_noreturn) 110132718SkanWarn about functions which might be candidates for __attribute__((noreturn)) 111132718Skan 112169689SkanWoverflow 113169689SkanCommon Var(warn_overflow) Init(1) 114169689SkanWarn about overflow in arithmetic expressions 115169689Skan 116132718SkanWpacked 117169689SkanCommon Var(warn_packed) 118132718SkanWarn when the packed attribute has no effect on struct layout 119132718Skan 120132718SkanWpadded 121169689SkanCommon Var(warn_padded) 122132718SkanWarn when padding is required to align structure members 123132718Skan 124132718SkanWshadow 125169689SkanCommon Var(warn_shadow) 126132718SkanWarn when one local variable shadows another 127132718Skan 128169689SkanWstack-protector 129169689SkanCommon Var(warn_stack_protect) 130169689SkanWarn when not issuing stack smashing protection for some reason 131169689Skan 132132718SkanWstrict-aliasing 133132718SkanCommon 134132718SkanWarn about code which might break strict aliasing rules 135132718Skan 136169689SkanWstrict-aliasing= 137169689SkanCommon Joined UInteger 138169689SkanWarn about code which might break strict aliasing rules 139169689Skan 140169689SkanWstrict-overflow 141169689SkanCommon 142169689SkanWarn about optimizations that assume that signed overflow is undefined 143169689Skan 144169689SkanWstrict-overflow= 145169689SkanCommon Joined UInteger 146169689SkanWarn about optimizations that assume that signed overflow is undefined 147169689Skan 148132718SkanWswitch 149169689SkanCommon Var(warn_switch) 150132718SkanWarn about enumerated switches, with no default, missing a case 151132718Skan 152132718SkanWswitch-default 153169689SkanCommon Var(warn_switch_default) 154132718SkanWarn about enumerated switches missing a \"default:\" statement 155132718Skan 156132718SkanWswitch-enum 157169689SkanCommon Var(warn_switch_enum) 158132718SkanWarn about all enumerated switches missing a specific case 159132718Skan 160132718SkanWsystem-headers 161169689SkanCommon Var(warn_system_headers) 162132718SkanDo not suppress warnings from system headers 163132718Skan 164132718SkanWuninitialized 165169689SkanCommon Var(warn_uninitialized) 166132718SkanWarn about uninitialized automatic variables 167132718Skan 168132718SkanWunreachable-code 169169689SkanCommon Var(warn_notreached) 170132718SkanWarn about code that will never be executed 171132718Skan 172132718SkanWunused 173132718SkanCommon 174132718SkanEnable all -Wunused- warnings 175132718Skan 176132718SkanWunused-function 177169689SkanCommon Var(warn_unused_function) 178132718SkanWarn when a function is unused 179132718Skan 180132718SkanWunused-label 181169689SkanCommon Var(warn_unused_label) 182132718SkanWarn when a label is unused 183132718Skan 184132718SkanWunused-parameter 185169689SkanCommon Var(warn_unused_parameter) 186132718SkanWarn when a function parameter is unused 187132718Skan 188132718SkanWunused-value 189169689SkanCommon Var(warn_unused_value) 190132718SkanWarn when an expression value is unused 191132718Skan 192132718SkanWunused-variable 193169689SkanCommon Var(warn_unused_variable) 194132718SkanWarn when a variable is unused 195132718Skan 196223715SuqsWvariable-decl 197223715SuqsCommon Var(warn_variable_decl) 198223715SuqsWarn about variable-sized declarations. 199223715Suqs 200169689SkanWvolatile-register-var 201169689SkanCommon Var(warn_register_var) 202169689SkanWarn when a register variable is declared volatile 203169689Skan 204132718Skanaux-info 205132718SkanCommon Separate 206132718Skan-aux-info <file> Emit declaration information into <file> 207132718Skan 208132718Skanaux-info= 209132718SkanCommon Joined 210132718Skan 211132718Skanauxbase 212132718SkanCommon Separate 213132718Skan 214132718Skanauxbase-strip 215132718SkanCommon Separate 216132718Skan 217132718Skand 218132718SkanCommon Joined 219132718Skan-d<letters> Enable dumps from specific passes of the compiler 220132718Skan 221132718Skandumpbase 222132718SkanCommon Separate 223132718Skan-dumpbase <file> Set the file basename to be used for dumps 224132718Skan 225169689Skan; The version of the C++ ABI in use. The following values are allowed: 226169689Skan; 227169689Skan; 0: The version of the ABI believed most conformant with the C++ ABI 228169689Skan; specification. This ABI may change as bugs are discovered and fixed. 229169689Skan; Therefore, 0 will not necessarily indicate the same ABI in different 230169689Skan; versions of G++. 231169689Skan; 232169689Skan; 1: The version of the ABI first used in G++ 3.2. 233169689Skan; 234169689Skan; Additional positive integers will be assigned as new versions of 235169689Skan; the ABI become the default version of the ABI. 236132718Skanfabi-version= 237169689SkanCommon Joined UInteger Var(flag_abi_version) Init(2) 238132718Skan 239132718Skanfalign-functions 240169689SkanCommon Report Var(align_functions,0) 241132718SkanAlign the start of functions 242132718Skan 243132718Skanfalign-functions= 244132718SkanCommon RejectNegative Joined UInteger 245132718Skan 246132718Skanfalign-jumps 247169689SkanCommon Report Var(align_jumps,0) 248132718SkanAlign labels which are only reached by jumping 249132718Skan 250132718Skanfalign-jumps= 251132718SkanCommon RejectNegative Joined UInteger 252132718Skan 253132718Skanfalign-labels 254169689SkanCommon Report Var(align_labels,0) 255132718SkanAlign all labels 256132718Skan 257132718Skanfalign-labels= 258132718SkanCommon RejectNegative Joined UInteger 259132718Skan 260132718Skanfalign-loops 261169689SkanCommon Report Var(align_loops) 262132718SkanAlign the start of loops 263132718Skan 264132718Skanfalign-loops= 265132718SkanCommon RejectNegative Joined UInteger 266132718Skan 267169689Skan; This flag is only tested if alias checking is enabled. 268169689Skan; 0 if pointer arguments may alias each other. True in C. 269169689Skan; 1 if pointer arguments may not alias each other but may alias 270169689Skan; global variables. 271169689Skan; 2 if pointer arguments may not alias each other and may not 272169689Skan; alias global variables. 273169689Skan; 3 if pointer arguments may not alias anything. True in Fortran. 274169689Skan; Set by the front end. 275132718Skanfargument-alias 276169689SkanCommon Report Var(flag_argument_noalias,0) 277132718SkanSpecify that arguments may alias each other and globals 278132718Skan 279132718Skanfargument-noalias 280169689SkanCommon Report Var(flag_argument_noalias,1) VarExists 281132718SkanAssume arguments may alias globals but not each other 282132718Skan 283132718Skanfargument-noalias-global 284169689SkanCommon Report Var(flag_argument_noalias,2) VarExists 285132718SkanAssume arguments alias neither each other nor globals 286132718Skan 287169689Skanfargument-noalias-anything 288169689SkanCommon Report Var(flag_argument_noalias,3) VarExists 289169689SkanAssume arguments alias no other storage 290169689Skan 291132718Skanfasynchronous-unwind-tables 292169689SkanCommon Report Var(flag_asynchronous_unwind_tables) 293132718SkanGenerate unwind tables that are exact at each instruction boundary 294132718Skan 295169689Skan; -fcheck-bounds causes gcc to generate array bounds checks. 296169689Skan; For C, C++ and ObjC: defaults off. 297169689Skan; For Java: defaults to on. 298169689Skan; For Fortran: defaults to off. 299132718Skanfbounds-check 300169689SkanCommon Report Var(flag_bounds_check) 301132718SkanGenerate code to check bounds before indexing arrays 302132718Skan 303132718Skanfbranch-count-reg 304169689SkanCommon Report Var(flag_branch_on_count_reg) Init(1) 305132718SkanReplace add, compare, branch with branch on count register 306132718Skan 307132718Skanfbranch-probabilities 308169689SkanCommon Report Var(flag_branch_probabilities) 309132718SkanUse profiling information for branch probabilities 310132718Skan 311132718Skanfbranch-target-load-optimize 312169689SkanCommon Report Var(flag_branch_target_load_optimize) 313132718SkanPerform branch target load optimization before prologue / epilogue threading 314132718Skan 315132718Skanfbranch-target-load-optimize2 316169689SkanCommon Report Var(flag_branch_target_load_optimize2) 317132718SkanPerform branch target load optimization after prologue / epilogue threading 318132718Skan 319169689Skanfbtr-bb-exclusive 320169689SkanCommon Report Var(flag_btr_bb_exclusive) 321169689SkanRestrict target load migration not to re-use registers in any basic block 322169689Skan 323132718Skanfcall-saved- 324132718SkanCommon Joined RejectNegative 325132718Skan-fcall-saved-<register> Mark <register> as being preserved across functions 326132718Skan 327132718Skanfcall-used- 328132718SkanCommon Joined RejectNegative 329132718Skan-fcall-used-<register> Mark <register> as being corrupted by function calls 330132718Skan 331169689Skan; Nonzero for -fcaller-saves: allocate values in regs that need to 332169689Skan; be saved across function calls, if that produces overall better code. 333169689Skan; Optional now, so people can test it. 334132718Skanfcaller-saves 335169689SkanCommon Report Var(flag_caller_saves) 336132718SkanSave registers around function calls 337132718Skan 338132718Skanfcommon 339169689SkanCommon Report Var(flag_no_common,0) 340132718SkanDo not put uninitialized globals in the common section 341132718Skan 342132718Skanfcprop-registers 343169689SkanCommon Report Var(flag_cprop_registers) 344132718SkanPerform a register copy-propagation optimization pass 345132718Skan 346132718Skanfcrossjumping 347169689SkanCommon Report Var(flag_crossjumping) 348132718SkanPerform cross-jumping optimization 349132718Skan 350132718Skanfcse-follow-jumps 351169689SkanCommon Report Var(flag_cse_follow_jumps) 352132718SkanWhen running CSE, follow jumps to their targets 353132718Skan 354132718Skanfcse-skip-blocks 355169689SkanCommon Report Var(flag_cse_skip_blocks) 356132718SkanWhen running CSE, follow conditional jumps 357132718Skan 358169689Skanfcx-limited-range 359169689SkanCommon Report Var(flag_cx_limited_range) 360169689SkanOmit range reduction step when performing complex division 361169689Skan 362132718Skanfdata-sections 363169689SkanCommon Report Var(flag_data_sections) 364132718SkanPlace data items into their own section 365132718Skan 366169689Skan; Nonzero for -fdefer-pop: don't pop args after each function call 367169689Skan; instead save them up to pop many calls' args with one insns. 368132718Skanfdefer-pop 369169689SkanCommon Report Var(flag_defer_pop) 370132718SkanDefer popping functions args from stack until later 371132718Skan 372132718Skanfdelayed-branch 373169689SkanCommon Report Var(flag_delayed_branch) 374132718SkanAttempt to fill delay slots of branch instructions 375132718Skan 376132718Skanfdelete-null-pointer-checks 377169689SkanCommon Report Var(flag_delete_null_pointer_checks) 378132718SkanDelete useless null pointer checks 379132718Skan 380132718Skanfdiagnostics-show-location= 381132718SkanCommon Joined RejectNegative 382132718Skan-fdiagnostics-show-location=[once|every-line] How often to emit source location at the beginning of line-wrapped diagnostics 383132718Skan 384169689Skanfdiagnostics-show-option 385132718SkanCommon 386169689SkanAmend appropriate diagnostic messages with the command line option that controls them 387132718Skan 388169689Skanfdump- 389169689SkanCommon Joined RejectNegative 390169689Skan-fdump-<type> Dump various compiler internals to a file 391169689Skan 392169689Skanfdump-noaddr 393169689SkanCommon Report Var(flag_dump_noaddr) 394169689SkanSuppress output of addresses in debugging dumps 395169689Skan 396169689Skanfdump-unnumbered 397169689SkanCommon Report Var(flag_dump_unnumbered) VarExists 398169689SkanSuppress output of instruction numbers, line number notes and addresses in debugging dumps 399169689Skan 400169689Skanfearly-inlining 401169689SkanCommon Report Var(flag_early_inlining) Init(1) 402169689SkanPerform early inlining 403169689Skan 404132718Skanfeliminate-dwarf2-dups 405169689SkanCommon Report Var(flag_eliminate_dwarf2_dups) 406132718SkanPerform DWARF2 duplicate elimination 407132718Skan 408132718Skanfeliminate-unused-debug-symbols 409169689SkanCommon Report Var(flag_debug_only_used_symbols) 410132718SkanPerform unused type elimination in debug info 411132718Skan 412132718Skanfeliminate-unused-debug-types 413169689SkanCommon Report Var(flag_eliminate_unused_debug_types) Init(1) 414132718SkanPerform unused type elimination in debug info 415132718Skan 416169689Skanfemit-class-debug-always 417169689SkanCommon Report Var(flag_emit_class_debug_always) Init(1) 418169689SkanDo not suppress C++ class debug information. 419169689Skan 420132718Skanfexceptions 421169689SkanCommon Report Var(flag_exceptions) 422132718SkanEnable exception handling 423132718Skan 424132718Skanfexpensive-optimizations 425169689SkanCommon Report Var(flag_expensive_optimizations) 426132718SkanPerform a number of minor, expensive optimizations 427132718Skan 428132718Skanffast-math 429132718SkanCommon 430132718Skan 431132718Skanffinite-math-only 432169689SkanCommon Report Var(flag_finite_math_only) 433132718SkanAssume no NaNs or infinities are generated 434132718Skan 435132718Skanffixed- 436132718SkanCommon Joined RejectNegative 437132718Skan-ffixed-<register> Mark <register> as being unavailable to the compiler 438132718Skan 439132718Skanffloat-store 440169689SkanCommon Report Var(flag_float_store) 441169689SkanDon't allocate floats and doubles in extended-precision registers 442132718Skan 443169689Skan; Nonzero for -fforce-addr: load memory address into a register before 444169689Skan; reference to memory. This makes better cse but slower compilation. 445132718Skanfforce-addr 446169689SkanCommon Report Var(flag_force_addr) 447132718SkanCopy memory address constants into registers before use 448132718Skan 449169689Skan; Nonzero for -fforce-mem: load memory value into a register 450169689Skan; before arithmetic on it. This makes better cse but slower compilation. 451132718Skanfforce-mem 452169689SkanCommon Report Var(flag_force_mem) 453132718SkanCopy memory operands into registers before use 454132718Skan 455169689Skan; Nonzero means don't put addresses of constant functions in registers. 456169689Skan; Used for compiling the Unix kernel, where strange substitutions are 457169689Skan; done on the assembly output. 458132718Skanffunction-cse 459169689SkanCommon Report Var(flag_no_function_cse,0) 460132718SkanAllow function addresses to be held in registers 461132718Skan 462132718Skanffunction-sections 463169689SkanCommon Report Var(flag_function_sections) 464132718SkanPlace each function into its own section 465132718Skan 466132718Skanfgcse 467169689SkanCommon Report Var(flag_gcse) 468132718SkanPerform global common subexpression elimination 469132718Skan 470132718Skanfgcse-lm 471169689SkanCommon Report Var(flag_gcse_lm) Init(1) 472132718SkanPerform enhanced load motion during global common subexpression elimination 473132718Skan 474132718Skanfgcse-sm 475169689SkanCommon Report Var(flag_gcse_sm) Init(0) 476132718SkanPerform store motion after global common subexpression elimination 477132718Skan 478132718Skanfgcse-las 479169689SkanCommon Report Var(flag_gcse_las) Init(0) 480169689SkanPerform redundant load after store elimination in global common subexpression 481169689Skanelimination 482132718Skan 483169689Skanfgcse-after-reload 484169689SkanCommon Report Var(flag_gcse_after_reload) 485169689SkanPerform global common subexpression elimination after register allocation 486169689Skanhas finished 487169689Skan 488132718Skanfguess-branch-probability 489169689SkanCommon Report Var(flag_guess_branch_prob) 490132718SkanEnable guessing of branch probabilities 491132718Skan 492169689Skan; Nonzero means ignore `#ident' directives. 0 means handle them. 493169689Skan; Generate position-independent code for executables if possible 494169689Skan; On SVR4 targets, it also controls whether or not to emit a 495169689Skan; string identifying the compiler. 496132718Skanfident 497169689SkanCommon Report Var(flag_no_ident,0) 498132718SkanProcess #ident directives 499132718Skan 500132718Skanfif-conversion 501169689SkanCommon Report Var(flag_if_conversion) 502132718SkanPerform conversion of conditional jumps to branchless equivalents 503132718Skan 504132718Skanfif-conversion2 505169689SkanCommon Report Var(flag_if_conversion2) 506132718SkanPerform conversion of conditional jumps to conditional execution 507132718Skan 508169689Skan; -finhibit-size-directive inhibits output of .size for ELF. 509169689Skan; This is used only for compiling crtstuff.c, 510169689Skan; and it may be extended to other effects 511169689Skan; needed for crtstuff.c on other systems. 512132718Skanfinhibit-size-directive 513169689SkanCommon Report Var(flag_inhibit_size_directive) 514132718SkanDo not generate .size directives 515132718Skan 516169689Skan; Nonzero means that functions declared `inline' will be treated 517169689Skan; as `static'. Prevents generation of zillions of copies of unused 518169689Skan; static inline functions; instead, `inlines' are written out 519169689Skan; only when actually used. Used in conjunction with -g. Also 520169689Skan; does the right thing with #pragma interface. 521132718Skanfinline 522169689SkanCommon Report Var(flag_no_inline,0) Init(2) 523132718SkanPay attention to the \"inline\" keyword 524132718Skan 525132718Skanfinline-functions 526169689SkanCommon Report Var(flag_inline_functions) 527132718SkanIntegrate simple functions into their callers 528132718Skan 529169689Skanfinline-functions-called-once 530169689SkanCommon Report Var(flag_inline_functions_called_once) Init(1) 531169689SkanIntegrate functions called once into their callers 532169689Skan 533132718Skanfinline-limit- 534132718SkanCommon RejectNegative Joined UInteger 535132718Skan 536132718Skanfinline-limit= 537132718SkanCommon RejectNegative Joined UInteger 538132718Skan-finline-limit=<number> Limit the size of inlined functions to <number> 539132718Skan 540132718Skanfinstrument-functions 541169689SkanCommon Report Var(flag_instrument_function_entry_exit) 542132718SkanInstrument function entry and exit with profiling calls 543132718Skan 544258501Spfgfinstrument-functions-exclude-function-list= 545258501SpfgCommon RejectNegative Joined 546258501Spfg-finstrument-functions-exclude-function-list=name,... Do not instrument listed functions 547258501Spfg 548258501Spfgfinstrument-functions-exclude-file-list= 549258501SpfgCommon RejectNegative Joined 550258501Spfg-finstrument-functions-exclude-file-list=filename,... Do not instrument functions listed in files 551258501Spfg 552169689Skanfipa-cp 553169689SkanCommon Report Var(flag_ipa_cp) 554169689SkanPerform Interprocedural constant propagation 555169689Skan 556169689Skanfipa-pure-const 557169689SkanCommon Report Var(flag_ipa_pure_const) Init(0) 558169689SkanDiscover pure and const functions 559169689Skan 560169689Skanfipa-pta 561169689SkanCommon Report Var(flag_ipa_pta) Init(0) 562169689SkanPerform interprocedural points-to analysis 563169689Skan 564169689Skanfipa-reference 565169689SkanCommon Report Var(flag_ipa_reference) Init(0) 566169689SkanDiscover readonly and non addressable static variables 567169689Skan 568169689Skanfipa-type-escape 569169689SkanCommon Report Var(flag_ipa_type_escape) Init(0) 570169689SkanType based escape and alias analysis 571169689Skan 572169689Skanfivopts 573169689SkanCommon Report Var(flag_ivopts) Init(1) 574169689SkanOptimize induction variables on trees 575169689Skan 576169689Skanfjump-tables 577169689SkanCommon Var(flag_jump_tables) Init(1) 578169689SkanUse jump tables for sufficiently large switch statements 579169689Skan 580132718Skanfkeep-inline-functions 581169689SkanCommon Report Var(flag_keep_inline_functions) 582132718SkanGenerate code for functions even if they are fully inlined 583132718Skan 584132718Skanfkeep-static-consts 585169689SkanCommon Report Var(flag_keep_static_consts) Init(1) 586132718SkanEmit static const variables even if they are not used 587132718Skan 588132718Skanfleading-underscore 589169689SkanCommon Report Var(flag_leading_underscore) Init(-1) 590132718SkanGive external symbols a leading underscore 591132718Skan 592132718Skanfloop-optimize 593132718SkanCommon 594169689SkanDoes nothing. Preserved for backward compatibility. 595132718Skan 596132718Skanfmath-errno 597181538SdasCommon Report Var(flag_errno_math) Init(0) 598132718SkanSet errno after built-in math functions 599132718Skan 600132718Skanfmem-report 601169689SkanCommon Report Var(mem_report) 602132718SkanReport on permanent memory allocation 603132718Skan 604169689Skan; This will attempt to merge constant section constants, if 1 only 605169689Skan; string constants and constants from constant pool, if 2 also constant 606169689Skan; variables. 607132718Skanfmerge-all-constants 608169689SkanCommon Report Var(flag_merge_constants,2) Init(1) 609132718SkanAttempt to merge identical constants and constant variables 610132718Skan 611132718Skanfmerge-constants 612169689SkanCommon Report Var(flag_merge_constants,1) VarExists 613132718SkanAttempt to merge identical constants across compilation units 614132718Skan 615132718Skanfmessage-length= 616132718SkanCommon RejectNegative Joined UInteger 617132718Skan-fmessage-length=<number> Limit diagnostics to <number> characters per line. 0 suppresses line-wrapping 618132718Skan 619169689Skanfmodulo-sched 620169689SkanCommon Report Var(flag_modulo_sched) 621169689SkanPerform SMS based modulo scheduling before the first scheduling pass 622132718Skan 623169689Skanfmove-loop-invariants 624169689SkanCommon Report Var(flag_move_loop_invariants) Init(1) 625169689SkanMove loop invariant computations out of loops 626132718Skan 627169689Skanfmudflap 628169689SkanCommon RejectNegative Report Var(flag_mudflap) 629169689SkanAdd mudflap bounds-checking instrumentation for single-threaded program 630169689Skan 631169689Skanfmudflapth 632169689SkanCommon RejectNegative Report VarExists Var(flag_mudflap,2) 633169689SkanAdd mudflap bounds-checking instrumentation for multi-threaded program 634169689Skan 635169689Skanfmudflapir 636169689SkanCommon RejectNegative Report Var(flag_mudflap_ignore_reads) 637169689SkanIgnore read operations when inserting mudflap instrumentation 638169689Skan 639169689Skanfreschedule-modulo-scheduled-loops 640169689SkanCommon Report Var(flag_resched_modulo_sched) 641169689SkanEnable/Disable the traditional scheduling in loops that already passed modulo scheduling 642169689Skan 643132718Skanfnon-call-exceptions 644169689SkanCommon Report Var(flag_non_call_exceptions) 645132718SkanSupport synchronous non-call exceptions 646132718Skan 647132718Skanfomit-frame-pointer 648169689SkanCommon Report Var(flag_omit_frame_pointer) 649132718SkanWhen possible do not generate stack frames 650132718Skan 651132718Skanfoptimize-register-move 652169689SkanCommon Report Var(flag_regmove) 653132718SkanDo the full register move optimization pass 654132718Skan 655132718Skanfoptimize-sibling-calls 656169689SkanCommon Report Var(flag_optimize_sibling_calls) 657132718SkanOptimize sibling and tail recursive calls 658132718Skan 659132718Skanfpack-struct 660169689SkanCommon Report Var(flag_pack_struct) 661132718SkanPack structure members together without holes 662132718Skan 663169689Skanfpack-struct= 664169689SkanCommon RejectNegative Joined UInteger 665169689Skan-fpack-struct=<number> Set initial maximum structure member alignment 666169689Skan 667132718Skanfpcc-struct-return 668169689SkanCommon Report Var(flag_pcc_struct_return,1) VarExists 669132718SkanReturn small aggregates in memory, not registers 670132718Skan 671132718Skanfpeel-loops 672169689SkanCommon Report Var(flag_peel_loops) 673132718SkanPerform loop peeling 674132718Skan 675132718Skanfpeephole 676169689SkanCommon Report Var(flag_no_peephole,0) 677132718SkanEnable machine specific peephole optimizations 678132718Skan 679132718Skanfpeephole2 680169689SkanCommon Report Var(flag_peephole2) 681132718SkanEnable an RTL peephole pass before sched2 682132718Skan 683169689SkanfPIC 684169689SkanCommon Report Var(flag_pic,2) 685169689SkanGenerate position-independent code if possible (large mode) 686169689Skan 687169689SkanfPIE 688169689SkanCommon Report Var(flag_pie,2) 689169689SkanGenerate position-independent code for executables if possible (large mode) 690169689Skan 691132718Skanfpic 692169689SkanCommon Report Var(flag_pic,1) VarExists 693169689SkanGenerate position-independent code if possible (small mode) 694132718Skan 695132718Skanfpie 696169689SkanCommon Report Var(flag_pie,1) VarExists 697169689SkanGenerate position-independent code for executables if possible (small mode) 698132718Skan 699132718Skanfprefetch-loop-arrays 700169689SkanCommon Report Var(flag_prefetch_loop_arrays) 701132718SkanGenerate prefetch instructions, if available, for arrays in loops 702132718Skan 703132718Skanfprofile 704169689SkanCommon Report Var(profile_flag) 705132718SkanEnable basic program profiling code 706132718Skan 707132718Skanfprofile-arcs 708169689SkanCommon Report Var(profile_arc_flag) 709132718SkanInsert arc-based program profiling code 710132718Skan 711132718Skanfprofile-generate 712132718SkanCommon 713132718SkanEnable common options for generating profile info for profile feedback directed optimizations 714132718Skan 715132718Skanfprofile-use 716132718SkanCommon 717132718SkanEnable common options for performing profile feedback directed optimizations 718132718Skan 719132718Skanfprofile-values 720169689SkanCommon Report Var(flag_profile_values) 721132718SkanInsert code to profile values of expressions 722132718Skan 723132718Skanfrandom-seed 724132718SkanCommon 725132718Skan 726132718Skanfrandom-seed= 727132718SkanCommon Joined RejectNegative 728132718Skan-frandom-seed=<string> Make compile reproducible using <string> 729132718Skan 730132718Skanfreg-struct-return 731169689SkanCommon Report Var(flag_pcc_struct_return,0) VarExists 732132718SkanReturn small aggregates in registers 733132718Skan 734132718Skanfregmove 735169689SkanCommon Report Var(flag_regmove) 736132718SkanEnables a register move optimization 737132718Skan 738132718Skanfrename-registers 739169689SkanCommon Report Var(flag_rename_registers) Init(2) 740132718SkanPerform a register renaming optimization pass 741132718Skan 742132718Skanfreorder-blocks 743169689SkanCommon Report Var(flag_reorder_blocks) 744132718SkanReorder basic blocks to improve code placement 745132718Skan 746169689Skanfreorder-blocks-and-partition 747169689SkanCommon Report Var(flag_reorder_blocks_and_partition) 748169689SkanReorder basic blocks and partition into hot and cold sections 749169689Skan 750132718Skanfreorder-functions 751169689SkanCommon Report Var(flag_reorder_functions) 752132718SkanReorder functions to improve code placement 753132718Skan 754132718Skanfrerun-cse-after-loop 755169689SkanCommon Report Var(flag_rerun_cse_after_loop) Init(2) 756132718SkanAdd a common subexpression elimination pass after loop optimizations 757132718Skan 758132718Skanfrerun-loop-opt 759132718SkanCommon 760169689SkanDoes nothing. Preserved for backward compatibility. 761132718Skan 762132718Skanfrounding-math 763169689SkanCommon Report Var(flag_rounding_math) 764132718SkanDisable optimizations that assume default FP rounding behavior 765132718Skan 766132718Skanfsched-interblock 767169689SkanCommon Report Var(flag_schedule_interblock) Init(1) 768132718SkanEnable scheduling across basic blocks 769132718Skan 770132718Skanfsched-spec 771169689SkanCommon Report Var(flag_schedule_speculative) Init(1) 772132718SkanAllow speculative motion of non-loads 773132718Skan 774132718Skanfsched-spec-load 775169689SkanCommon Report Var(flag_schedule_speculative_load) 776132718SkanAllow speculative motion of some loads 777132718Skan 778132718Skanfsched-spec-load-dangerous 779169689SkanCommon Report Var(flag_schedule_speculative_load_dangerous) 780132718SkanAllow speculative motion of more loads 781132718Skan 782132718Skanfsched-verbose= 783132718SkanCommon RejectNegative Joined 784132718Skan-fsched-verbose=<number> Set the verbosity level of the scheduler 785132718Skan 786132718Skanfsched2-use-superblocks 787169689SkanCommon Report Var(flag_sched2_use_superblocks) 788132718SkanIf scheduling post reload, do superblock scheduling 789132718Skan 790132718Skanfsched2-use-traces 791169689SkanCommon Report Var(flag_sched2_use_traces) 792132718SkanIf scheduling post reload, do trace scheduling 793132718Skan 794132718Skanfschedule-insns 795169689SkanCommon Report Var(flag_schedule_insns) 796132718SkanReschedule instructions before register allocation 797132718Skan 798132718Skanfschedule-insns2 799169689SkanCommon Report Var(flag_schedule_insns_after_reload) 800132718SkanReschedule instructions after register allocation 801132718Skan 802169689Skan; sched_stalled_insns means that insns can be moved prematurely from the queue 803169689Skan; of stalled insns into the ready list. 804132718Skanfsched-stalled-insns 805169689SkanCommon Report Var(flag_sched_stalled_insns) 806132718SkanAllow premature scheduling of queued insns 807132718Skan 808132718Skanfsched-stalled-insns= 809169689SkanCommon RejectNegative Joined UInteger 810169689Skan-fsched-stalled-insns=<number> Set number of queued insns that can be prematurely scheduled 811132718Skan 812169689Skan; sched_stalled_insns_dep controls how many recently scheduled cycles will 813169689Skan; be examined for a dependency on a stalled insn that is candidate for 814169689Skan; premature removal from the queue of stalled insns into the ready list (has 815169689Skan; an effect only if the flag 'sched_stalled_insns' is set). 816132718Skanfsched-stalled-insns-dep 817169689SkanCommon Report Var(flag_sched_stalled_insns_dep,1) Init(1) 818132718SkanSet dependence distance checking in premature scheduling of queued insns 819132718Skan 820132718Skanfsched-stalled-insns-dep= 821132718SkanCommon RejectNegative Joined UInteger 822169689Skan-fsched-stalled-insns-dep=<number> Set dependence distance checking in premature scheduling of queued insns 823132718Skan 824169689Skanfsection-anchors 825169689SkanCommon Report Var(flag_section_anchors) 826169689SkanAccess data in the same section from shared anchor points 827132718Skan 828169689Skanfrtl-abstract-sequences 829169689SkanCommon Report Var(flag_rtl_seqabstr) 830169689SkanPerform sequence abstraction optimization on RTL 831169689Skan 832169689Skanfsee 833169689SkanCommon Report Var(flag_see) Init(0) 834169689SkanEliminate redundant sign extensions using LCM. 835169689Skan 836169689Skanfshow-column 837169689SkanCommon C ObjC C++ ObjC++ Report Var(flag_show_column) Init(1) 838169689SkanShow column numbers in diagnostics, when available. Default on 839169689Skan 840132718Skanfsignaling-nans 841169689SkanCommon Report Var(flag_signaling_nans) 842132718SkanDisable optimizations observable by IEEE signaling NaNs 843132718Skan 844132718Skanfsingle-precision-constant 845169689SkanCommon Report Var(flag_single_precision_constant) 846132718SkanConvert floating point constants to single precision constants 847132718Skan 848169689Skanfsplit-ivs-in-unroller 849169689SkanCommon Report Var(flag_split_ivs_in_unroller) Init(1) 850169689SkanSplit lifetimes of induction variables when loops are unrolled 851169689Skan 852169689Skanfvariable-expansion-in-unroller 853169689SkanCommon Report Var(flag_variable_expansion_in_unroller) 854169689SkanApply variable expansion when loops are unrolled 855169689Skan 856169689Skan; Emit code to probe the stack, to help detect stack overflow; also 857169689Skan; may cause large objects to be allocated dynamically. 858132718Skanfstack-check 859169689SkanCommon Report Var(flag_stack_check) 860132718SkanInsert stack checking code into the program 861132718Skan 862132718Skanfstack-limit 863132718SkanCommon 864132718Skan 865132718Skanfstack-limit-register= 866132718SkanCommon RejectNegative Joined 867132718Skan-fstack-limit-register=<register> Trap if the stack goes past <register> 868132718Skan 869132718Skanfstack-limit-symbol= 870132718SkanCommon RejectNegative Joined 871132718Skan-fstack-limit-symbol=<name> Trap if the stack goes past symbol <name> 872132718Skan 873169689Skanfstack-protector 874169689SkanCommon Report Var(flag_stack_protect, 1) 875169689SkanUse propolice as a stack protection method 876169689Skan 877169689Skanfstack-protector-all 878169689SkanCommon Report RejectNegative Var(flag_stack_protect, 2) VarExists 879169689SkanUse a stack protection method for every function 880169689Skan 881286074Spfgfstack-protector-strong 882286074SpfgCommon Report RejectNegative Var(flag_stack_protect, 3) 883286074SpfgUse a smart stack protection method for certain functions 884286074Spfg 885132718Skanfstrength-reduce 886132718SkanCommon 887169689SkanDoes nothing. Preserved for backward compatibility. 888132718Skan 889169689Skan; Nonzero if we should do (language-dependent) alias analysis. 890169689Skan; Typically, this analysis will assume that expressions of certain 891169689Skan; types do not alias expressions of certain other types. Only used 892169689Skan; if alias analysis (in general) is enabled. 893132718Skanfstrict-aliasing 894169689SkanCommon Report Var(flag_strict_aliasing) 895132718SkanAssume strict aliasing rules apply 896132718Skan 897169689Skanfstrict-overflow 898169689SkanCommon Report Var(flag_strict_overflow) 899169689SkanTreat signed overflow as undefined 900169689Skan 901132718Skanfsyntax-only 902169689SkanCommon Report Var(flag_syntax_only) 903132718SkanCheck for syntax errors, then stop 904132718Skan 905132718Skanftest-coverage 906169689SkanCommon Report Var(flag_test_coverage) 907132718SkanCreate data files needed by \"gcov\" 908132718Skan 909132718Skanfthread-jumps 910169689SkanCommon Report Var(flag_thread_jumps) 911132718SkanPerform jump threading optimizations 912132718Skan 913132718Skanftime-report 914169689SkanCommon Report Var(time_report) 915132718SkanReport the time taken by each compiler pass 916132718Skan 917132718Skanftls-model= 918132718SkanCommon Joined RejectNegative 919132718Skan-ftls-model=[global-dynamic|local-dynamic|initial-exec|local-exec] Set the default thread-local storage code generation model 920132718Skan 921169689Skanftoplevel-reorder 922169689SkanCommon Report Var(flag_toplevel_reorder) Init(1) 923169689SkanReorder top level functions, variables, and asms 924169689Skan 925132718Skanftracer 926169689SkanCommon Report Var(flag_tracer) 927132718SkanPerform superblock formation via tail duplication 928132718Skan 929169689Skan; Zero means that floating-point math operations cannot generate a 930169689Skan; (user-visible) trap. This is the case, for example, in nonstop 931169689Skan; IEEE 754 arithmetic. 932132718Skanftrapping-math 933169689SkanCommon Report Var(flag_trapping_math) Init(1) 934132718SkanAssume floating-point operations can trap 935132718Skan 936132718Skanftrapv 937169689SkanCommon Report Var(flag_trapv) 938132718SkanTrap for signed overflow in addition, subtraction and multiplication 939132718Skan 940169689Skanftree-ccp 941169689SkanCommon Report Var(flag_tree_ccp) 942169689SkanEnable SSA-CCP optimization on trees 943169689Skan 944169689Skanftree-store-ccp 945169689SkanCommon Report Var(flag_tree_store_ccp) 946169689SkanEnable SSA-CCP optimization for stores and loads 947169689Skan 948169689Skanftree-ch 949169689SkanCommon Report Var(flag_tree_ch) 950169689SkanEnable loop header copying on trees 951169689Skan 952169689Skanftree-combine-temps 953169689SkanCommon Report Var(flag_tree_combine_temps) 954169689SkanCoalesce memory temporaries in the SSA->normal pass 955169689Skan 956169689Skanftree-copyrename 957169689SkanCommon Report Var(flag_tree_copyrename) 958169689SkanReplace SSA temporaries with better names in copies 959169689Skan 960169689Skanftree-copy-prop 961169689SkanCommon Report Var(flag_tree_copy_prop) 962169689SkanEnable copy propagation on trees 963169689Skan 964169689Skanftree-store-copy-prop 965169689SkanCommon Report Var(flag_tree_store_copy_prop) 966169689SkanEnable copy propagation for stores and loads 967169689Skan 968169689Skanftree-dce 969169689SkanCommon Report Var(flag_tree_dce) 970169689SkanEnable SSA dead code elimination optimization on trees 971169689Skan 972169689Skanftree-dominator-opts 973169689SkanCommon Report Var(flag_tree_dom) 974169689SkanEnable dominator optimizations 975169689Skan 976169689Skanftree-dse 977169689SkanCommon Report Var(flag_tree_dse) 978169689SkanEnable dead store elimination 979169689Skan 980169689Skanftree-fre 981169689SkanCommon Report Var(flag_tree_fre) 982169689SkanEnable Full Redundancy Elimination (FRE) on trees 983169689Skan 984169689Skanftree-loop-im 985169689SkanCommon Report Var(flag_tree_loop_im) Init(1) 986169689SkanEnable loop invariant motion on trees 987169689Skan 988169689Skanftree-loop-linear 989169689SkanCommon Report Var(flag_tree_loop_linear) 990169689SkanEnable linear loop transforms on trees 991169689Skan 992169689Skanftree-loop-ivcanon 993169689SkanCommon Report Var(flag_tree_loop_ivcanon) Init(1) 994169689SkanCreate canonical induction variables in loops 995169689Skan 996169689Skanftree-loop-optimize 997169689SkanCommon Report Var(flag_tree_loop_optimize) Init(1) 998169689SkanEnable loop optimizations on tree level 999169689Skan 1000169689Skanftree-pre 1001169689SkanCommon Report Var(flag_tree_pre) 1002169689SkanEnable SSA-PRE optimization on trees 1003169689Skan 1004169689Skanftree-salias 1005169689SkanCommon Report Var(flag_tree_salias) 1006169689SkanPerform structural alias analysis 1007169689Skan 1008169689Skanftree-sink 1009169689SkanCommon Report Var(flag_tree_sink) 1010169689SkanEnable SSA code sinking on trees 1011169689Skan 1012169689Skanftree-sra 1013169689SkanCommon Report Var(flag_tree_sra) 1014169689SkanPerform scalar replacement of aggregates 1015169689Skan 1016169689Skanftree-ter 1017169689SkanCommon Report Var(flag_tree_ter) 1018169689SkanReplace temporary expressions in the SSA->normal pass 1019169689Skan 1020169689Skanftree-lrs 1021169689SkanCommon Report Var(flag_tree_live_range_split) 1022169689SkanPerform live range splitting during the SSA->normal pass 1023169689Skan 1024169689Skanftree-vrp 1025169689SkanCommon Report Var(flag_tree_vrp) Init(0) 1026169689SkanPerform Value Range Propagation on trees 1027169689Skan 1028132718Skanfunit-at-a-time 1029169689SkanCommon Report Var(flag_unit_at_a_time) 1030132718SkanCompile whole compilation unit at a time 1031132718Skan 1032132718Skanfunroll-loops 1033169689SkanCommon Report Var(flag_unroll_loops) 1034132718SkanPerform loop unrolling when iteration count is known 1035132718Skan 1036132718Skanfunroll-all-loops 1037169689SkanCommon Report Var(flag_unroll_all_loops) 1038132718SkanPerform loop unrolling for all loops 1039132718Skan 1040169689Skan; Nonzero means that loop optimizer may assume that the induction variables 1041169689Skan; that control loops do not overflow and that the loops with nontrivial 1042169689Skan; exit condition are not infinite 1043169689Skanfunsafe-loop-optimizations 1044169689SkanCommon Report Var(flag_unsafe_loop_optimizations) 1045169689SkanAllow loop optimizations to assume that the loops behave in normal way 1046169689Skan 1047169689Skan; Nonzero means that unsafe floating-point math optimizations are allowed 1048169689Skan; for the sake of speed. IEEE compliance is not guaranteed, and operations 1049169689Skan; are allowed to assume that their arguments and results are "normal" 1050169689Skan; (e.g., nonnegative for SQRT). 1051132718Skanfunsafe-math-optimizations 1052169689SkanCommon Report Var(flag_unsafe_math_optimizations) 1053132718SkanAllow math optimizations that may violate IEEE or ISO standards 1054132718Skan 1055132718Skanfunswitch-loops 1056169689SkanCommon Report Var(flag_unswitch_loops) 1057132718SkanPerform loop unswitching 1058132718Skan 1059132718Skanfunwind-tables 1060169689SkanCommon Report Var(flag_unwind_tables) 1061132718SkanJust generate unwind tables for exception handling 1062132718Skan 1063169689Skanfvar-tracking 1064169689SkanCommon Report Var(flag_var_tracking) VarExists 1065169689SkanPerform variable tracking 1066169689Skan 1067169689Skanftree-vectorize 1068169689SkanCommon Report Var(flag_tree_vectorize) 1069169689SkanEnable loop vectorization on trees 1070169689Skan 1071169689Skanftree-vect-loop-version 1072169689SkanCommon Report Var(flag_tree_vect_loop_version) Init(1) 1073169689SkanEnable loop versioning when doing loop vectorization on trees 1074169689Skan 1075169689Skanftree-vectorizer-verbose= 1076169689SkanCommon RejectNegative Joined 1077169689Skan-ftree-vectorizer-verbose=<number> Set the verbosity level of the vectorizer 1078169689Skan 1079169689Skan; -fverbose-asm causes extra commentary information to be produced in 1080169689Skan; the generated assembly code (to make it more readable). This option 1081169689Skan; is generally only of use to those who actually need to read the 1082169689Skan; generated assembly code (perhaps while debugging the compiler itself). 1083169689Skan; -fno-verbose-asm, the default, causes the extra information 1084169689Skan; to not be added and is useful when comparing two assembler files. 1085132718Skanfverbose-asm 1086169689SkanCommon Report Var(flag_verbose_asm) 1087132718SkanAdd extra commentary to assembler output 1088132718Skan 1089169689Skanfvisibility= 1090169689SkanCommon Joined RejectNegative 1091169689Skan-fvisibility=[default|internal|hidden|protected] Set the default symbol visibility 1092169689Skan 1093169689Skan 1094132718Skanfvpt 1095169689SkanCommon Report Var(flag_value_profile_transformations) 1096132718SkanUse expression value profiles in optimizations 1097132718Skan 1098132718Skanfweb 1099169689SkanCommon Report Var(flag_web) Init(2) 1100132718SkanConstruct webs and split unrelated uses of single variable 1101132718Skan 1102169689Skanfwhole-program 1103169689SkanCommon Report Var(flag_whole_program) Init(0) 1104169689SkanPerform whole program optimizations 1105169689Skan 1106132718Skanfwrapv 1107169689SkanCommon Report Var(flag_wrapv) 1108132718SkanAssume signed arithmetic overflow wraps around 1109132718Skan 1110132718Skanfzero-initialized-in-bss 1111169689SkanCommon Report Var(flag_zero_initialized_in_bss) Init(1) 1112132718SkanPut zero initialized data in the bss section 1113132718Skan 1114132718Skang 1115132718SkanCommon JoinedOrMissing 1116132718SkanGenerate debug information in default format 1117132718Skan 1118132718Skangcoff 1119169689SkanCommon JoinedOrMissing Negative(gdwarf-2) 1120132718SkanGenerate debug information in COFF format 1121132718Skan 1122132718Skangdwarf-2 1123169689SkanCommon JoinedOrMissing Negative(gstabs) 1124132718SkanGenerate debug information in DWARF v2 format 1125132718Skan 1126132718Skanggdb 1127132718SkanCommon JoinedOrMissing 1128132718SkanGenerate debug information in default extended format 1129132718Skan 1130132718Skangstabs 1131169689SkanCommon JoinedOrMissing Negative(gstabs+) 1132132718SkanGenerate debug information in STABS format 1133132718Skan 1134132718Skangstabs+ 1135169689SkanCommon JoinedOrMissing Negative(gvms) 1136132718SkanGenerate debug information in extended STABS format 1137132718Skan 1138132718Skangvms 1139169689SkanCommon JoinedOrMissing Negative(gxcoff) 1140132718SkanGenerate debug information in VMS format 1141132718Skan 1142132718Skangxcoff 1143169689SkanCommon JoinedOrMissing Negative(gxcoff+) 1144132718SkanGenerate debug information in XCOFF format 1145132718Skan 1146132718Skangxcoff+ 1147169689SkanCommon JoinedOrMissing Negative(gcoff) 1148132718SkanGenerate debug information in extended XCOFF format 1149132718Skan 1150132718Skano 1151132718SkanCommon Joined Separate 1152132718Skan-o <file> Place output into <file> 1153132718Skan 1154132718Skanp 1155169689SkanCommon Var(profile_flag) 1156132718SkanEnable function profiling 1157132718Skan 1158132718Skanpedantic 1159169689SkanCommon Var(pedantic) 1160132718SkanIssue warnings needed for strict compliance to the standard 1161132718Skan 1162132718Skanpedantic-errors 1163132718SkanCommon 1164132718SkanLike -pedantic but issue them as errors 1165132718Skan 1166132718Skanquiet 1167169689SkanCommon Var(quiet_flag) 1168132718SkanDo not display functions compiled or elapsed time 1169132718Skan 1170132718Skanversion 1171169689SkanCommon Var(version_flag) 1172132718SkanDisplay the compiler's version 1173132718Skan 1174132718Skanw 1175169689SkanCommon Var(inhibit_warnings) 1176132718SkanSuppress warnings 1177132718Skan 1178132718Skan; This comment is to ensure we retain the blank line above. 1179