Subversion Repositories Kolibri OS

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
4383 Serge 1
/* This file is auto-generated by opth-gen.awk.  */
2
 
3
#ifndef OPTIONS_H
4
#define OPTIONS_H
5
 
6
extern int target_flags;
7
extern int target_flags_explicit;
8
 
9
extern int extra_warnings;
10
extern int warn_abi;
11
extern int warn_address;
12
extern int warn_aggregate_return;
13
extern int warn_array_bounds;
14
extern int warn_assign_intercept;
15
extern int warn_attributes;
16
extern int warn_bad_function_cast;
17
extern int warn_cxx_compat;
18
extern int warn_cxx0x_compat;
19
extern int warn_cast_align;
20
extern int warn_cast_qual;
21
extern int warn_char_subscripts;
22
extern int warn_clobbered;
23
extern int warn_conversion;
24
extern int warn_conversion_null;
25
extern int warn_coverage_mismatch;
26
extern int warn_ctor_dtor_privacy;
27
extern int warn_declaration_after_statement;
28
extern int warn_deprecated;
29
extern int warn_deprecated_decl;
30
extern int warn_disabled_optimization;
31
extern int warn_div_by_zero;
32
extern int warn_ecpp;
33
extern int warn_empty_body;
34
extern int warn_enum_compare;
35
extern int warnings_are_errors;
36
extern int flag_extraneous_semicolon;
37
extern int flag_fatal_errors;
38
extern int warn_float_equal;
39
extern int warn_format_contains_nul;
40
extern int warn_format_extra_args;
41
extern int warn_format_nonliteral;
42
extern int warn_format_security;
43
extern int warn_format_y2k;
44
extern int warn_format_zero_length;
45
extern int warn_ignored_qualifiers;
46
extern int warn_implicit_function_declaration;
47
extern int warn_implicit_int;
48
extern int warn_init_self;
49
extern int warn_inline;
50
extern int warn_int_to_pointer_cast;
51
extern int warn_invalid_offsetof;
52
extern int warn_jump_misses_init;
53
extern int warn_logical_op;
54
extern int warn_long_long;
55
extern int warn_main;
56
extern int warn_missing_braces;
57
extern int warn_missing_declarations;
58
extern int warn_missing_field_initializers;
59
extern int warn_missing_format_attribute;
60
extern int warn_missing_noreturn;
61
extern int warn_missing_parameter_type;
62
extern int warn_missing_prototypes;
63
extern int warn_mudflap;
64
extern int warn_nested_externs;
65
extern int warn_nontemplate_friend;
66
extern int warn_nonvdtor;
67
extern int warn_nonnull;
68
extern int warn_old_style_cast;
69
extern int warn_old_style_declaration;
70
extern int warn_old_style_definition;
71
extern int flag_newer;
72
extern int warn_overflow;
73
extern int warn_overlength_strings;
74
extern int warn_overloaded_virtual;
75
extern int warn_override_init;
76
extern int warn_packed;
77
extern int warn_packed_bitfield_compat;
78
extern int warn_padded;
79
extern int warn_parentheses;
80
extern int warn_pedantic_ms_format;
81
extern int warn_pmf2ptr;
82
extern int warn_pointer_arith;
83
extern int warn_pointer_sign;
84
extern int warn_pointer_to_int_cast;
85
extern int warn_pragmas;
86
extern int warn_protocol;
87
extern int warn_psabi;
88
extern int warn_redundant_decls;
89
extern int flag_redundant;
90
extern int warn_reorder;
91
extern int warn_return_type;
92
extern int warn_selector;
93
extern int warn_sequence_point;
94
extern int warn_shadow;
95
extern int warn_sign_compare;
96
extern int warn_sign_conversion;
97
extern int warn_sign_promo;
98
extern int warn_stack_protect;
99
extern int warn_strict_aliasing;
100
extern int warn_strict_overflow;
101
extern int warn_strict_prototypes;
102
extern int warn_strict_selector_match;
103
extern int warn_switch;
104
extern int warn_switch_default;
105
extern int warn_switch_enum;
106
extern int warn_sync_nand;
107
extern int warn_synth;
108
extern int warn_system_headers;
109
extern int warn_traditional;
110
extern int warn_traditional_conversion;
111
extern int warn_type_limits;
112
extern int warn_undeclared_selector;
113
extern int warn_uninitialized;
114
extern int warn_unsafe_loop_optimizations;
115
extern int warn_unsuffixed_float_constants;
116
extern int warn_unused;
117
extern int warn_unused_function;
118
extern int warn_unused_label;
119
extern int warn_unused_parameter;
120
extern int warn_unused_result;
121
extern int warn_unused_value;
122
extern int warn_unused_variable;
123
extern int warn_vla;
124
extern int warn_volatile_register_var;
125
extern int warn_write_strings;
126
extern int flag_pic;
127
extern int flag_pie;
128
extern int flag_abi_version;
129
extern int align_functions;
130
extern int align_jumps;
131
extern int align_labels;
132
extern int align_loops;
133
extern int flag_argument_noalias;
134
extern int flag_assert;
135
extern int flag_associative_math;
136
extern int flag_asynchronous_unwind_tables;
137
extern int flag_auto_inc_dec;
138
extern int flag_bootstrap_classes;
139
extern int flag_bounds_check;
140
extern int flag_branch_on_count_reg;
141
extern int flag_branch_probabilities;
142
extern int flag_branch_target_load_optimize;
143
extern int flag_branch_target_load_optimize2;
144
extern int flag_btr_bb_exclusive;
145
extern int flag_caller_saves;
146
extern int flag_check_data_deps;
147
extern int flag_check_references;
148
extern int flag_no_common;
149
extern int flag_compare_debug;
150
extern const char *flag_compare_debug_opt;
151
extern int flag_conserve_stack;
152
extern int flag_cprop_registers;
153
extern int flag_crossjumping;
154
extern int flag_cse_follow_jumps;
155
extern int flag_cx_fortran_rules;
156
extern int flag_cx_limited_range;
157
extern int flag_data_sections;
158
extern int flag_dce;
159
extern int flag_deduce_init_list;
160
extern int flag_defer_pop;
161
extern int flag_delayed_branch;
162
extern int flag_delete_null_pointer_checks;
163
extern int flag_dse;
164
extern const char *flag_dump_final_insns;
165
extern int flag_dump_noaddr;
166
extern int flag_dump_unnumbered;
167
extern int flag_dump_unnumbered_links;
168
extern int flag_dwarf2_cfi_asm;
169
extern int flag_early_inlining;
170
extern int flag_eliminate_dwarf2_dups;
171
extern int flag_debug_only_used_symbols;
172
extern int flag_eliminate_unused_debug_types;
173
extern int flag_emit_class_debug_always;
174
extern int flag_emit_class_files;
175
extern int flag_enable_icf_debug;
176
extern int flag_exceptions;
177
extern int flag_expensive_optimizations;
178
extern int flag_filelist_file;
179
extern int flag_finite_math_only;
180
extern int flag_float_store;
181
extern int flag_force_classes_archive_check;
182
extern int flag_forward_propagate;
183
extern int flag_friend_injection;
184
extern int flag_no_function_cse;
185
extern int flag_function_sections;
186
extern int flag_gcse;
187
extern int flag_gcse_after_reload;
188
extern int flag_gcse_las;
189
extern int flag_gcse_lm;
190
extern int flag_gcse_sm;
191
extern int flag_gnu89_inline;
192
extern int flag_graphite;
193
extern int flag_graphite_identity;
194
extern int flag_guess_branch_prob;
195
extern int flag_hash_synchronization;
196
extern int help_flag;
197
extern int flag_no_ident;
198
extern int flag_if_conversion;
199
extern int flag_if_conversion2;
200
extern int flag_indirect_classes;
201
extern int flag_indirect_dispatch;
202
extern int flag_indirect_inlining;
203
extern int flag_inhibit_size_directive;
204
extern int flag_no_inline;
205
extern int flag_inline_functions;
206
extern int flag_inline_functions_called_once;
207
extern int flag_inline_small_functions;
208
extern int flag_instrument_function_entry_exit;
209
extern int flag_ipa_cp;
210
extern int flag_ipa_cp_clone;
211
extern int flag_ipa_matrix_reorg;
212
extern int flag_ipa_pta;
213
extern int flag_ipa_pure_const;
214
extern int flag_ipa_reference;
215
extern int flag_ipa_sra;
216
extern int flag_ipa_struct_reorg;
217
extern int flag_ipa_type_escape;
218
extern int flag_ira_coalesce;
219
extern int flag_ira_loop_pressure;
220
extern int flag_ira_share_save_slots;
221
extern int flag_ira_share_spill_slots;
222
extern int flag_ivopts;
223
extern int flag_jni;
224
extern int flag_jump_tables;
225
extern int flag_keep_inline_functions;
226
extern int flag_keep_static_consts;
227
extern int flag_leading_underscore;
228
extern int flag_loop_block;
229
extern int flag_loop_interchange;
230
extern int flag_loop_parallelize_all;
231
extern int flag_loop_strip_mine;
232
extern int flag_lto;
233
extern int flag_lto_compression_level;
234
extern int flag_lto_report;
235
extern int flag_ltrans;
236
extern const char *ltrans_output_list;
237
extern int flag_errno_math;
238
extern int mem_report;
239
extern int flag_merge_constants;
240
extern int flag_merge_debug_strings;
241
extern int flag_modulo_sched;
242
extern int flag_modulo_sched_allow_regmoves;
243
extern int flag_move_loop_invariants;
244
extern int flag_mudflap;
245
extern int flag_mudflap_ignore_reads;
246
extern int flag_non_call_exceptions;
247
extern int flag_objc_call_cxx_cdtors;
248
extern int flag_objc_direct_dispatch;
249
extern int flag_objc_exceptions;
250
extern int flag_objc_gc;
251
extern int flag_objc_sjlj_exceptions;
252
extern int flag_omit_frame_pointer;
253
extern int flag_openmp;
254
extern int flag_regmove;
255
extern int flag_optimize_sibling_calls;
256
extern int flag_optimize_sci;
257
extern int flag_pack_struct;
258
extern int flag_pcc_struct_return;
259
extern int flag_peel_loops;
260
extern int flag_no_peephole;
261
extern int flag_peephole2;
262
extern int post_ipa_mem_report;
263
extern int pre_ipa_mem_report;
264
extern int flag_predictive_commoning;
265
extern int flag_prefetch_loop_arrays;
266
extern int profile_flag;
267
extern int profile_arc_flag;
268
extern int flag_profile_correction;
269
extern int flag_profile_use;
270
extern int flag_profile_values;
271
extern int flag_reciprocal_math;
272
extern int flag_record_gcc_switches;
273
extern int flag_reduced_reflection;
274
extern int flag_rename_registers;
275
extern int flag_reorder_blocks;
276
extern int flag_reorder_blocks_and_partition;
277
extern int flag_reorder_functions;
278
extern int flag_rerun_cse_after_loop;
279
extern int flag_resched_modulo_sched;
280
extern int flag_rounding_math;
281
extern int flag_sched_critical_path_heuristic;
282
extern int flag_sched_dep_count_heuristic;
283
extern int flag_sched_group_heuristic;
284
extern int flag_schedule_interblock;
285
extern int flag_sched_last_insn_heuristic;
286
extern int flag_sched_pressure;
287
extern int flag_sched_rank_heuristic;
288
extern int flag_schedule_speculative;
289
extern int flag_sched_spec_insn_heuristic;
290
extern int flag_schedule_speculative_load;
291
extern int flag_schedule_speculative_load_dangerous;
292
extern int flag_sched_stalled_insns;
293
extern int flag_sched_stalled_insns_dep;
294
extern int flag_sched2_use_superblocks;
295
extern int flag_schedule_insns;
296
extern int flag_schedule_insns_after_reload;
297
extern int flag_section_anchors;
298
extern int flag_sel_sched_pipelining;
299
extern int flag_sel_sched_pipelining_outer_loops;
300
extern int flag_sel_sched_reschedule_pipelined;
301
extern int flag_selective_scheduling;
302
extern int flag_selective_scheduling2;
303
extern int flag_setstackexecutable;
304
extern int flag_show_column;
305
extern int flag_signaling_nans;
306
extern int flag_signed_zeros;
307
extern int flag_single_precision_constant;
308
extern int flag_split_ivs_in_unroller;
309
extern int flag_split_wide_types;
310
extern int flag_stack_protect;
311
extern int flag_store_check;
312
extern int flag_strict_aliasing;
313
extern int flag_strict_overflow;
314
extern int flag_syntax_only;
315
extern int flag_test_coverage;
316
extern int flag_thread_jumps;
317
extern int time_report;
318
extern int flag_toplevel_reorder;
319
extern int flag_tracer;
320
extern int flag_trapping_math;
321
extern int flag_trapv;
322
extern int flag_tree_builtin_call_dce;
323
extern int flag_tree_ccp;
324
extern int flag_tree_ch;
325
extern int flag_tree_copy_prop;
326
extern int flag_tree_copyrename;
327
extern int flag_tree_cselim;
328
extern int flag_tree_dce;
329
extern int flag_tree_dom;
330
extern int flag_tree_dse;
331
extern int flag_tree_forwprop;
332
extern int flag_tree_fre;
333
extern int flag_tree_loop_distribution;
334
extern int flag_tree_loop_im;
335
extern int flag_tree_loop_ivcanon;
336
extern int flag_tree_loop_linear;
337
extern int flag_tree_loop_optimize;
338
extern int flag_tree_live_range_split;
339
extern int flag_tree_parallelize_loops;
340
extern int flag_tree_phiprop;
341
extern int flag_tree_pre;
342
extern int flag_tree_pta;
343
extern int flag_tree_reassoc;
344
extern int flag_tree_scev_cprop;
345
extern int flag_tree_sink;
346
extern int flag_tree_slp_vectorize;
347
extern int flag_tree_sra;
348
extern int flag_tree_switch_conversion;
349
extern int flag_tree_ter;
350
extern int flag_tree_vect_loop_version;
351
extern int flag_tree_vectorize;
352
extern int flag_tree_vrp;
353
extern int flag_unit_at_a_time;
354
extern int flag_unroll_all_loops;
355
extern int flag_unroll_loops;
356
extern int flag_unsafe_loop_optimizations;
357
extern int flag_unsafe_math_optimizations;
358
extern int flag_unswitch_loops;
359
extern int flag_unwind_tables;
360
extern int flag_use_atomic_builtins;
361
extern int flag_use_boehm_gc;
362
extern int flag_use_divide_subroutine;
363
extern int flag_var_tracking;
364
extern int flag_var_tracking_assignments;
365
extern int flag_var_tracking_assignments_toggle;
366
extern int flag_var_tracking_uninit;
367
extern int flag_variable_expansion_in_unroller;
368
extern int flag_vect_cost_model;
369
extern int flag_verbose_asm;
370
extern int flag_visibility_ms_compat;
371
extern int flag_value_profile_transformations;
372
extern int flag_web;
373
extern int flag_whole_program;
374
extern int flag_whopr;
375
extern int flag_wpa;
376
extern int flag_wrapv;
377
extern int flag_zero_initialized_in_bss;
378
extern int dwarf_version;
379
extern int dwarf_strict;
380
extern int flag_gtoggle;
381
extern int ix86_isa_flags;
382
extern const char *ix86_abi_string;
383
extern const char *ix86_align_funcs_string;
384
extern const char *ix86_align_jumps_string;
385
extern const char *ix86_align_loops_string;
386
extern const char *ix86_arch_string;
387
extern const char *ix86_asm_string;
388
extern const char *ix86_branch_cost_string;
389
extern const char *ix86_cmodel_string;
390
extern int ix86_force_drap;
391
extern const char *ix86_fpmath_string;
392
extern const char *ix86_incoming_stack_boundary_string;
393
extern const char *ix86_section_threshold_string;
394
extern int TARGET_NOP_FUN_DLLIMPORT;
395
extern const char *ix87_precision_string;
396
extern int use_pe_aligned_common;
397
extern const char *ix86_preferred_stack_boundary_string;
398
extern const char *ix86_regparm_string;
399
extern int ix86_sse2avx;
400
extern int ix86_force_align_arg_pointer;
401
extern const char *ix86_stringop_string;
402
extern const char *ix86_tls_dialect_string;
403
extern const char *ix86_tune_string;
404
extern const char *ix86_veclibabi_string;
405
extern int pedantic;
406
extern int quiet_flag;
407
extern int version_flag;
408
extern int inhibit_warnings;
409
 
410
#if !defined(GCC_DRIVER) && !defined(IN_LIBGCC2) && !defined(IN_TARGET_LIBS)
411
 
412
/* Structure to save/restore optimization and target specific options.  */
413
struct GTY(()) cl_optimization
414
{
415
  int align_functions;
416
  int align_jumps;
417
  int align_labels;
418
  int align_loops;
419
  int flag_sched_stalled_insns;
420
  int flag_sched_stalled_insns_dep;
421
  unsigned char optimize;
422
  unsigned char optimize_size;
423
  signed char flag_argument_noalias;
424
  signed char flag_asynchronous_unwind_tables;
425
  signed char flag_branch_on_count_reg;
426
  signed char flag_branch_probabilities;
427
  signed char flag_branch_target_load_optimize;
428
  signed char flag_branch_target_load_optimize2;
429
  signed char flag_btr_bb_exclusive;
430
  signed char flag_caller_saves;
431
  signed char flag_no_common;
432
  signed char flag_conserve_stack;
433
  signed char flag_cprop_registers;
434
  signed char flag_crossjumping;
435
  signed char flag_cse_follow_jumps;
436
  signed char flag_cx_fortran_rules;
437
  signed char flag_cx_limited_range;
438
  signed char flag_data_sections;
439
  signed char flag_dce;
440
  signed char flag_defer_pop;
441
  signed char flag_delayed_branch;
442
  signed char flag_delete_null_pointer_checks;
443
  signed char flag_dse;
444
  signed char flag_early_inlining;
445
  signed char flag_exceptions;
446
  signed char flag_expensive_optimizations;
447
  signed char flag_finite_math_only;
448
  signed char flag_float_store;
449
  signed char flag_forward_propagate;
450
  signed char flag_gcse;
451
  signed char flag_gcse_after_reload;
452
  signed char flag_gcse_las;
453
  signed char flag_gcse_lm;
454
  signed char flag_gcse_sm;
455
  signed char flag_graphite_identity;
456
  signed char flag_guess_branch_prob;
457
  signed char flag_if_conversion;
458
  signed char flag_if_conversion2;
459
  signed char flag_inline_functions;
460
  signed char flag_inline_functions_called_once;
461
  signed char flag_inline_small_functions;
462
  signed char flag_ipa_cp;
463
  signed char flag_ipa_cp_clone;
464
  signed char flag_ipa_matrix_reorg;
465
  signed char flag_ipa_pta;
466
  signed char flag_ipa_pure_const;
467
  signed char flag_ipa_reference;
468
  signed char flag_ipa_sra;
469
  signed char flag_ipa_type_escape;
470
  signed char flag_ivopts;
471
  signed char flag_jump_tables;
472
  signed char flag_loop_block;
473
  signed char flag_loop_interchange;
474
  signed char flag_loop_parallelize_all;
475
  signed char flag_loop_strip_mine;
476
  signed char flag_lto_report;
477
  signed char flag_ltrans;
478
  signed char flag_errno_math;
479
  signed char flag_merge_constants;
480
  signed char flag_modulo_sched;
481
  signed char flag_move_loop_invariants;
482
  signed char flag_non_call_exceptions;
483
  signed char flag_omit_frame_pointer;
484
  signed char flag_regmove;
485
  signed char flag_optimize_sibling_calls;
486
  signed char flag_pack_struct;
487
  signed char flag_peel_loops;
488
  signed char flag_no_peephole;
489
  signed char flag_peephole2;
490
  signed char flag_predictive_commoning;
491
  signed char flag_prefetch_loop_arrays;
492
  signed char flag_pcc_struct_return;
493
  signed char flag_rename_registers;
494
  signed char flag_reorder_blocks;
495
  signed char flag_reorder_blocks_and_partition;
496
  signed char flag_reorder_functions;
497
  signed char flag_rerun_cse_after_loop;
498
  signed char flag_resched_modulo_sched;
499
  signed char flag_rounding_math;
500
  signed char flag_sched_critical_path_heuristic;
501
  signed char flag_sched_dep_count_heuristic;
502
  signed char flag_sched_group_heuristic;
503
  signed char flag_schedule_interblock;
504
  signed char flag_sched_last_insn_heuristic;
505
  signed char flag_sched_pressure;
506
  signed char flag_sched_rank_heuristic;
507
  signed char flag_schedule_speculative;
508
  signed char flag_sched_spec_insn_heuristic;
509
  signed char flag_schedule_speculative_load;
510
  signed char flag_schedule_speculative_load_dangerous;
511
  signed char flag_sched2_use_superblocks;
512
  signed char flag_schedule_insns;
513
  signed char flag_schedule_insns_after_reload;
514
  signed char flag_section_anchors;
515
  signed char flag_sel_sched_pipelining;
516
  signed char flag_sel_sched_pipelining_outer_loops;
517
  signed char flag_sel_sched_reschedule_pipelined;
518
  signed char flag_selective_scheduling;
519
  signed char flag_selective_scheduling2;
520
  signed char flag_setstackexecutable;
521
  signed char flag_signaling_nans;
522
  signed char flag_signed_zeros;
523
  signed char flag_single_precision_constant;
524
  signed char flag_split_ivs_in_unroller;
525
  signed char flag_split_wide_types;
526
  signed char flag_strict_aliasing;
527
  signed char flag_thread_jumps;
528
  signed char flag_toplevel_reorder;
529
  signed char flag_trapping_math;
530
  signed char flag_trapv;
531
  signed char flag_tree_builtin_call_dce;
532
  signed char flag_tree_ccp;
533
  signed char flag_tree_ch;
534
  signed char flag_tree_copy_prop;
535
  signed char flag_tree_copyrename;
536
  signed char flag_tree_cselim;
537
  signed char flag_tree_dce;
538
  signed char flag_tree_dom;
539
  signed char flag_tree_dse;
540
  signed char flag_tree_forwprop;
541
  signed char flag_tree_fre;
542
  signed char flag_tree_loop_distribution;
543
  signed char flag_tree_loop_im;
544
  signed char flag_tree_loop_ivcanon;
545
  signed char flag_tree_loop_linear;
546
  signed char flag_tree_loop_optimize;
547
  signed char flag_tree_live_range_split;
548
  signed char flag_tree_phiprop;
549
  signed char flag_tree_pre;
550
  signed char flag_tree_pta;
551
  signed char flag_tree_reassoc;
552
  signed char flag_tree_scev_cprop;
553
  signed char flag_tree_sink;
554
  signed char flag_tree_slp_vectorize;
555
  signed char flag_tree_sra;
556
  signed char flag_tree_switch_conversion;
557
  signed char flag_tree_ter;
558
  signed char flag_tree_vect_loop_version;
559
  signed char flag_tree_vectorize;
560
  signed char flag_tree_vrp;
561
  signed char flag_unit_at_a_time;
562
  signed char flag_unroll_all_loops;
563
  signed char flag_unroll_loops;
564
  signed char flag_unsafe_loop_optimizations;
565
  signed char flag_unsafe_math_optimizations;
566
  signed char flag_unswitch_loops;
567
  signed char flag_unwind_tables;
568
  signed char flag_var_tracking;
569
  signed char flag_var_tracking_assignments;
570
  signed char flag_var_tracking_assignments_toggle;
571
  signed char flag_var_tracking_uninit;
572
  signed char flag_variable_expansion_in_unroller;
573
  signed char flag_vect_cost_model;
574
  signed char flag_value_profile_transformations;
575
  signed char flag_web;
576
  signed char flag_whole_program;
577
  signed char flag_wpa;
578
  signed char flag_wrapv;
579
};
580
 
581
/* Structure to save/restore selected target specific options.  */
582
struct GTY(()) cl_target_option
583
{
584
  int ix86_isa_flags_explicit;
585
  int target_flags_explicit;
586
  int target_flags;
587
  int ix86_isa_flags;
588
  unsigned char arch;
589
  unsigned char arch_specified;
590
  unsigned char branch_cost;
591
  unsigned char fpmath;
592
  unsigned char schedule;
593
  unsigned char tune;
594
  unsigned char tune_defaulted;
595
};
596
 
597
 
598
/* Save optimization variables into a structure.  */
599
extern void cl_optimization_save (struct cl_optimization *);
600
 
601
/* Restore optimization variables from a structure.  */
602
extern void cl_optimization_restore (struct cl_optimization *);
603
 
604
/* Print optimization variables from a structure.  */
605
extern void cl_optimization_print (FILE *, int, struct cl_optimization *);
606
 
