summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog18
-rw-r--r--gcc/Makefile.in3
-rw-r--r--gcc/common.opt171
-rw-r--r--gcc/f/ChangeLog5
-rw-r--r--gcc/f/lang.opt3
-rw-r--r--gcc/f/top.c1
-rw-r--r--gcc/opts.c245
-rw-r--r--gcc/toplev.c147
-rw-r--r--gcc/toplev.h15
9 files changed, 520 insertions, 88 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 3233db4075e..99b215d169c 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,21 @@
+2003-06-21 Neil Booth <neil@daikokuya.co.uk>
+
+ * Makefile.in: Update.
+ * common.opt: New switches.
+ * opts.c: Include diagnostic.h.
+ (common_handle_option): Handle new switches.
+ * toplev.c (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
+ flag_if_conversion2, flag_delete_null_pointer_checks,
+ flag_rerun_cse_after_loop): Make extern.
+ (flag_dummy): New.
+ (f_options): Update to use flag_dummy for moved options.
+ (decode_f_option): Some switches moved to opts.c.
+ * toplev.h (flag_loop_optimize, flag_crossjumping, flag_if_conversion,
+ flag_if_conversion2, flag_delete_null_pointer_checks,
+ flag_rerun_cse_after_loop, flag_keep_static_consts, flag_peel_loops,
+ flag_tracer, flag_thread_jumps, flag_unroll_loops,
+ flag_unroll_all_loops, flag_unswitch_loops): New.
+
Sat Jun 21 13:41:00 CEST 2003 Jan Hubicka <jh@suse.cz>
* i386.c (ix86_va_arg): Fix allocation of temporary slot.
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index ccef73b3956..b985ee3c2cb 100644
--- a/gcc/Makefile.in
+++ b/gcc/Makefile.in
@@ -1482,7 +1482,8 @@ diagnostic.o : diagnostic.c diagnostic.h real.h diagnostic.def \
$(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(TM_P_H) flags.h $(GGC_H) \
input.h toplev.h intl.h langhooks.h $(LANGHOOKS_DEF_H)
opts.o : opts.c opts.h options.h toplev.h $(CONFIG_H) $(SYSTEM_H) \
- coretypes.h $(TREE_H) $(TM_H) $(LANGHOOKS_H) $(GGC_H) $(RTL_H) output.h
+ coretypes.h $(TREE_H) $(TM_H) $(LANGHOOKS_H) $(GGC_H) $(RTL_H) \
+ output.h diagnostic.h
toplev.o : toplev.c $(CONFIG_H) $(SYSTEM_H) coretypes.h $(TM_H) $(TREE_H) $(RTL_H) \
function.h flags.h xcoffout.h input.h $(INSN_ATTR_H) output.h diagnostic.h \
debug.h insn-config.h intl.h $(RECOG_H) Makefile toplev.h \
diff --git a/gcc/common.opt b/gcc/common.opt
index d475cad1c0a..bf62b418f1d 100644
--- a/gcc/common.opt
+++ b/gcc/common.opt
@@ -151,27 +151,198 @@ Common RejectNegative Joined UInteger
falign-loops=
Common RejectNegative Joined UInteger
+fbranch-target-load-optimize
+Common
+
+fbranch-target-load-optimize2
+Common
+
fcall-saved-
Common Joined RejectNegative
fcall-used-
Common Joined RejectNegative
+fcaller-saves
+Common
+
+fcrossjumping
+Common
+
+fcse-follow-jumps
+Common
+
+fcse-skip-blocks
+Common
+
+fdefer-pop
+Common
+
+fdelayed-branch
+Common
+
+fdelete-null-pointer-checks
+Common
+
+fdiagnostics-show-location=
+Common Joined RejectNegative
+
+feliminate-dwarf2-dups
+Common
+
+feliminate-unused-debug-types
+Common
+
+fexpensive-optimizations
+Common
+
ffast-math
Common
ffixed-
Common Joined RejectNegative
+ffloat-store
+Common
+
+fforce-addr
+Common
+
+fforce-mem
+Common
+
+ffunction-cse
+Common
+
+fgcse
+Common
+
+fgcse-lm
+Common
+
+fgcse-sm
+Common
+
+fif-conversion
+Common
+
+fif-conversion2
+Common
+
+finline
+Common
+
+finline-functions
+Common
+
+fkeep-inline-functions
+Common
+
+fkeep-static-consts
+Common
+
+floop-optimize
+Common
+
+fmessage-length=
+Common RejectNegative Joined UInteger
+
+fmove-all-movables
+Common
+
+fold-unroll-loops
+Common
+
+fold-unroll-all-loops
+Common
+
+fomit-frame-pointer
+Common
+
+foptimize-sibling-calls
+Common
+
+fpcc-struct-return
+Common
+
+fpeel-loops
+Common
+
+fpeephole
+Common
+
+fprefetch-loop-arrays
+Common
+
+frandom-seed
+Common
+
+frandom-seed=
+Common Joined RejectNegative
+
+freduce-all-givs
+Common
+
+freg-struct-return
+Common
+
+frerun-cse-after-loop
+Common
+
+frerun-loop-opt
+Common
+
+fsched-verbose=
+Common RejectNegative Joined
+
+fschedule-insns
+Common
+
+fschedule-insns2
+Common
+
+fshared-data
+Common
+
+fstack-limit
+Common
+
fstack-limit-register=
Common RejectNegative Joined
fstack-limit-symbol=
Common RejectNegative Joined
+fstrength-reduce
+Common
+
+fsyntax-only
+Common
+
+fthread-jumps
+Common
+
ftls-model=
Common Joined RejectNegative
+ftracer
+Common
+
+funit-at-a-time
+Common
+
+funroll-loops
+Common
+
+funroll-all-loops
+Common
+
+funswitch-loops
+Common
+
+fwritable-strings
+Common
+
g
Common JoinedOrMissing
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog
index 916e738076a..6d98640414d 100644
--- a/gcc/f/ChangeLog
+++ b/gcc/f/ChangeLog
@@ -1,3 +1,8 @@
+Sat Jun 21 21:29:38 2003 Neil Booth <neil@daikokuya.co.uk>
+
+ * lang.opt: Add -fpreprocessed.
+ * top.c (ffe_handle_option): Handle it.
+
Fri Jun 20 10:00:31 2003 Nathan Sidwell <nathan@codesourcery.com>
* com.c (finish_function): Adjust expand_function_end call.
diff --git a/gcc/f/lang.opt b/gcc/f/lang.opt
index c6e453e9c57..d53a0f50039 100644
--- a/gcc/f/lang.opt
+++ b/gcc/f/lang.opt
@@ -214,6 +214,9 @@ F77
fpedantic
F77
+fpreprocessed
+F77
+
fsecond-underscore
F77
diff --git a/gcc/f/top.c b/gcc/f/top.c
index 89d3e96e310..2c5317cfc01 100644
--- a/gcc/f/top.c
+++ b/gcc/f/top.c
@@ -573,6 +573,7 @@ ffe_handle_option (size_t scode, const char *arg, int value)
case OPT_Wcomments:
case OPT_Wimport:
case OPT_Wtrigraphs:
+ case OPT_fpreprocessed:
/* These are for cpp. */
break;
diff --git a/gcc/opts.c b/gcc/opts.c
index c622fd9b678..1a1d7ed3ce3 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -33,6 +33,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA
#include "flags.h"
#include "toplev.h"
#include "params.h"
+#include "diagnostic.h"
/* Value of the -G xx switch, and whether it was passed or not. */
unsigned HOST_WIDE_INT g_switch_value;
@@ -537,6 +538,14 @@ common_handle_option (size_t scode, const char *arg,
align_loops = value;
break;
+ case OPT_fbranch_target_load_optimize:
+ flag_branch_target_load_optimize = value;
+ break;
+
+ case OPT_fbranch_target_load_optimize2:
+ flag_branch_target_load_optimize2 = value;
+ break;
+
case OPT_fcall_used_:
fix_register (arg, 0, 1);
break;
@@ -545,6 +554,56 @@ common_handle_option (size_t scode, const char *arg,
fix_register (arg, 0, 0);
break;
+ case OPT_fcaller_saves:
+ flag_caller_saves = value;
+ break;
+
+ case OPT_fcrossjumping:
+ flag_crossjumping = value;
+ break;
+
+ case OPT_fcse_follow_jumps:
+ flag_cse_follow_jumps = value;
+ break;
+
+ case OPT_fcse_skip_blocks:
+ flag_cse_skip_blocks = value;
+ break;
+
+ case OPT_fdefer_pop:
+ flag_defer_pop = value;
+ break;
+
+ case OPT_fdelayed_branch:
+ flag_delayed_branch = value;
+ break;
+
+ case OPT_fdelete_null_pointer_checks:
+ flag_delete_null_pointer_checks = value;
+ break;
+
+ case OPT_fdiagnostics_show_location_:
+ if (!strcmp (arg, "once"))
+ diagnostic_prefixing_rule (global_dc) = DIAGNOSTICS_SHOW_PREFIX_ONCE;
+ else if (!strcmp (arg, "every-line"))
+ diagnostic_prefixing_rule (global_dc)
+ = DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE;
+ else
+ return 0;
+ break;
+
+ case OPT_feliminate_dwarf2_dups:
+ flag_eliminate_dwarf2_dups = value;
+ break;
+
+ case OPT_feliminate_unused_debug_types:
+ flag_eliminate_unused_debug_types = value;
+ break;
+
+ case OPT_fexpensive_optimizations:
+ flag_expensive_optimizations = value;
+ break;
+
case OPT_ffast_math:
set_fast_math_flags (value);
break;
@@ -553,6 +612,156 @@ common_handle_option (size_t scode, const char *arg,
fix_register (arg, 1, 1);
break;
+ case OPT_ffunction_cse:
+ flag_no_function_cse = !value;
+ break;
+
+ case OPT_ffloat_store:
+ flag_float_store = value;
+ break;
+
+ case OPT_fforce_addr:
+ flag_force_addr = value;
+ break;
+
+ case OPT_fforce_mem:
+ flag_force_mem = value;
+ break;
+
+ case OPT_fgcse:
+ flag_gcse = value;
+ break;
+
+ case OPT_fgcse_lm:
+ flag_gcse_lm = value;
+ break;
+
+ case OPT_fgcse_sm:
+ flag_gcse_sm = value;
+ break;
+
+ case OPT_fif_conversion:
+ flag_if_conversion = value;
+ break;
+
+ case OPT_fif_conversion2:
+ flag_if_conversion2 = value;
+ break;
+
+ case OPT_finline:
+ flag_no_inline = !value;
+ break;
+
+ case OPT_finline_functions:
+ flag_inline_functions = value;
+ break;
+
+ case OPT_fkeep_inline_functions:
+ flag_keep_inline_functions =value;
+ break;
+
+ case OPT_fkeep_static_consts:
+ flag_keep_static_consts = value;
+ break;
+
+ case OPT_floop_optimize:
+ flag_loop_optimize = value;
+ break;
+
+ case OPT_fmessage_length_:
+ output_set_maximum_length (&global_dc->buffer, value);
+ break;
+
+ case OPT_fmove_all_movables:
+ flag_move_all_movables = value;
+ break;
+
+ case OPT_fold_unroll_all_loops:
+ flag_old_unroll_all_loops = value;
+ break;
+
+ case OPT_fold_unroll_loops:
+ flag_old_unroll_loops = value;
+ break;
+
+ case OPT_fomit_frame_pointer:
+ flag_omit_frame_pointer = value;
+ break;
+
+ case OPT_foptimize_sibling_calls:
+ flag_optimize_sibling_calls = value;
+ break;
+
+ case OPT_fpeel_loops:
+ flag_peel_loops = value;
+ break;
+
+ case OPT_fpcc_struct_return:
+ flag_pcc_struct_return = value;
+ break;
+
+ case OPT_fpeephole:
+ flag_no_peephole = !value;
+ break;
+
+ case OPT_fprefetch_loop_arrays:
+ flag_prefetch_loop_arrays = value;
+ break;
+
+ case OPT_frandom_seed:
+ /* The real switch is -fno-random-seed. */
+ if (value)
+ return 0;
+ flag_random_seed = NULL;
+ break;
+
+ case OPT_frandom_seed_:
+ flag_random_seed = arg;
+ break;
+
+ case OPT_freduce_all_givs:
+ flag_reduce_all_givs = value;
+ break;
+
+ case OPT_freg_struct_return:
+ flag_pcc_struct_return = !value;
+ break;
+
+ case OPT_frerun_cse_after_loop:
+ flag_rerun_cse_after_loop = value;
+ break;
+
+ case OPT_frerun_loop_opt:
+ flag_rerun_loop_opt = value;
+ break;
+
+ case OPT_fsched_verbose_:
+#ifdef INSN_SCHEDULING
+ fix_sched_param ("verbose", arg);
+ break;
+#else
+ return 0;
+#endif
+
+ case OPT_fschedule_insns:
+ flag_schedule_insns = value;
+ break;
+
+ case OPT_fschedule_insns2:
+ flag_schedule_insns_after_reload = value;
+ break;
+
+ case OPT_fshared_data:
+ flag_shared_data = value;
+ break;
+
+ case OPT_fstack_limit:
+ /* The real switch is -fno-stack-limit. */
+ if (value)
+ return 0;
+ stack_limit_rtx = NULL_RTX;
+ break;
+
case OPT_fstack_limit_register_:
{
int reg = decode_reg_name (arg);
@@ -567,6 +776,18 @@ common_handle_option (size_t scode, const char *arg,
stack_limit_rtx = gen_rtx_SYMBOL_REF (Pmode, ggc_strdup (arg));
break;
+ case OPT_fstrength_reduce:
+ flag_strength_reduce = value;
+ break;
+
+ case OPT_fsyntax_only:
+ flag_syntax_only = value;
+ break;
+
+ case OPT_fthread_jumps:
+ flag_thread_jumps = value;
+ break;
+
case OPT_ftls_model_:
if (!strcmp (arg, "global-dynamic"))
flag_tls_default = TLS_MODEL_GLOBAL_DYNAMIC;
@@ -580,6 +801,30 @@ common_handle_option (size_t scode, const char *arg,
warning ("unknown tls-model \"%s\"", arg);
break;
+ case OPT_ftracer:
+ flag_tracer = value;
+ break;
+
+ case OPT_funit_at_a_time:
+ flag_unit_at_a_time = value;
+ break;
+
+ case OPT_funroll_all_loops:
+ flag_unroll_all_loops = value;
+ break;
+
+ case OPT_funroll_loops:
+ flag_unroll_loops = value;
+ break;
+
+ case OPT_funswitch_loops:
+ flag_unswitch_loops = value;
+ break;
+
+ case OPT_fwritable_strings:
+ flag_writable_strings = value;
+ break;
+
case OPT_g:
decode_g_option (arg);
break;
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 47845bd7ab1..d612f97a495 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -654,24 +654,24 @@ int flag_syntax_only = 0;
/* Nonzero means perform loop optimizer. */
-static int flag_loop_optimize;
+int flag_loop_optimize;
/* Nonzero means perform crossjumping. */
-static int flag_crossjumping;
+int flag_crossjumping;
/* Nonzero means perform if conversion. */
-static int flag_if_conversion;
+int flag_if_conversion;
/* Nonzero means perform if conversion after reload. */
-static int flag_if_conversion2;
+int flag_if_conversion2;
/* Nonzero means to use global dataflow analysis to eliminate
useless null pointer tests. */
-static int flag_delete_null_pointer_checks;
+int flag_delete_null_pointer_checks;
/* Nonzero means perform global CSE. */
@@ -702,7 +702,7 @@ int flag_branch_target_load_optimize2 = 0;
/* Nonzero means to rerun cse after loop optimization. This increases
compilation time about 20% and picks up a few more common expressions. */
-static int flag_rerun_cse_after_loop;
+int flag_rerun_cse_after_loop;
/* Nonzero means to run loop optimizations twice. */
@@ -1040,6 +1040,9 @@ static const param_info lang_independent_params[] = {
{ NULL, 0, NULL }
};
+/* Used for the f_options array temporarily. */
+static int flag_dummy;
+
/* Table of language-independent -f options.
STRING is the option name. VARIABLE is the address of the variable.
ON_VALUE is the value to store in VARIABLE
@@ -1048,107 +1051,107 @@ static const param_info lang_independent_params[] = {
static const lang_independent_options f_options[] =
{
- {"eliminate-dwarf2-dups", &flag_eliminate_dwarf2_dups, 1,
+ {"eliminate-dwarf2-dups", &flag_dummy, 1,
N_("Perform DWARF2 duplicate elimination") },
- {"eliminate-unused-debug-types", &flag_eliminate_unused_debug_types, 1,
+ {"eliminate-unused-debug-types", &flag_dummy, 1,
N_("Perform unused type elimination in debug info") },
- {"float-store", &flag_float_store, 1,
+ {"float-store", &flag_dummy, 1,
N_("Do not store floats in registers") },
- {"defer-pop", &flag_defer_pop, 1,
+ {"defer-pop", &flag_dummy, 1,
N_("Defer popping functions args from stack until later") },
- {"omit-frame-pointer", &flag_omit_frame_pointer, 1,
+ {"omit-frame-pointer", &flag_dummy, 1,
N_("When possible do not generate stack frames") },
- {"optimize-sibling-calls", &flag_optimize_sibling_calls, 1,
+ {"optimize-sibling-calls", &flag_dummy, 1,
N_("Optimize sibling and tail recursive calls") },
- {"tracer", &flag_tracer, 1,
+ {"tracer", &flag_dummy, 1,
N_("Perform superblock formation via tail duplication") },
- {"unit-at-a-time", &flag_unit_at_a_time, 1,
+ {"unit-at-a-time", &flag_dummy, 1,
N_("Compile whole compilation unit at a time") },
- {"cse-follow-jumps", &flag_cse_follow_jumps, 1,
+ {"cse-follow-jumps", &flag_dummy, 1,
N_("When running CSE, follow jumps to their targets") },
- {"cse-skip-blocks", &flag_cse_skip_blocks, 1,
+ {"cse-skip-blocks", &flag_dummy, 1,
N_("When running CSE, follow conditional jumps") },
- {"expensive-optimizations", &flag_expensive_optimizations, 1,
+ {"expensive-optimizations", &flag_dummy, 1,
N_("Perform a number of minor, expensive optimizations") },
- {"thread-jumps", &flag_thread_jumps, 1,
+ {"thread-jumps", &flag_dummy, 1,
N_("Perform jump threading optimizations") },
- {"strength-reduce", &flag_strength_reduce, 1,
+ {"strength-reduce", &flag_dummy, 1,
N_("Perform strength reduction optimizations") },
- {"unroll-loops", &flag_unroll_loops, 1,
+ {"unroll-loops", &flag_dummy, 1,
N_("Perform loop unrolling when iteration count is known") },
- {"unroll-all-loops", &flag_unroll_all_loops, 1,
+ {"unroll-all-loops", &flag_dummy, 1,
N_("Perform loop unrolling for all loops") },
- {"old-unroll-loops", &flag_old_unroll_loops, 1,
+ {"old-unroll-loops", &flag_dummy, 1,
N_("Perform loop unrolling when iteration count is known") },
- {"old-unroll-all-loops", &flag_old_unroll_all_loops, 1,
+ {"old-unroll-all-loops", &flag_dummy, 1,
N_("Perform loop unrolling for all loops") },
- {"peel-loops", &flag_peel_loops, 1,
+ {"peel-loops", &flag_dummy, 1,
N_("Perform loop peeling") },
- {"unswitch-loops", &flag_unswitch_loops, 1,
+ {"unswitch-loops", &flag_dummy, 1,
N_("Perform loop unswitching") },
- {"prefetch-loop-arrays", &flag_prefetch_loop_arrays, 1,
+ {"prefetch-loop-arrays", &flag_dummy, 1,
N_("Generate prefetch instructions, if available, for arrays in loops") },
- {"move-all-movables", &flag_move_all_movables, 1,
+ {"move-all-movables", &flag_dummy, 1,
N_("Force all loop invariant computations out of loops") },
- {"reduce-all-givs", &flag_reduce_all_givs, 1,
+ {"reduce-all-givs", &flag_dummy, 1,
N_("Strength reduce all loop general induction variables") },
- {"writable-strings", &flag_writable_strings, 1,
+ {"writable-strings", &flag_dummy, 1,
N_("Store strings in writable data section") },
- {"peephole", &flag_no_peephole, 0,
+ {"peephole", &flag_dummy, 0,
N_("Enable machine specific peephole optimizations") },
- {"force-mem", &flag_force_mem, 1,
+ {"force-mem", &flag_dummy, 1,
N_("Copy memory operands into registers before using") },
- {"force-addr", &flag_force_addr, 1,
+ {"force-addr", &flag_dummy, 1,
N_("Copy memory address constants into regs before using") },
- {"function-cse", &flag_no_function_cse, 0,
+ {"function-cse", &flag_dummy, 0,
N_("Allow function addresses to be held in registers") },
- {"inline-functions", &flag_inline_functions, 1,
+ {"inline-functions", &flag_dummy, 1,
N_("Integrate simple functions into their callers") },
- {"keep-inline-functions", &flag_keep_inline_functions, 1,
+ {"keep-inline-functions", &flag_dummy, 1,
N_("Generate code for funcs even if they are fully inlined") },
- {"inline", &flag_no_inline, 0,
+ {"inline", &flag_dummy, 0,
N_("Pay attention to the 'inline' keyword") },
- {"keep-static-consts", &flag_keep_static_consts, 1,
+ {"keep-static-consts", &flag_dummy, 1,
N_("Emit static const variables even if they are not used") },
- {"syntax-only", &flag_syntax_only, 1,
+ {"syntax-only", &flag_dummy, 1,
N_("Check for syntax errors, then stop") },
- {"shared-data", &flag_shared_data, 1,
+ {"shared-data", &flag_dummy, 1,
N_("Mark data as shared rather than private") },
- {"caller-saves", &flag_caller_saves, 1,
+ {"caller-saves", &flag_dummy, 1,
N_("Enable saving registers around function calls") },
- {"pcc-struct-return", &flag_pcc_struct_return, 1,
+ {"pcc-struct-return", &flag_dummy, 1,
N_("Return 'short' aggregates in memory, not registers") },
- {"reg-struct-return", &flag_pcc_struct_return, 0,
+ {"reg-struct-return", &flag_dummy, 0,
N_("Return 'short' aggregates in registers") },
- {"delayed-branch", &flag_delayed_branch, 1,
+ {"delayed-branch", &flag_dummy, 1,
N_("Attempt to fill delay slots of branch instructions") },
- {"gcse", &flag_gcse, 1,
+ {"gcse", &flag_dummy, 1,
N_("Perform the global common subexpression elimination") },
- {"gcse-lm", &flag_gcse_lm, 1,
+ {"gcse-lm", &flag_dummy, 1,
N_("Perform enhanced load motion during global subexpression elimination") },
- {"gcse-sm", &flag_gcse_sm, 1,
+ {"gcse-sm", &flag_dummy, 1,
N_("Perform store motion after global subexpression elimination") },
- {"branch-target-load-optimize", &flag_branch_target_load_optimize, 1,
+ {"branch-target-load-optimize", &flag_dummy, 1,
N_("Perform branch target load optimization before prologue / epilogue threading") },
- {"branch-target-load-optimize2", &flag_branch_target_load_optimize2, 1,
+ {"branch-target-load-optimize2", &flag_dummy, 1,
N_("Perform branch target load optimization after prologue / epilogue threading") },
- {"loop-optimize", &flag_loop_optimize, 1,
+ {"loop-optimize", &flag_dummy, 1,
N_("Perform the loop optimizations") },
- {"crossjumping", &flag_crossjumping, 1,
+ {"crossjumping", &flag_dummy, 1,
N_("Perform cross-jumping optimization") },
- {"if-conversion", &flag_if_conversion, 1,
+ {"if-conversion", &flag_dummy, 1,
N_("Perform conversion of conditional jumps to branchless equivalents") },
- {"if-conversion2", &flag_if_conversion2, 1,
+ {"if-conversion2", &flag_dummy, 1,
N_("Perform conversion of conditional jumps to conditional execution") },
- {"rerun-cse-after-loop", &flag_rerun_cse_after_loop, 1,
+ {"rerun-cse-after-loop", &flag_dummy, 1,
N_("Run CSE pass after loop optimizations") },
- {"rerun-loop-opt", &flag_rerun_loop_opt, 1,
+ {"rerun-loop-opt", &flag_dummy, 1,
N_("Run the loop optimizer twice") },
- {"delete-null-pointer-checks", &flag_delete_null_pointer_checks, 1,
+ {"delete-null-pointer-checks", &flag_dummy, 1,
N_("Delete useless null pointer checks") },
- {"schedule-insns", &flag_schedule_insns, 1,
+ {"schedule-insns", &flag_dummy, 1,
N_("Reschedule instructions before register allocation") },
- {"schedule-insns2", &flag_schedule_insns_after_reload, 1,
+ {"schedule-insns2", &flag_dummy, 1,
N_("Reschedule instructions after register allocation") },
{"sched-interblock",&flag_schedule_interblock, 1,
N_("Enable scheduling across basic blocks") },
@@ -4191,36 +4194,6 @@ decode_f_option (const char *arg)
set_param_value ("min-inline-insns", 10);
}
}
-#ifdef INSN_SCHEDULING
- else if ((option_value = skip_leading_substring (arg, "sched-verbose=")))
- fix_sched_param ("verbose", option_value);
-#endif
- else if ((option_value
- = skip_leading_substring (arg, "message-length=")))
- output_set_maximum_length
- (&global_dc->buffer, read_integral_parameter
- (option_value, arg - 2, diagnostic_line_cutoff (global_dc)));
- else if ((option_value
- = skip_leading_substring (arg, "diagnostics-show-location=")))
- {
- if (!strcmp (option_value, "once"))
- diagnostic_prefixing_rule (global_dc) = DIAGNOSTICS_SHOW_PREFIX_ONCE;
- else if (!strcmp (option_value, "every-line"))
- diagnostic_prefixing_rule (global_dc)
- = DIAGNOSTICS_SHOW_PREFIX_EVERY_LINE;
- else
- error ("unrecognized option `%s'", arg - 2);
- }
- else if (!strcmp (arg, "no-stack-limit"))
- stack_limit_rtx = NULL_RTX;
- else if ((option_value = skip_leading_substring (arg, "random-seed=")))
- flag_random_seed = option_value;
- else if (!strcmp (arg, "no-random-seed"))
- flag_random_seed = NULL;
- else if (!strcmp (arg, "preprocessed"))
- /* Recognize this switch but do nothing. This prevents warnings
- about an unrecognized switch if cpplib has not been linked in. */
- ;
else
return 0;
diff --git a/gcc/toplev.h b/gcc/toplev.h
index 10fa181eea6..45709b89c0f 100644
--- a/gcc/toplev.h
+++ b/gcc/toplev.h
@@ -104,6 +104,21 @@ extern bool version_flag;
extern int target_flags_explicit;
+/* See toplev.c. */
+extern int flag_loop_optimize;
+extern int flag_crossjumping;
+extern int flag_if_conversion;
+extern int flag_if_conversion2;
+extern int flag_delete_null_pointer_checks;
+extern int flag_keep_static_consts;
+extern int flag_peel_loops;
+extern int flag_rerun_cse_after_loop;
+extern int flag_thread_jumps;
+extern int flag_tracer;
+extern int flag_unroll_loops;
+extern int flag_unroll_all_loops;
+extern int flag_unswitch_loops;
+
extern void display_help (void);
extern void display_target_options (void);
extern void print_version (FILE *, const char *);
OpenPOWER on IntegriCloud