diff options
author | neil <neil@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-07-11 05:35:06 +0000 |
---|---|---|
committer | neil <neil@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-07-11 05:35:06 +0000 |
commit | 72528c715b9ec95b5fc0c84c3c2e87aa3573ec63 (patch) | |
tree | 5f4b925b44d99a451ea587be84e79def441779ad /gcc/toplev.c | |
parent | 651b0f5913f982c11f28583792a11f8b6444fb9b (diff) | |
download | gcc-72528c715b9ec95b5fc0c84c3c2e87aa3573ec63.tar.gz |
* 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
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r-- | gcc/toplev.c | 359 |
1 files changed, 117 insertions, 242 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c index bfc7bb1ea9a..0369489ec54 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -1029,7 +1029,6 @@ typedef struct const char *const string; int *const variable; const int on_value; - const char *const description; } lang_independent_options; @@ -1061,238 +1060,123 @@ static const param_info lang_independent_params[] = { static const lang_independent_options f_options[] = { - {"eliminate-dwarf2-dups", &flag_eliminate_dwarf2_dups, 1, - N_("Perform DWARF2 duplicate elimination") }, - {"eliminate-unused-debug-symbols", &flag_debug_only_used_symbols, 1, - N_("Perform unused type elimination in debug info") }, - {"eliminate-unused-debug-types", &flag_eliminate_unused_debug_types, 1, - N_("Perform unused type elimination in debug info") }, - {"float-store", &flag_float_store, 1, - N_("Do not store floats in registers") }, - {"defer-pop", &flag_defer_pop, 1, - N_("Defer popping functions args from stack until later") }, - {"omit-frame-pointer", &flag_omit_frame_pointer, 1, - N_("When possible do not generate stack frames") }, - {"optimize-sibling-calls", &flag_optimize_sibling_calls, 1, - N_("Optimize sibling and tail recursive calls") }, - {"tracer", &flag_tracer, 1, - N_("Perform superblock formation via tail duplication") }, - {"unit-at-a-time", &flag_unit_at_a_time, 1, - N_("Compile whole compilation unit at a time") }, - {"cse-follow-jumps", &flag_cse_follow_jumps, 1, - N_("When running CSE, follow jumps to their targets") }, - {"cse-skip-blocks", &flag_cse_skip_blocks, 1, - N_("When running CSE, follow conditional jumps") }, - {"expensive-optimizations", &flag_expensive_optimizations, 1, - N_("Perform a number of minor, expensive optimizations") }, - {"thread-jumps", &flag_thread_jumps, 1, - N_("Perform jump threading optimizations") }, - {"strength-reduce", &flag_strength_reduce, 1, - N_("Perform strength reduction optimizations") }, - {"unroll-loops", &flag_unroll_loops, 1, - N_("Perform loop unrolling when iteration count is known") }, - {"unroll-all-loops", &flag_unroll_all_loops, 1, - N_("Perform loop unrolling for all loops") }, - {"old-unroll-loops", &flag_old_unroll_loops, 1, - N_("Perform loop unrolling when iteration count is known") }, - {"old-unroll-all-loops", &flag_old_unroll_all_loops, 1, - N_("Perform loop unrolling for all loops") }, - {"peel-loops", &flag_peel_loops, 1, - N_("Perform loop peeling") }, - {"unswitch-loops", &flag_unswitch_loops, 1, - N_("Perform loop unswitching") }, - {"prefetch-loop-arrays", &flag_prefetch_loop_arrays, 1, - N_("Generate prefetch instructions, if available, for arrays in loops") }, - {"move-all-movables", &flag_move_all_movables, 1, - N_("Force all loop invariant computations out of loops") }, - {"reduce-all-givs", &flag_reduce_all_givs, 1, - N_("Strength reduce all loop general induction variables") }, - {"writable-strings", &flag_writable_strings, 1, - N_("Store strings in writable data section") }, - {"peephole", &flag_no_peephole, 0, - N_("Enable machine specific peephole optimizations") }, - {"force-mem", &flag_force_mem, 1, - N_("Copy memory operands into registers before using") }, - {"force-addr", &flag_force_addr, 1, - N_("Copy memory address constants into regs before using") }, - {"function-cse", &flag_no_function_cse, 0, - N_("Allow function addresses to be held in registers") }, - {"inline-functions", &flag_inline_functions, 1, - N_("Integrate simple functions into their callers") }, - {"keep-inline-functions", &flag_keep_inline_functions, 1, - N_("Generate code for funcs even if they are fully inlined") }, - {"inline", &flag_no_inline, 0, - N_("Pay attention to the 'inline' keyword") }, - {"keep-static-consts", &flag_keep_static_consts, 1, - N_("Emit static const variables even if they are not used") }, - {"syntax-only", &flag_syntax_only, 1, - N_("Check for syntax errors, then stop") }, - {"shared-data", &flag_shared_data, 1, - N_("Mark data as shared rather than private") }, - {"caller-saves", &flag_caller_saves, 1, - N_("Enable saving registers around function calls") }, - {"pcc-struct-return", &flag_pcc_struct_return, 1, - N_("Return 'short' aggregates in memory, not registers") }, - {"reg-struct-return", &flag_pcc_struct_return, 0, - N_("Return 'short' aggregates in registers") }, - {"delayed-branch", &flag_delayed_branch, 1, - N_("Attempt to fill delay slots of branch instructions") }, - {"gcse", &flag_gcse, 1, - N_("Perform the global common subexpression elimination") }, - {"gcse-lm", &flag_gcse_lm, 1, - N_("Perform enhanced load motion during global subexpression elimination") }, - {"gcse-sm", &flag_gcse_sm, 1, - N_("Perform store motion after global subexpression elimination") }, - {"branch-target-load-optimize", &flag_branch_target_load_optimize, 1, - N_("Perform branch target load optimization before prologue / epilogue threading") }, - {"branch-target-load-optimize2", &flag_branch_target_load_optimize2, 1, - N_("Perform branch target load optimization after prologue / epilogue threading") }, - {"loop-optimize", &flag_loop_optimize, 1, - N_("Perform the loop optimizations") }, - {"crossjumping", &flag_crossjumping, 1, - N_("Perform cross-jumping optimization") }, - {"if-conversion", &flag_if_conversion, 1, - N_("Perform conversion of conditional jumps to branchless equivalents") }, - {"if-conversion2", &flag_if_conversion2, 1, - N_("Perform conversion of conditional jumps to conditional execution") }, - {"rerun-cse-after-loop", &flag_rerun_cse_after_loop, 1, - N_("Run CSE pass after loop optimizations") }, - {"rerun-loop-opt", &flag_rerun_loop_opt, 1, - N_("Run the loop optimizer twice") }, - {"delete-null-pointer-checks", &flag_delete_null_pointer_checks, 1, - N_("Delete useless null pointer checks") }, - {"schedule-insns", &flag_schedule_insns, 1, - N_("Reschedule instructions before register allocation") }, - {"schedule-insns2", &flag_schedule_insns_after_reload, 1, - N_("Reschedule instructions after register allocation") }, - {"sched-interblock",&flag_schedule_interblock, 1, - N_("Enable scheduling across basic blocks") }, - {"sched-spec",&flag_schedule_speculative, 1, - N_("Allow speculative motion of non-loads") }, - {"sched-spec-load",&flag_schedule_speculative_load, 1, - N_("Allow speculative motion of some loads") }, - {"sched-spec-load-dangerous",&flag_schedule_speculative_load_dangerous, 1, - N_("Allow speculative motion of more loads") }, - {"sched2-use-superblocks", &flag_sched2_use_superblocks, 1, - N_("If scheduling post reload, do superblock scheduling") }, - {"sched2-use-traces", &flag_sched2_use_traces, 1, - N_("If scheduling post reload, do trace scheduling") }, - {"branch-count-reg",&flag_branch_on_count_reg, 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.") }, + {"eliminate-dwarf2-dups", &flag_eliminate_dwarf2_dups, 1 }, + {"eliminate-unused-debug-symbols", &flag_debug_only_used_symbols, 1 }, + {"eliminate-unused-debug-types", &flag_eliminate_unused_debug_types, 1 }, + {"float-store", &flag_float_store, 1 }, + {"defer-pop", &flag_defer_pop, 1 }, + {"omit-frame-pointer", &flag_omit_frame_pointer, 1 }, + {"optimize-sibling-calls", &flag_optimize_sibling_calls, 1 }, + {"tracer", &flag_tracer, 1 }, + {"unit-at-a-time", &flag_unit_at_a_time, 1 }, + {"cse-follow-jumps", &flag_cse_follow_jumps, 1 }, + {"cse-skip-blocks", &flag_cse_skip_blocks, 1 }, + {"expensive-optimizations", &flag_expensive_optimizations, 1 }, + {"thread-jumps", &flag_thread_jumps, 1 }, + {"strength-reduce", &flag_strength_reduce, 1 }, + {"unroll-loops", &flag_unroll_loops, 1 }, + {"unroll-all-loops", &flag_unroll_all_loops, 1 }, + {"old-unroll-loops", &flag_old_unroll_loops, 1 }, + {"old-unroll-all-loops", &flag_old_unroll_all_loops, 1 }, + {"peel-loops", &flag_peel_loops, 1 }, + {"unswitch-loops", &flag_unswitch_loops, 1 }, + {"prefetch-loop-arrays", &flag_prefetch_loop_arrays, 1 }, + {"move-all-movables", &flag_move_all_movables, 1 }, + {"reduce-all-givs", &flag_reduce_all_givs, 1 }, + {"writable-strings", &flag_writable_strings, 1 }, + {"peephole", &flag_no_peephole, 0 }, + {"force-mem", &flag_force_mem, 1 }, + {"force-addr", &flag_force_addr, 1 }, + {"function-cse", &flag_no_function_cse, 0 }, + {"inline-functions", &flag_inline_functions, 1 }, + {"keep-inline-functions", &flag_keep_inline_functions, 1 }, + {"inline", &flag_no_inline, 0 }, + {"keep-static-consts", &flag_keep_static_consts, 1 }, + {"syntax-only", &flag_syntax_only, 1 }, + {"shared-data", &flag_shared_data, 1 }, + {"caller-saves", &flag_caller_saves, 1 }, + {"pcc-struct-return", &flag_pcc_struct_return, 1 }, + {"reg-struct-return", &flag_pcc_struct_return, 0 }, + {"delayed-branch", &flag_delayed_branch, 1 }, + {"gcse", &flag_gcse, 1 }, + {"gcse-lm", &flag_gcse_lm, 1 }, + {"gcse-sm", &flag_gcse_sm, 1 }, + {"branch-target-load-optimize", &flag_branch_target_load_optimize, 1 }, + {"branch-target-load-optimize2", &flag_branch_target_load_optimize2, 1 }, + {"loop-optimize", &flag_loop_optimize, 1 }, + {"crossjumping", &flag_crossjumping, 1 }, + {"if-conversion", &flag_if_conversion, 1 }, + {"if-conversion2", &flag_if_conversion2, 1 }, + {"rerun-cse-after-loop", &flag_rerun_cse_after_loop, 1 }, + {"rerun-loop-opt", &flag_rerun_loop_opt, 1 }, + {"delete-null-pointer-checks", &flag_delete_null_pointer_checks, 1 }, + {"schedule-insns", &flag_schedule_insns, 1 }, + {"schedule-insns2", &flag_schedule_insns_after_reload, 1 }, + {"sched-interblock",&flag_schedule_interblock, 1 }, + {"sched-spec",&flag_schedule_speculative, 1 }, + {"sched-spec-load",&flag_schedule_speculative_load, 1 }, + {"sched-spec-load-dangerous",&flag_schedule_speculative_load_dangerous, 1 }, + {"sched2-use-superblocks", &flag_sched2_use_superblocks, 1 }, + {"sched2-use-traces", &flag_sched2_use_traces, 1 }, + {"branch-count-reg",&flag_branch_on_count_reg, 1 }, + {"pic", &flag_pic, 1 }, + {"PIC", &flag_pic, 2 }, + {"pie", &flag_pie, 1 }, + {"PIE", &flag_pie, 2 }, + {"exceptions", &flag_exceptions, 1 }, + {"unwind-tables", &flag_unwind_tables, 1 }, + {"asynchronous-unwind-tables", &flag_asynchronous_unwind_tables, 1 }, + {"non-call-exceptions", &flag_non_call_exceptions, 1 }, + {"profile-arcs", &profile_arc_flag, 1 }, + {"test-coverage", &flag_test_coverage, 1 }, + {"branch-probabilities", &flag_branch_probabilities, 1 }, + {"profile", &profile_flag, 1 }, + {"reorder-blocks", &flag_reorder_blocks, 1 }, + {"reorder-functions", &flag_reorder_functions, 1 }, + {"rename-registers", &flag_rename_registers, 1 }, + {"cprop-registers", &flag_cprop_registers, 1 }, + {"common", &flag_no_common, 0 }, + {"inhibit-size-directive", &flag_inhibit_size_directive, 1 }, + {"function-sections", &flag_function_sections, 1 }, + {"data-sections", &flag_data_sections, 1 }, + {"verbose-asm", &flag_verbose_asm, 1 }, + {"gnu-linker", &flag_gnu_linker, 1 }, + {"regmove", &flag_regmove, 1 }, + {"optimize-register-move", &flag_regmove, 1 }, + {"pack-struct", &flag_pack_struct, 1 }, + {"stack-check", &flag_stack_check, 1 }, + {"argument-alias", &flag_argument_noalias, 0 }, + {"argument-noalias", &flag_argument_noalias, 1 }, + {"argument-noalias-global", &flag_argument_noalias, 2 }, + {"strict-aliasing", &flag_strict_aliasing, 1 }, + {"align-loops", &align_loops, 0 }, + {"align-jumps", &align_jumps, 0 }, + {"align-labels", &align_labels, 0 }, + {"align-functions", &align_functions, 0 }, + {"merge-constants", &flag_merge_constants, 1 }, + {"merge-all-constants", &flag_merge_constants, 2 }, + {"dump-unnumbered", &flag_dump_unnumbered, 1 }, + {"instrument-functions", &flag_instrument_function_entry_exit, 1 }, + {"zero-initialized-in-bss", &flag_zero_initialized_in_bss, 1 }, + {"ssa", &flag_ssa, 1 }, + {"ssa-ccp", &flag_ssa_ccp, 1 }, + {"ssa-dce", &flag_ssa_dce, 1 }, + {"leading-underscore", &flag_leading_underscore, 1 }, + {"ident", &flag_no_ident, 0 }, + { "peephole2", &flag_peephole2, 1 }, + {"finite-math-only", &flag_finite_math_only, 1 }, + { "guess-branch-probability", &flag_guess_branch_prob, 1 }, + {"math-errno", &flag_errno_math, 1 }, + {"trapping-math", &flag_trapping_math, 1 }, + {"unsafe-math-optimizations", &flag_unsafe_math_optimizations, 1 }, + {"signaling-nans", &flag_signaling_nans, 1 }, + {"bounds-check", &flag_bounds_check, 1 }, + {"single-precision-constant", &flag_single_precision_constant, 1 }, + {"time-report", &time_report, 1 }, + {"mem-report", &mem_report, 1 }, + { "trapv", &flag_trapv, 1 }, + { "wrapv", &flag_wrapv, 1 }, + { "new-ra", &flag_new_regalloc, 1 } }; /* Table of language-specific options. */ @@ -3890,15 +3774,6 @@ display_help (void) unsigned long i; 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--;) { const char *description = compiler_params[i].help; |