607
/* Save selected option variables into a structure.  */
608
extern void cl_target_option_save (struct cl_target_option *);
609
 
610
/* Restore selected option variables from a structure.  */
611
extern void cl_target_option_restore (struct cl_target_option *);
612
 
613
/* Print target option variables from a structure.  */
614
extern void cl_target_option_print (FILE *, int, struct cl_target_option *);
615
#endif
616
 
617
#define MASK_128BIT_LONG_DOUBLE (1 << 0)
618
#define OPTION_MASK_ISA_3DNOW (1 << 0)
619
#define OPTION_MASK_ISA_3DNOW_A (1 << 1)
620
#define OPTION_MASK_ISA_64BIT (1 << 2)
621
#define MASK_80387 (1 << 1)
622
#define OPTION_MASK_ISA_ABM (1 << 3)
623
#define MASK_ACCUMULATE_OUTGOING_ARGS (1 << 2)
624
#define OPTION_MASK_ISA_AES (1 << 4)
625
#define MASK_ALIGN_DOUBLE (1 << 3)
626
#define OPTION_MASK_ISA_AVX (1 << 5)
627
#define MASK_CLD (1 << 4)
628
#define OPTION_MASK_ISA_CRC32 (1 << 6)
629
#define OPTION_MASK_ISA_CX16 (1 << 7)
630
#define OPTION_MASK_ISA_FMA (1 << 8)
631
#define OPTION_MASK_ISA_FMA4 (1 << 9)
632
#define MASK_FLOAT_RETURNS (1 << 5)
633
#define MASK_FUSED_MADD (1 << 6)
634
#define MASK_IEEE_FP (1 << 7)
635
#define MASK_INLINE_ALL_STRINGOPS (1 << 8)
636
#define MASK_INLINE_STRINGOPS_DYNAMICALLY (1 << 9)
637
#define OPTION_MASK_ISA_LWP (1 << 10)
638
#define OPTION_MASK_ISA_MMX (1 << 11)
639
#define OPTION_MASK_ISA_MOVBE (1 << 12)
640
#define MASK_MS_BITFIELD_LAYOUT (1 << 10)
641
#define MASK_NO_ALIGN_STRINGOPS (1 << 11)
642
#define MASK_NO_FANCY_MATH_387 (1 << 12)
643
#define MASK_NO_PUSH_ARGS (1 << 13)
644
#define MASK_NO_RED_ZONE (1 << 14)
645
#define MASK_OMIT_LEAF_FRAME_POINTER (1 << 15)
646
#define OPTION_MASK_ISA_PCLMUL (1 << 13)
647
#define OPTION_MASK_ISA_POPCNT (1 << 14)
648
#define MASK_RECIP (1 << 16)
649
#define MASK_RTD (1 << 17)
650
#define OPTION_MASK_ISA_SAHF (1 << 15)
651
#define OPTION_MASK_ISA_SSE (1 << 16)
652
#define OPTION_MASK_ISA_SSE2 (1 << 17)
653
#define OPTION_MASK_ISA_SSE3 (1 << 18)
654
#define OPTION_MASK_ISA_SSE4_1 (1 << 19)
655
#define OPTION_MASK_ISA_SSE4_2 (1 << 20)
656
#define OPTION_MASK_ISA_SSE4A (1 << 21)
657
#define MASK_SSEREGPARM (1 << 18)
658
#define OPTION_MASK_ISA_SSSE3 (1 << 22)
659
#define MASK_STACK_PROBE (1 << 19)
660
#define MASK_TLS_DIRECT_SEG_REFS (1 << 20)
661
#define OPTION_MASK_ISA_XOP (1 << 23)
662
 
663
#define TARGET_128BIT_LONG_DOUBLE ((target_flags & MASK_128BIT_LONG_DOUBLE) != 0)
664
#define OPTION_ISA_3DNOW ((ix86_isa_flags & OPTION_MASK_ISA_3DNOW) != 0)
665
#define OPTION_ISA_3DNOW_A ((ix86_isa_flags & OPTION_MASK_ISA_3DNOW_A) != 0)
666
#define OPTION_ISA_64BIT ((ix86_isa_flags & OPTION_MASK_ISA_64BIT) != 0)
667
#define TARGET_80387 ((target_flags & MASK_80387) != 0)
668
#define OPTION_ISA_ABM ((ix86_isa_flags & OPTION_MASK_ISA_ABM) != 0)
669
#define TARGET_ACCUMULATE_OUTGOING_ARGS ((target_flags & MASK_ACCUMULATE_OUTGOING_ARGS) != 0)
670
#define OPTION_ISA_AES ((ix86_isa_flags & OPTION_MASK_ISA_AES) != 0)
671
#define TARGET_ALIGN_DOUBLE ((target_flags & MASK_ALIGN_DOUBLE) != 0)
672
#define OPTION_ISA_AVX ((ix86_isa_flags & OPTION_MASK_ISA_AVX) != 0)
673
#define TARGET_CLD ((target_flags & MASK_CLD) != 0)
674
#define OPTION_ISA_CRC32 ((ix86_isa_flags & OPTION_MASK_ISA_CRC32) != 0)
675
#define OPTION_ISA_CX16 ((ix86_isa_flags & OPTION_MASK_ISA_CX16) != 0)
676
#define OPTION_ISA_FMA ((ix86_isa_flags & OPTION_MASK_ISA_FMA) != 0)
677
#define OPTION_ISA_FMA4 ((ix86_isa_flags & OPTION_MASK_ISA_FMA4) != 0)
678
#define TARGET_FLOAT_RETURNS ((target_flags & MASK_FLOAT_RETURNS) != 0)
679
#define TARGET_FUSED_MADD ((target_flags & MASK_FUSED_MADD) != 0)
680
#define TARGET_IEEE_FP ((target_flags & MASK_IEEE_FP) != 0)
681
#define TARGET_INLINE_ALL_STRINGOPS ((target_flags & MASK_INLINE_ALL_STRINGOPS) != 0)
682
#define TARGET_INLINE_STRINGOPS_DYNAMICALLY ((target_flags & MASK_INLINE_STRINGOPS_DYNAMICALLY) != 0)
683
#define OPTION_ISA_LWP ((ix86_isa_flags & OPTION_MASK_ISA_LWP) != 0)
684
#define OPTION_ISA_MMX ((ix86_isa_flags & OPTION_MASK_ISA_MMX) != 0)
685
#define OPTION_ISA_MOVBE ((ix86_isa_flags & OPTION_MASK_ISA_MOVBE) != 0)
686
#define TARGET_MS_BITFIELD_LAYOUT ((target_flags & MASK_MS_BITFIELD_LAYOUT) != 0)
687
#define TARGET_NO_ALIGN_STRINGOPS ((target_flags & MASK_NO_ALIGN_STRINGOPS) != 0)
688
#define TARGET_NO_FANCY_MATH_387 ((target_flags & MASK_NO_FANCY_MATH_387) != 0)
689
#define TARGET_NO_PUSH_ARGS ((target_flags & MASK_NO_PUSH_ARGS) != 0)
690
#define TARGET_NO_RED_ZONE ((target_flags & MASK_NO_RED_ZONE) != 0)
691
#define TARGET_OMIT_LEAF_FRAME_POINTER ((target_flags & MASK_OMIT_LEAF_FRAME_POINTER) != 0)
692
#define OPTION_ISA_PCLMUL ((ix86_isa_flags & OPTION_MASK_ISA_PCLMUL) != 0)
693
#define OPTION_ISA_POPCNT ((ix86_isa_flags & OPTION_MASK_ISA_POPCNT) != 0)
694
#define TARGET_RECIP ((target_flags & MASK_RECIP) != 0)
695
#define TARGET_RTD ((target_flags & MASK_RTD) != 0)
696
#define OPTION_ISA_SAHF ((ix86_isa_flags & OPTION_MASK_ISA_SAHF) != 0)
697
#define OPTION_ISA_SSE ((ix86_isa_flags & OPTION_MASK_ISA_SSE) != 0)
698
#define OPTION_ISA_SSE2 ((ix86_isa_flags & OPTION_MASK_ISA_SSE2) != 0)
699
#define OPTION_ISA_SSE3 ((ix86_isa_flags & OPTION_MASK_ISA_SSE3) != 0)
700
#define OPTION_ISA_SSE4_1 ((ix86_isa_flags & OPTION_MASK_ISA_SSE4_1) != 0)
701
#define OPTION_ISA_SSE4_2 ((ix86_isa_flags & OPTION_MASK_ISA_SSE4_2) != 0)
702
#define OPTION_ISA_SSE4A ((ix86_isa_flags & OPTION_MASK_ISA_SSE4A) != 0)
703
#define TARGET_SSEREGPARM ((target_flags & MASK_SSEREGPARM) != 0)
704
#define OPTION_ISA_SSSE3 ((ix86_isa_flags & OPTION_MASK_ISA_SSSE3) != 0)
705
#define TARGET_STACK_PROBE ((target_flags & MASK_STACK_PROBE) != 0)
706
#define TARGET_TLS_DIRECT_SEG_REFS ((target_flags & MASK_TLS_DIRECT_SEG_REFS) != 0)
707
#define OPTION_ISA_XOP ((ix86_isa_flags & OPTION_MASK_ISA_XOP) != 0)
708
 
709
#define TARGET_ALIGN_STRINGOPS ((target_flags & MASK_NO_ALIGN_STRINGOPS) == 0)
710
#define TARGET_USE_FANCY_MATH_387 ((target_flags & MASK_NO_FANCY_MATH_387) == 0)
711
#define TARGET_PUSH_ARGS ((target_flags & MASK_NO_PUSH_ARGS) == 0)
712
#define TARGET_RED_ZONE ((target_flags & MASK_NO_RED_ZONE) == 0)
713
 
714
#define CL_Ada        (1 << 0)
715
#define CL_C          (1 << 1)
716
#define CL_CXX        (1 << 2)
717
#define CL_Fortran    (1 << 3)
718
#define CL_Java       (1 << 4)
719
#define CL_LTO        (1 << 5)
720
#define CL_ObjC       (1 << 6)
721
#define CL_ObjCXX     (1 << 7)
722
#define CL_LANG_ALL   ((1 << 8) - 1)
723
 
