Commit 72528c71 authored by neil's avatar neil
Browse files

* common.opt: More --help messages.

	* opts.c (print_help): Use puts().
	* toplev.c (f_options): Remove help text.
	(display_help): Don't dump f_options.


git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@69217 138bc75d-0d04-0410-961f-82ee72b054a4
parent 651b0f59
2003-07-11 Neil Booth <neil@daikokuya.co.uk>
* common.opt: More --help messages.
* opts.c (print_help): Use puts().
* toplev.c (f_options): Remove help text.
(display_help): Don't dump f_options.
2003-07-11 Nathanael Nerode <neroden@gcc.gnu.org> 2003-07-11 Nathanael Nerode <neroden@gcc.gnu.org>
   
* fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*. * fixinc/mkfixinc.sh: Drop reference to unsupported alpha-*-interix*.
......
...@@ -117,7 +117,7 @@ Warn about all enumerated switches missing a specific case ...@@ -117,7 +117,7 @@ Warn about all enumerated switches missing a specific case
Wsystem-headers Wsystem-headers
Common Common
Suppress warnings from system headers Do not suppress warnings from system headers
Wuninitialized Wuninitialized
Common Common
...@@ -180,54 +180,67 @@ Common ...@@ -180,54 +180,67 @@ Common
falign-functions falign-functions
Common Common
Align the start of functions
falign-functions= falign-functions=
Common RejectNegative Joined UInteger Common RejectNegative Joined UInteger
falign-jumps falign-jumps
Common Common
Align labels which are only reached by jumping
falign-jumps= falign-jumps=
Common RejectNegative Joined UInteger Common RejectNegative Joined UInteger
falign-labels falign-labels
Common Common
Align all labels
falign-labels= falign-labels=
Common RejectNegative Joined UInteger Common RejectNegative Joined UInteger
falign-loops falign-loops
Common Common
Align the start of loops
falign-loops= falign-loops=
Common RejectNegative Joined UInteger Common RejectNegative Joined UInteger
fargument-alias fargument-alias
Common Common
Specify that arguments may alias each other and globals
fargument-noalias fargument-noalias
Common Common
Assume arguments may alias globals but not each other
fargument-noalias-global fargument-noalias-global
Common Common
Assume arguments alias neither each other nor globals
fasynchronous-unwind-tables fasynchronous-unwind-tables
Common Common
Generate unwind tables that are exact at each instruction boundary
fbounds-check fbounds-check
Common Common
Generate code to check bounds before indexing arrays
fbranch-count-reg fbranch-count-reg
Common Common
Replace add, compare, branch with branch on count register
fbranch-probabilities fbranch-probabilities
Common Common
Use profiling information for branch probabilities
fbranch-target-load-optimize fbranch-target-load-optimize
Common Common
Perform branch target load optimization before prologue / epilogue threading
fbranch-target-load-optimize2 fbranch-target-load-optimize2
Common Common
Perform branch target load optimization after prologue / epilogue threading
fcall-saved- fcall-saved-
Common Joined RejectNegative Common Joined RejectNegative
...@@ -239,33 +252,43 @@ Common Joined RejectNegative ...@@ -239,33 +252,43 @@ Common Joined RejectNegative
fcaller-saves fcaller-saves
Common Common
Save registers around function calls
fcommon fcommon
Common Common
Do not put uninitialized globals in the common section
fcprop-registers fcprop-registers
Common Common
Perform a register copy-propagation optimization pass
fcrossjumping fcrossjumping
Common Common
Perform cross-jumping optimization
fcse-follow-jumps fcse-follow-jumps
Common Common
When running CSE, follow jumps to their targets
fcse-skip-blocks fcse-skip-blocks
Common Common
When running CSE, follow conditional jumps
fdata-sections fdata-sections
Common Common
Place data items into their own section
fdefer-pop fdefer-pop
Common Common
Defer popping functions args from stack until later
fdelayed-branch fdelayed-branch
Common Common
Attempt to fill delay slots of branch instructions
fdelete-null-pointer-checks fdelete-null-pointer-checks
Common Common
Delete useless null pointer checks
fdiagnostics-show-location= fdiagnostics-show-location=
Common Joined RejectNegative Common Joined RejectNegative
...@@ -273,27 +296,34 @@ Common Joined RejectNegative ...@@ -273,27 +296,34 @@ Common Joined RejectNegative
fdump-unnumbered fdump-unnumbered
Common Common
Suppress output of instruction numbers and line number notes in debugging dumps
feliminate-dwarf2-dups feliminate-dwarf2-dups
Common Common
Perform DWARF2 duplicate elimination
feliminate-unused-debug-symbols feliminate-unused-debug-symbols
Common Common
Perform unused type elimination in debug info
feliminate-unused-debug-types feliminate-unused-debug-types
Common Common
Perform unused type elimination in debug info
fexceptions fexceptions
Common Common
Enable exception handling
fexpensive-optimizations fexpensive-optimizations
Common Common
Perform a number of minor, expensive optimizations
ffast-math ffast-math
Common Common
ffinite-math-only ffinite-math-only
Common Common
Assume no NaNs or infinities are generated
ffixed- ffixed-
Common Joined RejectNegative Common Joined RejectNegative
...@@ -301,51 +331,67 @@ Common Joined RejectNegative ...@@ -301,51 +331,67 @@ Common Joined RejectNegative
ffloat-store ffloat-store
Common Common
Do not store floats in registers
fforce-addr fforce-addr
Common Common
Copy memory address constants into registers before use
fforce-mem fforce-mem
Common Common
Copy memory operands into registers before use
ffunction-cse ffunction-cse
Common Common
Allow function addresses to be held in registers
ffunction-sections ffunction-sections
Common Common
Place each function into its own section
fgcse fgcse
Common Common
Perform global common subexpression elimination
fgcse-lm fgcse-lm
Common Common
Perform enhanced load motion during global common subexpression elimination
fgcse-sm fgcse-sm
Common Common
Perform store motion after global common subexpression elimination
fgnu-linker fgnu-linker
Common Common
Output GNU ld formatted global initializers
fguess-branch-probability fguess-branch-probability
Common Common
Enable guessing of branch probabilities
fident fident
Common Common
Process #ident directives
fif-conversion fif-conversion
Common Common
Perform conversion of conditional jumps to branchless equivalents
fif-conversion2 fif-conversion2
Common Common
Perform conversion of conditional jumps to conditional execution
finhibit-size-directive finhibit-size-directive
Common Common
Do not generate .size directives
finline finline
Common Common
Pay attention to the \"inline\" keyword
finline-functions finline-functions
Common Common
Integrate simple functions into their callers
finline-limit- finline-limit-
Common RejectNegative Joined UInteger Common RejectNegative Joined UInteger
...@@ -356,30 +402,39 @@ Common RejectNegative Joined UInteger ...@@ -356,30 +402,39 @@ Common RejectNegative Joined UInteger
finstrument-functions finstrument-functions
Common Common
Instrument function entry and exit with profiling calls
fkeep-inline-functions fkeep-inline-functions
Common Common
Generate code for functions even if they are fully inlined
fkeep-static-consts fkeep-static-consts
Common Common
Emit static const variables even if they are not used
fleading-underscore fleading-underscore
Common Common
Give external symbols a leading underscore
floop-optimize floop-optimize
Common Common
Perform loop optimizations
fmath-errno fmath-errno
Common Common
Set errno after built-in math functions
fmem-report fmem-report
Common Common
Report on permanent memory allocation
fmerge-all-constants fmerge-all-constants
Common Common
Attempt to merge identical constants and constant variables
fmerge-constants fmerge-constants
Common Common
Attempt to merge identical constants across compilation units
fmessage-length= fmessage-length=
Common RejectNegative Joined UInteger Common RejectNegative Joined UInteger
...@@ -387,57 +442,75 @@ Common RejectNegative Joined UInteger ...@@ -387,57 +442,75 @@ Common RejectNegative Joined UInteger
fmove-all-movables fmove-all-movables
Common Common
Force all loop invariant computations out of loops
fnew-ra fnew-ra
Common Common
Use graph-coloring register allocation
fnon-call-exceptions fnon-call-exceptions
Common Common
Support synchronous non-call exceptions
fold-unroll-loops fold-unroll-loops
Common Common
Perform loop unrolling when iteration count is known
fold-unroll-all-loops fold-unroll-all-loops
Common Common
Perform loop unrolling for all loops
fomit-frame-pointer fomit-frame-pointer
Common Common
When possible do not generate stack frames
foptimize-register-move foptimize-register-move
Common Common
Do the full register move optimization pass
foptimize-sibling-calls foptimize-sibling-calls
Common Common
Optimize sibling and tail recursive calls
fpack-struct fpack-struct
Common Common
Pack structure members together without holes
fpcc-struct-return fpcc-struct-return
Common Common
Return small aggregates in memory, not registers
fpeel-loops fpeel-loops
Common Common
Perform loop peeling
fpeephole fpeephole
Common Common
Enable machine specific peephole optimizations
fpeephole2 fpeephole2
Common Common
Enable an RTL peephole pass before sched2
fpic fpic
Common Common
Generate position-independent code if possible
fpie fpie
Common Common
Generate position-independent code for executables if possible
fprefetch-loop-arrays fprefetch-loop-arrays
Common Common
Generate prefetch instructions, if available, for arrays in loops
fprofile fprofile
Common Common
Enable basic program profiling code
fprofile-arcs fprofile-arcs
Common Common
Insert arc-based program profiling code
frandom-seed frandom-seed
Common Common
...@@ -448,39 +521,51 @@ Common Joined RejectNegative ...@@ -448,39 +521,51 @@ Common Joined RejectNegative
freduce-all-givs freduce-all-givs
Common Common
Strength reduce all loop general induction variables
freg-struct-return freg-struct-return
Common Common
Return small aggregates in registers
fregmove fregmove
Common Common
Enables a register move optimization
frename-registers frename-registers
Common Common
Perform a register renaming optimization pass
freorder-blocks freorder-blocks
Common Common
Reorder basic blocks to improve code placement
freorder-functions freorder-functions
Common Common
Reorder functions to improve code placement
frerun-cse-after-loop frerun-cse-after-loop
Common Common
Add a common subexpression elimination pass after loop optimizations
frerun-loop-opt frerun-loop-opt
Common Common
Run the loop optimizer twice
fsched-interblock fsched-interblock
Common Common
Enable scheduling across basic blocks
fsched-spec fsched-spec
Common Common
Allow speculative motion of non-loads
fsched-spec-load fsched-spec-load
Common Common
Allow speculative motion of some loads
fsched-spec-load-dangerous fsched-spec-load-dangerous
Common Common
Allow speculative motion of more loads
fsched-verbose= fsched-verbose=
Common RejectNegative Joined Common RejectNegative Joined
...@@ -488,36 +573,47 @@ Common RejectNegative Joined ...@@ -488,36 +573,47 @@ Common RejectNegative Joined
fsched2-use-superblocks fsched2-use-superblocks
Common Common
If scheduling post reload, do superblock scheduling
fsched2-use-traces fsched2-use-traces
Common Common
If scheduling post reload, do trace scheduling
fschedule-insns fschedule-insns
Common Common
Reschedule instructions before register allocation
fschedule-insns2 fschedule-insns2
Common Common
Reschedule instructions after register allocation
fshared-data fshared-data
Common Common
Mark data as shared rather than private
fsignaling-nans fsignaling-nans
Common Common
Disable optimizations observable by IEEE signaling NaNs
fsingle-precision-constant fsingle-precision-constant
Common Common
Convert floating point constants to single precision constants
fssa fssa
Common Common
Enable static single assignment optimizations
fssa-ccp fssa-ccp
Common Common
Enable SSA conditional constant propagation
fssa-dce fssa-dce
Common Common
Enable aggressive SSA dead code elimination
fstack-check fstack-check
Common Common
Insert stack checking code into the program
fstack-limit fstack-limit
Common Common
...@@ -532,21 +628,27 @@ Common RejectNegative Joined ...@@ -532,21 +628,27 @@ Common RejectNegative Joined
fstrength-reduce fstrength-reduce
Common Common
Perform strength reduction optimizations
fstrict-aliasing fstrict-aliasing
Common Common
Assume strict aliasing rules apply
fsyntax-only fsyntax-only
Common Common
Check for syntax errors, then stop
ftest-coverage ftest-coverage
Common Common
Create data files needed by \"gcov\"
fthread-jumps fthread-jumps
Common Common
Perform jump threading optimizations
ftime-report ftime-report
Common Common
Report the time taken by each compiler pass
ftls-model= ftls-model=
Common Joined RejectNegative Common Joined RejectNegative
...@@ -554,42 +656,55 @@ Common Joined RejectNegative ...@@ -554,42 +656,55 @@ Common Joined RejectNegative
ftracer ftracer
Common Common
Perform superblock formation via tail duplication
ftrapping-math ftrapping-math
Common Common
Assume floating-point operations can trap
ftrapv ftrapv
Common Common
Trap for signed overflow in addition, subtraction and multiplication
funit-at-a-time funit-at-a-time
Common Common
Compile whole compilation unit at a time
funroll-loops funroll-loops
Common Common
Perform loop unrolling when iteration count is known
funroll-all-loops funroll-all-loops
Common Common
Perform loop unrolling for all loops
funsafe-math-optimizations funsafe-math-optimizations
Common Common
Allow math optimizations that may violate IEEE or ISO standards
funswitch-loops funswitch-loops
Common Common
Perform loop unswitching
funwind-tables funwind-tables
Common Common
Just generate unwind tables for exception handling
fverbose-asm fverbose-asm
Common Common
Add extra commentary to assembler output
fwrapv fwrapv
Common Common
Assume signed arithmetic overflow wraps around
fwritable-strings fwritable-strings
Common Common
Store strings in writable data section
fzero-initialized-in-bss fzero-initialized-in-bss
Common Common
Put zero initialized data in the bss section
g g
Common JoinedOrMissing Common JoinedOrMissing
......
...@@ -1487,7 +1487,7 @@ print_help (void) ...@@ -1487,7 +1487,7 @@ print_help (void)
{ {
size_t i, len; size_t i, len;
printf (_("\nThe following options are language-independent:\n")); puts (_("\nThe following options are language-independent:\n"));
for (i = 0; i < cl_options_count; i++) for (i = 0; i < cl_options_count; i++)
{ {
......
...@@ -1029,7 +1029,6 @@ typedef struct ...@@ -1029,7 +1029,6 @@ typedef struct
const char *const string; const char *const string;
int *const variable; int *const variable;
const int on_value; const int on_value;
const char *const description;
} }
lang_independent_options; lang_independent_options;
...@@ -1061,238 +1060,123 @@ static const param_info lang_independent_params[] = { ...@@ -1061,238 +1060,123 @@ static const param_info lang_independent_params[] = {
static const lang_independent_options f_options[] = static const lang_independent_options f_options[] =
{ {
{"eliminate-dwarf2-dups", &flag_eliminate_dwarf2_dups, 1, {"eliminate-dwarf2-dups", &flag_eliminate_dwarf2_dups, 1 },
N_("Perform DWARF2 duplicate elimination") }, {"eliminate-unused-debug-symbols", &flag_debug_only_used_symbols, 1 },
{"eliminate-unused-debug-symbols", &flag_debug_only_used_symbols, 1, {"eliminate-unused-debug-types", &flag_eliminate_unused_debug_types, 1 },
N_("Perform unused type elimination in debug info") }, {"float-store", &flag_float_store, 1 },
{"eliminate-unused-debug-types", &flag_eliminate_unused_debug_types, 1, {"defer-pop", &flag_defer_pop, 1 },
N_("Perform unused type elimination in debug info") }, {"omit-frame-pointer", &flag_omit_frame_pointer, 1 },
{"float-store", &flag_float_store, 1, {"optimize-sibling-calls", &flag_optimize_sibling_calls, 1 },
N_("Do not store floats in registers") }, {"tracer", &flag_tracer, 1 },
{"defer-pop", &flag_defer_pop, 1, {"unit-at-a-time", &flag_unit_at_a_time, 1 },
N_("Defer popping functions args from stack until later") }, {"cse-follow-jumps", &flag_cse_follow_jumps, 1 },
{"omit-frame-pointer", &flag_omit_frame_pointer, 1, {"cse-skip-blocks", &flag_cse_skip_blocks, 1 },
N_("When possible do not generate stack frames") }, {"expensive-optimizations", &flag_expensive_optimizations, 1 },
{"optimize-sibling-calls", &flag_optimize_sibling_calls, 1, {"thread-jumps", &flag_thread_jumps, 1 },
N_("Optimize sibling and tail recursive calls") }, {"strength-reduce", &flag_strength_reduce, 1 },
{"tracer", &flag_tracer, 1, {"unroll-loops", &flag_unroll_loops, 1 },
N_("Perform superblock formation via tail duplication") }, {"unroll-all-loops", &flag_unroll_all_loops, 1 },
{"unit-at-a-time", &flag_unit_at_a_time, 1, {"old-unroll-loops", &flag_old_unroll_loops, 1 },
N_("Compile whole compilation unit at a time") }, {"old-unroll-all-loops", &flag_old_unroll_all_loops, 1 },
{"cse-follow-jumps", &flag_cse_follow_jumps, 1, {"peel-loops", &flag_peel_loops, 1 },
N_("When running CSE, follow jumps to their targets") }, {"unswitch-loops", &flag_unswitch_loops, 1 },
{"cse-skip-blocks", &flag_cse_skip_blocks, 1, {"prefetch-loop-arrays", &flag_prefetch_loop_arrays, 1 },
N_("When running CSE, follow conditional jumps") }, {"move-all-movables", &flag_move_all_movables, 1 },
{"expensive-optimizations", &flag_expensive_optimizations, 1, {"reduce-all-givs", &flag_reduce_all_givs, 1 },
N_("Perform a number of minor, expensive optimizations") }, {"writable-strings", &flag_writable_strings, 1 },
{"thread-jumps", &flag_thread_jumps, 1, {"peephole", &flag_no_peephole, 0 },
N_("Perform jump threading optimizations") }, {"force-mem", &flag_force_mem, 1 },
{"strength-reduce", &flag_strength_reduce, 1, {"force-addr", &flag_force_addr, 1 },
N_("Perform strength reduction optimizations") }, {"function-cse", &flag_no_function_cse, 0 },
{"unroll-loops", &flag_unroll_loops, 1, {"inline-functions", &flag_inline_functions, 1 },
N_("Perform loop unrolling when iteration count is known") }, {"keep-inline-functions", &flag_keep_inline_functions, 1 },
{"unroll-all-loops", &flag_unroll_all_loops, 1, {"inline", &flag_no_inline, 0 },
N_("Perform loop unrolling for all loops") }, {"keep-static-consts", &flag_keep_static_consts, 1 },
{"old-unroll-loops", &flag_old_unroll_loops, 1, {"syntax-only", &flag_syntax_only, 1 },
N_("Perform loop unrolling when iteration count is known") }, {"shared-data", &flag_shared_data, 1 },
{"old-unroll-all-loops", &flag_old_unroll_all_loops, 1, {"caller-saves", &flag_caller_saves, 1 },
N_("Perform loop unrolling for all loops") }, {"pcc-struct-return", &flag_pcc_struct_return, 1 },
{"peel-loops", &flag_peel_loops, 1, {"reg-struct-return", &flag_pcc_struct_return, 0 },
N_("Perform loop peeling") }, {"delayed-branch", &flag_delayed_branch, 1 },
{"unswitch-loops", &flag_unswitch_loops, 1, {"gcse", &flag_gcse, 1 },
N_("Perform loop unswitching") }, {"gcse-lm", &flag_gcse_lm, 1 },
{"prefetch-loop-arrays", &flag_prefetch_loop_arrays, 1, {"gcse-sm", &flag_gcse_sm, 1 },
N_("Generate prefetch instructions, if available, for arrays in loops") }, {"branch-target-load-optimize", &flag_branch_target_load_optimize, 1 },
{"move-all-movables", &flag_move_all_movables, 1, {"branch-target-load-optimize2", &flag_branch_target_load_optimize2, 1 },
N_("Force all loop invariant computations out of loops") }, {"loop-optimize", &flag_loop_optimize, 1 },
{"reduce-all-givs", &flag_reduce_all_givs, 1, {"crossjumping", &flag_crossjumping, 1 },
N_("Strength reduce all loop general induction variables") }, {"if-conversion", &flag_if_conversion, 1 },
{"writable-strings", &flag_writable_strings, 1, {"if-conversion2", &flag_if_conversion2, 1 },
N_("Store strings in writable data section") }, {"rerun-cse-after-loop", &flag_rerun_cse_after_loop, 1 },
{"peephole", &flag_no_peephole, 0, {"rerun-loop-opt", &flag_rerun_loop_opt, 1 },
N_("Enable machine specific peephole optimizations") }, {"delete-null-pointer-checks", &flag_delete_null_pointer_checks, 1 },
{"force-mem", &flag_force_mem, 1, {"schedule-insns", &flag_schedule_insns, 1 },
N_("Copy memory operands into registers before using") }, {"schedule-insns2", &flag_schedule_insns_after_reload, 1 },
{"force-addr", &flag_force_addr, 1, {"sched-interblock",&flag_schedule_interblock, 1 },
N_("Copy memory address constants into regs before using") }, {"sched-spec",&flag_schedule_speculative, 1 },
{"function-cse", &flag_no_function_cse, 0, {"sched-spec-load",&flag_schedule_speculative_load, 1 },
N_("Allow function addresses to be held in registers") }, {"sched-spec-load-dangerous",&flag_schedule_speculative_load_dangerous, 1 },
{"inline-functions", &flag_inline_functions, 1, {"sched2-use-superblocks", &flag_sched2_use_superblocks, 1 },
N_("Integrate simple functions into their callers") }, {"sched2-use-traces", &flag_sched2_use_traces, 1 },
{"keep-inline-functions", &flag_keep_inline_functions, 1, {"branch-count-reg",&flag_branch_on_count_reg, 1 },
N_("Generate code for funcs even if they are fully inlined") }, {"pic", &flag_pic, 1 },
{"inline", &flag_no_inline, 0, {"PIC", &flag_pic, 2 },
N_("Pay attention to the 'inline' keyword") }, {"pie", &flag_pie, 1 },
{"keep-static-consts", &flag_keep_static_consts, 1, {"PIE", &flag_pie, 2 },
N_("Emit static const variables even if they are not used") }, {"exceptions", &flag_exceptions, 1 },
{"syntax-only", &flag_syntax_only, 1, {"unwind-tables", &flag_unwind_tables, 1 },
N_("Check for syntax errors, then stop") }, {"asynchronous-unwind-tables", &flag_asynchronous_unwind_tables, 1 },
{"shared-data", &flag_shared_data, 1, {"non-call-exceptions", &flag_non_call_exceptions, 1 },
N_("Mark data as shared rather than private") }, {"profile-arcs", &profile_arc_flag, 1 },
{"caller-saves", &flag_caller_saves, 1, {"test-coverage", &flag_test_coverage, 1 },
N_("Enable saving registers around function calls") }, {"branch-probabilities", &flag_branch_probabilities, 1 },
{"pcc-struct-return", &flag_pcc_struct_return, 1, {"profile", &profile_flag, 1 },
N_("Return 'short' aggregates in memory, not registers") }, {"reorder-blocks", &flag_reorder_blocks, 1 },
{"reg-struct-return", &flag_pcc_struct_return, 0, {"reorder-functions", &flag_reorder_functions, 1 },
N_("Return 'short' aggregates in registers") }, {"rename-registers", &flag_rename_registers, 1 },
{"delayed-branch", &flag_delayed_branch, 1, {"cprop-registers", &flag_cprop_registers, 1 },
N_("Attempt to fill delay slots of branch instructions") }, {"common", &flag_no_common, 0 },
{"gcse", &flag_gcse, 1, {"inhibit-size-directive", &flag_inhibit_size_directive, 1 },
N_("Perform the global common subexpression elimination") }, {"function-sections", &flag_function_sections, 1 },
{"gcse-lm", &flag_gcse_lm, 1, {"data-sections", &flag_data_sections, 1 },
N_("Perform enhanced load motion during global subexpression elimination") }, {"verbose-asm", &flag_verbose_asm, 1 },
{"gcse-sm", &flag_gcse_sm, 1, {"gnu-linker", &flag_gnu_linker, 1 },
N_("Perform store motion after global subexpression elimination") }, {"regmove", &flag_regmove, 1 },
{"branch-target-load-optimize", &flag_branch_target_load_optimize, 1, {"optimize-register-move", &flag_regmove, 1 },
N_("Perform branch target load optimization before prologue / epilogue threading") }, {"pack-struct", &flag_pack_struct, 1 },
{"branch-target-load-optimize2", &flag_branch_target_load_optimize2, 1, {"stack-check", &flag_stack_check, 1 },
N_("Perform branch target load optimization after prologue / epilogue threading") }, {"argument-alias", &flag_argument_noalias, 0 },
{"loop-optimize", &flag_loop_optimize, 1, {"argument-noalias", &flag_argument_noalias, 1 },
N_("Perform the loop optimizations") }, {"argument-noalias-global", &flag_argument_noalias, 2 },
{"crossjumping", &flag_crossjumping, 1, {"strict-aliasing", &flag_strict_aliasing, 1 },
N_("Perform cross-jumping optimization") }, {"align-loops", &align_loops, 0 },
{"if-conversion", &flag_if_conversion, 1, {"align-jumps", &align_jumps, 0 },
N_("Perform conversion of conditional jumps to branchless equivalents") }, {"align-labels", &align_labels, 0 },
{"if-conversion2", &flag_if_conversion2, 1, {"align-functions", &align_functions, 0 },
N_("Perform conversion of conditional jumps to conditional execution") }, {"merge-constants", &flag_merge_constants, 1 },
{"rerun-cse-after-loop", &flag_rerun_cse_after_loop, 1, {"merge-all-constants", &flag_merge_constants, 2 },
N_("Run CSE pass after loop optimizations") }, {"dump-unnumbered", &flag_dump_unnumbered, 1 },
{"rerun-loop-opt", &flag_rerun_loop_opt, 1, {"instrument-functions", &flag_instrument_function_entry_exit, 1 },
N_("Run the loop optimizer twice") }, {"zero-initialized-in-bss", &flag_zero_initialized_in_bss, 1 },
{"delete-null-pointer-checks", &flag_delete_null_pointer_checks, 1, {"ssa", &flag_ssa, 1 },
N_("Delete useless null pointer checks") }, {"ssa-ccp", &flag_ssa_ccp, 1 },
{"schedule-insns", &flag_schedule_insns, 1, {"ssa-dce", &flag_ssa_dce, 1 },
N_("Reschedule instructions before register allocation") }, {"leading-underscore", &flag_leading_underscore, 1 },
{"schedule-insns2", &flag_schedule_insns_after_reload, 1, {"ident", &flag_no_ident, 0 },
N_("Reschedule instructions after register allocation") }, { "peephole2", &flag_peephole2, 1 },
{"sched-interblock",&flag_schedule_interblock, 1, {"finite-math-only", &flag_finite_math_only, 1 },
N_("Enable scheduling across basic blocks") }, { "guess-branch-probability", &flag_guess_branch_prob, 1 },
{"sched-spec",&flag_schedule_speculative, 1, {"math-errno", &flag_errno_math, 1 },
N_("Allow speculative motion of non-loads") }, {"trapping-math", &flag_trapping_math, 1 },
{"sched-spec-load",&flag_schedule_speculative_load, 1, {"unsafe-math-optimizations", &flag_unsafe_math_optimizations, 1 },
N_("Allow speculative motion of some loads") }, {"signaling-nans", &flag_signaling_nans, 1 },
{"sched-spec-load-dangerous",&flag_schedule_speculative_load_dangerous, 1, {"bounds-check", &flag_bounds_check, 1 },
N_("Allow speculative motion of more loads") }, {"single-precision-constant", &flag_single_precision_constant, 1 },
{"sched2-use-superblocks", &flag_sched2_use_superblocks, 1, {"time-report", &time_report, 1 },
N_("If scheduling post reload, do superblock scheduling") }, {"mem-report", &mem_report, 1 },
{"sched2-use-traces", &flag_sched2_use_traces, 1, { "trapv", &flag_trapv, 1 },
N_("If scheduling post reload, do trace scheduling") }, { "wrapv", &flag_wrapv, 1 },
{"branch-count-reg",&flag_branch_on_count_reg, 1, { "new-ra", &flag_new_regalloc, 1 }
N_("Replace add,compare,branch with branch on count reg") },
{"pic", &flag_pic, 1,
N_("Generate position independent code, if possible") },
{"PIC", &flag_pic, 2, ""},
{"pie", &flag_pie, 1,
N_("Generate position independent code for executables, if possible") },
{"PIE", &flag_pie, 2, ""},
{"exceptions", &flag_exceptions, 1,
N_("Enable exception handling") },
{"unwind-tables", &flag_unwind_tables, 1,
N_("Just generate unwind tables for exception handling") },
{"asynchronous-unwind-tables", &flag_asynchronous_unwind_tables, 1,
N_("Generate unwind tables exact at each instruction boundary") },
{"non-call-exceptions", &flag_non_call_exceptions, 1,
N_("Support synchronous non-call exceptions") },
{"profile-arcs", &profile_arc_flag, 1,
N_("Insert arc based program profiling code") },
{"test-coverage", &flag_test_coverage, 1,
N_("Create data files needed by gcov") },
{"branch-probabilities", &flag_branch_probabilities, 1,
N_("Use profiling information for branch probabilities") },
{"profile", &profile_flag, 1,
N_("Enable basic program profiling code") },
{"reorder-blocks", &flag_reorder_blocks, 1,
N_("Reorder basic blocks to improve code placement") },
{"reorder-functions", &flag_reorder_functions, 1,
N_("Reorder functions to improve code placement") },
{"rename-registers", &flag_rename_registers, 1,
N_("Do the register renaming optimization pass") },
{"cprop-registers", &flag_cprop_registers, 1,
N_("Do the register copy-propagation optimization pass") },
{"common", &flag_no_common, 0,
N_("Do not put uninitialized globals in the common section") },
{"inhibit-size-directive", &flag_inhibit_size_directive, 1,
N_("Do not generate .size directives") },
{"function-sections", &flag_function_sections, 1,
N_("place each function into its own section") },
{"data-sections", &flag_data_sections, 1,
N_("place data items into their own section") },
{"verbose-asm", &flag_verbose_asm, 1,
N_("Add extra commentary to assembler output") },
{"gnu-linker", &flag_gnu_linker, 1,
N_("Output GNU ld formatted global initializers") },
{"regmove", &flag_regmove, 1,
N_("Enables a register move optimization") },
{"optimize-register-move", &flag_regmove, 1,
N_("Do the full regmove optimization pass") },
{"pack-struct", &flag_pack_struct, 1,
N_("Pack structure members together without holes") },
{"stack-check", &flag_stack_check, 1,
N_("Insert stack checking code into the program") },
{"argument-alias", &flag_argument_noalias, 0,
N_("Specify that arguments may alias each other & globals") },
{"argument-noalias", &flag_argument_noalias, 1,
N_("Assume arguments may alias globals but not each other") },
{"argument-noalias-global", &flag_argument_noalias, 2,
N_("Assume arguments do not alias each other or globals") },
{"strict-aliasing", &flag_strict_aliasing, 1,
N_("Assume strict aliasing rules apply") },
{"align-loops", &align_loops, 0,
N_("Align the start of loops") },
{"align-jumps", &align_jumps, 0,
N_("Align labels which are only reached by jumping") },
{"align-labels", &align_labels, 0,
N_("Align all labels") },
{"align-functions", &align_functions, 0,
N_("Align the start of functions") },
{"merge-constants", &flag_merge_constants, 1,
N_("Attempt to merge identical constants across compilation units") },
{"merge-all-constants", &flag_merge_constants, 2,
N_("Attempt to merge identical constants and constant variables") },
{"dump-unnumbered", &flag_dump_unnumbered, 1,
N_("Suppress output of instruction numbers and line number notes in debugging dumps") },
{"instrument-functions", &flag_instrument_function_entry_exit, 1,
N_("Instrument function entry/exit with profiling calls") },
{"zero-initialized-in-bss", &flag_zero_initialized_in_bss, 1,
N_("Put zero initialized data in the bss section") },
{"ssa", &flag_ssa, 1,
N_("Enable SSA optimizations") },
{"ssa-ccp", &flag_ssa_ccp, 1,
N_("Enable SSA conditional constant propagation") },
{"ssa-dce", &flag_ssa_dce, 1,
N_("Enable aggressive SSA dead code elimination") },
{"leading-underscore", &flag_leading_underscore, 1,
N_("External symbols have a leading underscore") },
{"ident", &flag_no_ident, 0,
N_("Process #ident directives") },
{ "peephole2", &flag_peephole2, 1,
N_("Enables an rtl peephole pass run before sched2") },
{"finite-math-only", &flag_finite_math_only, 1,
N_("Assume no NaNs or +-Infs are generated") },
{ "guess-branch-probability", &flag_guess_branch_prob, 1,
N_("Enables guessing of branch probabilities") },
{"math-errno", &flag_errno_math, 1,
N_("Set errno after built-in math functions") },
{"trapping-math", &flag_trapping_math, 1,
N_("Floating-point operations can trap") },
{"unsafe-math-optimizations", &flag_unsafe_math_optimizations, 1,
N_("Allow math optimizations that may violate IEEE or ANSI standards") },
{"signaling-nans", &flag_signaling_nans, 1,
N_("Disable optimizations observable by IEEE signaling NaNs") },
{"bounds-check", &flag_bounds_check, 1,
N_("Generate code to check bounds before indexing arrays") },
{"single-precision-constant", &flag_single_precision_constant, 1,
N_("Convert floating point constant to single precision constant") },
{"time-report", &time_report, 1,
N_("Report time taken by each compiler pass at end of run") },
{"mem-report", &mem_report, 1,
N_("Report on permanent memory allocation at end of run") },
{ "trapv", &flag_trapv, 1,
N_("Trap for signed overflow in addition / subtraction / multiplication") },
{ "wrapv", &flag_wrapv, 1,
N_("Assume signed arithmetic overflow wraps around") },
{ "new-ra", &flag_new_regalloc, 1,
N_("Use graph coloring register allocation.") },
}; };
/* Table of language-specific options. */ /* Table of language-specific options. */
...@@ -3890,15 +3774,6 @@ display_help (void) ...@@ -3890,15 +3774,6 @@ display_help (void)
unsigned long i; unsigned long i;
const char *lang; const char *lang;
for (i = ARRAY_SIZE (f_options); i--;)
{
const char *description = f_options[i].description;
if (description != NULL && *description != 0)
printf (" -f%-21s %s\n",
f_options[i].string, _(description));
}
for (i = LAST_PARAM; i--;) for (i = LAST_PARAM; i--;)
{ {
const char *description = compiler_params[i].help; const char *description = compiler_params[i].help;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment