diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 22 | ||||
-rw-r--r-- | gcc/c-family/ChangeLog | 46 | ||||
-rw-r--r-- | gcc/c-family/c-common.c | 170 | ||||
-rw-r--r-- | gcc/c-family/c-common.h | 182 | ||||
-rw-r--r-- | gcc/c-family/c-opts.c | 152 | ||||
-rw-r--r-- | gcc/c-family/c.opt | 78 | ||||
-rw-r--r-- | gcc/common.opt | 4 | ||||
-rw-r--r-- | gcc/defaults.h | 8 | ||||
-rw-r--r-- | gcc/flags.h | 23 | ||||
-rw-r--r-- | gcc/fortran/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/fortran/lang.opt | 2 | ||||
-rw-r--r-- | gcc/fortran/options.c | 2 | ||||
-rw-r--r-- | gcc/lto/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/lto/lto-lang.c | 12 | ||||
-rw-r--r-- | gcc/toplev.c | 30 | ||||
-rw-r--r-- | gcc/toplev.h | 18 |
16 files changed, 132 insertions, 627 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3c9819e..8565d92 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,25 @@ +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. diff --git a/gcc/c-family/ChangeLog b/gcc/c-family/ChangeLog index f250139..d0b5156 100644 --- a/gcc/c-family/ChangeLog +++ b/gcc/c-family/ChangeLog @@ -1,3 +1,49 @@ +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. diff --git a/gcc/c-family/c-common.c b/gcc/c-family/c-common.c index 545f2e2..c3fa8e6 100644 --- a/gcc/c-family/c-common.c +++ b/gcc/c-family/c-common.c @@ -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. */ diff --git a/gcc/c-family/c-common.h b/gcc/c-family/c-common.h index 5fda1ab..c6701b8 100644 --- a/gcc/c-family/c-common.h +++ b/gcc/c-family/c-common.h @@ -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. */ diff --git a/gcc/c-family/c-opts.c b/gcc/c-family/c-opts.c index 08592f5..a48dea1 100644 --- a/gcc/c-family/c-opts.c +++ b/gcc/c-family/c-opts.c @@ -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; diff --git a/gcc/c-family/c.opt b/gcc/c-family/c.opt index 01d6428..5122e1a 100644 --- a/gcc/c-family/c.opt +++ b/gcc/c-family/c.opt @@ -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 diff --git a/gcc/common.opt b/gcc/common.opt index 4904481..a7b0e73 100644 --- a/gcc/common.opt +++ b/gcc/common.opt @@ -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 diff --git a/gcc/defaults.h b/gcc/defaults.h index dd461ad..bbfb52f 100644 --- a/gcc/defaults.h +++ b/gcc/defaults.h @@ -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 diff --git a/gcc/flags.h b/gcc/flags.h index bc51b2b..5e87c09 100644 --- a/gcc/flags.h +++ b/gcc/flags.h @@ -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; diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 9b51710..4194ee1 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +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> diff --git a/gcc/fortran/lang.opt b/gcc/fortran/lang.opt index c1a86dd..eb286f6 100644 --- a/gcc/fortran/lang.opt +++ b/gcc/fortran/lang.opt @@ -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 diff --git a/gcc/fortran/options.c b/gcc/fortran/options.c index 6c6ccb1..2e4f5c1 100644 --- a/gcc/fortran/options.c +++ b/gcc/fortran/options.c @@ -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: diff --git a/gcc/lto/ChangeLog b/gcc/lto/ChangeLog index f7f2703..bfa31dc 100644 --- a/gcc/lto/ChangeLog +++ b/gcc/lto/ChangeLog @@ -1,3 +1,8 @@ +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 diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c index 974e3d7..636b62a 100644 --- a/gcc/lto/lto-lang.c +++ b/gcc/lto/lto-lang.c @@ -1,5 +1,5 @@ /* 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; } diff --git a/gcc/toplev.c b/gcc/toplev.c index ff4c850..e25bad0 100644 --- a/gcc/toplev.c +++ b/gcc/toplev.c @@ -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; diff --git a/gcc/toplev.h b/gcc/toplev.h index b7152f7..0afe33f 100644 --- a/gcc/toplev.h +++ b/gcc/toplev.h @@ -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 *); |