summaryrefslogtreecommitdiffstats
path: root/gcc/toplev.c
diff options
context:
space:
mode:
authorneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-22 13:44:40 +0000
committerneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-22 13:44:40 +0000
commitecdb6d1ab1e25706d65d45e8b8824d5b07f6549c (patch)
treeaaface3741c4555afe1a1b87e5860bb23a803353 /gcc/toplev.c
parent2b30d46c7032fcbb90f95d7695dfd00e56d05d46 (diff)
downloadppe42-gcc-ecdb6d1ab1e25706d65d45e8b8824d5b07f6549c.tar.gz
ppe42-gcc-ecdb6d1ab1e25706d65d45e8b8824d5b07f6549c.zip
* common.opt: More -f switches.
* opts.c (common_handle_options): Handle them. * toplev.c (time_report): Make extern. (f_options): USe flag_dummy. (decode_f_option): No need to use f_options now. * toplev.h (flag_cprop_registers, flag_ssa, flag_ssa_ccp, flag_ssa_dce, time_report, flag_new_regalloc): Make extern. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68328 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/toplev.c')
-rw-r--r--gcc/toplev.c152
1 files changed, 67 insertions, 85 deletions
diff --git a/gcc/toplev.c b/gcc/toplev.c
index d612f97a495..d66ec1a31d1 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -450,7 +450,7 @@ int quiet_flag = 0;
/* Print times taken by the various passes. -ftime-report. */
-static int time_report = 0;
+int time_report = 0;
/* Print memory still in use at end of compilation (which may have little
to do with peak memory consumption). -fmem-report. */
@@ -1153,133 +1153,133 @@ static const lang_independent_options f_options[] =
N_("Reschedule instructions before register allocation") },
{"schedule-insns2", &flag_dummy, 1,
N_("Reschedule instructions after register allocation") },
- {"sched-interblock",&flag_schedule_interblock, 1,
+ {"sched-interblock",&flag_dummy, 1,
N_("Enable scheduling across basic blocks") },
- {"sched-spec",&flag_schedule_speculative, 1,
+ {"sched-spec",&flag_dummy, 1,
N_("Allow speculative motion of non-loads") },
- {"sched-spec-load",&flag_schedule_speculative_load, 1,
+ {"sched-spec-load",&flag_dummy, 1,
N_("Allow speculative motion of some loads") },
- {"sched-spec-load-dangerous",&flag_schedule_speculative_load_dangerous, 1,
+ {"sched-spec-load-dangerous",&flag_dummy, 1,
N_("Allow speculative motion of more loads") },
- {"sched2-use-superblocks", &flag_sched2_use_superblocks, 1,
+ {"sched2-use-superblocks", &flag_dummy, 1,
N_("If scheduling post reload, do superblock scheduling") },
- {"sched2-use-traces", &flag_sched2_use_traces, 1,
+ {"sched2-use-traces", &flag_dummy, 1,
N_("If scheduling post reload, do trace scheduling") },
- {"branch-count-reg",&flag_branch_on_count_reg, 1,
+ {"branch-count-reg",&flag_dummy, 1,
N_("Replace add,compare,branch with branch on count reg") },
- {"pic", &flag_pic, 1,
+ {"pic", &flag_dummy, 1,
N_("Generate position independent code, if possible") },
- {"PIC", &flag_pic, 2, ""},
- {"pie", &flag_pie, 1,
+ {"PIC", &flag_dummy, 2, ""},
+ {"pie", &flag_dummy, 1,
N_("Generate position independent code for executables, if possible") },
- {"PIE", &flag_pie, 2, ""},
- {"exceptions", &flag_exceptions, 1,
+ {"PIE", &flag_dummy, 2, ""},
+ {"exceptions", &flag_dummy, 1,
N_("Enable exception handling") },
- {"unwind-tables", &flag_unwind_tables, 1,
+ {"unwind-tables", &flag_dummy, 1,
N_("Just generate unwind tables for exception handling") },
- {"asynchronous-unwind-tables", &flag_asynchronous_unwind_tables, 1,
+ {"asynchronous-unwind-tables", &flag_dummy, 1,
N_("Generate unwind tables exact at each instruction boundary") },
- {"non-call-exceptions", &flag_non_call_exceptions, 1,
+ {"non-call-exceptions", &flag_dummy, 1,
N_("Support synchronous non-call exceptions") },
- {"profile-arcs", &profile_arc_flag, 1,
+ {"profile-arcs", &flag_dummy, 1,
N_("Insert arc based program profiling code") },
- {"test-coverage", &flag_test_coverage, 1,
+ {"test-coverage", &flag_dummy, 1,
N_("Create data files needed by gcov") },
- {"branch-probabilities", &flag_branch_probabilities, 1,
+ {"branch-probabilities", &flag_dummy, 1,
N_("Use profiling information for branch probabilities") },
- {"profile", &profile_flag, 1,
+ {"profile", &flag_dummy, 1,
N_("Enable basic program profiling code") },
- {"reorder-blocks", &flag_reorder_blocks, 1,
+ {"reorder-blocks", &flag_dummy, 1,
N_("Reorder basic blocks to improve code placement") },
- {"reorder-functions", &flag_reorder_functions, 1,
+ {"reorder-functions", &flag_dummy, 1,
N_("Reorder functions to improve code placement") },
- {"rename-registers", &flag_rename_registers, 1,
+ {"rename-registers", &flag_dummy, 1,
N_("Do the register renaming optimization pass") },
- {"cprop-registers", &flag_cprop_registers, 1,
+ {"cprop-registers", &flag_dummy, 1,
N_("Do the register copy-propagation optimization pass") },
- {"common", &flag_no_common, 0,
+ {"common", &flag_dummy, 0,
N_("Do not put uninitialized globals in the common section") },
- {"inhibit-size-directive", &flag_inhibit_size_directive, 1,
+ {"inhibit-size-directive", &flag_dummy, 1,
N_("Do not generate .size directives") },
- {"function-sections", &flag_function_sections, 1,
+ {"function-sections", &flag_dummy, 1,
N_("place each function into its own section") },
- {"data-sections", &flag_data_sections, 1,
+ {"data-sections", &flag_dummy, 1,
N_("place data items into their own section") },
- {"verbose-asm", &flag_verbose_asm, 1,
+ {"verbose-asm", &flag_dummy, 1,
N_("Add extra commentary to assembler output") },
- {"gnu-linker", &flag_gnu_linker, 1,
+ {"gnu-linker", &flag_dummy, 1,
N_("Output GNU ld formatted global initializers") },
- {"regmove", &flag_regmove, 1,
+ {"regmove", &flag_dummy, 1,
N_("Enables a register move optimization") },
- {"optimize-register-move", &flag_regmove, 1,
+ {"optimize-register-move", &flag_dummy, 1,
N_("Do the full regmove optimization pass") },
- {"pack-struct", &flag_pack_struct, 1,
+ {"pack-struct", &flag_dummy, 1,
N_("Pack structure members together without holes") },
- {"stack-check", &flag_stack_check, 1,
+ {"stack-check", &flag_dummy, 1,
N_("Insert stack checking code into the program") },
- {"argument-alias", &flag_argument_noalias, 0,
+ {"argument-alias", &flag_dummy, 0,
N_("Specify that arguments may alias each other & globals") },
- {"argument-noalias", &flag_argument_noalias, 1,
+ {"argument-noalias", &flag_dummy, 1,
N_("Assume arguments may alias globals but not each other") },
- {"argument-noalias-global", &flag_argument_noalias, 2,
+ {"argument-noalias-global", &flag_dummy, 2,
N_("Assume arguments do not alias each other or globals") },
- {"strict-aliasing", &flag_strict_aliasing, 1,
+ {"strict-aliasing", &flag_dummy, 1,
N_("Assume strict aliasing rules apply") },
- {"align-loops", &align_loops, 0,
+ {"align-loops", &flag_dummy, 0,
N_("Align the start of loops") },
- {"align-jumps", &align_jumps, 0,
+ {"align-jumps", &flag_dummy, 0,
N_("Align labels which are only reached by jumping") },
- {"align-labels", &align_labels, 0,
+ {"align-labels", &flag_dummy, 0,
N_("Align all labels") },
- {"align-functions", &align_functions, 0,
+ {"align-functions", &flag_dummy, 0,
N_("Align the start of functions") },
- {"merge-constants", &flag_merge_constants, 1,
+ {"merge-constants", &flag_dummy, 1,
N_("Attempt to merge identical constants across compilation units") },
- {"merge-all-constants", &flag_merge_constants, 2,
+ {"merge-all-constants", &flag_dummy, 2,
N_("Attempt to merge identical constants and constant variables") },
- {"dump-unnumbered", &flag_dump_unnumbered, 1,
+ {"dump-unnumbered", &flag_dummy, 1,
N_("Suppress output of instruction numbers and line number notes in debugging dumps") },
- {"instrument-functions", &flag_instrument_function_entry_exit, 1,
+ {"instrument-functions", &flag_dummy, 1,
N_("Instrument function entry/exit with profiling calls") },
- {"zero-initialized-in-bss", &flag_zero_initialized_in_bss, 1,
+ {"zero-initialized-in-bss", &flag_dummy, 1,
N_("Put zero initialized data in the bss section") },
- {"ssa", &flag_ssa, 1,
+ {"ssa", &flag_dummy, 1,
N_("Enable SSA optimizations") },
- {"ssa-ccp", &flag_ssa_ccp, 1,
+ {"ssa-ccp", &flag_dummy, 1,
N_("Enable SSA conditional constant propagation") },
- {"ssa-dce", &flag_ssa_dce, 1,
+ {"ssa-dce", &flag_dummy, 1,
N_("Enable aggressive SSA dead code elimination") },
- {"leading-underscore", &flag_leading_underscore, 1,
+ {"leading-underscore", &flag_dummy, 1,
N_("External symbols have a leading underscore") },
- {"ident", &flag_no_ident, 0,
+ {"ident", &flag_dummy, 0,
N_("Process #ident directives") },
- { "peephole2", &flag_peephole2, 1,
+ { "peephole2", &flag_dummy, 1,
N_("Enables an rtl peephole pass run before sched2") },
- {"finite-math-only", &flag_finite_math_only, 1,
+ {"finite-math-only", &flag_dummy, 1,
N_("Assume no NaNs or +-Infs are generated") },
- { "guess-branch-probability", &flag_guess_branch_prob, 1,
+ { "guess-branch-probability", &flag_dummy, 1,
N_("Enables guessing of branch probabilities") },
- {"math-errno", &flag_errno_math, 1,
+ {"math-errno", &flag_dummy, 1,
N_("Set errno after built-in math functions") },
- {"trapping-math", &flag_trapping_math, 1,
+ {"trapping-math", &flag_dummy, 1,
N_("Floating-point operations can trap") },
- {"unsafe-math-optimizations", &flag_unsafe_math_optimizations, 1,
+ {"unsafe-math-optimizations", &flag_dummy, 1,
N_("Allow math optimizations that may violate IEEE or ANSI standards") },
- {"signaling-nans", &flag_signaling_nans, 1,
+ {"signaling-nans", &flag_dummy, 1,
N_("Disable optimizations observable by IEEE signaling NaNs") },
- {"bounds-check", &flag_bounds_check, 1,
+ {"bounds-check", &flag_dummy, 1,
N_("Generate code to check bounds before indexing arrays") },
- {"single-precision-constant", &flag_single_precision_constant, 1,
+ {"single-precision-constant", &flag_dummy, 1,
N_("Convert floating point constant to single precision constant") },
- {"time-report", &time_report, 1,
+ {"time-report", &flag_dummy, 1,
N_("Report time taken by each compiler pass at end of run") },
- {"mem-report", &mem_report, 1,
+ {"mem-report", &flag_dummy, 1,
N_("Report on permanent memory allocation at end of run") },
- { "trapv", &flag_trapv, 1,
+ { "trapv", &flag_dummy, 1,
N_("Trap for signed overflow in addition / subtraction / multiplication") },
- { "wrapv", &flag_wrapv, 1,
+ { "wrapv", &flag_dummy, 1,
N_("Assume signed arithmetic overflow wraps around") },
- { "new-ra", &flag_new_regalloc, 1,
+ { "new-ra", &flag_dummy, 1,
N_("Use graph coloring register allocation.") },
};
@@ -4156,25 +4156,7 @@ decode_d_option (const char *arg)
static int
decode_f_option (const char *arg)
{
- int j;
- const char *option_value = NULL;
-
- /* Search for the option in the table of binary f options. */
- for (j = ARRAY_SIZE (f_options); j--;)
- {
- if (!strcmp (arg, f_options[j].string))
- {
- *f_options[j].variable = f_options[j].on_value;
- return 1;
- }
-
- if (arg[0] == 'n' && arg[1] == 'o' && arg[2] == '-'
- && ! strcmp (arg + 3, f_options[j].string))
- {
- *f_options[j].variable = ! f_options[j].on_value;
- return 1;
- }
- }
+ const char *option_value;
if ((option_value = skip_leading_substring (arg, "inline-limit-"))
|| (option_value = skip_leading_substring (arg, "inline-limit=")))
OpenPOWER on IntegriCloud