Commit 5498f011 by Joseph Myers Committed by Joseph Myers

common.opt (fira-verbose): Use Var.

	* common.opt (fira-verbose): Use Var.
	(fpcc-struct-return): Use Init instead of VarExists.
	* defaults.h (DEFAULT_PCC_STRUCT_RETURN): Move definition from
	toplev.c.
	* flags.h (flag_signed_char, flag_short_enums,
	flag_pcc_struct_return, flag_ira_verbose,
	flag_detailed_statistics, flag_remove_unreachable_functions):
	Remove.
	* toplev.c (flag_detailed_statistics, flag_signed_char,
	flag_short_enums, flag_pcc_struct_return, flag_ira_verbose):
	Remove.
	(DEFAULT_PCC_STRUCT_RETURN): Move definition to defaults.h.
	* toplev.h (flag_crossjumping, flag_if_conversion,
	flag_if_conversion2, flag_keep_static_consts, flag_peel_loops,
	flag_rerun_cse_after_loop, flag_thread_jumps, flag_tracer,
	flag_unroll_loops, flag_unroll_all_loops, flag_unswitch_loops,
	flag_cprop_registers, time_report, flag_ira_loop_pressure,
	flag_ira_coalesce, flag_ira_move_spills,
	flag_ira_share_save_slots, flag_ira_share_spill_slots): Remove.

c-family:
	* c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
	flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
	flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
	flag_signed_bitfields, warn_strict_null_sentinel,
	flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
	flag_gen_declaration, flag_no_gnu_keywords,
	flag_implement_inlines, flag_implicit_templates,
	flag_implicit_inline_templates, flag_optional_diags,
	flag_elide_constructors, flag_default_inline, flag_rtti,
	flag_conserve_space, flag_access_control, flag_check_new,
	flag_new_for_scope, flag_weak, flag_working_directory,
	flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
	flag_enforce_eh_specs, flag_threadsafe_statics,
	flag_pretty_templates): Remove.
	* c-common.h (flag_preprocess_only, flag_nil_receivers,
	flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
	flag_replace_objc_classes, flag_undef, flag_no_builtin,
	flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
	flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
	flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
	flag_no_gnu_keywords, flag_implement_inlines,
	flag_implicit_templates, flag_implicit_inline_templates,
	flag_optional_diags, flag_elide_constructors, flag_default_inline,
	flag_rtti, flag_conserve_space, flag_access_control,
	flag_check_new, flag_new_for_scope, flag_weak,
	flag_working_directory, flag_use_cxa_atexit,
	flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
	flag_threadsafe_statics, flag_pretty_templates,
	warn_strict_null_sentinel): Remove.
	* c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
	fbuiltin, fcheck-new, fconserve-space, felide-constructors,
	fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
	fimplicit-inline-templates, fimplicit-templates,
	flax-vector-conversions, fms-extensions, fnil-receivers,
	fnonansi-builtins, fpretty-templates, freplace-objc-classes,
	frtti, fshort-double, fshort-enums, fshort-wchar,
	fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
	funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
	fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
	gen-decls, undef): Use Var.
	(fdefault-inline, foptional-diags): Document as doing nothing.
	* c-opts.c (c_common_handle_option): Remove cases for options now
	using Var.  Mark ignored options as such.

fortran:
	* lang.opt (fshort-enums): Define using Var and VarExists.
	* options.c (gfc_handle_option): Don't set flag_short_enums here.

lto:
	* lto-lang.c (flag_no_builtin, flag_no_nonansi_builtin): Remove.
	(lto_handle_option): Don't set flag_signed_char here.