724
enum opt_code
725
{
726
  OPT__help,                                 /* --help */
727
  OPT__help_,                                /* --help= */
728
  OPT__output_pch_,                          /* --output-pch= */
729
  OPT__param,                                /* --param */
730
  OPT__target_help,                          /* --target-help */
731
  OPT__version,                              /* --version */
732
  OPT_A,                                     /* -A */
733
  OPT_C,                                     /* -C */
734
  OPT_CC,                                    /* -CC */
735
  OPT_D,                                     /* -D */
736
  OPT_E,                                     /* -E */
737
  OPT_F,                                     /* -F */
738
  OPT_G,                                     /* -G */
739
  OPT_H,                                     /* -H */
740
  OPT_I,                                     /* -I */
741
  OPT_J,                                     /* -J */
742
  OPT_M,                                     /* -M */
743
  OPT_MD,                                    /* -MD */
744
  OPT_MD_,                                   /* -MD_ */
745
  OPT_MF,                                    /* -MF */
746
  OPT_MG,                                    /* -MG */
747
  OPT_MM,                                    /* -MM */
748
  OPT_MMD,                                   /* -MMD */
749
  OPT_MMD_,                                  /* -MMD_ */
750
  OPT_MP,                                    /* -MP */
751
  OPT_MQ,                                    /* -MQ */
752
  OPT_MT,                                    /* -MT */
753
  OPT_O,                                     /* -O */
754
  OPT_Os,                                    /* -Os */
755
  OPT_P,                                     /* -P */
756
  OPT_U,                                     /* -U */
757
  OPT_W,                                     /* -W */
758
  OPT_Wabi,                                  /* -Wabi */
759
  OPT_Waddress,                              /* -Waddress */
760
  OPT_Waggregate_return,                     /* -Waggregate-return */
761
  OPT_Waliasing,                             /* -Waliasing */
762
  OPT_Walign_commons,                        /* -Walign-commons */
763
  OPT_Wall,                                  /* -Wall */
764
  OPT_Wall_deprecation,                      /* -Wall-deprecation */
765
  OPT_Wall_javadoc,                          /* -Wall-javadoc */
766
  OPT_Wampersand,                            /* -Wampersand */
767
  OPT_Warray_bounds,                         /* -Warray-bounds */
768
  OPT_Warray_temporaries,                    /* -Warray-temporaries */
769
  OPT_Wassert_identifier,                    /* -Wassert-identifier */
770
  OPT_Wassign_intercept,                     /* -Wassign-intercept */
771
  OPT_Wattributes,                           /* -Wattributes */
772
  OPT_Wbad_function_cast,                    /* -Wbad-function-cast */
773
  OPT_Wboxing,                               /* -Wboxing */
774
  OPT_Wbuiltin_macro_redefined,              /* -Wbuiltin-macro-redefined */
775
  OPT_Wc___compat,                           /* -Wc++-compat */
776
  OPT_Wc__0x_compat,                         /* -Wc++0x-compat */
777
  OPT_Wcast_align,                           /* -Wcast-align */
778
  OPT_Wcast_qual,                            /* -Wcast-qual */
779
  OPT_Wchar_concat,                          /* -Wchar-concat */
780
  OPT_Wchar_subscripts,                      /* -Wchar-subscripts */
781
  OPT_Wcharacter_truncation,                 /* -Wcharacter-truncation */
782
  OPT_Wclobbered,                            /* -Wclobbered */
783
  OPT_Wcomment,                              /* -Wcomment */
784
  OPT_Wcomments,                             /* -Wcomments */
785
  OPT_Wcondition_assign,                     /* -Wcondition-assign */
786
  OPT_Wconstructor_name,                     /* -Wconstructor-name */
787
  OPT_Wconversion,                           /* -Wconversion */
788
  OPT_Wconversion_null,                      /* -Wconversion-null */
789
  OPT_Wcoverage_mismatch,                    /* -Wcoverage-mismatch */
790
  OPT_Wctor_dtor_privacy,                    /* -Wctor-dtor-privacy */
791
  OPT_Wdeclaration_after_statement,          /* -Wdeclaration-after-statement */
792
  OPT_Wdep_ann,                              /* -Wdep-ann */
793
  OPT_Wdeprecated,                           /* -Wdeprecated */
794
  OPT_Wdeprecated_declarations,              /* -Wdeprecated-declarations */
795
  OPT_Wdisabled_optimization,                /* -Wdisabled-optimization */
796
  OPT_Wdiscouraged,                          /* -Wdiscouraged */
797
  OPT_Wdiv_by_zero,                          /* -Wdiv-by-zero */
798
  OPT_Weffc__,                               /* -Weffc++ */
799
  OPT_Wempty_block,                          /* -Wempty-block */
800
  OPT_Wempty_body,                           /* -Wempty-body */
801
  OPT_Wendif_labels,                         /* -Wendif-labels */
802
  OPT_Wenum_compare,                         /* -Wenum-compare */
803
  OPT_Wenum_identifier,                      /* -Wenum-identifier */
804
  OPT_Wenum_switch,                          /* -Wenum-switch */
805
  OPT_Werror,                                /* -Werror */
806
  OPT_Werror_implicit_function_declaration,  /* -Werror-implicit-function-declaration */
807
  OPT_Werror_,                               /* -Werror= */
808
  OPT_Wextra,                                /* -Wextra */
809
  OPT_Wextraneous_semicolon,                 /* -Wextraneous-semicolon */
810
  OPT_Wfallthrough,                          /* -Wfallthrough */
811
  OPT_Wfatal_errors,                         /* -Wfatal-errors */
812
  OPT_Wfield_hiding,                         /* -Wfield-hiding */
813
  OPT_Wfinal_bound,                          /* -Wfinal-bound */
814
  OPT_Wfinally,                              /* -Wfinally */
815
  OPT_Wfloat_equal,                          /* -Wfloat-equal */
816
  OPT_Wforbidden,                            /* -Wforbidden */
817
  OPT_Wformat,                               /* -Wformat */
818
  OPT_Wformat_contains_nul,                  /* -Wformat-contains-nul */
819
  OPT_Wformat_extra_args,                    /* -Wformat-extra-args */
820
  OPT_Wformat_nonliteral,                    /* -Wformat-nonliteral */
821
  OPT_Wformat_security,                      /* -Wformat-security */
822
  OPT_Wformat_y2k,                           /* -Wformat-y2k */
823
  OPT_Wformat_zero_length,                   /* -Wformat-zero-length */
824
  OPT_Wformat_,                              /* -Wformat= */
825
  OPT_Wframe_larger_than_,                   /* -Wframe-larger-than= */
826
  OPT_Whiding,                               /* -Whiding */
827
  OPT_Wignored_qualifiers,                   /* -Wignored-qualifiers */
828
  OPT_Wimplicit,                             /* -Wimplicit */
829
  OPT_Wimplicit_function_declaration,        /* -Wimplicit-function-declaration */
830
  OPT_Wimplicit_int,                         /* -Wimplicit-int */
831
  OPT_Wimplicit_interface,                   /* -Wimplicit-interface */
832
  OPT_Wimplicit_procedure,                   /* -Wimplicit-procedure */
833
  OPT_Wimport,                               /* -Wimport */
834
  OPT_Windirect_static,                      /* -Windirect-static */
835
  OPT_Winit_self,                            /* -Winit-self */
836
  OPT_Winline,                               /* -Winline */
837
  OPT_Wint_to_pointer_cast,                  /* -Wint-to-pointer-cast */
838
  OPT_Wintf_annotation,                      /* -Wintf-annotation */
839
  OPT_Wintf_non_inherited,                   /* -Wintf-non-inherited */
840
  OPT_Wintrinsic_shadow,                     /* -Wintrinsic-shadow */
841
  OPT_Wintrinsics_std,                       /* -Wintrinsics-std */
842
  OPT_Winvalid_offsetof,                     /* -Winvalid-offsetof */
843
  OPT_Winvalid_pch,                          /* -Winvalid-pch */
844
  OPT_Wjavadoc,                              /* -Wjavadoc */
845
  OPT_Wjump_misses_init,                     /* -Wjump-misses-init */
846
  OPT_Wlarger_than_,                         /* -Wlarger-than- */
847
  OPT_Wlarger_than_eq,                       /* -Wlarger-than= */
848
  OPT_Wline_truncation,                      /* -Wline-truncation */
849
  OPT_Wlocal_hiding,                         /* -Wlocal-hiding */
850
  OPT_Wlogical_op,                           /* -Wlogical-op */
851
  OPT_Wlong_long,                            /* -Wlong-long */
852
  OPT_Wmain,                                 /* -Wmain */
853
  OPT_Wmasked_catch_block,                   /* -Wmasked-catch-block */
854
  OPT_Wmissing_braces,                       /* -Wmissing-braces */
855
  OPT_Wmissing_declarations,                 /* -Wmissing-declarations */
856
  OPT_Wmissing_field_initializers,           /* -Wmissing-field-initializers */
857
  OPT_Wmissing_format_attribute,             /* -Wmissing-format-attribute */
858
  OPT_Wmissing_include_dirs,                 /* -Wmissing-include-dirs */
859
  OPT_Wmissing_noreturn,                     /* -Wmissing-noreturn */
860
  OPT_Wmissing_parameter_type,               /* -Wmissing-parameter-type */
861
  OPT_Wmissing_prototypes,                   /* -Wmissing-prototypes */
862
  OPT_Wmudflap,                              /* -Wmudflap */
863
  OPT_Wmultichar,                            /* -Wmultichar */
864
  OPT_Wnested_externs,                       /* -Wnested-externs */
865
  OPT_Wnls,                                  /* -Wnls */
866
  OPT_Wno_effect_assign,                     /* -Wno-effect-assign */
867
  OPT_Wnon_template_friend,                  /* -Wnon-template-friend */
868
  OPT_Wnon_virtual_dtor,                     /* -Wnon-virtual-dtor */
869
  OPT_Wnonnull,                              /* -Wnonnull */
870
  OPT_Wnormalized_,                          /* -Wnormalized= */
871
  OPT_Wnull,                                 /* -Wnull */
872
  OPT_Wold_style_cast,                       /* -Wold-style-cast */
873
  OPT_Wold_style_declaration,                /* -Wold-style-declaration */
874
  OPT_Wold_style_definition,                 /* -Wold-style-definition */
875
  OPT_Wout_of_date,                          /* -Wout-of-date */
876
  OPT_Wover_ann,                             /* -Wover-ann */
877
  OPT_Woverflow,                             /* -Woverflow */
878
  OPT_Woverlength_strings,                   /* -Woverlength-strings */
879
  OPT_Woverloaded_virtual,                   /* -Woverloaded-virtual */
880
  OPT_Woverride_init,                        /* -Woverride-init */
881
  OPT_Wpacked,                               /* -Wpacked */
882
  OPT_Wpacked_bitfield_compat,               /* -Wpacked-bitfield-compat */
883
  OPT_Wpadded,                               /* -Wpadded */
884
  OPT_Wparam_assign,                         /* -Wparam-assign */
885
  OPT_Wparentheses,                          /* -Wparentheses */
886
  OPT_Wpedantic_ms_format,                   /* -Wpedantic-ms-format */
887
  OPT_Wpkg_default_method,                   /* -Wpkg-default-method */
888
  OPT_Wpmf_conversions,                      /* -Wpmf-conversions */
889
  OPT_Wpointer_arith,                        /* -Wpointer-arith */
890
  OPT_Wpointer_sign,                         /* -Wpointer-sign */
891
  OPT_Wpointer_to_int_cast,                  /* -Wpointer-to-int-cast */
892
  OPT_Wpragmas,                              /* -Wpragmas */
893
  OPT_Wprotocol,                             /* -Wprotocol */
894
  OPT_Wpsabi,                                /* -Wpsabi */
895
  OPT_Wraw,                                  /* -Wraw */
896
  OPT_Wredundant_decls,                      /* -Wredundant-decls */
897
  OPT_Wredundant_modifiers,                  /* -Wredundant-modifiers */
898
  OPT_Wreorder,                              /* -Wreorder */
899
  OPT_Wreturn_type,                          /* -Wreturn-type */
900
  OPT_Wselector,                             /* -Wselector */
901
  OPT_Wsequence_point,                       /* -Wsequence-point */
902
  OPT_Wserial,                               /* -Wserial */
903
  OPT_Wshadow,                               /* -Wshadow */
904
  OPT_Wsign_compare,                         /* -Wsign-compare */
905
  OPT_Wsign_conversion,                      /* -Wsign-conversion */
906
  OPT_Wsign_promo,                           /* -Wsign-promo */
907
  OPT_Wspecial_param_hiding,                 /* -Wspecial-param-hiding */
908
  OPT_Wstack_protector,                      /* -Wstack-protector */
909
  OPT_Wstatic_access,                        /* -Wstatic-access */
910
  OPT_Wstatic_receiver,                      /* -Wstatic-receiver */
911
  OPT_Wstrict_aliasing,                      /* -Wstrict-aliasing */
912
  OPT_Wstrict_aliasing_,                     /* -Wstrict-aliasing= */
913
  OPT_Wstrict_null_sentinel,                 /* -Wstrict-null-sentinel */
914
  OPT_Wstrict_overflow,                      /* -Wstrict-overflow */
915
  OPT_Wstrict_overflow_,                     /* -Wstrict-overflow= */
916
  OPT_Wstrict_prototypes,                    /* -Wstrict-prototypes */
917
  OPT_Wstrict_selector_match,                /* -Wstrict-selector-match */
918
  OPT_Wsuppress,                             /* -Wsuppress */
919
  OPT_Wsurprising,                           /* -Wsurprising */
920
  OPT_Wswitch,                               /* -Wswitch */
921
  OPT_Wswitch_default,                       /* -Wswitch-default */
922
  OPT_Wswitch_enum,                          /* -Wswitch-enum */
923
  OPT_Wsync_nand,                            /* -Wsync-nand */
924
  OPT_Wsynth,                                /* -Wsynth */
925
  OPT_Wsynthetic_access,                     /* -Wsynthetic-access */
926
  OPT_Wsystem_headers,                       /* -Wsystem-headers */
927
  OPT_Wtabs,                                 /* -Wtabs */
928
  OPT_Wtasks,                                /* -Wtasks */
929
  OPT_Wtraditional,                          /* -Wtraditional */
930
  OPT_Wtraditional_conversion,               /* -Wtraditional-conversion */
931
  OPT_Wtrigraphs,                            /* -Wtrigraphs */
932
  OPT_Wtype_hiding,                          /* -Wtype-hiding */
933
  OPT_Wtype_limits,                          /* -Wtype-limits */
934
  OPT_Wuncheck,                              /* -Wuncheck */
935
  OPT_Wundeclared_selector,                  /* -Wundeclared-selector */
936
  OPT_Wundef,                                /* -Wundef */
937
  OPT_Wunderflow,                            /* -Wunderflow */
938
  OPT_Wuninitialized,                        /* -Wuninitialized */
939
  OPT_Wunknown_pragmas,                      /* -Wunknown-pragmas */
940
  OPT_Wunnecessary_else,                     /* -Wunnecessary-else */
941
  OPT_Wunqualified_field,                    /* -Wunqualified-field */
942
  OPT_Wunreachable_code,                     /* -Wunreachable-code */
943
  OPT_Wunsafe_loop_optimizations,            /* -Wunsafe-loop-optimizations */
944
  OPT_Wunsuffixed_float_constants,           /* -Wunsuffixed-float-constants */
945
  OPT_Wunused,                               /* -Wunused */
946
  OPT_Wunused_argument,                      /* -Wunused-argument */
947
  OPT_Wunused_function,                      /* -Wunused-function */
948
  OPT_Wunused_import,                        /* -Wunused-import */
949
  OPT_Wunused_label,                         /* -Wunused-label */
950
  OPT_Wunused_local,                         /* -Wunused-local */
951
  OPT_Wunused_macros,                        /* -Wunused-macros */
952
  OPT_Wunused_parameter,                     /* -Wunused-parameter */
953
  OPT_Wunused_private,                       /* -Wunused-private */
954
  OPT_Wunused_result,                        /* -Wunused-result */
955
  OPT_Wunused_thrown,                        /* -Wunused-thrown */
956
  OPT_Wunused_value,                         /* -Wunused-value */
957
  OPT_Wunused_variable,                      /* -Wunused-variable */
958
  OPT_Wuseless_type_check,                   /* -Wuseless-type-check */
959
  OPT_Wvarargs_cast,                         /* -Wvarargs-cast */
960
  OPT_Wvariadic_macros,                      /* -Wvariadic-macros */
961
  OPT_Wvla,                                  /* -Wvla */
962
  OPT_Wvolatile_register_var,                /* -Wvolatile-register-var */
963
  OPT_Wwarning_token,                        /* -Wwarning-token */
964
  OPT_Wwrite_strings,                        /* -Wwrite-strings */
965
  OPT_ansi,                                  /* -ansi */
966
  OPT_aux_info,                              /* -aux-info */
967
  OPT_aux_info_,                             /* -aux-info= */
968
  OPT_auxbase,                               /* -auxbase */
969
  OPT_auxbase_strip,                         /* -auxbase-strip */
970
  OPT_cpp,                                   /* -cpp */
971
  OPT_d,                                     /* -d */
972
  OPT_dumpbase,                              /* -dumpbase */
973
  OPT_dumpdir,                               /* -dumpdir */
974
  OPT_fCLASSPATH_,                           /* -fCLASSPATH= */
975
  OPT_fPIC,                                  /* -fPIC */
976
  OPT_fPIE,                                  /* -fPIE */
977
  OPT_fRTS_,                                 /* -fRTS= */
978
  OPT_fabi_version_,                         /* -fabi-version= */
979
  OPT_faccess_control,                       /* -faccess-control */
980
  OPT_falign_commons,                        /* -falign-commons */
981
  OPT_falign_functions,                      /* -falign-functions */
982
  OPT_falign_functions_,                     /* -falign-functions= */
983
  OPT_falign_jumps,                          /* -falign-jumps */
984
  OPT_falign_jumps_,                         /* -falign-jumps= */
985
  OPT_falign_labels,                         /* -falign-labels */
986
  OPT_falign_labels_,                        /* -falign-labels= */
987
  OPT_falign_loops,                          /* -falign-loops */
988
  OPT_falign_loops_,                         /* -falign-loops= */
989
  OPT_fall_intrinsics,                       /* -fall-intrinsics */
990
  OPT_fall_virtual,                          /* -fall-virtual */
991
  OPT_fallow_leading_underscore,             /* -fallow-leading-underscore */
992
  OPT_falt_external_templates,               /* -falt-external-templates */
993
  OPT_fargument_alias,                       /* -fargument-alias */
994
  OPT_fargument_noalias,                     /* -fargument-noalias */
995
  OPT_fargument_noalias_anything,            /* -fargument-noalias-anything */
996
  OPT_fargument_noalias_global,              /* -fargument-noalias-global */
997
  OPT_fasm,                                  /* -fasm */
998
  OPT_fassert,                               /* -fassert */
999
  OPT_fassociative_math,                     /* -fassociative-math */
1000
  OPT_fassume_compiled,                      /* -fassume-compiled */
1001
  OPT_fassume_compiled_,                     /* -fassume-compiled= */
1002
  OPT_fasynchronous_unwind_tables,           /* -fasynchronous-unwind-tables */
1003
  OPT_fauto_inc_dec,                         /* -fauto-inc-dec */
1004
  OPT_fautomatic,                            /* -fautomatic */
1005
  OPT_faux_classpath,                        /* -faux-classpath */
1006
  OPT_fbackslash,                            /* -fbackslash */
1007
  OPT_fbacktrace,                            /* -fbacktrace */
1008
  OPT_fblas_matmul_limit_,                   /* -fblas-matmul-limit= */
1009
  OPT_fbootclasspath_,                       /* -fbootclasspath= */
1010
  OPT_fbootstrap_classes,                    /* -fbootstrap-classes */
1011
  OPT_fbounds_check,                         /* -fbounds-check */
1012
  OPT_fbranch_count_reg,                     /* -fbranch-count-reg */
1013
  OPT_fbranch_probabilities,                 /* -fbranch-probabilities */
1014
  OPT_fbranch_target_load_optimize,          /* -fbranch-target-load-optimize */
1015
  OPT_fbranch_target_load_optimize2,         /* -fbranch-target-load-optimize2 */
1016
  OPT_fbtr_bb_exclusive,                     /* -fbtr-bb-exclusive */
1017
  OPT_fbuiltin,                              /* -fbuiltin */
1018
  OPT_fbuiltin_,                             /* -fbuiltin- */
1019
  OPT_fcall_saved_,                          /* -fcall-saved- */
1020
  OPT_fcall_used_,                           /* -fcall-used- */
1021
  OPT_fcaller_saves,                         /* -fcaller-saves */
1022
  OPT_fcheck_array_temporaries,              /* -fcheck-array-temporaries */
1023
  OPT_fcheck_data_deps,                      /* -fcheck-data-deps */
1024
  OPT_fcheck_new,                            /* -fcheck-new */
1025
  OPT_fcheck_references,                     /* -fcheck-references */
1026
  OPT_fcheck_,                               /* -fcheck= */
1027
  OPT_fclasspath_,                           /* -fclasspath= */
1028
  OPT_fcommon,                               /* -fcommon */
1029
  OPT_fcompare_debug_second,                 /* -fcompare-debug-second */
1030
  OPT_fcompare_debug_,                       /* -fcompare-debug= */
1031
  OPT_fcompile_resource_,                    /* -fcompile-resource= */
1032
  OPT_fcond_mismatch,                        /* -fcond-mismatch */
1033
  OPT_fconserve_space,                       /* -fconserve-space */
1034
  OPT_fconserve_stack,                       /* -fconserve-stack */
1035
  OPT_fconstant_string_class_,               /* -fconstant-string-class= */
1036
  OPT_fconvert_big_endian,                   /* -fconvert=big-endian */
1037
  OPT_fconvert_little_endian,                /* -fconvert=little-endian */
1038
  OPT_fconvert_native,                       /* -fconvert=native */
1039
  OPT_fconvert_swap,                         /* -fconvert=swap */
1040
  OPT_fcprop_registers,                      /* -fcprop-registers */
1041
  OPT_fcray_pointer,                         /* -fcray-pointer */
1042
  OPT_fcrossjumping,                         /* -fcrossjumping */
1043
  OPT_fcse_follow_jumps,                     /* -fcse-follow-jumps */
1044
  OPT_fcse_skip_blocks,                      /* -fcse-skip-blocks */
1045
  OPT_fcx_fortran_rules,                     /* -fcx-fortran-rules */
1046
  OPT_fcx_limited_range,                     /* -fcx-limited-range */
1047
  OPT_fd_lines_as_code,                      /* -fd-lines-as-code */
1048
  OPT_fd_lines_as_comments,                  /* -fd-lines-as-comments */
1049
  OPT_fdata_sections,                        /* -fdata-sections */
1050
  OPT_fdbg_cnt_list,                         /* -fdbg-cnt-list */
1051
  OPT_fdbg_cnt_,                             /* -fdbg-cnt= */
1052
  OPT_fdce,                                  /* -fdce */
1053
  OPT_fdebug_prefix_map_,                    /* -fdebug-prefix-map= */
1054
  OPT_fdeduce_init_list,                     /* -fdeduce-init-list */
1055
  OPT_fdefault_double_8,                     /* -fdefault-double-8 */
1056
  OPT_fdefault_inline,                       /* -fdefault-inline */
1057
  OPT_fdefault_integer_8,                    /* -fdefault-integer-8 */
1058
  OPT_fdefault_real_8,                       /* -fdefault-real-8 */
1059
  OPT_fdefer_pop,                            /* -fdefer-pop */
1060
  OPT_fdelayed_branch,                       /* -fdelayed-branch */
1061
  OPT_fdelete_null_pointer_checks,           /* -fdelete-null-pointer-checks */
1062
  OPT_fdiagnostics_show_location_,           /* -fdiagnostics-show-location= */
1063
  OPT_fdiagnostics_show_option,              /* -fdiagnostics-show-option */
1064
  OPT_fdirectives_only,                      /* -fdirectives-only */
1065
  OPT_fdisable_assertions,                   /* -fdisable-assertions */
1066
  OPT_fdisable_assertions_,                  /* -fdisable-assertions= */
1067
  OPT_fdollar_ok,                            /* -fdollar-ok */
1068
  OPT_fdollars_in_identifiers,               /* -fdollars-in-identifiers */
1069
  OPT_fdse,                                  /* -fdse */
1070
  OPT_fdump_,                                /* -fdump- */
1071
  OPT_fdump_core,                            /* -fdump-core */
1072
  OPT_fdump_final_insns_,                    /* -fdump-final-insns= */
1073
  OPT_fdump_noaddr,                          /* -fdump-noaddr */
1074
  OPT_fdump_parse_tree,                      /* -fdump-parse-tree */
1075
  OPT_fdump_unnumbered,                      /* -fdump-unnumbered */
1076
  OPT_fdump_unnumbered_links,                /* -fdump-unnumbered-links */
1077
  OPT_fdwarf2_cfi_asm,                       /* -fdwarf2-cfi-asm */
1078
  OPT_fearly_inlining,                       /* -fearly-inlining */
1079
  OPT_felide_constructors,                   /* -felide-constructors */
1080
  OPT_feliminate_dwarf2_dups,                /* -feliminate-dwarf2-dups */
1081
  OPT_feliminate_unused_debug_symbols,       /* -feliminate-unused-debug-symbols */
1082
  OPT_feliminate_unused_debug_types,         /* -feliminate-unused-debug-types */
1083
  OPT_femit_class_debug_always,              /* -femit-class-debug-always */
1084
  OPT_femit_class_file,                      /* -femit-class-file */
1085
  OPT_femit_class_files,                     /* -femit-class-files */
1086
  OPT_femit_struct_debug_baseonly,           /* -femit-struct-debug-baseonly */
1087
  OPT_femit_struct_debug_detailed_,          /* -femit-struct-debug-detailed= */
1088
  OPT_femit_struct_debug_reduced,            /* -femit-struct-debug-reduced */
1089
  OPT_fenable_assertions,                    /* -fenable-assertions */
1090
  OPT_fenable_assertions_,                   /* -fenable-assertions= */
1091
  OPT_fenable_icf_debug,                     /* -fenable-icf-debug */
1092
  OPT_fencoding_,                            /* -fencoding= */
1093
  OPT_fenforce_eh_specs,                     /* -fenforce-eh-specs */
1094
  OPT_fenum_int_equiv,                       /* -fenum-int-equiv */
1095
  OPT_fexceptions,                           /* -fexceptions */
1096
  OPT_fexcess_precision_,                    /* -fexcess-precision= */
1097
  OPT_fexec_charset_,                        /* -fexec-charset= */
1098
  OPT_fexpensive_optimizations,              /* -fexpensive-optimizations */
1099
  OPT_fextdirs_,                             /* -fextdirs= */
1100
  OPT_fextended_identifiers,                 /* -fextended-identifiers */
1101
  OPT_fexternal_blas,                        /* -fexternal-blas */
1102
  OPT_fexternal_templates,                   /* -fexternal-templates */
1103
  OPT_ff2c,                                  /* -ff2c */
1104
  OPT_ffast_math,                            /* -ffast-math */
1105
  OPT_ffilelist_file,                        /* -ffilelist-file */
1106
  OPT_ffinite_math_only,                     /* -ffinite-math-only */
1107
  OPT_ffixed_,                               /* -ffixed- */
1108
  OPT_ffixed_form,                           /* -ffixed-form */
1109
  OPT_ffixed_line_length_,                   /* -ffixed-line-length- */
1110
  OPT_ffixed_line_length_none,               /* -ffixed-line-length-none */
1111
  OPT_ffloat_store,                          /* -ffloat-store */
1112
  OPT_ffor_scope,                            /* -ffor-scope */
1113
  OPT_fforce_addr,                           /* -fforce-addr */
1114
  OPT_fforce_classes_archive_check,          /* -fforce-classes-archive-check */
1115
  OPT_fforward_propagate,                    /* -fforward-propagate */
1116
  OPT_ffpe_trap_,                            /* -ffpe-trap= */
1117
  OPT_ffree_form,                            /* -ffree-form */
1118
  OPT_ffree_line_length_,                    /* -ffree-line-length- */
1119
  OPT_ffree_line_length_none,                /* -ffree-line-length-none */
1120
  OPT_ffreestanding,                         /* -ffreestanding */
1121
  OPT_ffriend_injection,                     /* -ffriend-injection */
1122
  OPT_ffunction_cse,                         /* -ffunction-cse */
1123
  OPT_ffunction_sections,                    /* -ffunction-sections */
1124
  OPT_fgcse,                                 /* -fgcse */
1125
  OPT_fgcse_after_reload,                    /* -fgcse-after-reload */
1126
  OPT_fgcse_las,                             /* -fgcse-las */
1127
  OPT_fgcse_lm,                              /* -fgcse-lm */
1128
  OPT_fgcse_sm,                              /* -fgcse-sm */
1129
  OPT_fgnu_keywords,                         /* -fgnu-keywords */
1130
  OPT_fgnu_runtime,                          /* -fgnu-runtime */
1131
  OPT_fgnu89_inline,                         /* -fgnu89-inline */
1132
  OPT_fgraphite,                             /* -fgraphite */
1133
  OPT_fgraphite_identity,                    /* -fgraphite-identity */
1134
  OPT_fguess_branch_probability,             /* -fguess-branch-probability */
1135
  OPT_fguiding_decls,                        /* -fguiding-decls */
1136
  OPT_fhandle_exceptions,                    /* -fhandle-exceptions */
1137
  OPT_fhash_synchronization,                 /* -fhash-synchronization */
1138
  OPT_fhelp,                                 /* -fhelp */
1139
  OPT_fhelp_,                                /* -fhelp= */
1140
  OPT_fhonor_std,                            /* -fhonor-std */
1141
  OPT_fhosted,                               /* -fhosted */
1142
  OPT_fhuge_objects,                         /* -fhuge-objects */
1143
  OPT_fident,                                /* -fident */
1144
  OPT_fif_conversion,                        /* -fif-conversion */
1145
  OPT_fif_conversion2,                       /* -fif-conversion2 */
1146
  OPT_fimplement_inlines,                    /* -fimplement-inlines */
1147
  OPT_fimplicit_inline_templates,            /* -fimplicit-inline-templates */
1148
  OPT_fimplicit_none,                        /* -fimplicit-none */
1149
  OPT_fimplicit_templates,                   /* -fimplicit-templates */
1150
  OPT_findirect_classes,                     /* -findirect-classes */
1151
  OPT_findirect_dispatch,                    /* -findirect-dispatch */
1152
  OPT_findirect_inlining,                    /* -findirect-inlining */
1153
  OPT_finhibit_size_directive,               /* -finhibit-size-directive */
1154
  OPT_finit_character_,                      /* -finit-character= */
1155
  OPT_finit_integer_,                        /* -finit-integer= */
1156
  OPT_finit_local_zero,                      /* -finit-local-zero */
1157
  OPT_finit_logical_,                        /* -finit-logical= */
1158
  OPT_finit_real_,                           /* -finit-real= */
1159
  OPT_finline,                               /* -finline */
1160
  OPT_finline_functions,                     /* -finline-functions */
1161
  OPT_finline_functions_called_once,         /* -finline-functions-called-once */
1162
  OPT_finline_limit_,                        /* -finline-limit- */
1163
  OPT_finline_limit_eq,                      /* -finline-limit= */
1164
  OPT_finline_small_functions,               /* -finline-small-functions */
1165
  OPT_finput_charset_,                       /* -finput-charset= */
1166
  OPT_finstrument_functions,                 /* -finstrument-functions */
1167
  OPT_finstrument_functions_exclude_file_list_,/* -finstrument-functions-exclude-file-list= */
1168
  OPT_finstrument_functions_exclude_function_list_,/* -finstrument-functions-exclude-function-list= */
1169
  OPT_fintrinsic_modules_path,               /* -fintrinsic-modules-path */
1170
  OPT_fipa_cp,                               /* -fipa-cp */
1171
  OPT_fipa_cp_clone,                         /* -fipa-cp-clone */
1172
  OPT_fipa_matrix_reorg,                     /* -fipa-matrix-reorg */
1173
  OPT_fipa_pta,                              /* -fipa-pta */
1174
  OPT_fipa_pure_const,                       /* -fipa-pure-const */
1175
  OPT_fipa_reference,                        /* -fipa-reference */
1176
  OPT_fipa_sra,                              /* -fipa-sra */
1177
  OPT_fipa_struct_reorg,                     /* -fipa-struct-reorg */
1178
  OPT_fipa_type_escape,                      /* -fipa-type-escape */
1179
  OPT_fira_algorithm_,                       /* -fira-algorithm= */
1180
  OPT_fira_coalesce,                         /* -fira-coalesce */
1181
  OPT_fira_loop_pressure,                    /* -fira-loop-pressure */
1182
  OPT_fira_region_,                          /* -fira-region= */
1183
  OPT_fira_share_save_slots,                 /* -fira-share-save-slots */
1184
  OPT_fira_share_spill_slots,                /* -fira-share-spill-slots */
1185
  OPT_fira_verbose_,                         /* -fira-verbose= */
1186
  OPT_fivopts,                               /* -fivopts */
1187
  OPT_fjni,                                  /* -fjni */
1188
  OPT_fjump_tables,                          /* -fjump-tables */
1189
  OPT_fkeep_inline_functions,                /* -fkeep-inline-functions */
1190
  OPT_fkeep_static_consts,                   /* -fkeep-static-consts */
1191
  OPT_flabels_ok,                            /* -flabels-ok */
1192
  OPT_flax_vector_conversions,               /* -flax-vector-conversions */
1193
  OPT_fleading_underscore,                   /* -fleading-underscore */
1194
  OPT_floop_block,                           /* -floop-block */
1195
  OPT_floop_interchange,                     /* -floop-interchange */
1196
  OPT_floop_optimize,                        /* -floop-optimize */
1197
  OPT_floop_parallelize_all,                 /* -floop-parallelize-all */
1198
  OPT_floop_strip_mine,                      /* -floop-strip-mine */
1199
  OPT_flto,                                  /* -flto */
1200
  OPT_flto_compression_level_,               /* -flto-compression-level= */
1201
  OPT_flto_report,                           /* -flto-report */
1202
  OPT_fltrans,                               /* -fltrans */
1203
  OPT_fltrans_output_list_,                  /* -fltrans-output-list= */
1204
  OPT_fmath_errno,                           /* -fmath-errno */
1205
  OPT_fmax_array_constructor_,               /* -fmax-array-constructor= */
1206
  OPT_fmax_errors_,                          /* -fmax-errors= */
1207
  OPT_fmax_identifier_length_,               /* -fmax-identifier-length= */
1208
  OPT_fmax_stack_var_size_,                  /* -fmax-stack-var-size= */
1209
  OPT_fmax_subrecord_length_,                /* -fmax-subrecord-length= */
1210
  OPT_fmem_report,                           /* -fmem-report */
1211
  OPT_fmerge_all_constants,                  /* -fmerge-all-constants */
1212
  OPT_fmerge_constants,                      /* -fmerge-constants */
1213
  OPT_fmerge_debug_strings,                  /* -fmerge-debug-strings */
1214
  OPT_fmessage_length_,                      /* -fmessage-length= */
1215
  OPT_fmodule_private,                       /* -fmodule-private */
1216
  OPT_fmodulo_sched,                         /* -fmodulo-sched */
1217
  OPT_fmodulo_sched_allow_regmoves,          /* -fmodulo-sched-allow-regmoves */
1218
  OPT_fmove_loop_invariants,                 /* -fmove-loop-invariants */
1219
  OPT_fms_extensions,                        /* -fms-extensions */
1220
  OPT_fmudflap,                              /* -fmudflap */
1221
  OPT_fmudflapir,                            /* -fmudflapir */
1222
  OPT_fmudflapth,                            /* -fmudflapth */
1223
  OPT_fname_mangling_version_,               /* -fname-mangling-version- */
1224
  OPT_fnew_abi,                              /* -fnew-abi */
1225
  OPT_fnext_runtime,                         /* -fnext-runtime */
1226
  OPT_fnil_receivers,                        /* -fnil-receivers */
1227
  OPT_fnon_call_exceptions,                  /* -fnon-call-exceptions */
1228
  OPT_fnonansi_builtins,                     /* -fnonansi-builtins */
1229
  OPT_fnonnull_objects,                      /* -fnonnull-objects */
1230
  OPT_fobjc_call_cxx_cdtors,                 /* -fobjc-call-cxx-cdtors */
1231
  OPT_fobjc_direct_dispatch,                 /* -fobjc-direct-dispatch */
1232
  OPT_fobjc_exceptions,                      /* -fobjc-exceptions */
1233
  OPT_fobjc_gc,                              /* -fobjc-gc */
1234
  OPT_fobjc_sjlj_exceptions,                 /* -fobjc-sjlj-exceptions */
1235
  OPT_fomit_frame_pointer,                   /* -fomit-frame-pointer */
1236
  OPT_fopenmp,                               /* -fopenmp */
1237
  OPT_foperator_names,                       /* -foperator-names */
1238
  OPT_foptimize_register_move,               /* -foptimize-register-move */
1239
  OPT_foptimize_sibling_calls,               /* -foptimize-sibling-calls */
1240
  OPT_foptimize_static_class_initialization, /* -foptimize-static-class-initialization */
1241
  OPT_foptional_diags,                       /* -foptional-diags */
1242
  OPT_foutput_class_dir_,                    /* -foutput-class-dir= */
1243
  OPT_fpack_derived,                         /* -fpack-derived */
1244
  OPT_fpack_struct,                          /* -fpack-struct */
1245
  OPT_fpack_struct_,                         /* -fpack-struct= */
1246
  OPT_fpcc_struct_return,                    /* -fpcc-struct-return */
1247
  OPT_fpch_deps,                             /* -fpch-deps */
1248
  OPT_fpch_preprocess,                       /* -fpch-preprocess */
1249
  OPT_fpeel_loops,                           /* -fpeel-loops */
1250
  OPT_fpeephole,                             /* -fpeephole */
1251
  OPT_fpeephole2,                            /* -fpeephole2 */
1252
  OPT_fpermissive,                           /* -fpermissive */
1253
  OPT_fpic,                                  /* -fpic */
1254
  OPT_fpie,                                  /* -fpie */
1255
  OPT_fplugin_arg_,                          /* -fplugin-arg- */
1256
  OPT_fplugin_,                              /* -fplugin= */
1257
  OPT_fpost_ipa_mem_report,                  /* -fpost-ipa-mem-report */
1258
  OPT_fpre_ipa_mem_report,                   /* -fpre-ipa-mem-report */
1259
  OPT_fpredictive_commoning,                 /* -fpredictive-commoning */
1260
  OPT_fprefetch_loop_arrays,                 /* -fprefetch-loop-arrays */
1261
  OPT_fpreprocessed,                         /* -fpreprocessed */
1262
  OPT_fpretty_templates,                     /* -fpretty-templates */
1263
  OPT_fprofile,                              /* -fprofile */
1264
  OPT_fprofile_arcs,                         /* -fprofile-arcs */
1265
  OPT_fprofile_correction,                   /* -fprofile-correction */
1266
  OPT_fprofile_dir_,                         /* -fprofile-dir= */
1267
  OPT_fprofile_generate,                     /* -fprofile-generate */
1268
  OPT_fprofile_generate_,                    /* -fprofile-generate= */
1269
  OPT_fprofile_use,                          /* -fprofile-use */
1270
  OPT_fprofile_use_,                         /* -fprofile-use= */
1271
  OPT_fprofile_values,                       /* -fprofile-values */
1272
  OPT_fprotect_parens,                       /* -fprotect-parens */
1273
  OPT_frandom_seed,                          /* -frandom-seed */
1274
  OPT_frandom_seed_,                         /* -frandom-seed= */
1275
  OPT_frange_check,                          /* -frange-check */
1276
  OPT_freciprocal_math,                      /* -freciprocal-math */
1277
  OPT_frecord_gcc_switches,                  /* -frecord-gcc-switches */
1278
  OPT_frecord_marker_4,                      /* -frecord-marker=4 */
1279
  OPT_frecord_marker_8,                      /* -frecord-marker=8 */
1280
  OPT_frecursive,                            /* -frecursive */
1281
  OPT_freduced_reflection,                   /* -freduced-reflection */
1282
  OPT_freg_struct_return,                    /* -freg-struct-return */
1283
  OPT_fregmove,                              /* -fregmove */
1284
  OPT_frename_registers,                     /* -frename-registers */
1285
  OPT_freorder_blocks,                       /* -freorder-blocks */
1286
  OPT_freorder_blocks_and_partition,         /* -freorder-blocks-and-partition */
1287
  OPT_freorder_functions,                    /* -freorder-functions */
1288
  OPT_frepack_arrays,                        /* -frepack-arrays */
1289
  OPT_freplace_objc_classes,                 /* -freplace-objc-classes */
1290
  OPT_frepo,                                 /* -frepo */
1291
  OPT_frerun_cse_after_loop,                 /* -frerun-cse-after-loop */
1292
  OPT_frerun_loop_opt,                       /* -frerun-loop-opt */
1293
  OPT_freschedule_modulo_scheduled_loops,    /* -freschedule-modulo-scheduled-loops */
1294
  OPT_fresolution,                           /* -fresolution */
1295
  OPT_frounding_math,                        /* -frounding-math */
1296
  OPT_frtti,                                 /* -frtti */
1297
  OPT_fsaw_java_file,                        /* -fsaw-java-file */
1298
  OPT_fsched_critical_path_heuristic,        /* -fsched-critical-path-heuristic */
1299
  OPT_fsched_dep_count_heuristic,            /* -fsched-dep-count-heuristic */
1300
  OPT_fsched_group_heuristic,                /* -fsched-group-heuristic */
1301
  OPT_fsched_interblock,                     /* -fsched-interblock */
1302
  OPT_fsched_last_insn_heuristic,            /* -fsched-last-insn-heuristic */
1303
  OPT_fsched_pressure,                       /* -fsched-pressure */
1304
  OPT_fsched_rank_heuristic,                 /* -fsched-rank-heuristic */
1305
  OPT_fsched_spec,                           /* -fsched-spec */
1306
  OPT_fsched_spec_insn_heuristic,            /* -fsched-spec-insn-heuristic */
1307
  OPT_fsched_spec_load,                      /* -fsched-spec-load */
1308
  OPT_fsched_spec_load_dangerous,            /* -fsched-spec-load-dangerous */
1309
  OPT_fsched_stalled_insns,                  /* -fsched-stalled-insns */
1310
  OPT_fsched_stalled_insns_dep,              /* -fsched-stalled-insns-dep */
1311
  OPT_fsched_stalled_insns_dep_,             /* -fsched-stalled-insns-dep= */
1312
  OPT_fsched_stalled_insns_,                 /* -fsched-stalled-insns= */
1313
  OPT_fsched_verbose_,                       /* -fsched-verbose= */
1314
  OPT_fsched2_use_superblocks,               /* -fsched2-use-superblocks */
1315
  OPT_fsched2_use_traces,                    /* -fsched2-use-traces */
1316
  OPT_fschedule_insns,                       /* -fschedule-insns */
1317
  OPT_fschedule_insns2,                      /* -fschedule-insns2 */
1318
  OPT_fsecond_underscore,                    /* -fsecond-underscore */
1319
  OPT_fsection_anchors,                      /* -fsection-anchors */
1320
  OPT_fsee,                                  /* -fsee */
1321
  OPT_fsel_sched_pipelining,                 /* -fsel-sched-pipelining */
1322
  OPT_fsel_sched_pipelining_outer_loops,     /* -fsel-sched-pipelining-outer-loops */
1323
  OPT_fsel_sched_reschedule_pipelined,       /* -fsel-sched-reschedule-pipelined */
1324
  OPT_fselective_scheduling,                 /* -fselective-scheduling */
1325
  OPT_fselective_scheduling2,                /* -fselective-scheduling2 */
1326
  OPT_fset_stack_executable,                 /* -fset-stack-executable */
1327
  OPT_fshort_double,                         /* -fshort-double */
1328
  OPT_fshort_enums,                          /* -fshort-enums */
1329
  OPT_fshort_wchar,                          /* -fshort-wchar */
1330
  OPT_fshow_column,                          /* -fshow-column */
1331
  OPT_fsign_zero,                            /* -fsign-zero */
1332
  OPT_fsignaling_nans,                       /* -fsignaling-nans */
1333
  OPT_fsigned_bitfields,                     /* -fsigned-bitfields */
1334
  OPT_fsigned_char,                          /* -fsigned-char */
1335
  OPT_fsigned_zeros,                         /* -fsigned-zeros */
1336
  OPT_fsingle_precision_constant,            /* -fsingle-precision-constant */
1337
  OPT_fsource_filename_,                     /* -fsource-filename= */
1338
  OPT_fsource_,                              /* -fsource= */
1339
  OPT_fsplit_ivs_in_unroller,                /* -fsplit-ivs-in-unroller */
1340
  OPT_fsplit_wide_types,                     /* -fsplit-wide-types */
1341
  OPT_fsquangle,                             /* -fsquangle */
1342
  OPT_fstack_check,                          /* -fstack-check */
1343
  OPT_fstack_check_,                         /* -fstack-check= */
1344
  OPT_fstack_limit,                          /* -fstack-limit */
1345
  OPT_fstack_limit_register_,                /* -fstack-limit-register= */
1346
  OPT_fstack_limit_symbol_,                  /* -fstack-limit-symbol= */
1347
  OPT_fstack_protector,                      /* -fstack-protector */
1348
  OPT_fstack_protector_all,                  /* -fstack-protector-all */
1349
  OPT_fstats,                                /* -fstats */
1350
  OPT_fstore_check,                          /* -fstore-check */
1351
  OPT_fstrength_reduce,                      /* -fstrength-reduce */
1352
  OPT_fstrict_aliasing,                      /* -fstrict-aliasing */
1353
  OPT_fstrict_overflow,                      /* -fstrict-overflow */
1354
  OPT_fstrict_prototype,                     /* -fstrict-prototype */
1355
  OPT_fsyntax_only,                          /* -fsyntax-only */
1356
  OPT_ftabstop_,                             /* -ftabstop= */
1357
  OPT_ftarget_help,                          /* -ftarget-help */
1358
  OPT_ftarget_,                              /* -ftarget= */
1359
  OPT_ftemplate_depth_,                      /* -ftemplate-depth- */
1360
  OPT_ftemplate_depth_eq,                    /* -ftemplate-depth= */
1361
  OPT_ftest_coverage,                        /* -ftest-coverage */
1362
  OPT_fthis_is_variable,                     /* -fthis-is-variable */
1363
  OPT_fthread_jumps,                         /* -fthread-jumps */
1364
  OPT_fthreadsafe_statics,                   /* -fthreadsafe-statics */
1365
  OPT_ftime_report,                          /* -ftime-report */
1366
  OPT_ftls_model_,                           /* -ftls-model= */
1367
  OPT_ftoplevel_reorder,                     /* -ftoplevel-reorder */
1368
  OPT_ftracer,                               /* -ftracer */
1369
  OPT_ftrapping_math,                        /* -ftrapping-math */
1370
  OPT_ftrapv,                                /* -ftrapv */
1371
  OPT_ftree_builtin_call_dce,                /* -ftree-builtin-call-dce */
1372
  OPT_ftree_ccp,                             /* -ftree-ccp */
1373
  OPT_ftree_ch,                              /* -ftree-ch */
1374
  OPT_ftree_copy_prop,                       /* -ftree-copy-prop */
1375
  OPT_ftree_copyrename,                      /* -ftree-copyrename */
1376
  OPT_ftree_cselim,                          /* -ftree-cselim */
1377
  OPT_ftree_dce,                             /* -ftree-dce */
1378
  OPT_ftree_dominator_opts,                  /* -ftree-dominator-opts */
1379
  OPT_ftree_dse,                             /* -ftree-dse */
1380
  OPT_ftree_forwprop,                        /* -ftree-forwprop */
1381
  OPT_ftree_fre,                             /* -ftree-fre */
1382
  OPT_ftree_loop_distribution,               /* -ftree-loop-distribution */
1383
  OPT_ftree_loop_im,                         /* -ftree-loop-im */
1384
  OPT_ftree_loop_ivcanon,                    /* -ftree-loop-ivcanon */
1385
  OPT_ftree_loop_linear,                     /* -ftree-loop-linear */
1386
  OPT_ftree_loop_optimize,                   /* -ftree-loop-optimize */
1387
  OPT_ftree_lrs,                             /* -ftree-lrs */
1388
  OPT_ftree_parallelize_loops_,              /* -ftree-parallelize-loops= */
1389
  OPT_ftree_phiprop,                         /* -ftree-phiprop */
1390
  OPT_ftree_pre,                             /* -ftree-pre */
1391
  OPT_ftree_pta,                             /* -ftree-pta */
1392
  OPT_ftree_reassoc,                         /* -ftree-reassoc */
1393
  OPT_ftree_salias,                          /* -ftree-salias */
1394
  OPT_ftree_scev_cprop,                      /* -ftree-scev-cprop */
1395
  OPT_ftree_sink,                            /* -ftree-sink */
1396
  OPT_ftree_slp_vectorize,                   /* -ftree-slp-vectorize */
1397
  OPT_ftree_sra,                             /* -ftree-sra */
1398
  OPT_ftree_store_ccp,                       /* -ftree-store-ccp */
1399
  OPT_ftree_store_copy_prop,                 /* -ftree-store-copy-prop */
1400
  OPT_ftree_switch_conversion,               /* -ftree-switch-conversion */
1401
  OPT_ftree_ter,                             /* -ftree-ter */
1402
  OPT_ftree_vect_loop_version,               /* -ftree-vect-loop-version */
1403
  OPT_ftree_vectorize,                       /* -ftree-vectorize */
1404
  OPT_ftree_vectorizer_verbose_,             /* -ftree-vectorizer-verbose= */
1405
  OPT_ftree_vrp,                             /* -ftree-vrp */
1406
  OPT_funderscoring,                         /* -funderscoring */
1407
  OPT_funit_at_a_time,                       /* -funit-at-a-time */
1408
  OPT_funroll_all_loops,                     /* -funroll-all-loops */
1409
  OPT_funroll_loops,                         /* -funroll-loops */
1410
  OPT_funsafe_loop_optimizations,            /* -funsafe-loop-optimizations */
1411
  OPT_funsafe_math_optimizations,            /* -funsafe-math-optimizations */
1412
  OPT_funsigned_bitfields,                   /* -funsigned-bitfields */
1413
  OPT_funsigned_char,                        /* -funsigned-char */
1414
  OPT_funswitch_loops,                       /* -funswitch-loops */
1415
  OPT_funwind_tables,                        /* -funwind-tables */
1416
  OPT_fuse_atomic_builtins,                  /* -fuse-atomic-builtins */
1417
  OPT_fuse_boehm_gc,                         /* -fuse-boehm-gc */
1418
  OPT_fuse_cxa_atexit,                       /* -fuse-cxa-atexit */
1419
  OPT_fuse_cxa_get_exception_ptr,            /* -fuse-cxa-get-exception-ptr */
1420
  OPT_fuse_divide_subroutine,                /* -fuse-divide-subroutine */
1421
  OPT_fuse_linker_plugin,                    /* -fuse-linker-plugin */
1422
  OPT_fvar_tracking,                         /* -fvar-tracking */
1423
  OPT_fvar_tracking_assignments,             /* -fvar-tracking-assignments */
1424
  OPT_fvar_tracking_assignments_toggle,      /* -fvar-tracking-assignments-toggle */
1425
  OPT_fvar_tracking_uninit,                  /* -fvar-tracking-uninit */
1426
  OPT_fvariable_expansion_in_unroller,       /* -fvariable-expansion-in-unroller */
1427
  OPT_fvect_cost_model,                      /* -fvect-cost-model */
1428
  OPT_fverbose_asm,                          /* -fverbose-asm */
1429
  OPT_fversion,                              /* -fversion */
1430
  OPT_fvisibility_inlines_hidden,            /* -fvisibility-inlines-hidden */
1431
  OPT_fvisibility_ms_compat,                 /* -fvisibility-ms-compat */
1432
  OPT_fvisibility_,                          /* -fvisibility= */
1433
  OPT_fvpt,                                  /* -fvpt */
1434
  OPT_fvtable_gc,                            /* -fvtable-gc */
1435
  OPT_fvtable_thunks,                        /* -fvtable-thunks */
1436
  OPT_fweak,                                 /* -fweak */
1437
  OPT_fweb,                                  /* -fweb */
1438
  OPT_fwhole_file,                           /* -fwhole-file */
1439
  OPT_fwhole_program,                        /* -fwhole-program */
1440
  OPT_fwhopr,                                /* -fwhopr */
1441
  OPT_fwide_exec_charset_,                   /* -fwide-exec-charset= */
1442
  OPT_fworking_directory,                    /* -fworking-directory */
1443
  OPT_fwpa,                                  /* -fwpa */
1444
  OPT_fwrapv,                                /* -fwrapv */
1445
  OPT_fxref,                                 /* -fxref */
1446
  OPT_fzero_initialized_in_bss,              /* -fzero-initialized-in-bss */
1447
  OPT_fzero_link,                            /* -fzero-link */
1448
  OPT_g,                                     /* -g */
1449
  OPT_gant,                                  /* -gant */
1450
  OPT_gcoff,                                 /* -gcoff */
1451
  OPT_gdwarfplus,                            /* -gdwarf+ */
1452
  OPT_gdwarf_,                               /* -gdwarf- */
1453
  OPT_gen_decls,                             /* -gen-decls */
1454
  OPT_ggdb,                                  /* -ggdb */
1455
  OPT_gnat,                                  /* -gnat */
1456
  OPT_gnatO,                                 /* -gnatO */
1457
  OPT_gno_strict_dwarf,                      /* -gno-strict-dwarf */
1458
  OPT_gstabs,                                /* -gstabs */
1459
  OPT_gstabs_,                               /* -gstabs+ */
1460
  OPT_gstrict_dwarf,                         /* -gstrict-dwarf */
1461
  OPT_gtoggle,                               /* -gtoggle */
1462
  OPT_gvms,                                  /* -gvms */
1463
  OPT_gxcoff,                                /* -gxcoff */
1464
  OPT_gxcoff_,                               /* -gxcoff+ */
1465
  OPT_idirafter,                             /* -idirafter */
1466
  OPT_imacros,                               /* -imacros */
1467
  OPT_imultilib,                             /* -imultilib */
1468
  OPT_include,                               /* -include */
1469
  OPT_iprefix,                               /* -iprefix */
1470
  OPT_iquote,                                /* -iquote */
1471
  OPT_isysroot,                              /* -isysroot */
1472
  OPT_isystem,                               /* -isystem */
1473
  OPT_iwithprefix,                           /* -iwithprefix */
1474
  OPT_iwithprefixbefore,                     /* -iwithprefixbefore */
1475
  OPT_lang_asm,                              /* -lang-asm */
1476
  OPT_lang_objc,                             /* -lang-objc */
1477
  OPT_m128bit_long_double,                   /* -m128bit-long-double */
1478
  OPT_m32,                                   /* -m32 */
1479
  OPT_m3dnow,                                /* -m3dnow */
1480
  OPT_m3dnowa,                               /* -m3dnowa */
1481
  OPT_m64,                                   /* -m64 */
1482
  OPT_m80387,                                /* -m80387 */
1483
  OPT_m96bit_long_double,                    /* -m96bit-long-double */
1484
  OPT_mabi_,                                 /* -mabi= */
1485
  OPT_mabm,                                  /* -mabm */
1486
  OPT_maccumulate_outgoing_args,             /* -maccumulate-outgoing-args */
1487
  OPT_maes,                                  /* -maes */
1488
  OPT_malign_double,                         /* -malign-double */
1489
  OPT_malign_functions_,                     /* -malign-functions= */
1490
  OPT_malign_jumps_,                         /* -malign-jumps= */
1491
  OPT_malign_loops_,                         /* -malign-loops= */
1492
  OPT_malign_stringops,                      /* -malign-stringops */
1493
  OPT_march_,                                /* -march= */
1494
  OPT_masm_,                                 /* -masm= */
1495
  OPT_mavx,                                  /* -mavx */
1496
  OPT_mbranch_cost_,                         /* -mbranch-cost= */
1497
  OPT_mcld,                                  /* -mcld */
1498
  OPT_mcmodel_,                              /* -mcmodel= */
1499
  OPT_mconsole,                              /* -mconsole */
1500
  OPT_mcrc32,                                /* -mcrc32 */
1501
  OPT_mcx16,                                 /* -mcx16 */
1502
  OPT_mcygwin,                               /* -mcygwin */
1503
  OPT_mdll,                                  /* -mdll */
1504
  OPT_mfancy_math_387,                       /* -mfancy-math-387 */
1505
  OPT_mfma,                                  /* -mfma */
1506
  OPT_mfma4,                                 /* -mfma4 */
1507
  OPT_mforce_drap,                           /* -mforce-drap */
1508
  OPT_mfp_ret_in_387,                        /* -mfp-ret-in-387 */
1509
  OPT_mfpmath_,                              /* -mfpmath= */
1510
  OPT_mfused_madd,                           /* -mfused-madd */
1511
  OPT_mhard_float,                           /* -mhard-float */
1512
  OPT_mieee_fp,                              /* -mieee-fp */
1513
  OPT_mincoming_stack_boundary_,             /* -mincoming-stack-boundary= */
1514
  OPT_minline_all_stringops,                 /* -minline-all-stringops */
1515
  OPT_minline_stringops_dynamically,         /* -minline-stringops-dynamically */
1516
  OPT_mintel_syntax,                         /* -mintel-syntax */
1517
  OPT_mlarge_data_threshold_,                /* -mlarge-data-threshold= */
1518
  OPT_mlwp,                                  /* -mlwp */
1519
  OPT_mmmx,                                  /* -mmmx */
1520
  OPT_mmovbe,                                /* -mmovbe */
1521
  OPT_mms_bitfields,                         /* -mms-bitfields */
1522
  OPT_mno_align_stringops,                   /* -mno-align-stringops */
1523
  OPT_mno_fancy_math_387,                    /* -mno-fancy-math-387 */
1524
  OPT_mno_push_args,                         /* -mno-push-args */
1525
  OPT_mno_red_zone,                          /* -mno-red-zone */
1526
  OPT_mno_sse4,                              /* -mno-sse4 */
1527
  OPT_mnop_fun_dllimport,                    /* -mnop-fun-dllimport */
1528
  OPT_momit_leaf_frame_pointer,              /* -momit-leaf-frame-pointer */
1529
  OPT_mpc,                                   /* -mpc */
1530
  OPT_mpclmul,                               /* -mpclmul */
1531
  OPT_mpe_aligned_commons,                   /* -mpe-aligned-commons */
1532
  OPT_mpopcnt,                               /* -mpopcnt */
1533
  OPT_mpreferred_stack_boundary_,            /* -mpreferred-stack-boundary= */
1534
  OPT_mpush_args,                            /* -mpush-args */
1535
  OPT_mrecip,                                /* -mrecip */
1536
  OPT_mred_zone,                             /* -mred-zone */
1537
  OPT_mregparm_,                             /* -mregparm= */
1538
  OPT_mrtd,                                  /* -mrtd */
1539
  OPT_msahf,                                 /* -msahf */
1540
  OPT_msoft_float,                           /* -msoft-float */
1541
  OPT_msse,                                  /* -msse */
1542
  OPT_msse2,                                 /* -msse2 */
1543
  OPT_msse2avx,                              /* -msse2avx */
1544
  OPT_msse3,                                 /* -msse3 */
1545
  OPT_msse4,                                 /* -msse4 */
1546
  OPT_msse4_1,                               /* -msse4.1 */
1547
  OPT_msse4_2,                               /* -msse4.2 */
1548
  OPT_msse4a,                                /* -msse4a */
1549
  OPT_msseregparm,                           /* -msseregparm */
1550
  OPT_mssse3,                                /* -mssse3 */
1551
  OPT_mstack_arg_probe,                      /* -mstack-arg-probe */
1552
  OPT_mstackrealign,                         /* -mstackrealign */
1553
  OPT_mstringop_strategy_,                   /* -mstringop-strategy= */
1554
  OPT_mthreads,                              /* -mthreads */
1555
  OPT_mtls_dialect_,                         /* -mtls-dialect= */
1556
  OPT_mtls_direct_seg_refs,                  /* -mtls-direct-seg-refs */
1557
  OPT_mtune_,                                /* -mtune= */
1558
  OPT_muse_libstdc_wrappers,                 /* -muse-libstdc-wrappers */
1559
  OPT_mveclibabi_,                           /* -mveclibabi= */
1560
  OPT_mwin32,                                /* -mwin32 */
1561
  OPT_mwindows,                              /* -mwindows */
1562
  OPT_mxop,                                  /* -mxop */
1563
  OPT_nocpp,                                 /* -nocpp */
1564
  OPT_nostdinc,                              /* -nostdinc */
1565
  OPT_nostdinc__,                            /* -nostdinc++ */
1566
  OPT_nostdlib,                              /* -nostdlib */
1567
  OPT_o,                                     /* -o */
1568
  OPT_p,                                     /* -p */
1569
  OPT_pedantic,                              /* -pedantic */
1570
  OPT_pedantic_errors,                       /* -pedantic-errors */
1571
  OPT_pie,                                   /* -pie */
1572
  OPT_print_objc_runtime_info,               /* -print-objc-runtime-info */
1573
  OPT_print_pch_checksum,                    /* -print-pch-checksum */
1574
  OPT_quiet,                                 /* -quiet */
1575
  OPT_remap,                                 /* -remap */
1576
  OPT_shared,                                /* -shared */
1577
  OPT_static_libgfortran,                    /* -static-libgfortran */
1578
  OPT_std_c__0x,                             /* -std=c++0x */
1579
  OPT_std_c__98,                             /* -std=c++98 */
1580
  OPT_std_c89,                               /* -std=c89 */
1581
  OPT_std_c90,                               /* -std=c90 */
1582
  OPT_std_c99,                               /* -std=c99 */
1583
  OPT_std_c9x,                               /* -std=c9x */
1584
  OPT_std_f2003,                             /* -std=f2003 */
1585
  OPT_std_f2008,                             /* -std=f2008 */
1586
  OPT_std_f95,                               /* -std=f95 */
1587
  OPT_std_gnu,                               /* -std=gnu */
1588
  OPT_std_gnu__0x,                           /* -std=gnu++0x */
1589
  OPT_std_gnu__98,                           /* -std=gnu++98 */
1590
  OPT_std_gnu89,                             /* -std=gnu89 */
1591
  OPT_std_gnu90,                             /* -std=gnu90 */
1592
  OPT_std_gnu99,                             /* -std=gnu99 */
1593
  OPT_std_gnu9x,                             /* -std=gnu9x */
1594
  OPT_std_iso9899_1990,                      /* -std=iso9899:1990 */
1595
  OPT_std_iso9899_199409,                    /* -std=iso9899:199409 */
1596
  OPT_std_iso9899_1999,                      /* -std=iso9899:1999 */
1597
  OPT_std_iso9899_199x,                      /* -std=iso9899:199x */
1598
  OPT_std_legacy,                            /* -std=legacy */
1599
  OPT_traditional_cpp,                       /* -traditional-cpp */
1600
  OPT_trigraphs,                             /* -trigraphs */
1601
  OPT_undef,                                 /* -undef */
1602
  OPT_v,                                     /* -v */
1603
  OPT_version,                               /* -version */
1604
  OPT_w,                                     /* -w */
1605
  N_OPTS
1606
};
1607
 
1608
#endif /* OPTIONS_H */