--- /dev/null
+/* This file is auto-generated by opth-gen.awk. */
+
+#ifndef OPTIONS_H
+#define OPTIONS_H
+
+extern int target_flags;
+extern int target_flags_explicit;
+
+extern int extra_warnings;
+extern int warn_abi;
+extern int warn_address;
+extern int warn_aggregate_return;
+extern int warn_array_bounds;
+extern int warn_assign_intercept;
+extern int warn_attributes;
+extern int warn_bad_function_cast;
+extern int warn_cxx_compat;
+extern int warn_cxx0x_compat;
+extern int warn_cast_align;
+extern int warn_cast_qual;
+extern int warn_char_subscripts;
+extern int warn_clobbered;
+extern int warn_conversion;
+extern int warn_conversion_null;
+extern int warn_coverage_mismatch;
+extern int warn_ctor_dtor_privacy;
+extern int warn_declaration_after_statement;
+extern int warn_deprecated;
+extern int warn_deprecated_decl;
+extern int warn_disabled_optimization;
+extern int warn_div_by_zero;
+extern int warn_ecpp;
+extern int warn_empty_body;
+extern int warn_enum_compare;
+extern int warnings_are_errors;
+extern int flag_extraneous_semicolon;
+extern int flag_fatal_errors;
+extern int warn_float_equal;
+extern int warn_format_contains_nul;
+extern int warn_format_extra_args;
+extern int warn_format_nonliteral;
+extern int warn_format_security;
+extern int warn_format_y2k;
+extern int warn_format_zero_length;
+extern int warn_ignored_qualifiers;
+extern int warn_implicit_function_declaration;
+extern int warn_implicit_int;
+extern int warn_init_self;
+extern int warn_inline;
+extern int warn_int_to_pointer_cast;
+extern int warn_invalid_offsetof;
+extern int warn_jump_misses_init;
+extern int warn_logical_op;
+extern int warn_long_long;
+extern int warn_main;
+extern int warn_missing_braces;
+extern int warn_missing_declarations;
+extern int warn_missing_field_initializers;
+extern int warn_missing_format_attribute;
+extern int warn_missing_noreturn;
+extern int warn_missing_parameter_type;
+extern int warn_missing_prototypes;
+extern int warn_mudflap;
+extern int warn_nested_externs;
+extern int warn_nontemplate_friend;
+extern int warn_nonvdtor;
+extern int warn_nonnull;
+extern int warn_old_style_cast;
+extern int warn_old_style_declaration;
+extern int warn_old_style_definition;
+extern int flag_newer;
+extern int warn_overflow;
+extern int warn_overlength_strings;
+extern int warn_overloaded_virtual;
+extern int warn_override_init;
+extern int warn_packed;
+extern int warn_packed_bitfield_compat;
+extern int warn_padded;
+extern int warn_parentheses;
+extern int warn_pmf2ptr;
+extern int warn_pointer_arith;
+extern int warn_pointer_sign;
+extern int warn_pointer_to_int_cast;
+extern int warn_pragmas;
+extern int warn_protocol;
+extern int warn_psabi;
+extern int warn_redundant_decls;
+extern int flag_redundant;
+extern int warn_reorder;
+extern int warn_return_type;
+extern int warn_selector;
+extern int warn_sequence_point;
+extern int warn_shadow;
+extern int warn_sign_compare;
+extern int warn_sign_conversion;
+extern int warn_sign_promo;
+extern int warn_stack_protect;
+extern int warn_strict_aliasing;
+extern int warn_strict_overflow;
+extern int warn_strict_prototypes;
+extern int warn_strict_selector_match;
+extern int warn_switch;
+extern int warn_switch_default;
+extern int warn_switch_enum;
+extern int warn_sync_nand;
+extern int warn_synth;
+extern int warn_system_headers;
+extern int warn_traditional;
+extern int warn_traditional_conversion;
+extern int warn_type_limits;
+extern int warn_undeclared_selector;
+extern int warn_uninitialized;
+extern int warn_unsafe_loop_optimizations;
+extern int warn_unsuffixed_float_constants;
+extern int warn_unused;
+extern int warn_unused_function;
+extern int warn_unused_label;
+extern int warn_unused_parameter;
+extern int warn_unused_result;
+extern int warn_unused_value;
+extern int warn_unused_variable;
+extern int warn_vla;
+extern int warn_volatile_register_var;
+extern int warn_write_strings;
+extern int flag_pic;
+extern int flag_pie;
+extern int flag_abi_version;
+extern int align_functions;
+extern int align_jumps;
+extern int align_labels;
+extern int align_loops;
+extern int flag_argument_noalias;
+extern int flag_assert;
+extern int flag_associative_math;
+extern int flag_asynchronous_unwind_tables;
+extern int flag_auto_inc_dec;
+extern int flag_bootstrap_classes;
+extern int flag_bounds_check;
+extern int flag_branch_on_count_reg;
+extern int flag_branch_probabilities;
+extern int flag_branch_target_load_optimize;
+extern int flag_branch_target_load_optimize2;
+extern int flag_btr_bb_exclusive;
+extern int flag_caller_saves;
+extern int flag_check_data_deps;
+extern int flag_check_references;
+extern int flag_no_common;
+extern int flag_compare_debug;
+extern const char *flag_compare_debug_opt;
+extern int flag_conserve_stack;
+extern int flag_cprop_registers;
+extern int flag_crossjumping;
+extern int flag_cse_follow_jumps;
+extern int flag_cx_fortran_rules;
+extern int flag_cx_limited_range;
+extern int flag_data_sections;
+extern int flag_dce;
+extern int flag_deduce_init_list;
+extern int flag_defer_pop;
+extern int flag_delayed_branch;
+extern int flag_delete_null_pointer_checks;
+extern int flag_dse;
+extern const char *flag_dump_final_insns;
+extern int flag_dump_noaddr;
+extern int flag_dump_unnumbered;
+extern int flag_dump_unnumbered_links;
+extern int flag_dwarf2_cfi_asm;
+extern int flag_early_inlining;
+extern int flag_eliminate_dwarf2_dups;
+extern int flag_debug_only_used_symbols;
+extern int flag_eliminate_unused_debug_types;
+extern int flag_emit_class_debug_always;
+extern int flag_emit_class_files;
+extern int flag_enable_icf_debug;
+extern int flag_exceptions;
+extern int flag_expensive_optimizations;
+extern int flag_filelist_file;
+extern int flag_finite_math_only;
+extern int flag_float_store;
+extern int flag_force_classes_archive_check;
+extern int flag_forward_propagate;
+extern int flag_friend_injection;
+extern int flag_no_function_cse;
+extern int flag_function_sections;
+extern int flag_gcse;
+extern int flag_gcse_after_reload;
+extern int flag_gcse_las;
+extern int flag_gcse_lm;
+extern int flag_gcse_sm;
+extern int flag_gnu89_inline;
+extern int flag_graphite;
+extern int flag_graphite_identity;
+extern int flag_guess_branch_prob;
+extern int flag_hash_synchronization;
+extern int help_flag;
+extern int flag_no_ident;
+extern int flag_if_conversion;
+extern int flag_if_conversion2;
+extern int flag_indirect_classes;
+extern int flag_indirect_dispatch;
+extern int flag_indirect_inlining;
+extern int flag_inhibit_size_directive;
+extern int flag_no_inline;
+extern int flag_inline_functions;
+extern int flag_inline_functions_called_once;
+extern int flag_inline_small_functions;
+extern int flag_instrument_function_entry_exit;
+extern int flag_ipa_cp;
+extern int flag_ipa_cp_clone;
+extern int flag_ipa_matrix_reorg;
+extern int flag_ipa_pta;
+extern int flag_ipa_pure_const;
+extern int flag_ipa_reference;
+extern int flag_ipa_sra;
+extern int flag_ipa_struct_reorg;
+extern int flag_ipa_type_escape;
+extern int flag_ira_coalesce;
+extern int flag_ira_loop_pressure;
+extern int flag_ira_share_save_slots;
+extern int flag_ira_share_spill_slots;
+extern int flag_ivopts;
+extern int flag_jni;
+extern int flag_jump_tables;
+extern int flag_keep_inline_functions;
+extern int flag_keep_static_consts;
+extern int flag_leading_underscore;
+extern int flag_loop_block;
+extern int flag_loop_interchange;
+extern int flag_loop_parallelize_all;
+extern int flag_loop_strip_mine;
+extern int flag_lto;
+extern int flag_lto_compression_level;
+extern int flag_lto_report;
+extern int flag_ltrans;
+extern const char *ltrans_output_list;
+extern int flag_errno_math;
+extern int mem_report;
+extern int flag_merge_constants;
+extern int flag_merge_debug_strings;
+extern int flag_modulo_sched;
+extern int flag_modulo_sched_allow_regmoves;
+extern int flag_move_loop_invariants;
+extern int flag_mudflap;
+extern int flag_mudflap_ignore_reads;
+extern int flag_non_call_exceptions;
+extern int flag_objc_call_cxx_cdtors;
+extern int flag_objc_direct_dispatch;
+extern int flag_objc_exceptions;
+extern int flag_objc_gc;
+extern int flag_objc_sjlj_exceptions;
+extern int flag_omit_frame_pointer;
+extern int flag_openmp;
+extern int flag_regmove;
+extern int flag_optimize_sibling_calls;
+extern int flag_optimize_sci;
+extern int flag_pack_struct;
+extern int flag_pcc_struct_return;
+extern int flag_peel_loops;
+extern int flag_no_peephole;
+extern int flag_peephole2;
+extern int post_ipa_mem_report;
+extern int pre_ipa_mem_report;
+extern int flag_predictive_commoning;
+extern int flag_prefetch_loop_arrays;
+extern int profile_flag;
+extern int profile_arc_flag;
+extern int flag_profile_correction;
+extern int flag_profile_use;
+extern int flag_profile_values;
+extern int flag_reciprocal_math;
+extern int flag_record_gcc_switches;
+extern int flag_reduced_reflection;
+extern int flag_rename_registers;
+extern int flag_reorder_blocks;
+extern int flag_reorder_blocks_and_partition;
+extern int flag_reorder_functions;
+extern int flag_rerun_cse_after_loop;
+extern int flag_resched_modulo_sched;
+extern int flag_rounding_math;
+extern int flag_sched_critical_path_heuristic;
+extern int flag_sched_dep_count_heuristic;
+extern int flag_sched_group_heuristic;
+extern int flag_schedule_interblock;
+extern int flag_sched_last_insn_heuristic;
+extern int flag_sched_pressure;
+extern int flag_sched_rank_heuristic;
+extern int flag_schedule_speculative;
+extern int flag_sched_spec_insn_heuristic;
+extern int flag_schedule_speculative_load;
+extern int flag_schedule_speculative_load_dangerous;
+extern int flag_sched_stalled_insns;
+extern int flag_sched_stalled_insns_dep;
+extern int flag_sched2_use_superblocks;
+extern int flag_schedule_insns;
+extern int flag_schedule_insns_after_reload;
+extern int flag_section_anchors;
+extern int flag_sel_sched_pipelining;
+extern int flag_sel_sched_pipelining_outer_loops;
+extern int flag_sel_sched_reschedule_pipelined;
+extern int flag_selective_scheduling;
+extern int flag_selective_scheduling2;
+extern int flag_show_column;
+extern int flag_signaling_nans;
+extern int flag_signed_zeros;
+extern int flag_single_precision_constant;
+extern int flag_split_ivs_in_unroller;
+extern int flag_split_wide_types;
+extern int flag_stack_protect;
+extern int flag_store_check;
+extern int flag_strict_aliasing;
+extern int flag_strict_overflow;
+extern int flag_syntax_only;
+extern int flag_test_coverage;
+extern int flag_thread_jumps;
+extern int time_report;
+extern int flag_toplevel_reorder;
+extern int flag_tracer;
+extern int flag_trapping_math;
+extern int flag_trapv;
+extern int flag_tree_builtin_call_dce;
+extern int flag_tree_ccp;
+extern int flag_tree_ch;
+extern int flag_tree_copy_prop;
+extern int flag_tree_copyrename;
+extern int flag_tree_cselim;
+extern int flag_tree_dce;
+extern int flag_tree_dom;
+extern int flag_tree_dse;
+extern int flag_tree_forwprop;
+extern int flag_tree_fre;
+extern int flag_tree_loop_distribution;
+extern int flag_tree_loop_im;
+extern int flag_tree_loop_ivcanon;
+extern int flag_tree_loop_linear;
+extern int flag_tree_loop_optimize;
+extern int flag_tree_live_range_split;
+extern int flag_tree_parallelize_loops;
+extern int flag_tree_phiprop;
+extern int flag_tree_pre;
+extern int flag_tree_pta;
+extern int flag_tree_reassoc;
+extern int flag_tree_scev_cprop;
+extern int flag_tree_sink;
+extern int flag_tree_slp_vectorize;
+extern int flag_tree_sra;
+extern int flag_tree_switch_conversion;
+extern int flag_tree_ter;
+extern int flag_tree_vect_loop_version;
+extern int flag_tree_vectorize;
+extern int flag_tree_vrp;
+extern int flag_unit_at_a_time;
+extern int flag_unroll_all_loops;
+extern int flag_unroll_loops;
+extern int flag_unsafe_loop_optimizations;
+extern int flag_unsafe_math_optimizations;
+extern int flag_unswitch_loops;
+extern int flag_unwind_tables;
+extern int flag_use_atomic_builtins;
+extern int flag_use_boehm_gc;
+extern int flag_use_divide_subroutine;
+extern int flag_var_tracking;
+extern int flag_var_tracking_assignments;
+extern int flag_var_tracking_assignments_toggle;
+extern int flag_var_tracking_uninit;
+extern int flag_variable_expansion_in_unroller;
+extern int flag_vect_cost_model;
+extern int flag_verbose_asm;
+extern int flag_visibility_ms_compat;
+extern int flag_value_profile_transformations;
+extern int flag_web;
+extern int flag_whole_program;
+extern int flag_whopr;
+extern int flag_wpa;
+extern int flag_wrapv;
+extern int flag_zero_initialized_in_bss;
+extern int dwarf_version;
+extern int dwarf_strict;
+extern int flag_gtoggle;
+extern int ix86_isa_flags;
+extern const char *ix86_abi_string;
+extern const char *ix86_align_funcs_string;
+extern const char *ix86_align_jumps_string;
+extern const char *ix86_align_loops_string;
+extern const char *ix86_arch_string;
+extern const char *ix86_asm_string;
+extern const char *ix86_branch_cost_string;
+extern const char *ix86_cmodel_string;
+extern int ix86_force_drap;
+extern const char *ix86_fpmath_string;
+extern int linux_uclibc;
+extern const char *ix86_incoming_stack_boundary_string;
+extern const char *ix86_section_threshold_string;
+extern const char *ix87_precision_string;
+extern const char *ix86_preferred_stack_boundary_string;
+extern const char *ix86_regparm_string;
+extern int ix86_sse2avx;
+extern int ix86_force_align_arg_pointer;
+extern const char *ix86_stringop_string;
+extern const char *ix86_tls_dialect_string;
+extern const char *ix86_tune_string;
+extern const char *ix86_veclibabi_string;
+extern int pedantic;
+extern int quiet_flag;
+extern int version_flag;
+extern int inhibit_warnings;
+
+#if !defined(GCC_DRIVER) && !defined(IN_LIBGCC2) && !defined(IN_TARGET_LIBS)
+
+/* Structure to save/restore optimization and target specific options. */
+struct GTY(()) cl_optimization
+{
+ int align_functions;
+ int align_jumps;
+ int align_labels;
+ int align_loops;
+ int flag_sched_stalled_insns;
+ int flag_sched_stalled_insns_dep;
+ unsigned char optimize;
+ unsigned char optimize_size;
+ signed char flag_argument_noalias;
+ signed char flag_asynchronous_unwind_tables;
+ signed char flag_branch_on_count_reg;
+ signed char flag_branch_probabilities;
+ signed char flag_branch_target_load_optimize;
+ signed char flag_branch_target_load_optimize2;
+ signed char flag_btr_bb_exclusive;
+ signed char flag_caller_saves;
+ signed char flag_no_common;
+ signed char flag_conserve_stack;
+ signed char flag_cprop_registers;
+ signed char flag_crossjumping;
+ signed char flag_cse_follow_jumps;
+ signed char flag_cx_fortran_rules;
+ signed char flag_cx_limited_range;
+ signed char flag_data_sections;
+ signed char flag_dce;
+ signed char flag_defer_pop;
+ signed char flag_delayed_branch;
+ signed char flag_delete_null_pointer_checks;
+ signed char flag_dse;
+ signed char flag_early_inlining;
+ signed char flag_exceptions;
+ signed char flag_expensive_optimizations;
+ signed char flag_finite_math_only;
+ signed char flag_float_store;
+ signed char flag_forward_propagate;
+ signed char flag_gcse;
+ signed char flag_gcse_after_reload;
+ signed char flag_gcse_las;
+ signed char flag_gcse_lm;
+ signed char flag_gcse_sm;
+ signed char flag_graphite_identity;
+ signed char flag_guess_branch_prob;
+ signed char flag_if_conversion;
+ signed char flag_if_conversion2;
+ signed char flag_inline_functions;
+ signed char flag_inline_functions_called_once;
+ signed char flag_inline_small_functions;
+ signed char flag_ipa_cp;
+ signed char flag_ipa_cp_clone;
+ signed char flag_ipa_matrix_reorg;
+ signed char flag_ipa_pta;
+ signed char flag_ipa_pure_const;
+ signed char flag_ipa_reference;
+ signed char flag_ipa_sra;
+ signed char flag_ipa_type_escape;
+ signed char flag_ivopts;
+ signed char flag_jump_tables;
+ signed char flag_loop_block;
+ signed char flag_loop_interchange;
+ signed char flag_loop_parallelize_all;
+ signed char flag_loop_strip_mine;
+ signed char flag_lto_report;
+ signed char flag_ltrans;
+ signed char flag_errno_math;
+ signed char flag_merge_constants;
+ signed char flag_modulo_sched;
+ signed char flag_move_loop_invariants;
+ signed char flag_non_call_exceptions;
+ signed char flag_omit_frame_pointer;
+ signed char flag_regmove;
+ signed char flag_optimize_sibling_calls;
+ signed char flag_pack_struct;
+ signed char flag_peel_loops;
+ signed char flag_no_peephole;
+ signed char flag_peephole2;
+ signed char flag_predictive_commoning;
+ signed char flag_prefetch_loop_arrays;
+ signed char flag_pcc_struct_return;
+ signed char flag_rename_registers;
+ signed char flag_reorder_blocks;
+ signed char flag_reorder_blocks_and_partition;
+ signed char flag_reorder_functions;
+ signed char flag_rerun_cse_after_loop;
+ signed char flag_resched_modulo_sched;
+ signed char flag_rounding_math;
+ signed char flag_sched_critical_path_heuristic;
+ signed char flag_sched_dep_count_heuristic;
+ signed char flag_sched_group_heuristic;
+ signed char flag_schedule_interblock;
+ signed char flag_sched_last_insn_heuristic;
+ signed char flag_sched_pressure;
+ signed char flag_sched_rank_heuristic;
+ signed char flag_schedule_speculative;
+ signed char flag_sched_spec_insn_heuristic;
+ signed char flag_schedule_speculative_load;
+ signed char flag_schedule_speculative_load_dangerous;
+ signed char flag_sched2_use_superblocks;
+ signed char flag_schedule_insns;
+ signed char flag_schedule_insns_after_reload;
+ signed char flag_section_anchors;
+ signed char flag_sel_sched_pipelining;
+ signed char flag_sel_sched_pipelining_outer_loops;
+ signed char flag_sel_sched_reschedule_pipelined;
+ signed char flag_selective_scheduling;
+ signed char flag_selective_scheduling2;
+ signed char flag_signaling_nans;
+ signed char flag_signed_zeros;
+ signed char flag_single_precision_constant;
+ signed char flag_split_ivs_in_unroller;
+ signed char flag_split_wide_types;
+ signed char flag_strict_aliasing;
+ signed char flag_thread_jumps;
+ signed char flag_toplevel_reorder;
+ signed char flag_trapping_math;
+ signed char flag_trapv;
+ signed char flag_tree_builtin_call_dce;
+ signed char flag_tree_ccp;
+ signed char flag_tree_ch;
+ signed char flag_tree_copy_prop;
+ signed char flag_tree_copyrename;
+ signed char flag_tree_cselim;
+ signed char flag_tree_dce;
+ signed char flag_tree_dom;
+ signed char flag_tree_dse;
+ signed char flag_tree_forwprop;
+ signed char flag_tree_fre;
+ signed char flag_tree_loop_distribution;
+ signed char flag_tree_loop_im;
+ signed char flag_tree_loop_ivcanon;
+ signed char flag_tree_loop_linear;
+ signed char flag_tree_loop_optimize;
+ signed char flag_tree_live_range_split;
+ signed char flag_tree_phiprop;
+ signed char flag_tree_pre;
+ signed char flag_tree_pta;
+ signed char flag_tree_reassoc;
+ signed char flag_tree_scev_cprop;
+ signed char flag_tree_sink;
+ signed char flag_tree_slp_vectorize;
+ signed char flag_tree_sra;
+ signed char flag_tree_switch_conversion;
+ signed char flag_tree_ter;
+ signed char flag_tree_vect_loop_version;
+ signed char flag_tree_vectorize;
+ signed char flag_tree_vrp;
+ signed char flag_unit_at_a_time;
+ signed char flag_unroll_all_loops;
+ signed char flag_unroll_loops;
+ signed char flag_unsafe_loop_optimizations;
+ signed char flag_unsafe_math_optimizations;
+ signed char flag_unswitch_loops;
+ signed char flag_unwind_tables;
+ signed char flag_var_tracking;
+ signed char flag_var_tracking_assignments;
+ signed char flag_var_tracking_assignments_toggle;
+ signed char flag_var_tracking_uninit;
+ signed char flag_variable_expansion_in_unroller;
+ signed char flag_vect_cost_model;
+ signed char flag_value_profile_transformations;
+ signed char flag_web;
+ signed char flag_whole_program;
+ signed char flag_wpa;
+ signed char flag_wrapv;
+};
+
+/* Structure to save/restore selected target specific options. */
+struct GTY(()) cl_target_option
+{
+ int ix86_isa_flags_explicit;
+ int target_flags_explicit;
+ int target_flags;
+ int ix86_isa_flags;
+ unsigned char arch;
+ unsigned char arch_specified;
+ unsigned char branch_cost;
+ unsigned char fpmath;
+ unsigned char schedule;
+ unsigned char tune;
+ unsigned char tune_defaulted;
+};
+
+
+/* Save optimization variables into a structure. */
+extern void cl_optimization_save (struct cl_optimization *);
+
+/* Restore optimization variables from a structure. */
+extern void cl_optimization_restore (struct cl_optimization *);
+
+/* Print optimization variables from a structure. */
+extern void cl_optimization_print (FILE *, int, struct cl_optimization *);
+
+/* Save selected option variables into a structure. */
+extern void cl_target_option_save (struct cl_target_option *);
+
+/* Restore selected option variables from a structure. */
+extern void cl_target_option_restore (struct cl_target_option *);
+
+/* Print target option variables from a structure. */
+extern void cl_target_option_print (FILE *, int, struct cl_target_option *);
+#endif
+
+#define MASK_128BIT_LONG_DOUBLE (1 << 0)
+#define OPTION_MASK_ISA_3DNOW (1 << 0)
+#define OPTION_MASK_ISA_3DNOW_A (1 << 1)
+#define OPTION_MASK_ISA_64BIT (1 << 2)
+#define MASK_80387 (1 << 1)
+#define OPTION_MASK_ISA_ABM (1 << 3)
+#define MASK_ACCUMULATE_OUTGOING_ARGS (1 << 2)
+#define OPTION_MASK_ISA_AES (1 << 4)
+#define MASK_ALIGN_DOUBLE (1 << 3)
+#define OPTION_MASK_ISA_AVX (1 << 5)
+#define MASK_CLD (1 << 4)
+#define OPTION_MASK_ISA_CRC32 (1 << 6)
+#define OPTION_MASK_ISA_CX16 (1 << 7)
+#define OPTION_MASK_ISA_FMA (1 << 8)
+#define OPTION_MASK_ISA_FMA4 (1 << 9)
+#define MASK_FLOAT_RETURNS (1 << 5)
+#define MASK_FUSED_MADD (1 << 6)
+#define MASK_IEEE_FP (1 << 7)
+#define MASK_INLINE_ALL_STRINGOPS (1 << 8)
+#define MASK_INLINE_STRINGOPS_DYNAMICALLY (1 << 9)
+#define OPTION_MASK_ISA_LWP (1 << 10)
+#define OPTION_MASK_ISA_MMX (1 << 11)
+#define OPTION_MASK_ISA_MOVBE (1 << 12)
+#define MASK_MS_BITFIELD_LAYOUT (1 << 10)
+#define MASK_NO_ALIGN_STRINGOPS (1 << 11)
+#define MASK_NO_FANCY_MATH_387 (1 << 12)
+#define MASK_NO_PUSH_ARGS (1 << 13)
+#define MASK_NO_RED_ZONE (1 << 14)
+#define MASK_OMIT_LEAF_FRAME_POINTER (1 << 15)
+#define OPTION_MASK_ISA_PCLMUL (1 << 13)
+#define OPTION_MASK_ISA_POPCNT (1 << 14)
+#define MASK_RECIP (1 << 16)
+#define MASK_RTD (1 << 17)
+#define OPTION_MASK_ISA_SAHF (1 << 15)
+#define OPTION_MASK_ISA_SSE (1 << 16)
+#define OPTION_MASK_ISA_SSE2 (1 << 17)
+#define OPTION_MASK_ISA_SSE3 (1 << 18)
+#define OPTION_MASK_ISA_SSE4_1 (1 << 19)
+#define OPTION_MASK_ISA_SSE4_2 (1 << 20)
+#define OPTION_MASK_ISA_SSE4A (1 << 21)
+#define MASK_SSEREGPARM (1 << 18)
+#define OPTION_MASK_ISA_SSSE3 (1 << 22)
+#define MASK_STACK_PROBE (1 << 19)
+#define MASK_TLS_DIRECT_SEG_REFS (1 << 20)
+#define OPTION_MASK_UCLIBC (1 << 0)
+#define OPTION_MASK_ISA_XOP (1 << 23)
+
+#define TARGET_128BIT_LONG_DOUBLE ((target_flags & MASK_128BIT_LONG_DOUBLE) != 0)
+#define OPTION_ISA_3DNOW ((ix86_isa_flags & OPTION_MASK_ISA_3DNOW) != 0)
+#define OPTION_ISA_3DNOW_A ((ix86_isa_flags & OPTION_MASK_ISA_3DNOW_A) != 0)
+#define OPTION_ISA_64BIT ((ix86_isa_flags & OPTION_MASK_ISA_64BIT) != 0)
+#define TARGET_80387 ((target_flags & MASK_80387) != 0)
+#define OPTION_ISA_ABM ((ix86_isa_flags & OPTION_MASK_ISA_ABM) != 0)
+#define TARGET_ACCUMULATE_OUTGOING_ARGS ((target_flags & MASK_ACCUMULATE_OUTGOING_ARGS) != 0)
+#define OPTION_ISA_AES ((ix86_isa_flags & OPTION_MASK_ISA_AES) != 0)
+#define TARGET_ALIGN_DOUBLE ((target_flags & MASK_ALIGN_DOUBLE) != 0)
+#define OPTION_ISA_AVX ((ix86_isa_flags & OPTION_MASK_ISA_AVX) != 0)
+#define TARGET_CLD ((target_flags & MASK_CLD) != 0)
+#define OPTION_ISA_CRC32 ((ix86_isa_flags & OPTION_MASK_ISA_CRC32) != 0)
+#define OPTION_ISA_CX16 ((ix86_isa_flags & OPTION_MASK_ISA_CX16) != 0)
+#define OPTION_ISA_FMA ((ix86_isa_flags & OPTION_MASK_ISA_FMA) != 0)
+#define OPTION_ISA_FMA4 ((ix86_isa_flags & OPTION_MASK_ISA_FMA4) != 0)
+#define TARGET_FLOAT_RETURNS ((target_flags & MASK_FLOAT_RETURNS) != 0)
+#define TARGET_FUSED_MADD ((target_flags & MASK_FUSED_MADD) != 0)
+#define TARGET_IEEE_FP ((target_flags & MASK_IEEE_FP) != 0)
+#define TARGET_INLINE_ALL_STRINGOPS ((target_flags & MASK_INLINE_ALL_STRINGOPS) != 0)
+#define TARGET_INLINE_STRINGOPS_DYNAMICALLY ((target_flags & MASK_INLINE_STRINGOPS_DYNAMICALLY) != 0)
+#define OPTION_ISA_LWP ((ix86_isa_flags & OPTION_MASK_ISA_LWP) != 0)
+#define OPTION_ISA_MMX ((ix86_isa_flags & OPTION_MASK_ISA_MMX) != 0)
+#define OPTION_ISA_MOVBE ((ix86_isa_flags & OPTION_MASK_ISA_MOVBE) != 0)
+#define TARGET_MS_BITFIELD_LAYOUT ((target_flags & MASK_MS_BITFIELD_LAYOUT) != 0)
+#define TARGET_NO_ALIGN_STRINGOPS ((target_flags & MASK_NO_ALIGN_STRINGOPS) != 0)
+#define TARGET_NO_FANCY_MATH_387 ((target_flags & MASK_NO_FANCY_MATH_387) != 0)
+#define TARGET_NO_PUSH_ARGS ((target_flags & MASK_NO_PUSH_ARGS) != 0)
+#define TARGET_NO_RED_ZONE ((target_flags & MASK_NO_RED_ZONE) != 0)
+#define TARGET_OMIT_LEAF_FRAME_POINTER ((target_flags & MASK_OMIT_LEAF_FRAME_POINTER) != 0)
+#define OPTION_ISA_PCLMUL ((ix86_isa_flags & OPTION_MASK_ISA_PCLMUL) != 0)
+#define OPTION_ISA_POPCNT ((ix86_isa_flags & OPTION_MASK_ISA_POPCNT) != 0)
+#define TARGET_RECIP ((target_flags & MASK_RECIP) != 0)
+#define TARGET_RTD ((target_flags & MASK_RTD) != 0)
+#define OPTION_ISA_SAHF ((ix86_isa_flags & OPTION_MASK_ISA_SAHF) != 0)
+#define OPTION_ISA_SSE ((ix86_isa_flags & OPTION_MASK_ISA_SSE) != 0)
+#define OPTION_ISA_SSE2 ((ix86_isa_flags & OPTION_MASK_ISA_SSE2) != 0)
+#define OPTION_ISA_SSE3 ((ix86_isa_flags & OPTION_MASK_ISA_SSE3) != 0)
+#define OPTION_ISA_SSE4_1 ((ix86_isa_flags & OPTION_MASK_ISA_SSE4_1) != 0)
+#define OPTION_ISA_SSE4_2 ((ix86_isa_flags & OPTION_MASK_ISA_SSE4_2) != 0)
+#define OPTION_ISA_SSE4A ((ix86_isa_flags & OPTION_MASK_ISA_SSE4A) != 0)
+#define TARGET_SSEREGPARM ((target_flags & MASK_SSEREGPARM) != 0)
+#define OPTION_ISA_SSSE3 ((ix86_isa_flags & OPTION_MASK_ISA_SSSE3) != 0)
+#define TARGET_STACK_PROBE ((target_flags & MASK_STACK_PROBE) != 0)
+#define TARGET_TLS_DIRECT_SEG_REFS ((target_flags & MASK_TLS_DIRECT_SEG_REFS) != 0)
+#define OPTION_UCLIBC ((linux_uclibc & OPTION_MASK_UCLIBC) != 0)
+#define OPTION_ISA_XOP ((ix86_isa_flags & OPTION_MASK_ISA_XOP) != 0)
+
+#define TARGET_ALIGN_STRINGOPS ((target_flags & MASK_NO_ALIGN_STRINGOPS) == 0)
+#define TARGET_USE_FANCY_MATH_387 ((target_flags & MASK_NO_FANCY_MATH_387) == 0)
+#define OPTION_GLIBC ((linux_uclibc & OPTION_MASK_UCLIBC) == 0)
+#define TARGET_PUSH_ARGS ((target_flags & MASK_NO_PUSH_ARGS) == 0)
+#define TARGET_RED_ZONE ((target_flags & MASK_NO_RED_ZONE) == 0)
+
+#define CL_Ada (1 << 0)
+#define CL_C (1 << 1)
+#define CL_CXX (1 << 2)
+#define CL_Fortran (1 << 3)
+#define CL_Java (1 << 4)
+#define CL_LTO (1 << 5)
+#define CL_ObjC (1 << 6)
+#define CL_ObjCXX (1 << 7)
+#define CL_LANG_ALL ((1 << 8) - 1)
+
+enum opt_code
+{
+ OPT__help, /* --help */
+ OPT__help_, /* --help= */
+ OPT__output_pch_, /* --output-pch= */
+ OPT__param, /* --param */
+ OPT__target_help, /* --target-help */
+ OPT__version, /* --version */
+ OPT_A, /* -A */
+ OPT_C, /* -C */
+ OPT_CC, /* -CC */
+ OPT_D, /* -D */
+ OPT_E, /* -E */
+ OPT_F, /* -F */
+ OPT_G, /* -G */
+ OPT_H, /* -H */
+ OPT_I, /* -I */
+ OPT_J, /* -J */
+ OPT_M, /* -M */
+ OPT_MD, /* -MD */
+ OPT_MD_, /* -MD_ */
+ OPT_MF, /* -MF */
+ OPT_MG, /* -MG */
+ OPT_MM, /* -MM */
+ OPT_MMD, /* -MMD */
+ OPT_MMD_, /* -MMD_ */
+ OPT_MP, /* -MP */
+ OPT_MQ, /* -MQ */
+ OPT_MT, /* -MT */
+ OPT_O, /* -O */
+ OPT_Os, /* -Os */
+ OPT_P, /* -P */
+ OPT_U, /* -U */
+ OPT_W, /* -W */
+ OPT_Wabi, /* -Wabi */
+ OPT_Waddress, /* -Waddress */
+ OPT_Waggregate_return, /* -Waggregate-return */
+ OPT_Waliasing, /* -Waliasing */
+ OPT_Walign_commons, /* -Walign-commons */
+ OPT_Wall, /* -Wall */
+ OPT_Wall_deprecation, /* -Wall-deprecation */
+ OPT_Wall_javadoc, /* -Wall-javadoc */
+ OPT_Wampersand, /* -Wampersand */
+ OPT_Warray_bounds, /* -Warray-bounds */
+ OPT_Warray_temporaries, /* -Warray-temporaries */
+ OPT_Wassert_identifier, /* -Wassert-identifier */
+ OPT_Wassign_intercept, /* -Wassign-intercept */
+ OPT_Wattributes, /* -Wattributes */
+ OPT_Wbad_function_cast, /* -Wbad-function-cast */
+ OPT_Wboxing, /* -Wboxing */
+ OPT_Wbuiltin_macro_redefined, /* -Wbuiltin-macro-redefined */
+ OPT_Wc___compat, /* -Wc++-compat */
+ OPT_Wc__0x_compat, /* -Wc++0x-compat */
+ OPT_Wcast_align, /* -Wcast-align */
+ OPT_Wcast_qual, /* -Wcast-qual */
+ OPT_Wchar_concat, /* -Wchar-concat */
+ OPT_Wchar_subscripts, /* -Wchar-subscripts */
+ OPT_Wcharacter_truncation, /* -Wcharacter-truncation */
+ OPT_Wclobbered, /* -Wclobbered */
+ OPT_Wcomment, /* -Wcomment */
+ OPT_Wcomments, /* -Wcomments */
+ OPT_Wcondition_assign, /* -Wcondition-assign */
+ OPT_Wconstructor_name, /* -Wconstructor-name */
+ OPT_Wconversion, /* -Wconversion */
+ OPT_Wconversion_null, /* -Wconversion-null */
+ OPT_Wcoverage_mismatch, /* -Wcoverage-mismatch */
+ OPT_Wctor_dtor_privacy, /* -Wctor-dtor-privacy */
+ OPT_Wdeclaration_after_statement, /* -Wdeclaration-after-statement */
+ OPT_Wdep_ann, /* -Wdep-ann */
+ OPT_Wdeprecated, /* -Wdeprecated */
+ OPT_Wdeprecated_declarations, /* -Wdeprecated-declarations */
+ OPT_Wdisabled_optimization, /* -Wdisabled-optimization */
+ OPT_Wdiscouraged, /* -Wdiscouraged */
+ OPT_Wdiv_by_zero, /* -Wdiv-by-zero */
+ OPT_Weffc__, /* -Weffc++ */
+ OPT_Wempty_block, /* -Wempty-block */
+ OPT_Wempty_body, /* -Wempty-body */
+ OPT_Wendif_labels, /* -Wendif-labels */
+ OPT_Wenum_compare, /* -Wenum-compare */
+ OPT_Wenum_identifier, /* -Wenum-identifier */
+ OPT_Wenum_switch, /* -Wenum-switch */
+ OPT_Werror, /* -Werror */
+ OPT_Werror_implicit_function_declaration, /* -Werror-implicit-function-declaration */
+ OPT_Werror_, /* -Werror= */
+ OPT_Wextra, /* -Wextra */
+ OPT_Wextraneous_semicolon, /* -Wextraneous-semicolon */
+ OPT_Wfallthrough, /* -Wfallthrough */
+ OPT_Wfatal_errors, /* -Wfatal-errors */
+ OPT_Wfield_hiding, /* -Wfield-hiding */
+ OPT_Wfinal_bound, /* -Wfinal-bound */
+ OPT_Wfinally, /* -Wfinally */
+ OPT_Wfloat_equal, /* -Wfloat-equal */
+ OPT_Wforbidden, /* -Wforbidden */
+ OPT_Wformat, /* -Wformat */
+ OPT_Wformat_contains_nul, /* -Wformat-contains-nul */
+ OPT_Wformat_extra_args, /* -Wformat-extra-args */
+ OPT_Wformat_nonliteral, /* -Wformat-nonliteral */
+ OPT_Wformat_security, /* -Wformat-security */
+ OPT_Wformat_y2k, /* -Wformat-y2k */
+ OPT_Wformat_zero_length, /* -Wformat-zero-length */
+ OPT_Wformat_, /* -Wformat= */
+ OPT_Wframe_larger_than_, /* -Wframe-larger-than= */
+ OPT_Whiding, /* -Whiding */
+ OPT_Wignored_qualifiers, /* -Wignored-qualifiers */
+ OPT_Wimplicit, /* -Wimplicit */
+ OPT_Wimplicit_function_declaration, /* -Wimplicit-function-declaration */
+ OPT_Wimplicit_int, /* -Wimplicit-int */
+ OPT_Wimplicit_interface, /* -Wimplicit-interface */
+ OPT_Wimplicit_procedure, /* -Wimplicit-procedure */
+ OPT_Wimport, /* -Wimport */
+ OPT_Windirect_static, /* -Windirect-static */
+ OPT_Winit_self, /* -Winit-self */
+ OPT_Winline, /* -Winline */
+ OPT_Wint_to_pointer_cast, /* -Wint-to-pointer-cast */
+ OPT_Wintf_annotation, /* -Wintf-annotation */
+ OPT_Wintf_non_inherited, /* -Wintf-non-inherited */
+ OPT_Wintrinsic_shadow, /* -Wintrinsic-shadow */
+ OPT_Wintrinsics_std, /* -Wintrinsics-std */
+ OPT_Winvalid_offsetof, /* -Winvalid-offsetof */
+ OPT_Winvalid_pch, /* -Winvalid-pch */
+ OPT_Wjavadoc, /* -Wjavadoc */
+ OPT_Wjump_misses_init, /* -Wjump-misses-init */
+ OPT_Wlarger_than_, /* -Wlarger-than- */
+ OPT_Wlarger_than_eq, /* -Wlarger-than= */
+ OPT_Wline_truncation, /* -Wline-truncation */
+ OPT_Wlocal_hiding, /* -Wlocal-hiding */
+ OPT_Wlogical_op, /* -Wlogical-op */
+ OPT_Wlong_long, /* -Wlong-long */
+ OPT_Wmain, /* -Wmain */
+ OPT_Wmasked_catch_block, /* -Wmasked-catch-block */
+ OPT_Wmissing_braces, /* -Wmissing-braces */
+ OPT_Wmissing_declarations, /* -Wmissing-declarations */
+ OPT_Wmissing_field_initializers, /* -Wmissing-field-initializers */
+ OPT_Wmissing_format_attribute, /* -Wmissing-format-attribute */
+ OPT_Wmissing_include_dirs, /* -Wmissing-include-dirs */
+ OPT_Wmissing_noreturn, /* -Wmissing-noreturn */
+ OPT_Wmissing_parameter_type, /* -Wmissing-parameter-type */
+ OPT_Wmissing_prototypes, /* -Wmissing-prototypes */
+ OPT_Wmudflap, /* -Wmudflap */
+ OPT_Wmultichar, /* -Wmultichar */
+ OPT_Wnested_externs, /* -Wnested-externs */
+ OPT_Wnls, /* -Wnls */
+ OPT_Wno_effect_assign, /* -Wno-effect-assign */
+ OPT_Wnon_template_friend, /* -Wnon-template-friend */
+ OPT_Wnon_virtual_dtor, /* -Wnon-virtual-dtor */
+ OPT_Wnonnull, /* -Wnonnull */
+ OPT_Wnormalized_, /* -Wnormalized= */
+ OPT_Wnull, /* -Wnull */
+ OPT_Wold_style_cast, /* -Wold-style-cast */
+ OPT_Wold_style_declaration, /* -Wold-style-declaration */
+ OPT_Wold_style_definition, /* -Wold-style-definition */
+ OPT_Wout_of_date, /* -Wout-of-date */
+ OPT_Wover_ann, /* -Wover-ann */
+ OPT_Woverflow, /* -Woverflow */
+ OPT_Woverlength_strings, /* -Woverlength-strings */
+ OPT_Woverloaded_virtual, /* -Woverloaded-virtual */
+ OPT_Woverride_init, /* -Woverride-init */
+ OPT_Wpacked, /* -Wpacked */
+ OPT_Wpacked_bitfield_compat, /* -Wpacked-bitfield-compat */
+ OPT_Wpadded, /* -Wpadded */
+ OPT_Wparam_assign, /* -Wparam-assign */
+ OPT_Wparentheses, /* -Wparentheses */
+ OPT_Wpkg_default_method, /* -Wpkg-default-method */
+ OPT_Wpmf_conversions, /* -Wpmf-conversions */
+ OPT_Wpointer_arith, /* -Wpointer-arith */
+ OPT_Wpointer_sign, /* -Wpointer-sign */
+ OPT_Wpointer_to_int_cast, /* -Wpointer-to-int-cast */
+ OPT_Wpragmas, /* -Wpragmas */
+ OPT_Wprotocol, /* -Wprotocol */
+ OPT_Wpsabi, /* -Wpsabi */
+ OPT_Wraw, /* -Wraw */
+ OPT_Wredundant_decls, /* -Wredundant-decls */
+ OPT_Wredundant_modifiers, /* -Wredundant-modifiers */
+ OPT_Wreorder, /* -Wreorder */
+ OPT_Wreturn_type, /* -Wreturn-type */
+ OPT_Wselector, /* -Wselector */
+ OPT_Wsequence_point, /* -Wsequence-point */
+ OPT_Wserial, /* -Wserial */
+ OPT_Wshadow, /* -Wshadow */
+ OPT_Wsign_compare, /* -Wsign-compare */
+ OPT_Wsign_conversion, /* -Wsign-conversion */
+ OPT_Wsign_promo, /* -Wsign-promo */
+ OPT_Wspecial_param_hiding, /* -Wspecial-param-hiding */
+ OPT_Wstack_protector, /* -Wstack-protector */
+ OPT_Wstatic_access, /* -Wstatic-access */
+ OPT_Wstatic_receiver, /* -Wstatic-receiver */
+ OPT_Wstrict_aliasing, /* -Wstrict-aliasing */
+ OPT_Wstrict_aliasing_, /* -Wstrict-aliasing= */
+ OPT_Wstrict_null_sentinel, /* -Wstrict-null-sentinel */
+ OPT_Wstrict_overflow, /* -Wstrict-overflow */
+ OPT_Wstrict_overflow_, /* -Wstrict-overflow= */
+ OPT_Wstrict_prototypes, /* -Wstrict-prototypes */
+ OPT_Wstrict_selector_match, /* -Wstrict-selector-match */
+ OPT_Wsuppress, /* -Wsuppress */
+ OPT_Wsurprising, /* -Wsurprising */
+ OPT_Wswitch, /* -Wswitch */
+ OPT_Wswitch_default, /* -Wswitch-default */
+ OPT_Wswitch_enum, /* -Wswitch-enum */
+ OPT_Wsync_nand, /* -Wsync-nand */
+ OPT_Wsynth, /* -Wsynth */
+ OPT_Wsynthetic_access, /* -Wsynthetic-access */
+ OPT_Wsystem_headers, /* -Wsystem-headers */
+ OPT_Wtabs, /* -Wtabs */
+ OPT_Wtasks, /* -Wtasks */
+ OPT_Wtraditional, /* -Wtraditional */
+ OPT_Wtraditional_conversion, /* -Wtraditional-conversion */
+ OPT_Wtrigraphs, /* -Wtrigraphs */
+ OPT_Wtype_hiding, /* -Wtype-hiding */
+ OPT_Wtype_limits, /* -Wtype-limits */
+ OPT_Wuncheck, /* -Wuncheck */
+ OPT_Wundeclared_selector, /* -Wundeclared-selector */
+ OPT_Wundef, /* -Wundef */
+ OPT_Wunderflow, /* -Wunderflow */
+ OPT_Wuninitialized, /* -Wuninitialized */
+ OPT_Wunknown_pragmas, /* -Wunknown-pragmas */
+ OPT_Wunnecessary_else, /* -Wunnecessary-else */
+ OPT_Wunqualified_field, /* -Wunqualified-field */
+ OPT_Wunreachable_code, /* -Wunreachable-code */
+ OPT_Wunsafe_loop_optimizations, /* -Wunsafe-loop-optimizations */
+ OPT_Wunsuffixed_float_constants, /* -Wunsuffixed-float-constants */
+ OPT_Wunused, /* -Wunused */
+ OPT_Wunused_argument, /* -Wunused-argument */
+ OPT_Wunused_function, /* -Wunused-function */
+ OPT_Wunused_import, /* -Wunused-import */
+ OPT_Wunused_label, /* -Wunused-label */
+ OPT_Wunused_local, /* -Wunused-local */
+ OPT_Wunused_macros, /* -Wunused-macros */
+ OPT_Wunused_parameter, /* -Wunused-parameter */
+ OPT_Wunused_private, /* -Wunused-private */
+ OPT_Wunused_result, /* -Wunused-result */
+ OPT_Wunused_thrown, /* -Wunused-thrown */
+ OPT_Wunused_value, /* -Wunused-value */
+ OPT_Wunused_variable, /* -Wunused-variable */
+ OPT_Wuseless_type_check, /* -Wuseless-type-check */
+ OPT_Wvarargs_cast, /* -Wvarargs-cast */
+ OPT_Wvariadic_macros, /* -Wvariadic-macros */
+ OPT_Wvla, /* -Wvla */
+ OPT_Wvolatile_register_var, /* -Wvolatile-register-var */
+ OPT_Wwarning_token, /* -Wwarning-token */
+ OPT_Wwrite_strings, /* -Wwrite-strings */
+ OPT_ansi, /* -ansi */
+ OPT_aux_info, /* -aux-info */
+ OPT_aux_info_, /* -aux-info= */
+ OPT_auxbase, /* -auxbase */
+ OPT_auxbase_strip, /* -auxbase-strip */
+ OPT_cpp, /* -cpp */
+ OPT_d, /* -d */
+ OPT_dumpbase, /* -dumpbase */
+ OPT_dumpdir, /* -dumpdir */
+ OPT_fCLASSPATH_, /* -fCLASSPATH= */
+ OPT_fPIC, /* -fPIC */
+ OPT_fPIE, /* -fPIE */
+ OPT_fRTS_, /* -fRTS= */
+ OPT_fabi_version_, /* -fabi-version= */
+ OPT_faccess_control, /* -faccess-control */
+ OPT_falign_commons, /* -falign-commons */
+ OPT_falign_functions, /* -falign-functions */
+ OPT_falign_functions_, /* -falign-functions= */
+ OPT_falign_jumps, /* -falign-jumps */
+ OPT_falign_jumps_, /* -falign-jumps= */
+ OPT_falign_labels, /* -falign-labels */
+ OPT_falign_labels_, /* -falign-labels= */
+ OPT_falign_loops, /* -falign-loops */
+ OPT_falign_loops_, /* -falign-loops= */
+ OPT_fall_intrinsics, /* -fall-intrinsics */
+ OPT_fall_virtual, /* -fall-virtual */
+ OPT_fallow_leading_underscore, /* -fallow-leading-underscore */
+ OPT_falt_external_templates, /* -falt-external-templates */
+ OPT_fargument_alias, /* -fargument-alias */
+ OPT_fargument_noalias, /* -fargument-noalias */
+ OPT_fargument_noalias_anything, /* -fargument-noalias-anything */
+ OPT_fargument_noalias_global, /* -fargument-noalias-global */
+ OPT_fasm, /* -fasm */
+ OPT_fassert, /* -fassert */
+ OPT_fassociative_math, /* -fassociative-math */
+ OPT_fassume_compiled, /* -fassume-compiled */
+ OPT_fassume_compiled_, /* -fassume-compiled= */
+ OPT_fasynchronous_unwind_tables, /* -fasynchronous-unwind-tables */
+ OPT_fauto_inc_dec, /* -fauto-inc-dec */
+ OPT_fautomatic, /* -fautomatic */
+ OPT_faux_classpath, /* -faux-classpath */
+ OPT_fbackslash, /* -fbackslash */
+ OPT_fbacktrace, /* -fbacktrace */
+ OPT_fblas_matmul_limit_, /* -fblas-matmul-limit= */
+ OPT_fbootclasspath_, /* -fbootclasspath= */
+ OPT_fbootstrap_classes, /* -fbootstrap-classes */
+ OPT_fbounds_check, /* -fbounds-check */
+ OPT_fbranch_count_reg, /* -fbranch-count-reg */
+ OPT_fbranch_probabilities, /* -fbranch-probabilities */
+ OPT_fbranch_target_load_optimize, /* -fbranch-target-load-optimize */
+ OPT_fbranch_target_load_optimize2, /* -fbranch-target-load-optimize2 */
+ OPT_fbtr_bb_exclusive, /* -fbtr-bb-exclusive */
+ OPT_fbuiltin, /* -fbuiltin */
+ OPT_fbuiltin_, /* -fbuiltin- */
+ OPT_fcall_saved_, /* -fcall-saved- */
+ OPT_fcall_used_, /* -fcall-used- */
+ OPT_fcaller_saves, /* -fcaller-saves */
+ OPT_fcheck_array_temporaries, /* -fcheck-array-temporaries */
+ OPT_fcheck_data_deps, /* -fcheck-data-deps */
+ OPT_fcheck_new, /* -fcheck-new */
+ OPT_fcheck_references, /* -fcheck-references */
+ OPT_fcheck_, /* -fcheck= */
+ OPT_fclasspath_, /* -fclasspath= */
+ OPT_fcommon, /* -fcommon */
+ OPT_fcompare_debug_second, /* -fcompare-debug-second */
+ OPT_fcompare_debug_, /* -fcompare-debug= */
+ OPT_fcompile_resource_, /* -fcompile-resource= */
+ OPT_fcond_mismatch, /* -fcond-mismatch */
+ OPT_fconserve_space, /* -fconserve-space */
+ OPT_fconserve_stack, /* -fconserve-stack */
+ OPT_fconstant_string_class_, /* -fconstant-string-class= */
+ OPT_fconvert_big_endian, /* -fconvert=big-endian */
+ OPT_fconvert_little_endian, /* -fconvert=little-endian */
+ OPT_fconvert_native, /* -fconvert=native */
+ OPT_fconvert_swap, /* -fconvert=swap */
+ OPT_fcprop_registers, /* -fcprop-registers */
+ OPT_fcray_pointer, /* -fcray-pointer */
+ OPT_fcrossjumping, /* -fcrossjumping */
+ OPT_fcse_follow_jumps, /* -fcse-follow-jumps */
+ OPT_fcse_skip_blocks, /* -fcse-skip-blocks */
+ OPT_fcx_fortran_rules, /* -fcx-fortran-rules */
+ OPT_fcx_limited_range, /* -fcx-limited-range */
+ OPT_fd_lines_as_code, /* -fd-lines-as-code */
+ OPT_fd_lines_as_comments, /* -fd-lines-as-comments */
+ OPT_fdata_sections, /* -fdata-sections */
+ OPT_fdbg_cnt_list, /* -fdbg-cnt-list */
+ OPT_fdbg_cnt_, /* -fdbg-cnt= */
+ OPT_fdce, /* -fdce */
+ OPT_fdebug_prefix_map_, /* -fdebug-prefix-map= */
+ OPT_fdeduce_init_list, /* -fdeduce-init-list */
+ OPT_fdefault_double_8, /* -fdefault-double-8 */
+ OPT_fdefault_inline, /* -fdefault-inline */
+ OPT_fdefault_integer_8, /* -fdefault-integer-8 */
+ OPT_fdefault_real_8, /* -fdefault-real-8 */
+ OPT_fdefer_pop, /* -fdefer-pop */
+ OPT_fdelayed_branch, /* -fdelayed-branch */
+ OPT_fdelete_null_pointer_checks, /* -fdelete-null-pointer-checks */
+ OPT_fdiagnostics_show_location_, /* -fdiagnostics-show-location= */
+ OPT_fdiagnostics_show_option, /* -fdiagnostics-show-option */
+ OPT_fdirectives_only, /* -fdirectives-only */
+ OPT_fdisable_assertions, /* -fdisable-assertions */
+ OPT_fdisable_assertions_, /* -fdisable-assertions= */
+ OPT_fdollar_ok, /* -fdollar-ok */
+ OPT_fdollars_in_identifiers, /* -fdollars-in-identifiers */
+ OPT_fdse, /* -fdse */
+ OPT_fdump_, /* -fdump- */
+ OPT_fdump_core, /* -fdump-core */
+ OPT_fdump_final_insns_, /* -fdump-final-insns= */
+ OPT_fdump_noaddr, /* -fdump-noaddr */
+ OPT_fdump_parse_tree, /* -fdump-parse-tree */
+ OPT_fdump_unnumbered, /* -fdump-unnumbered */
+ OPT_fdump_unnumbered_links, /* -fdump-unnumbered-links */
+ OPT_fdwarf2_cfi_asm, /* -fdwarf2-cfi-asm */
+ OPT_fearly_inlining, /* -fearly-inlining */
+ OPT_felide_constructors, /* -felide-constructors */
+ OPT_feliminate_dwarf2_dups, /* -feliminate-dwarf2-dups */
+ OPT_feliminate_unused_debug_symbols, /* -feliminate-unused-debug-symbols */
+ OPT_feliminate_unused_debug_types, /* -feliminate-unused-debug-types */
+ OPT_femit_class_debug_always, /* -femit-class-debug-always */
+ OPT_femit_class_file, /* -femit-class-file */
+ OPT_femit_class_files, /* -femit-class-files */
+ OPT_femit_struct_debug_baseonly, /* -femit-struct-debug-baseonly */
+ OPT_femit_struct_debug_detailed_, /* -femit-struct-debug-detailed= */
+ OPT_femit_struct_debug_reduced, /* -femit-struct-debug-reduced */
+ OPT_fenable_assertions, /* -fenable-assertions */
+ OPT_fenable_assertions_, /* -fenable-assertions= */
+ OPT_fenable_icf_debug, /* -fenable-icf-debug */
+ OPT_fencoding_, /* -fencoding= */
+ OPT_fenforce_eh_specs, /* -fenforce-eh-specs */
+ OPT_fenum_int_equiv, /* -fenum-int-equiv */
+ OPT_fexceptions, /* -fexceptions */
+ OPT_fexcess_precision_, /* -fexcess-precision= */
+ OPT_fexec_charset_, /* -fexec-charset= */
+ OPT_fexpensive_optimizations, /* -fexpensive-optimizations */
+ OPT_fextdirs_, /* -fextdirs= */
+ OPT_fextended_identifiers, /* -fextended-identifiers */
+ OPT_fexternal_blas, /* -fexternal-blas */
+ OPT_fexternal_templates, /* -fexternal-templates */
+ OPT_ff2c, /* -ff2c */
+ OPT_ffast_math, /* -ffast-math */
+ OPT_ffilelist_file, /* -ffilelist-file */
+ OPT_ffinite_math_only, /* -ffinite-math-only */
+ OPT_ffixed_, /* -ffixed- */
+ OPT_ffixed_form, /* -ffixed-form */
+ OPT_ffixed_line_length_, /* -ffixed-line-length- */
+ OPT_ffixed_line_length_none, /* -ffixed-line-length-none */
+ OPT_ffloat_store, /* -ffloat-store */
+ OPT_ffor_scope, /* -ffor-scope */
+ OPT_fforce_addr, /* -fforce-addr */
+ OPT_fforce_classes_archive_check, /* -fforce-classes-archive-check */
+ OPT_fforward_propagate, /* -fforward-propagate */
+ OPT_ffpe_trap_, /* -ffpe-trap= */
+ OPT_ffree_form, /* -ffree-form */
+ OPT_ffree_line_length_, /* -ffree-line-length- */
+ OPT_ffree_line_length_none, /* -ffree-line-length-none */
+ OPT_ffreestanding, /* -ffreestanding */
+ OPT_ffriend_injection, /* -ffriend-injection */
+ OPT_ffunction_cse, /* -ffunction-cse */
+ OPT_ffunction_sections, /* -ffunction-sections */
+ OPT_fgcse, /* -fgcse */
+ OPT_fgcse_after_reload, /* -fgcse-after-reload */
+ OPT_fgcse_las, /* -fgcse-las */
+ OPT_fgcse_lm, /* -fgcse-lm */
+ OPT_fgcse_sm, /* -fgcse-sm */
+ OPT_fgnu_keywords, /* -fgnu-keywords */
+ OPT_fgnu_runtime, /* -fgnu-runtime */
+ OPT_fgnu89_inline, /* -fgnu89-inline */
+ OPT_fgraphite, /* -fgraphite */
+ OPT_fgraphite_identity, /* -fgraphite-identity */
+ OPT_fguess_branch_probability, /* -fguess-branch-probability */
+ OPT_fguiding_decls, /* -fguiding-decls */
+ OPT_fhandle_exceptions, /* -fhandle-exceptions */
+ OPT_fhash_synchronization, /* -fhash-synchronization */
+ OPT_fhelp, /* -fhelp */
+ OPT_fhelp_, /* -fhelp= */
+ OPT_fhonor_std, /* -fhonor-std */
+ OPT_fhosted, /* -fhosted */
+ OPT_fhuge_objects, /* -fhuge-objects */
+ OPT_fident, /* -fident */
+ OPT_fif_conversion, /* -fif-conversion */
+ OPT_fif_conversion2, /* -fif-conversion2 */
+ OPT_fimplement_inlines, /* -fimplement-inlines */
+ OPT_fimplicit_inline_templates, /* -fimplicit-inline-templates */
+ OPT_fimplicit_none, /* -fimplicit-none */
+ OPT_fimplicit_templates, /* -fimplicit-templates */
+ OPT_findirect_classes, /* -findirect-classes */
+ OPT_findirect_dispatch, /* -findirect-dispatch */
+ OPT_findirect_inlining, /* -findirect-inlining */
+ OPT_finhibit_size_directive, /* -finhibit-size-directive */
+ OPT_finit_character_, /* -finit-character= */
+ OPT_finit_integer_, /* -finit-integer= */
+ OPT_finit_local_zero, /* -finit-local-zero */
+ OPT_finit_logical_, /* -finit-logical= */
+ OPT_finit_real_, /* -finit-real= */
+ OPT_finline, /* -finline */
+ OPT_finline_functions, /* -finline-functions */
+ OPT_finline_functions_called_once, /* -finline-functions-called-once */
+ OPT_finline_limit_, /* -finline-limit- */
+ OPT_finline_limit_eq, /* -finline-limit= */
+ OPT_finline_small_functions, /* -finline-small-functions */
+ OPT_finput_charset_, /* -finput-charset= */
+ OPT_finstrument_functions, /* -finstrument-functions */
+ OPT_finstrument_functions_exclude_file_list_,/* -finstrument-functions-exclude-file-list= */
+ OPT_finstrument_functions_exclude_function_list_,/* -finstrument-functions-exclude-function-list= */
+ OPT_fintrinsic_modules_path, /* -fintrinsic-modules-path */
+ OPT_fipa_cp, /* -fipa-cp */
+ OPT_fipa_cp_clone, /* -fipa-cp-clone */
+ OPT_fipa_matrix_reorg, /* -fipa-matrix-reorg */
+ OPT_fipa_pta, /* -fipa-pta */
+ OPT_fipa_pure_const, /* -fipa-pure-const */
+ OPT_fipa_reference, /* -fipa-reference */
+ OPT_fipa_sra, /* -fipa-sra */
+ OPT_fipa_struct_reorg, /* -fipa-struct-reorg */
+ OPT_fipa_type_escape, /* -fipa-type-escape */
+ OPT_fira_algorithm_, /* -fira-algorithm= */
+ OPT_fira_coalesce, /* -fira-coalesce */
+ OPT_fira_loop_pressure, /* -fira-loop-pressure */
+ OPT_fira_region_, /* -fira-region= */
+ OPT_fira_share_save_slots, /* -fira-share-save-slots */
+ OPT_fira_share_spill_slots, /* -fira-share-spill-slots */
+ OPT_fira_verbose_, /* -fira-verbose= */
+ OPT_fivopts, /* -fivopts */
+ OPT_fjni, /* -fjni */
+ OPT_fjump_tables, /* -fjump-tables */
+ OPT_fkeep_inline_functions, /* -fkeep-inline-functions */
+ OPT_fkeep_static_consts, /* -fkeep-static-consts */
+ OPT_flabels_ok, /* -flabels-ok */
+ OPT_flax_vector_conversions, /* -flax-vector-conversions */
+ OPT_fleading_underscore, /* -fleading-underscore */
+ OPT_floop_block, /* -floop-block */
+ OPT_floop_interchange, /* -floop-interchange */
+ OPT_floop_optimize, /* -floop-optimize */
+ OPT_floop_parallelize_all, /* -floop-parallelize-all */
+ OPT_floop_strip_mine, /* -floop-strip-mine */
+ OPT_flto, /* -flto */
+ OPT_flto_compression_level_, /* -flto-compression-level= */
+ OPT_flto_report, /* -flto-report */
+ OPT_fltrans, /* -fltrans */
+ OPT_fltrans_output_list_, /* -fltrans-output-list= */
+ OPT_fmath_errno, /* -fmath-errno */
+ OPT_fmax_array_constructor_, /* -fmax-array-constructor= */
+ OPT_fmax_errors_, /* -fmax-errors= */
+ OPT_fmax_identifier_length_, /* -fmax-identifier-length= */
+ OPT_fmax_stack_var_size_, /* -fmax-stack-var-size= */
+ OPT_fmax_subrecord_length_, /* -fmax-subrecord-length= */
+ OPT_fmem_report, /* -fmem-report */
+ OPT_fmerge_all_constants, /* -fmerge-all-constants */
+ OPT_fmerge_constants, /* -fmerge-constants */
+ OPT_fmerge_debug_strings, /* -fmerge-debug-strings */
+ OPT_fmessage_length_, /* -fmessage-length= */
+ OPT_fmodule_private, /* -fmodule-private */
+ OPT_fmodulo_sched, /* -fmodulo-sched */
+ OPT_fmodulo_sched_allow_regmoves, /* -fmodulo-sched-allow-regmoves */
+ OPT_fmove_loop_invariants, /* -fmove-loop-invariants */
+ OPT_fms_extensions, /* -fms-extensions */
+ OPT_fmudflap, /* -fmudflap */
+ OPT_fmudflapir, /* -fmudflapir */
+ OPT_fmudflapth, /* -fmudflapth */
+ OPT_fname_mangling_version_, /* -fname-mangling-version- */
+ OPT_fnew_abi, /* -fnew-abi */
+ OPT_fnext_runtime, /* -fnext-runtime */
+ OPT_fnil_receivers, /* -fnil-receivers */
+ OPT_fnon_call_exceptions, /* -fnon-call-exceptions */
+ OPT_fnonansi_builtins, /* -fnonansi-builtins */
+ OPT_fnonnull_objects, /* -fnonnull-objects */
+ OPT_fobjc_call_cxx_cdtors, /* -fobjc-call-cxx-cdtors */
+ OPT_fobjc_direct_dispatch, /* -fobjc-direct-dispatch */
+ OPT_fobjc_exceptions, /* -fobjc-exceptions */
+ OPT_fobjc_gc, /* -fobjc-gc */
+ OPT_fobjc_sjlj_exceptions, /* -fobjc-sjlj-exceptions */
+ OPT_fomit_frame_pointer, /* -fomit-frame-pointer */
+ OPT_fopenmp, /* -fopenmp */
+ OPT_foperator_names, /* -foperator-names */
+ OPT_foptimize_register_move, /* -foptimize-register-move */
+ OPT_foptimize_sibling_calls, /* -foptimize-sibling-calls */
+ OPT_foptimize_static_class_initialization, /* -foptimize-static-class-initialization */
+ OPT_foptional_diags, /* -foptional-diags */
+ OPT_foutput_class_dir_, /* -foutput-class-dir= */
+ OPT_fpack_derived, /* -fpack-derived */
+ OPT_fpack_struct, /* -fpack-struct */
+ OPT_fpack_struct_, /* -fpack-struct= */
+ OPT_fpcc_struct_return, /* -fpcc-struct-return */
+ OPT_fpch_deps, /* -fpch-deps */
+ OPT_fpch_preprocess, /* -fpch-preprocess */
+ OPT_fpeel_loops, /* -fpeel-loops */
+ OPT_fpeephole, /* -fpeephole */
+ OPT_fpeephole2, /* -fpeephole2 */
+ OPT_fpermissive, /* -fpermissive */
+ OPT_fpic, /* -fpic */
+ OPT_fpie, /* -fpie */
+ OPT_fplugin_arg_, /* -fplugin-arg- */
+ OPT_fplugin_, /* -fplugin= */
+ OPT_fpost_ipa_mem_report, /* -fpost-ipa-mem-report */
+ OPT_fpre_ipa_mem_report, /* -fpre-ipa-mem-report */
+ OPT_fpredictive_commoning, /* -fpredictive-commoning */
+ OPT_fprefetch_loop_arrays, /* -fprefetch-loop-arrays */
+ OPT_fpreprocessed, /* -fpreprocessed */
+ OPT_fpretty_templates, /* -fpretty-templates */
+ OPT_fprofile, /* -fprofile */
+ OPT_fprofile_arcs, /* -fprofile-arcs */
+ OPT_fprofile_correction, /* -fprofile-correction */
+ OPT_fprofile_dir_, /* -fprofile-dir= */
+ OPT_fprofile_generate, /* -fprofile-generate */
+ OPT_fprofile_generate_, /* -fprofile-generate= */
+ OPT_fprofile_use, /* -fprofile-use */
+ OPT_fprofile_use_, /* -fprofile-use= */
+ OPT_fprofile_values, /* -fprofile-values */
+ OPT_fprotect_parens, /* -fprotect-parens */
+ OPT_frandom_seed, /* -frandom-seed */
+ OPT_frandom_seed_, /* -frandom-seed= */
+ OPT_frange_check, /* -frange-check */
+ OPT_freciprocal_math, /* -freciprocal-math */
+ OPT_frecord_gcc_switches, /* -frecord-gcc-switches */
+ OPT_frecord_marker_4, /* -frecord-marker=4 */
+ OPT_frecord_marker_8, /* -frecord-marker=8 */
+ OPT_frecursive, /* -frecursive */
+ OPT_freduced_reflection, /* -freduced-reflection */
+ OPT_freg_struct_return, /* -freg-struct-return */
+ OPT_fregmove, /* -fregmove */
+ OPT_frename_registers, /* -frename-registers */
+ OPT_freorder_blocks, /* -freorder-blocks */
+ OPT_freorder_blocks_and_partition, /* -freorder-blocks-and-partition */
+ OPT_freorder_functions, /* -freorder-functions */
+ OPT_frepack_arrays, /* -frepack-arrays */
+ OPT_freplace_objc_classes, /* -freplace-objc-classes */
+ OPT_frepo, /* -frepo */
+ OPT_frerun_cse_after_loop, /* -frerun-cse-after-loop */
+ OPT_frerun_loop_opt, /* -frerun-loop-opt */
+ OPT_freschedule_modulo_scheduled_loops, /* -freschedule-modulo-scheduled-loops */
+ OPT_fresolution, /* -fresolution */
+ OPT_frounding_math, /* -frounding-math */
+ OPT_frtti, /* -frtti */
+ OPT_fsaw_java_file, /* -fsaw-java-file */
+ OPT_fsched_critical_path_heuristic, /* -fsched-critical-path-heuristic */
+ OPT_fsched_dep_count_heuristic, /* -fsched-dep-count-heuristic */
+ OPT_fsched_group_heuristic, /* -fsched-group-heuristic */
+ OPT_fsched_interblock, /* -fsched-interblock */
+ OPT_fsched_last_insn_heuristic, /* -fsched-last-insn-heuristic */
+ OPT_fsched_pressure, /* -fsched-pressure */
+ OPT_fsched_rank_heuristic, /* -fsched-rank-heuristic */
+ OPT_fsched_spec, /* -fsched-spec */
+ OPT_fsched_spec_insn_heuristic, /* -fsched-spec-insn-heuristic */
+ OPT_fsched_spec_load, /* -fsched-spec-load */
+ OPT_fsched_spec_load_dangerous, /* -fsched-spec-load-dangerous */
+ OPT_fsched_stalled_insns, /* -fsched-stalled-insns */
+ OPT_fsched_stalled_insns_dep, /* -fsched-stalled-insns-dep */
+ OPT_fsched_stalled_insns_dep_, /* -fsched-stalled-insns-dep= */
+ OPT_fsched_stalled_insns_, /* -fsched-stalled-insns= */
+ OPT_fsched_verbose_, /* -fsched-verbose= */
+ OPT_fsched2_use_superblocks, /* -fsched2-use-superblocks */
+ OPT_fsched2_use_traces, /* -fsched2-use-traces */
+ OPT_fschedule_insns, /* -fschedule-insns */
+ OPT_fschedule_insns2, /* -fschedule-insns2 */
+ OPT_fsecond_underscore, /* -fsecond-underscore */
+ OPT_fsection_anchors, /* -fsection-anchors */
+ OPT_fsee, /* -fsee */
+ OPT_fsel_sched_pipelining, /* -fsel-sched-pipelining */
+ OPT_fsel_sched_pipelining_outer_loops, /* -fsel-sched-pipelining-outer-loops */
+ OPT_fsel_sched_reschedule_pipelined, /* -fsel-sched-reschedule-pipelined */
+ OPT_fselective_scheduling, /* -fselective-scheduling */
+ OPT_fselective_scheduling2, /* -fselective-scheduling2 */
+ OPT_fshort_double, /* -fshort-double */
+ OPT_fshort_enums, /* -fshort-enums */
+ OPT_fshort_wchar, /* -fshort-wchar */
+ OPT_fshow_column, /* -fshow-column */
+ OPT_fsign_zero, /* -fsign-zero */
+ OPT_fsignaling_nans, /* -fsignaling-nans */
+ OPT_fsigned_bitfields, /* -fsigned-bitfields */
+ OPT_fsigned_char, /* -fsigned-char */
+ OPT_fsigned_zeros, /* -fsigned-zeros */
+ OPT_fsingle_precision_constant, /* -fsingle-precision-constant */
+ OPT_fsource_filename_, /* -fsource-filename= */
+ OPT_fsource_, /* -fsource= */
+ OPT_fsplit_ivs_in_unroller, /* -fsplit-ivs-in-unroller */
+ OPT_fsplit_wide_types, /* -fsplit-wide-types */
+ OPT_fsquangle, /* -fsquangle */
+ OPT_fstack_check, /* -fstack-check */
+ OPT_fstack_check_, /* -fstack-check= */
+ OPT_fstack_limit, /* -fstack-limit */
+ OPT_fstack_limit_register_, /* -fstack-limit-register= */
+ OPT_fstack_limit_symbol_, /* -fstack-limit-symbol= */
+ OPT_fstack_protector, /* -fstack-protector */
+ OPT_fstack_protector_all, /* -fstack-protector-all */
+ OPT_fstats, /* -fstats */
+ OPT_fstore_check, /* -fstore-check */
+ OPT_fstrength_reduce, /* -fstrength-reduce */
+ OPT_fstrict_aliasing, /* -fstrict-aliasing */
+ OPT_fstrict_overflow, /* -fstrict-overflow */
+ OPT_fstrict_prototype, /* -fstrict-prototype */
+ OPT_fsyntax_only, /* -fsyntax-only */
+ OPT_ftabstop_, /* -ftabstop= */
+ OPT_ftarget_help, /* -ftarget-help */
+ OPT_ftarget_, /* -ftarget= */
+ OPT_ftemplate_depth_, /* -ftemplate-depth- */
+ OPT_ftemplate_depth_eq, /* -ftemplate-depth= */
+ OPT_ftest_coverage, /* -ftest-coverage */
+ OPT_fthis_is_variable, /* -fthis-is-variable */
+ OPT_fthread_jumps, /* -fthread-jumps */
+ OPT_fthreadsafe_statics, /* -fthreadsafe-statics */
+ OPT_ftime_report, /* -ftime-report */
+ OPT_ftls_model_, /* -ftls-model= */
+ OPT_ftoplevel_reorder, /* -ftoplevel-reorder */
+ OPT_ftracer, /* -ftracer */
+ OPT_ftrapping_math, /* -ftrapping-math */
+ OPT_ftrapv, /* -ftrapv */
+ OPT_ftree_builtin_call_dce, /* -ftree-builtin-call-dce */
+ OPT_ftree_ccp, /* -ftree-ccp */
+ OPT_ftree_ch, /* -ftree-ch */
+ OPT_ftree_copy_prop, /* -ftree-copy-prop */
+ OPT_ftree_copyrename, /* -ftree-copyrename */
+ OPT_ftree_cselim, /* -ftree-cselim */
+ OPT_ftree_dce, /* -ftree-dce */
+ OPT_ftree_dominator_opts, /* -ftree-dominator-opts */
+ OPT_ftree_dse, /* -ftree-dse */
+ OPT_ftree_forwprop, /* -ftree-forwprop */
+ OPT_ftree_fre, /* -ftree-fre */
+ OPT_ftree_loop_distribution, /* -ftree-loop-distribution */
+ OPT_ftree_loop_im, /* -ftree-loop-im */
+ OPT_ftree_loop_ivcanon, /* -ftree-loop-ivcanon */
+ OPT_ftree_loop_linear, /* -ftree-loop-linear */
+ OPT_ftree_loop_optimize, /* -ftree-loop-optimize */
+ OPT_ftree_lrs, /* -ftree-lrs */
+ OPT_ftree_parallelize_loops_, /* -ftree-parallelize-loops= */
+ OPT_ftree_phiprop, /* -ftree-phiprop */
+ OPT_ftree_pre, /* -ftree-pre */
+ OPT_ftree_pta, /* -ftree-pta */
+ OPT_ftree_reassoc, /* -ftree-reassoc */
+ OPT_ftree_salias, /* -ftree-salias */
+ OPT_ftree_scev_cprop, /* -ftree-scev-cprop */
+ OPT_ftree_sink, /* -ftree-sink */
+ OPT_ftree_slp_vectorize, /* -ftree-slp-vectorize */
+ OPT_ftree_sra, /* -ftree-sra */
+ OPT_ftree_store_ccp, /* -ftree-store-ccp */
+ OPT_ftree_store_copy_prop, /* -ftree-store-copy-prop */
+ OPT_ftree_switch_conversion, /* -ftree-switch-conversion */
+ OPT_ftree_ter, /* -ftree-ter */
+ OPT_ftree_vect_loop_version, /* -ftree-vect-loop-version */
+ OPT_ftree_vectorize, /* -ftree-vectorize */
+ OPT_ftree_vectorizer_verbose_, /* -ftree-vectorizer-verbose= */
+ OPT_ftree_vrp, /* -ftree-vrp */
+ OPT_funderscoring, /* -funderscoring */
+ OPT_funit_at_a_time, /* -funit-at-a-time */
+ OPT_funroll_all_loops, /* -funroll-all-loops */
+ OPT_funroll_loops, /* -funroll-loops */
+ OPT_funsafe_loop_optimizations, /* -funsafe-loop-optimizations */
+ OPT_funsafe_math_optimizations, /* -funsafe-math-optimizations */
+ OPT_funsigned_bitfields, /* -funsigned-bitfields */
+ OPT_funsigned_char, /* -funsigned-char */
+ OPT_funswitch_loops, /* -funswitch-loops */
+ OPT_funwind_tables, /* -funwind-tables */
+ OPT_fuse_atomic_builtins, /* -fuse-atomic-builtins */
+ OPT_fuse_boehm_gc, /* -fuse-boehm-gc */
+ OPT_fuse_cxa_atexit, /* -fuse-cxa-atexit */
+ OPT_fuse_cxa_get_exception_ptr, /* -fuse-cxa-get-exception-ptr */
+ OPT_fuse_divide_subroutine, /* -fuse-divide-subroutine */
+ OPT_fuse_linker_plugin, /* -fuse-linker-plugin */
+ OPT_fvar_tracking, /* -fvar-tracking */
+ OPT_fvar_tracking_assignments, /* -fvar-tracking-assignments */
+ OPT_fvar_tracking_assignments_toggle, /* -fvar-tracking-assignments-toggle */
+ OPT_fvar_tracking_uninit, /* -fvar-tracking-uninit */
+ OPT_fvariable_expansion_in_unroller, /* -fvariable-expansion-in-unroller */
+ OPT_fvect_cost_model, /* -fvect-cost-model */
+ OPT_fverbose_asm, /* -fverbose-asm */
+ OPT_fversion, /* -fversion */
+ OPT_fvisibility_inlines_hidden, /* -fvisibility-inlines-hidden */
+ OPT_fvisibility_ms_compat, /* -fvisibility-ms-compat */
+ OPT_fvisibility_, /* -fvisibility= */
+ OPT_fvpt, /* -fvpt */
+ OPT_fvtable_gc, /* -fvtable-gc */
+ OPT_fvtable_thunks, /* -fvtable-thunks */
+ OPT_fweak, /* -fweak */
+ OPT_fweb, /* -fweb */
+ OPT_fwhole_file, /* -fwhole-file */
+ OPT_fwhole_program, /* -fwhole-program */
+ OPT_fwhopr, /* -fwhopr */
+ OPT_fwide_exec_charset_, /* -fwide-exec-charset= */
+ OPT_fworking_directory, /* -fworking-directory */
+ OPT_fwpa, /* -fwpa */
+ OPT_fwrapv, /* -fwrapv */
+ OPT_fxref, /* -fxref */
+ OPT_fzero_initialized_in_bss, /* -fzero-initialized-in-bss */
+ OPT_fzero_link, /* -fzero-link */
+ OPT_g, /* -g */
+ OPT_gant, /* -gant */
+ OPT_gcoff, /* -gcoff */
+ OPT_gdwarfplus, /* -gdwarf+ */
+ OPT_gdwarf_, /* -gdwarf- */
+ OPT_gen_decls, /* -gen-decls */
+ OPT_ggdb, /* -ggdb */
+ OPT_gnat, /* -gnat */
+ OPT_gnatO, /* -gnatO */
+ OPT_gno_strict_dwarf, /* -gno-strict-dwarf */
+ OPT_gstabs, /* -gstabs */
+ OPT_gstabs_, /* -gstabs+ */
+ OPT_gstrict_dwarf, /* -gstrict-dwarf */
+ OPT_gtoggle, /* -gtoggle */
+ OPT_gvms, /* -gvms */
+ OPT_gxcoff, /* -gxcoff */
+ OPT_gxcoff_, /* -gxcoff+ */
+ OPT_idirafter, /* -idirafter */
+ OPT_imacros, /* -imacros */
+ OPT_imultilib, /* -imultilib */
+ OPT_include, /* -include */
+ OPT_iprefix, /* -iprefix */
+ OPT_iquote, /* -iquote */
+ OPT_isysroot, /* -isysroot */
+ OPT_isystem, /* -isystem */
+ OPT_iwithprefix, /* -iwithprefix */
+ OPT_iwithprefixbefore, /* -iwithprefixbefore */
+ OPT_lang_asm, /* -lang-asm */
+ OPT_lang_objc, /* -lang-objc */
+ OPT_m128bit_long_double, /* -m128bit-long-double */
+ OPT_m32, /* -m32 */
+ OPT_m3dnow, /* -m3dnow */
+ OPT_m3dnowa, /* -m3dnowa */
+ OPT_m64, /* -m64 */
+ OPT_m80387, /* -m80387 */
+ OPT_m96bit_long_double, /* -m96bit-long-double */
+ OPT_mabi_, /* -mabi= */
+ OPT_mabm, /* -mabm */
+ OPT_maccumulate_outgoing_args, /* -maccumulate-outgoing-args */
+ OPT_maes, /* -maes */
+ OPT_malign_double, /* -malign-double */
+ OPT_malign_functions_, /* -malign-functions= */
+ OPT_malign_jumps_, /* -malign-jumps= */
+ OPT_malign_loops_, /* -malign-loops= */
+ OPT_malign_stringops, /* -malign-stringops */
+ OPT_march_, /* -march= */
+ OPT_masm_, /* -masm= */
+ OPT_mavx, /* -mavx */
+ OPT_mbranch_cost_, /* -mbranch-cost= */
+ OPT_mcld, /* -mcld */
+ OPT_mcmodel_, /* -mcmodel= */
+ OPT_mcrc32, /* -mcrc32 */
+ OPT_mcx16, /* -mcx16 */
+ OPT_mfancy_math_387, /* -mfancy-math-387 */
+ OPT_mfma, /* -mfma */
+ OPT_mfma4, /* -mfma4 */
+ OPT_mforce_drap, /* -mforce-drap */
+ OPT_mfp_ret_in_387, /* -mfp-ret-in-387 */
+ OPT_mfpmath_, /* -mfpmath= */
+ OPT_mfused_madd, /* -mfused-madd */
+ OPT_mglibc, /* -mglibc */
+ OPT_mhard_float, /* -mhard-float */
+ OPT_mieee_fp, /* -mieee-fp */
+ OPT_mincoming_stack_boundary_, /* -mincoming-stack-boundary= */
+ OPT_minline_all_stringops, /* -minline-all-stringops */
+ OPT_minline_stringops_dynamically, /* -minline-stringops-dynamically */
+ OPT_mintel_syntax, /* -mintel-syntax */
+ OPT_mlarge_data_threshold_, /* -mlarge-data-threshold= */
+ OPT_mlwp, /* -mlwp */
+ OPT_mmmx, /* -mmmx */
+ OPT_mmovbe, /* -mmovbe */
+ OPT_mms_bitfields, /* -mms-bitfields */
+ OPT_mno_align_stringops, /* -mno-align-stringops */
+ OPT_mno_fancy_math_387, /* -mno-fancy-math-387 */
+ OPT_mno_push_args, /* -mno-push-args */
+ OPT_mno_red_zone, /* -mno-red-zone */
+ OPT_mno_sse4, /* -mno-sse4 */
+ OPT_momit_leaf_frame_pointer, /* -momit-leaf-frame-pointer */
+ OPT_mpc, /* -mpc */
+ OPT_mpclmul, /* -mpclmul */
+ OPT_mpopcnt, /* -mpopcnt */
+ OPT_mpreferred_stack_boundary_, /* -mpreferred-stack-boundary= */
+ OPT_mpush_args, /* -mpush-args */
+ OPT_mrecip, /* -mrecip */
+ OPT_mred_zone, /* -mred-zone */
+ OPT_mregparm_, /* -mregparm= */
+ OPT_mrtd, /* -mrtd */
+ OPT_msahf, /* -msahf */
+ OPT_msoft_float, /* -msoft-float */
+ OPT_msse, /* -msse */
+ OPT_msse2, /* -msse2 */
+ OPT_msse2avx, /* -msse2avx */
+ OPT_msse3, /* -msse3 */
+ OPT_msse4, /* -msse4 */
+ OPT_msse4_1, /* -msse4.1 */
+ OPT_msse4_2, /* -msse4.2 */
+ OPT_msse4a, /* -msse4a */
+ OPT_msseregparm, /* -msseregparm */
+ OPT_mssse3, /* -mssse3 */
+ OPT_mstack_arg_probe, /* -mstack-arg-probe */
+ OPT_mstackrealign, /* -mstackrealign */
+ OPT_mstringop_strategy_, /* -mstringop-strategy= */
+ OPT_mtls_dialect_, /* -mtls-dialect= */
+ OPT_mtls_direct_seg_refs, /* -mtls-direct-seg-refs */
+ OPT_mtune_, /* -mtune= */
+ OPT_muclibc, /* -muclibc */
+ OPT_mveclibabi_, /* -mveclibabi= */
+ OPT_mxop, /* -mxop */
+ OPT_nocpp, /* -nocpp */
+ OPT_nostdinc, /* -nostdinc */
+ OPT_nostdinc__, /* -nostdinc++ */
+ OPT_nostdlib, /* -nostdlib */
+ OPT_o, /* -o */
+ OPT_p, /* -p */
+ OPT_pedantic, /* -pedantic */
+ OPT_pedantic_errors, /* -pedantic-errors */
+ OPT_pie, /* -pie */
+ OPT_print_objc_runtime_info, /* -print-objc-runtime-info */
+ OPT_print_pch_checksum, /* -print-pch-checksum */
+ OPT_quiet, /* -quiet */
+ OPT_remap, /* -remap */
+ OPT_shared, /* -shared */
+ OPT_static_libgfortran, /* -static-libgfortran */
+ OPT_std_c__0x, /* -std=c++0x */
+ OPT_std_c__98, /* -std=c++98 */
+ OPT_std_c89, /* -std=c89 */
+ OPT_std_c90, /* -std=c90 */
+ OPT_std_c99, /* -std=c99 */
+ OPT_std_c9x, /* -std=c9x */
+ OPT_std_f2003, /* -std=f2003 */
+ OPT_std_f2008, /* -std=f2008 */
+ OPT_std_f95, /* -std=f95 */
+ OPT_std_gnu, /* -std=gnu */
+ OPT_std_gnu__0x, /* -std=gnu++0x */
+ OPT_std_gnu__98, /* -std=gnu++98 */
+ OPT_std_gnu89, /* -std=gnu89 */
+ OPT_std_gnu90, /* -std=gnu90 */
+ OPT_std_gnu99, /* -std=gnu99 */
+ OPT_std_gnu9x, /* -std=gnu9x */
+ OPT_std_iso9899_1990, /* -std=iso9899:1990 */
+ OPT_std_iso9899_199409, /* -std=iso9899:199409 */
+ OPT_std_iso9899_1999, /* -std=iso9899:1999 */
+ OPT_std_iso9899_199x, /* -std=iso9899:199x */
+ OPT_std_legacy, /* -std=legacy */
+ OPT_traditional_cpp, /* -traditional-cpp */
+ OPT_trigraphs, /* -trigraphs */
+ OPT_undef, /* -undef */
+ OPT_v, /* -v */
+ OPT_version, /* -version */
+ OPT_w, /* -w */
+ N_OPTS
+};
+
+#endif /* OPTIONS_H */