From-SVN: r160384
parent e7f96023
2010-06-07 Joseph Myers <joseph@codesourcery.com>
* common.opt (fira-verbose): Use Var.
(fpcc-struct-return): Use Init instead of VarExists.
* defaults.h (DEFAULT_PCC_STRUCT_RETURN): Move definition from
toplev.c.
* flags.h (flag_signed_char, flag_short_enums,
flag_pcc_struct_return, flag_ira_verbose,
flag_detailed_statistics, flag_remove_unreachable_functions):
Remove.
* toplev.c (flag_detailed_statistics, flag_signed_char,
flag_short_enums, flag_pcc_struct_return, flag_ira_verbose):
Remove.
(DEFAULT_PCC_STRUCT_RETURN): Move definition to defaults.h.
* toplev.h (flag_crossjumping, flag_if_conversion,
flag_if_conversion2, flag_keep_static_consts, flag_peel_loops,
flag_rerun_cse_after_loop, flag_thread_jumps, flag_tracer,
flag_unroll_loops, flag_unroll_all_loops, flag_unswitch_loops,
flag_cprop_registers, time_report, flag_ira_loop_pressure,
flag_ira_coalesce, flag_ira_move_spills,
flag_ira_share_save_slots, flag_ira_share_spill_slots): Remove.
2010-06-07 Jan Hubicka <jh@suse.cz>
* df-problems.c (df_lr_problem_data): Add lr_bitmaps.
......
2010-06-07 Joseph Myers <joseph@codesourcery.com>
* c-common.c (flag_preprocess_only, flag_undef, flag_no_builtin,
flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
flag_signed_bitfields, warn_strict_null_sentinel,
flag_nil_receivers, flag_zero_link, flag_replace_objc_classes,
flag_gen_declaration, flag_no_gnu_keywords,
flag_implement_inlines, flag_implicit_templates,
flag_implicit_inline_templates, flag_optional_diags,
flag_elide_constructors, flag_default_inline, flag_rtti,
flag_conserve_space, flag_access_control, flag_check_new,
flag_new_for_scope, flag_weak, flag_working_directory,
flag_use_cxa_atexit, flag_use_cxa_get_exception_ptr,
flag_enforce_eh_specs, flag_threadsafe_statics,
flag_pretty_templates): Remove.
* c-common.h (flag_preprocess_only, flag_nil_receivers,
flag_objc_exceptions, flag_objc_sjlj_exceptions, flag_zero_link,
flag_replace_objc_classes, flag_undef, flag_no_builtin,
flag_no_nonansi_builtin, flag_short_double, flag_short_wchar,
flag_lax_vector_conversions, flag_ms_extensions, flag_no_asm,
flag_const_strings, flag_signed_bitfields, flag_gen_declaration,
flag_no_gnu_keywords, flag_implement_inlines,
flag_implicit_templates, flag_implicit_inline_templates,
flag_optional_diags, flag_elide_constructors, flag_default_inline,
flag_rtti, flag_conserve_space, flag_access_control,
flag_check_new, flag_new_for_scope, flag_weak,
flag_working_directory, flag_use_cxa_atexit,
flag_use_cxa_get_exception_ptr, flag_enforce_eh_specs,
flag_threadsafe_statics, flag_pretty_templates,
warn_strict_null_sentinel): Remove.
* c.opt (E, Wstrict-null-sentinel, faccess-control, fasm,
fbuiltin, fcheck-new, fconserve-space, felide-constructors,
fenforce-eh-specs, ffor-scope, fgnu-keywords, fimplement-inlines,
fimplicit-inline-templates, fimplicit-templates,
flax-vector-conversions, fms-extensions, fnil-receivers,
fnonansi-builtins, fpretty-templates, freplace-objc-classes,
frtti, fshort-double, fshort-enums, fshort-wchar,
fsigned-bitfields, fsigned-char, fstats, fthreadsafe-statics,
funsigned-bitfields, funsigned-char, fuse-cxa-atexit,
fuse-cxa-get-exception-ptr, fweak, fworking-directory, fzero-link,
gen-decls, undef): Use Var.
(fdefault-inline, foptional-diags): Document as doing nothing.
* c-opts.c (c_common_handle_option): Remove cases for options now
using Var. Mark ignored options as such.
2010-06-05 Steven Bosscher <steven@gcc.gnu.org>
* c-common.c: Moved to here from parent directory.
......
......@@ -169,10 +169,6 @@ tree c_global_trees[CTI_MAX];
/* Switches common to the C front ends. */
/* Nonzero if preprocessing only. */
int flag_preprocess_only;
/* Nonzero means don't output line number information. */
char flag_no_line_commands;
......@@ -203,42 +199,6 @@ const char *pch_file;
user's namespace. */
int flag_iso;
/* Nonzero if -undef was given. It suppresses target built-in macros
and assertions. */
int flag_undef;
/* Nonzero means don't recognize the non-ANSI builtin functions. */
int flag_no_builtin;
/* Nonzero means don't recognize the non-ANSI builtin functions.
-ansi sets this. */
int flag_no_nonansi_builtin;
/* Nonzero means give `double' the same size as `float'. */
int flag_short_double;
/* Nonzero means give `wchar_t' the same size as `short'. */
int flag_short_wchar;
/* Nonzero means allow implicit conversions between vectors with
differing numbers of subparts and/or differing element types. */
int flag_lax_vector_conversions;
/* Nonzero means allow Microsoft extensions without warnings or errors. */
int flag_ms_extensions;
/* Nonzero means don't recognize the keyword `asm'. */
int flag_no_asm;
/* Nonzero means to treat bitfields as signed unless they say `unsigned'. */
int flag_signed_bitfields = 1;
/* Warn about #pragma directives that are not recognized. */
int warn_unknown_pragmas; /* Tri state variable. */
......@@ -248,27 +208,6 @@ int warn_unknown_pragmas; /* Tri state variable. */
int warn_format;
/* Warn about using __null (as NULL in C++) as sentinel. For code compiled
with GCC this doesn't matter as __null is guaranteed to have the right
size. */
int warn_strict_null_sentinel;
/* Zero means that faster, ...NonNil variants of objc_msgSend...
calls will be used in ObjC; passing nil receivers to such calls
will most likely result in crashes. */
int flag_nil_receivers = 1;
/* Nonzero means that code generation will be altered to support
"zero-link" execution. This currently affects ObjC only, but may
affect other languages in the future. */
int flag_zero_link = 0;
/* Nonzero means emit an '__OBJC, __image_info' for the current translation
unit. It will inform the ObjC runtime that class definition(s) herein
contained are to replace one(s) previously loaded. */
int flag_replace_objc_classes = 0;
/* C/ObjC language option variables. */
......@@ -297,11 +236,6 @@ int flag_hosted = 1;
/* ObjC language option variables. */
/* Open and close the file for outputting class declarations, if
requested (ObjC). */
int flag_gen_declaration;
/* Tells the compiler that this is a special run. Do not perform any
compiling, instead we are to test some platform dependent features
and output a C header file with appropriate definitions. */
......@@ -316,119 +250,15 @@ const char *constant_string_class_name;
/* C++ language option variables. */
/* Nonzero means don't recognize any extension keywords. */
int flag_no_gnu_keywords;
/* Nonzero means do emit exported implementations of functions even if
they can be inlined. */
int flag_implement_inlines = 1;
/* Nonzero means that implicit instantiations will be emitted if needed. */
int flag_implicit_templates = 1;
/* Nonzero means that implicit instantiations of inline templates will be
emitted if needed, even if instantiations of non-inline templates
aren't. */
int flag_implicit_inline_templates = 1;
/* Nonzero means generate separate instantiation control files and
juggle them at link time. */
int flag_use_repository;
/* Nonzero if we want to issue diagnostics that the standard says are not
required. */
int flag_optional_diags = 1;
/* Nonzero means we should attempt to elide constructors when possible. */
int flag_elide_constructors = 1;
/* Nonzero means that member functions defined in class scope are
inline by default. */
int flag_default_inline = 1;
/* Controls whether compiler generates 'type descriptor' that give
run-time type information. */
int flag_rtti = 1;
/* Nonzero if we want to conserve space in the .o files. We do this
by putting uninitialized data and runtime initialized data into
.common instead of .data at the expense of not flagging multiple
definitions. */
int flag_conserve_space;
/* Nonzero if we want to obey access control semantics. */
int flag_access_control = 1;
/* Nonzero if we want to check the return value of new and avoid calling
constructors if it is a null pointer. */
int flag_check_new;
/* The C++ dialect being used. C++98 is the default. */
enum cxx_dialect cxx_dialect = cxx98;
/* Nonzero if we want the new ISO rules for pushing a new scope for `for'
initialization variables.
0: Old rules, set by -fno-for-scope.
2: New ISO rules, set by -ffor-scope.
1: Try to implement new ISO rules, but with backup compatibility
(and warnings). This is the default, for now. */
int flag_new_for_scope = 1;
/* Nonzero if we want to emit defined symbols with common-like linkage as
weak symbols where possible, in order to conform to C++ semantics.
Otherwise, emit them as local symbols. */
int flag_weak = 1;
/* 0 means we want the preprocessor to not emit line directives for
the current working directory. 1 means we want it to do it. -1
means we should decide depending on whether debugging information
is being emitted or not. */
int flag_working_directory = -1;
/* Nonzero to use __cxa_atexit, rather than atexit, to register
destructors for local statics and global objects. '2' means it has been
set nonzero as a default, not by a command-line flag. */
int flag_use_cxa_atexit = DEFAULT_USE_CXA_ATEXIT;
/* Nonzero to use __cxa_get_exception_ptr in C++ exception-handling
code. '2' means it has not been set explicitly on the command line. */
int flag_use_cxa_get_exception_ptr = 2;
/* Nonzero means to implement standard semantics for exception
specifications, calling unexpected if an exception is thrown that
doesn't match the specification. Zero means to treat them as
assertions and optimize accordingly, but not check them. */
int flag_enforce_eh_specs = 1;
/* Nonzero means to generate thread-safe code for initializing local
statics. */
int flag_threadsafe_statics = 1;
/* Nonzero if we want to pretty-print template specializations as the
template signature followed by the arguments. */
int flag_pretty_templates = 1;
/* Maximum template instantiation depth. This limit exists to limit the
time it takes to notice infinite template instantiations; the default
value of 1024 is likely to be in the next C++ standard. */
......
......@@ -480,32 +480,6 @@ extern bool has_c_linkage (const_tree decl);
/* Switches common to the C front ends. */
/* Nonzero if prepreprocessing only. */
extern int flag_preprocess_only;
/* Zero means that faster, ...NonNil variants of objc_msgSend...
calls will be used in ObjC; passing nil receivers to such calls
will most likely result in crashes. */
extern int flag_nil_receivers;
/* Nonzero means that we will allow new ObjC exception syntax (@throw,
@try, etc.) in source code. */
extern int flag_objc_exceptions;
/* Nonzero means that we generate NeXT setjmp based exceptions. */
extern int flag_objc_sjlj_exceptions;
/* Nonzero means that code generation will be altered to support
"zero-link" execution. This currently affects ObjC only, but may
affect other languages in the future. */
extern int flag_zero_link;
/* Nonzero means emit an '__OBJC, __image_info' for the current translation
unit. It will inform the ObjC runtime that class definition(s) herein
contained are to replace one(s) previously loaded. */
extern int flag_replace_objc_classes;
/* Nonzero means don't output line number information. */
extern char flag_no_line_commands;
......@@ -538,48 +512,6 @@ extern const char *pch_file;
extern int flag_iso;
/* Nonzero if -undef was given. It suppresses target built-in macros
and assertions. */
extern int flag_undef;
/* Nonzero means don't recognize the non-ANSI builtin functions. */
extern int flag_no_builtin;
/* Nonzero means don't recognize the non-ANSI builtin functions.
-ansi sets this. */
extern int flag_no_nonansi_builtin;
/* Nonzero means give `double' the same size as `float'. */
extern int flag_short_double;
/* Nonzero means give `wchar_t' the same size as `short'. */
extern int flag_short_wchar;
/* Nonzero means allow implicit conversions between vectors with
differing numbers of subparts and/or differing element types. */
extern int flag_lax_vector_conversions;
/* Nonzero means allow Microsoft extensions without warnings or errors. */
extern int flag_ms_extensions;
/* Nonzero means don't recognize the keyword `asm'. */
extern int flag_no_asm;
/* Nonzero means give string constants the type `const char *', as mandated
by the standard. */
extern int flag_const_strings;
/* Nonzero means to treat bitfields as signed unless they say `unsigned'. */
extern int flag_signed_bitfields;
/* Warn about #pragma directives that are not recognized. */
extern int warn_unknown_pragmas; /* Tri state variable. */
......@@ -617,11 +549,6 @@ extern int flag_hosted;
/* ObjC language option variables. */
/* Open and close the file for outputting class declarations, if
requested (ObjC). */
extern int flag_gen_declaration;
/* Tells the compiler that this is a special run. Do not perform any
compiling, instead we are to test some platform dependent features
and output a C header file with appropriate definitions. */
......@@ -636,65 +563,11 @@ extern const char *constant_string_class_name;
/* C++ language option variables. */
/* Nonzero means don't recognize any extension keywords. */
extern int flag_no_gnu_keywords;
/* Nonzero means do emit exported implementations of functions even if
they can be inlined. */
extern int flag_implement_inlines;
/* Nonzero means that implicit instantiations will be emitted if needed. */
extern int flag_implicit_templates;
/* Nonzero means that implicit instantiations of inline templates will be
emitted if needed, even if instantiations of non-inline templates
aren't. */
extern int flag_implicit_inline_templates;
/* Nonzero means generate separate instantiation control files and
juggle them at link time. */
extern int flag_use_repository;
/* Nonzero if we want to issue diagnostics that the standard says are not
required. */
extern int flag_optional_diags;
/* Nonzero means we should attempt to elide constructors when possible. */
extern int flag_elide_constructors;
/* Nonzero means that member functions defined in class scope are
inline by default. */
extern int flag_default_inline;
/* Controls whether compiler generates 'type descriptor' that give
run-time type information. */
extern int flag_rtti;
/* Nonzero if we want to conserve space in the .o files. We do this
by putting uninitialized data and runtime initialized data into
.common instead of .data at the expense of not flagging multiple
definitions. */
extern int flag_conserve_space;
/* Nonzero if we want to obey access control semantics. */
extern int flag_access_control;
/* Nonzero if we want to check the return value of new and avoid calling
constructors if it is a null pointer. */
extern int flag_check_new;
/* The supported C++ dialects. */
enum cxx_dialect {
......@@ -708,61 +581,6 @@ enum cxx_dialect {
/* The C++ dialect being used. C++98 is the default. */
extern enum cxx_dialect cxx_dialect;
/* Nonzero if we want the new ISO rules for pushing a new scope for `for'
initialization variables.
0: Old rules, set by -fno-for-scope.
2: New ISO rules, set by -ffor-scope.
1: Try to implement new ISO rules, but with backup compatibility
(and warnings). This is the default, for now. */
extern int flag_new_for_scope;
/* Nonzero if we want to emit defined symbols with common-like linkage as
weak symbols where possible, in order to conform to C++ semantics.
Otherwise, emit them as local symbols. */
extern int flag_weak;
/* 0 means we want the preprocessor to not emit line directives for
the current working directory. 1 means we want it to do it. -1
means we should decide depending on whether debugging information
is being emitted or not. */
extern int flag_working_directory;
/* Nonzero to use __cxa_atexit, rather than atexit, to register
destructors for local statics and global objects. */
extern int flag_use_cxa_atexit;
/* Nonzero to use __cxa_get_exception_ptr in the C++ exception-handling
logic. */
extern int flag_use_cxa_get_exception_ptr;
/* Nonzero means to implement standard semantics for exception
specifications, calling unexpected if an exception is thrown that
doesn't match the specification. Zero means to treat them as
assertions and optimize accordingly, but not check them. */
extern int flag_enforce_eh_specs;
/* Nonzero (the default) means to generate thread-safe code for
initializing local statics. */
extern int flag_threadsafe_statics;
/* Nonzero if we want to pretty-print template specializations as the
template signature followed by the arguments. */
extern int flag_pretty_templates;
/* Warn about using __null (as NULL in C++) as sentinel. For code compiled
with GCC this doesn't matter as __null is guaranteed to have the right
size. */
extern int warn_strict_null_sentinel;
/* Maximum template instantiation depth. This limit is rather
arbitrary, but it exists to limit the time it takes to notice
infinite template instantiations. */
......
......@@ -395,10 +395,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
defer_opt (code, arg);
break;
case OPT_E:
flag_preprocess_only = 1;
break;
case OPT_H:
cpp_opts->print_include_names = 1;
break;
......@@ -462,10 +458,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
flag_no_line_commands = 1;
break;
case OPT_fworking_directory:
flag_working_directory = value;
break;
case OPT_U:
defer_opt (code, arg);
break;
......@@ -613,10 +605,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
warn_return_type = value;
break;
case OPT_Wstrict_null_sentinel:
warn_strict_null_sentinel = value;
break;
case OPT_Wtraditional:
cpp_opts->warn_traditional = value;
break;
......@@ -692,18 +680,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
warning (0, "switch %qs is no longer supported", option->opt_text);
break;
case OPT_faccess_control:
flag_access_control = value;
break;
case OPT_fasm:
flag_no_asm = !value;
break;
case OPT_fbuiltin:
flag_no_builtin = !value;
break;
case OPT_fbuiltin_:
if (value)
result = 0;
......@@ -727,70 +703,18 @@ c_common_handle_option (size_t scode, const char *arg, int value,
flag_no_builtin = !value;
break;
case OPT_fshort_double:
flag_short_double = value;
break;
case OPT_fshort_enums:
flag_short_enums = value;
break;
case OPT_fshort_wchar:
flag_short_wchar = value;
break;
case OPT_fsigned_bitfields:
flag_signed_bitfields = value;
break;
case OPT_fsigned_char:
flag_signed_char = value;
break;
case OPT_funsigned_bitfields:
flag_signed_bitfields = !value;
break;
case OPT_funsigned_char:
flag_signed_char = !value;
break;
case OPT_fcheck_new:
flag_check_new = value;
break;
case OPT_fconserve_space:
flag_conserve_space = value;
break;
case OPT_fconstant_string_class_:
constant_string_class_name = arg;
break;
case OPT_fdefault_inline:
flag_default_inline = value;
break;
case OPT_felide_constructors:
flag_elide_constructors = value;
break;
case OPT_fenforce_eh_specs:
flag_enforce_eh_specs = value;
/* Ignore. */
break;
case OPT_fextended_identifiers:
cpp_opts->extended_identifiers = value;
break;
case OPT_ffor_scope:
flag_new_for_scope = value;
break;
case OPT_fgnu_keywords:
flag_no_gnu_keywords = !value;
break;
case OPT_fgnu_runtime:
flag_next_runtime = !value;
break;
......@@ -800,44 +724,16 @@ c_common_handle_option (size_t scode, const char *arg, int value,
flag_exceptions = value;
break;
case OPT_fimplement_inlines:
flag_implement_inlines = value;
break;
case OPT_fimplicit_inline_templates:
flag_implicit_inline_templates = value;
break;
case OPT_fimplicit_templates:
flag_implicit_templates = value;
break;
case OPT_flax_vector_conversions:
flag_lax_vector_conversions = value;
break;
case OPT_fms_extensions:
flag_ms_extensions = value;
break;
case OPT_fnext_runtime:
flag_next_runtime = value;
break;
case OPT_fnil_receivers:
flag_nil_receivers = value;
break;
case OPT_fnonansi_builtins:
flag_no_nonansi_builtin = !value;
break;
case OPT_foperator_names:
cpp_opts->operator_names = value;
break;
case OPT_foptional_diags:
flag_optional_diags = value;
/* Ignore. */
break;
case OPT_fpch_deps:
......@@ -857,28 +753,16 @@ c_common_handle_option (size_t scode, const char *arg, int value,
cpp_opts->preprocessed = value;
break;
case OPT_freplace_objc_classes:
flag_replace_objc_classes = value;
break;
case OPT_frepo:
flag_use_repository = value;
if (value)
flag_implicit_templates = 0;
break;
case OPT_frtti:
flag_rtti = value;
break;
case OPT_fshow_column:
cpp_opts->show_column = value;
break;
case OPT_fstats:
flag_detailed_statistics = value;
break;
case OPT_ftabstop_:
/* It is documented that we silently ignore silly values. */
if (value >= 1 && value <= 100)
......@@ -903,38 +787,10 @@ c_common_handle_option (size_t scode, const char *arg, int value,
max_tinst_depth = value;
break;
case OPT_fuse_cxa_atexit:
flag_use_cxa_atexit = value;
break;
case OPT_fuse_cxa_get_exception_ptr:
flag_use_cxa_get_exception_ptr = value;
break;
case OPT_fvisibility_inlines_hidden:
visibility_options.inlines_hidden = value;
break;
case OPT_fweak:
flag_weak = value;
break;
case OPT_fthreadsafe_statics:
flag_threadsafe_statics = value;
break;
case OPT_fpretty_templates:
flag_pretty_templates = value;
break;
case OPT_fzero_link:
flag_zero_link = value;
break;
case OPT_gen_decls:
flag_gen_declaration = 1;
break;
case OPT_femit_struct_debug_baseonly:
set_struct_debug_option ("base");
break;
......@@ -1094,10 +950,6 @@ c_common_handle_option (size_t scode, const char *arg, int value,
cpp_opts->traditional = 1;
break;
case OPT_undef:
flag_undef = 1;
break;
case OPT_v:
verbose = true;
break;
......
......@@ -54,7 +54,7 @@ C ObjC C++ ObjC++ Joined Separate
-D<macro>[=<val>] Define a <macro> with <val> as its value. If just <macro> is given, <val> is taken to be 1
E
C ObjC C++ ObjC++ Undocumented
C ObjC C++ ObjC++ Undocumented Var(flag_preprocess_only)
F
C ObjC C++ ObjC++ Joined Separate
......@@ -438,7 +438,7 @@ C++ ObjC++ Var(warn_sign_promo) Warning
Warn when overload promotes from unsigned to signed
Wstrict-null-sentinel
C++ ObjC++ Warning
C++ ObjC++ Warning Var(warn_strict_null_sentinel)
Warn about uncasted NULL used as sentinel
Wstrict-prototypes
......@@ -526,7 +526,7 @@ C ObjC C++ ObjC++ Joined
; Documented in common.opt. FIXME - what about -dI, -dD, -dN and -dD?
faccess-control
C++ ObjC++
C++ ObjC++ Var(flag_access_control) Init(1)
Enforce class member access control semantics
fall-virtual
......@@ -537,18 +537,18 @@ C++ ObjC++
Change when template instances are emitted
fasm
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_no_asm, 0)
Recognize the \"asm\" keyword
fbuiltin
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_no_builtin, 0)
Recognize built-in functions
fbuiltin-
C ObjC C++ ObjC++ Joined
fcheck-new
C++ ObjC++
C++ ObjC++ Var(flag_check_new)
Check the return value of new
fcond-mismatch
......@@ -556,7 +556,7 @@ C ObjC C++ ObjC++
Allow the arguments of the '?' operator to have different types
fconserve-space
C++ ObjC++
C++ ObjC++ Var(flag_conserve_space)
Reduce the size of object files
fconstant-string-class=
......@@ -569,7 +569,7 @@ C++ ObjC++ Var(flag_deduce_init_list) Init(1)
fdefault-inline
C++ ObjC++
Inline member functions by default
Does nothing. Preserved for backward compatibility.
fdirectives-only
C ObjC C++ ObjC++
......@@ -580,10 +580,10 @@ C ObjC C++ ObjC++
Permit '$' as an identifier character
felide-constructors
C++ ObjC++
C++ ObjC++ Var(flag_elide_constructors) Init(1)
fenforce-eh-specs
C++ ObjC++
C++ ObjC++ Var(flag_enforce_eh_specs) Init(1)
Generate code to check exception specifications
fenum-int-equiv
......@@ -606,7 +606,7 @@ fexternal-templates
C++ ObjC++
ffor-scope
C++ ObjC++
C++ ObjC++ Var(flag_new_for_scope) Init(1)
Scope of for-init-statement variables is local to the loop
ffreestanding
......@@ -614,7 +614,7 @@ C ObjC C++ ObjC++
Do not assume that standard C libraries and \"main\" exist
fgnu-keywords
C++ ObjC++
C++ ObjC++ Var(flag_no_gnu_keywords, 0)
Recognize GNU-defined keywords
fgnu-runtime
......@@ -643,15 +643,15 @@ C++ ObjC++
Enable support for huge objects
fimplement-inlines
C++ ObjC++
C++ ObjC++ Var(flag_implement_inlines) Init(1)
Export functions even if they can be inlined
fimplicit-inline-templates
C++ ObjC++
C++ ObjC++ Var(flag_implicit_inline_templates) Init(1)
Emit implicit instantiations of inline templates
fimplicit-templates
C++ ObjC++
C++ ObjC++ Var(flag_implicit_templates) Init(1)
Emit implicit instantiations of templates
ffriend-injection
......@@ -662,11 +662,11 @@ flabels-ok
C++ ObjC++
flax-vector-conversions
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_lax_vector_conversions)
Allow implicit conversions between vectors with differing numbers of subparts and/or differing element types.
fms-extensions
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_ms_extensions)
Don't warn about uses of Microsoft extensions
fname-mangling-version-
......@@ -680,11 +680,11 @@ ObjC ObjC++
Generate code for NeXT (Apple Mac OS X) runtime environment
fnil-receivers
ObjC ObjC++
ObjC ObjC++ Var(flag_nil_receivers) Init(1)
Assume that receivers of Objective-C messages may be nil
fnonansi-builtins
C++ ObjC++
C++ ObjC++ Var(flag_no_nonansi_builtin, 0)
fnonnull-objects
C++ ObjC++
......@@ -728,7 +728,7 @@ Recognize C++ keywords like \"compl\" and \"xor\"
foptional-diags
C++ ObjC++
Enable optional diagnostics
Does nothing. Preserved for backward compatibility.
fpch-deps
C ObjC C++ ObjC++
......@@ -746,11 +746,11 @@ C ObjC C++ ObjC++
Treat the input file as already preprocessed
fpretty-templates
C++ ObjC++
C++ ObjC++ Var(flag_pretty_templates) Init(1)
-fno-pretty-templates Do not pretty-print template specializations as the template signature followed by the arguments
freplace-objc-classes
ObjC ObjC++
ObjC ObjC++ Var(flag_replace_objc_classes)
Used in Fix-and-Continue mode to indicate that object files may be swapped in at runtime
frepo
......@@ -758,34 +758,34 @@ C++ ObjC++
Enable automatic template instantiation
frtti
C++ ObjC++ Optimization
C++ ObjC++ Optimization Var(flag_rtti) Init(1)
Generate run time type descriptor information
fshort-double
C ObjC C++ ObjC++ Optimization
C ObjC C++ ObjC++ Optimization Var(flag_short_double)
Use the same size for double as for float
fshort-enums
C ObjC C++ ObjC++ Optimization
C ObjC C++ ObjC++ Optimization Var(flag_short_enums)
Use the narrowest integer type possible for enumeration types
fshort-wchar
C ObjC C++ ObjC++ Optimization
C ObjC C++ ObjC++ Optimization Var(flag_short_wchar)
Force the underlying type for \"wchar_t\" to be \"unsigned short\"
fsigned-bitfields
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_signed_bitfields) Init(1)
When \"signed\" or \"unsigned\" is not given make the bitfield signed
fsigned-char
C ObjC C++ ObjC++ LTO
C ObjC C++ ObjC++ LTO Var(flag_signed_char)
Make \"char\" signed by default
fsquangle
C++ ObjC++
fstats
C++ ObjC++
C++ ObjC++ Var(flag_detailed_statistics)
Display statistics accumulated during compilation
fstrict-enums
......@@ -810,23 +810,23 @@ fthis-is-variable
C++ ObjC++
fthreadsafe-statics
C++ ObjC++ Optimization
C++ ObjC++ Optimization Var(flag_threadsafe_statics) Init(1)
-fno-threadsafe-statics Do not generate thread-safe code for initializing local statics
funsigned-bitfields
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_signed_bitfields, 0) VarExists
When \"signed\" or \"unsigned\" is not given make the bitfield unsigned
funsigned-char
C ObjC C++ ObjC++ LTO
C ObjC C++ ObjC++ LTO Var(flag_signed_char, 0) VarExists
Make \"char\" unsigned by default
fuse-cxa-atexit
C++ ObjC++
C++ ObjC++ Var(flag_use_cxa_atexit) Init(DEFAULT_USE_CXA_ATEXIT)
Use __cxa_atexit to register destructors
fuse-cxa-get-exception-ptr
C++ ObjC++
C++ ObjC++ Var(flag_use_cxa_get_exception_ptr) Init(2)
Use __cxa_get_exception_ptr in exception handling
fvisibility-inlines-hidden
......@@ -846,7 +846,7 @@ C++ ObjC++
Implement vtables using thunks
fweak
C++ ObjC++
C++ ObjC++ Var(flag_weak) Init(1)
Emit common-like symbols as weak symbols
fwide-exec-charset=
......@@ -854,7 +854,7 @@ C ObjC C++ ObjC++ Joined RejectNegative
-fwide-exec-charset=<cset> Convert all wide strings and character constants to character set <cset>
fworking-directory
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_working_directory) Init(-1)
Generate a #line directive pointing at the current working directory
fxref
......@@ -862,11 +862,11 @@ C++ ObjC++
Emit cross referencing information
fzero-link
ObjC ObjC++
ObjC ObjC++ Var(flag_zero_link)
Generate lazy class lookup (via objc_getClass()) for use in Zero-Link mode
gen-decls
ObjC ObjC++
ObjC ObjC++ Var(flag_gen_declaration)
Dump declarations to a .decl file
femit-struct-debug-baseonly
......@@ -1046,7 +1046,7 @@ C ObjC C++ ObjC++
-trigraphs Support ISO C trigraphs
undef
C ObjC C++ ObjC++
C ObjC C++ ObjC++ Var(flag_undef)
Do not predefine system-specific and GCC-specific macros
v
......
......@@ -757,7 +757,7 @@ Common Report Var(flag_ira_share_spill_slots) Init(1)
Share stack slots for spilled pseudo-registers.
fira-verbose=
Common RejectNegative Joined UInteger
Common RejectNegative Joined UInteger Var(flag_ira_verbose) Init(5)
-fira-verbose=<number> Control IRA's level of diagnostic messages.
fivopts
......@@ -893,7 +893,7 @@ Common RejectNegative Joined UInteger Optimization
-fpack-struct=<number> Set initial maximum structure member alignment
fpcc-struct-return
Common Report Var(flag_pcc_struct_return,1) VarExists
Common Report Var(flag_pcc_struct_return,1) Init(DEFAULT_PCC_STRUCT_RETURN)
Return small aggregates in memory, not registers
fpeel-loops
......
......@@ -1169,6 +1169,14 @@ see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
#define MAX_FIXED_MODE_SIZE GET_MODE_BITSIZE (DImode)
#endif
/* Nonzero if structures and unions should be returned in memory.
This should only be defined if compatibility with another compiler or
with an ABI is needed, because it results in slower code. */
#ifndef DEFAULT_PCC_STRUCT_RETURN
#define DEFAULT_PCC_STRUCT_RETURN 1
#endif
#ifdef GCC_INSN_FLAGS_H
/* Dependent default target macro definitions
......
......@@ -150,19 +150,6 @@ extern int flag_print_asm_name;
/* Now the symbols that are set with `-f' switches. */
/* Nonzero means `char' should be signed. */
extern int flag_signed_char;
/* Nonzero means give an enum type only as many bytes as it needs. A value
of 2 means it has not yet been initialized. */
extern int flag_short_enums;
/* Nonzero for -fpcc-struct-return: return values the same way PCC does. */
extern int flag_pcc_struct_return;
/* 0 means straightforward implementation of complex divide acceptable.
1 means wide ranges of inputs must work for complex divide.
2 means C99-like requirements for complex multiply and divide. */
......@@ -234,8 +221,6 @@ enum ira_region
extern enum ira_region flag_ira_region;
extern unsigned int flag_ira_verbose;
/* The options for excess precision. */
enum excess_precision
{
......@@ -291,14 +276,6 @@ enum graph_dump_types
};
extern enum graph_dump_types graph_dump_format;
/* Nonzero means to collect statistics which might be expensive
and to print them when we are done. */
extern int flag_detailed_statistics;
/* Nonzero means that we defer emitting functions until they are actually
used. */
extern int flag_remove_unreachable_functions;
/* Nonzero if we should track variables. */
extern int flag_var_tracking;
......
2010-06-07 Joseph Myers <joseph@codesourcery.com>
* lang.opt (fshort-enums): Define using Var and VarExists.
* options.c (gfc_handle_option): Don't set flag_short_enums here.
2010-06-05 Paul Thomas <pault@gcc.gnu.org>
Janus Weil <janus@gcc.gnu.org>
......
......@@ -369,7 +369,7 @@ Fortran
Append a second underscore if the name already contains an underscore
fshort-enums
Fortran
Fortran Var(flag_short_enums) VarExists
; Documented in C
fsign-zero
......
......@@ -902,7 +902,7 @@ gfc_handle_option (size_t scode, const char *arg, int value,
break;
case OPT_fshort_enums:
flag_short_enums = 1;
/* Handled in language-independent code. */
break;
case OPT_fconvert_little_endian:
......
2010-06-07 Joseph Myers <joseph@codesourcery.com>
* lto-lang.c (flag_no_builtin, flag_no_nonansi_builtin): Remove.
(lto_handle_option): Don't set flag_signed_char here.
2010-06-04 Richard Guenther <rguenther@suse.de>
PR lto/41584
......
/* Language-dependent hooks for LTO.
Copyright 2009 Free Software Foundation, Inc.
Copyright 2009, 2010 Free Software Foundation, Inc.
Contributed by CodeSourcery, Inc.
This file is part of GCC.
......@@ -154,8 +154,6 @@ static GTY(()) tree uintmax_type_node;
static GTY(()) tree signed_size_type_node;
/* Flags needed to process builtins.def. */
int flag_no_builtin;
int flag_no_nonansi_builtin;
int flag_isoc94;
int flag_isoc99;
......@@ -632,14 +630,6 @@ lto_handle_option (size_t scode, const char *arg,
warn_psabi = value;
break;
case OPT_fsigned_char:
flag_signed_char = value;
break;
case OPT_funsigned_char:
flag_signed_char = !value;
break;
default:
break;
}
......
......@@ -208,10 +208,6 @@ tree current_function_decl;
if none. */
const char * current_function_func_begin_label;
/* Nonzero means to collect statistics which might be expensive
and to print them when we are done. */
int flag_detailed_statistics = 0;
/* A random sequence of characters, unless overridden by user. */
static const char *flag_random_seed;
......@@ -222,28 +218,6 @@ unsigned local_tick;
/* -f flags. */
/* Nonzero means `char' should be signed. */
int flag_signed_char;
/* Nonzero means give an enum type only as many bytes as it needs. A value
of 2 means it has not yet been initialized. */
int flag_short_enums;
/* Nonzero if structures and unions should be returned in memory.
This should only be defined if compatibility with another compiler or
with an ABI is needed, because it results in slower code. */
#ifndef DEFAULT_PCC_STRUCT_RETURN
#define DEFAULT_PCC_STRUCT_RETURN 1
#endif
/* Nonzero for -fpcc-struct-return: return values the same way PCC does. */
int flag_pcc_struct_return = DEFAULT_PCC_STRUCT_RETURN;
/* 0 means straightforward implementation of complex divide acceptable.
1 means wide ranges of inputs must work for complex divide.
2 means C99-like requirements for complex multiply and divide. */
......@@ -281,10 +255,6 @@ enum tls_model flag_tls_default = TLS_MODEL_GLOBAL_DYNAMIC;
enum ira_algorithm flag_ira_algorithm = IRA_ALGORITHM_CB;
enum ira_region flag_ira_region = IRA_REGION_MIXED;
/* Set the default value for -fira-verbose. */
unsigned int flag_ira_verbose = 5;
/* Set the default for excess precision. */
enum excess_precision flag_excess_precision_cmdline = EXCESS_PRECISION_DEFAULT;
......
......@@ -94,25 +94,7 @@ extern bool exit_after_options;
extern bool user_defined_section_attribute;
/* See toplev.c. */
extern int flag_crossjumping;
extern int flag_if_conversion;
extern int flag_if_conversion2;
extern int flag_keep_static_consts;
extern int flag_peel_loops;
extern int flag_rerun_cse_after_global_opts;
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 int flag_cprop_registers;
extern int time_report;
extern int flag_ira_loop_pressure;
extern int flag_ira_coalesce;
extern int flag_ira_move_spills;
extern int flag_ira_share_save_slots;
extern int flag_ira_share_spill_slots;
/* Things to do with target switches. */
extern void print_version (FILE *, const char *);
......
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