Home | History | Annotate | Line # | Download | only in i386
i386.opt revision 1.10
      1   1.1  mrg ; Options for the IA-32 and AMD64 ports of the compiler.
      2   1.1  mrg 
      3  1.10  mrg ; Copyright (C) 2005-2017 Free Software Foundation, Inc.
      4   1.1  mrg ;
      5   1.1  mrg ; This file is part of GCC.
      6   1.1  mrg ;
      7   1.1  mrg ; GCC is free software; you can redistribute it and/or modify it under
      8   1.1  mrg ; the terms of the GNU General Public License as published by the Free
      9   1.1  mrg ; Software Foundation; either version 3, or (at your option) any later
     10   1.1  mrg ; version.
     11   1.1  mrg ;
     12   1.1  mrg ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
     13   1.1  mrg ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
     14   1.1  mrg ; FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
     15   1.1  mrg ; for more details.
     16   1.1  mrg ;
     17   1.1  mrg ; You should have received a copy of the GNU General Public License
     18   1.1  mrg ; along with GCC; see the file COPYING3.  If not see
     19   1.1  mrg ; <http://www.gnu.org/licenses/>.
     20   1.1  mrg 
     21   1.3  mrg HeaderInclude
     22   1.3  mrg config/i386/i386-opts.h
     23   1.3  mrg 
     24   1.3  mrg ; Bit flags that specify the ISA we are compiling for.
     25   1.3  mrg Variable
     26   1.3  mrg HOST_WIDE_INT ix86_isa_flags = TARGET_64BIT_DEFAULT | TARGET_SUBTARGET_ISA_DEFAULT
     27   1.3  mrg 
     28  1.10  mrg Variable
     29  1.10  mrg HOST_WIDE_INT ix86_isa_flags2 = 0
     30  1.10  mrg 
     31   1.3  mrg ; A mask of ix86_isa_flags that includes bit X if X was set or cleared
     32   1.3  mrg ; on the command line.
     33   1.3  mrg Variable
     34   1.3  mrg HOST_WIDE_INT ix86_isa_flags_explicit
     35   1.3  mrg 
     36  1.10  mrg Variable
     37  1.10  mrg HOST_WIDE_INT ix86_isa_flags2_explicit
     38  1.10  mrg 
     39  1.10  mrg ; Additional target flags
     40  1.10  mrg Variable
     41  1.10  mrg int ix86_target_flags
     42  1.10  mrg 
     43   1.3  mrg TargetVariable
     44   1.3  mrg int recip_mask = RECIP_MASK_DEFAULT
     45   1.3  mrg 
     46   1.3  mrg Variable
     47   1.3  mrg int recip_mask_explicit
     48   1.3  mrg 
     49   1.3  mrg TargetSave
     50   1.3  mrg int x_recip_mask_explicit
     51   1.3  mrg 
     52   1.1  mrg ;; Definitions to add to the cl_target_option structure
     53   1.1  mrg ;; -march= processor
     54   1.1  mrg TargetSave
     55   1.1  mrg unsigned char arch
     56   1.1  mrg 
     57   1.1  mrg ;; -mtune= processor
     58   1.1  mrg TargetSave
     59   1.1  mrg unsigned char tune
     60   1.1  mrg 
     61   1.5  mrg ;; -march= processor-string
     62   1.5  mrg TargetSave
     63   1.5  mrg const char *x_ix86_arch_string
     64   1.5  mrg 
     65   1.5  mrg ;; -mtune= processor-string
     66   1.5  mrg TargetSave
     67   1.5  mrg const char *x_ix86_tune_string
     68   1.5  mrg 
     69   1.1  mrg ;; CPU schedule model
     70   1.1  mrg TargetSave
     71   1.1  mrg unsigned char schedule
     72   1.1  mrg 
     73   1.5  mrg ;; True if processor has SSE prefetch instruction.
     74   1.5  mrg TargetSave
     75   1.5  mrg unsigned char prefetch_sse
     76   1.5  mrg 
     77   1.1  mrg ;; branch cost
     78   1.1  mrg TargetSave
     79   1.1  mrg unsigned char branch_cost
     80   1.1  mrg 
     81   1.1  mrg ;; which flags were passed by the user
     82   1.1  mrg TargetSave
     83  1.10  mrg HOST_WIDE_INT x_ix86_isa_flags2_explicit
     84   1.5  mrg 
     85   1.5  mrg ;; which flags were passed by the user
     86   1.1  mrg TargetSave
     87  1.10  mrg HOST_WIDE_INT x_ix86_isa_flags_explicit
     88   1.1  mrg 
     89   1.1  mrg ;; whether -mtune was not specified
     90   1.1  mrg TargetSave
     91   1.1  mrg unsigned char tune_defaulted
     92   1.1  mrg 
     93   1.1  mrg ;; whether -march was specified
     94   1.1  mrg TargetSave
     95   1.1  mrg unsigned char arch_specified
     96   1.1  mrg 
     97   1.5  mrg ;; -mcmodel= model
     98   1.5  mrg TargetSave
     99   1.5  mrg enum cmodel x_ix86_cmodel
    100   1.5  mrg 
    101   1.5  mrg ;; -mabi=
    102   1.5  mrg TargetSave
    103   1.5  mrg enum calling_abi x_ix86_abi
    104   1.5  mrg 
    105   1.5  mrg ;; -masm=
    106   1.5  mrg TargetSave
    107   1.5  mrg enum asm_dialect x_ix86_asm_dialect
    108   1.5  mrg 
    109   1.5  mrg ;; -mbranch-cost=
    110   1.5  mrg TargetSave
    111   1.5  mrg int x_ix86_branch_cost
    112   1.5  mrg 
    113   1.8  mrg ;; -mdump-tune-features=
    114   1.5  mrg TargetSave
    115   1.5  mrg int x_ix86_dump_tunes
    116   1.5  mrg 
    117   1.5  mrg ;; -mstackrealign=
    118   1.5  mrg TargetSave
    119   1.5  mrg int x_ix86_force_align_arg_pointer
    120   1.5  mrg 
    121   1.8  mrg ;; -mforce-drap=
    122   1.5  mrg TargetSave
    123   1.5  mrg int x_ix86_force_drap
    124   1.5  mrg 
    125   1.5  mrg ;; -mincoming-stack-boundary=
    126   1.5  mrg TargetSave
    127   1.5  mrg int x_ix86_incoming_stack_boundary_arg
    128   1.5  mrg 
    129   1.5  mrg ;; -maddress-mode=
    130   1.5  mrg TargetSave
    131   1.5  mrg enum pmode x_ix86_pmode
    132   1.5  mrg 
    133   1.8  mrg ;; -mpreferred-stack-boundary=
    134   1.5  mrg TargetSave
    135   1.5  mrg int x_ix86_preferred_stack_boundary_arg
    136   1.5  mrg 
    137   1.5  mrg ;; -mrecip=
    138   1.5  mrg TargetSave
    139   1.5  mrg const char *x_ix86_recip_name
    140   1.5  mrg 
    141   1.5  mrg ;; -mregparm=
    142   1.5  mrg TargetSave
    143   1.5  mrg int x_ix86_regparm
    144   1.5  mrg 
    145   1.5  mrg ;; -mlarge-data-threshold=
    146   1.5  mrg TargetSave
    147   1.5  mrg int x_ix86_section_threshold
    148   1.5  mrg 
    149   1.5  mrg ;; -msse2avx=
    150   1.5  mrg TargetSave
    151   1.5  mrg int x_ix86_sse2avx
    152   1.5  mrg 
    153   1.5  mrg ;; -mstack-protector-guard=
    154   1.5  mrg TargetSave
    155   1.5  mrg enum stack_protector_guard x_ix86_stack_protector_guard
    156   1.5  mrg 
    157   1.5  mrg ;; -mstringop-strategy=
    158   1.5  mrg TargetSave
    159   1.5  mrg enum stringop_alg x_ix86_stringop_alg
    160   1.5  mrg 
    161   1.5  mrg ;; -mtls-dialect=
    162   1.5  mrg TargetSave
    163   1.5  mrg enum tls_dialect x_ix86_tls_dialect
    164   1.5  mrg 
    165   1.5  mrg ;; -mtune-ctrl=
    166   1.5  mrg TargetSave
    167   1.5  mrg const char *x_ix86_tune_ctrl_string
    168   1.5  mrg 
    169   1.5  mrg ;; -mmemcpy-strategy=
    170   1.5  mrg TargetSave
    171   1.5  mrg const char *x_ix86_tune_memcpy_strategy
    172   1.5  mrg 
    173   1.5  mrg ;; -mmemset-strategy=
    174   1.5  mrg TargetSave
    175   1.5  mrg const char *x_ix86_tune_memset_strategy
    176   1.5  mrg 
    177   1.5  mrg ;; -mno-default=
    178   1.5  mrg TargetSave
    179   1.5  mrg int x_ix86_tune_no_default
    180   1.5  mrg 
    181   1.5  mrg ;; -mveclibabi=
    182   1.5  mrg TargetSave
    183   1.5  mrg enum ix86_veclibabi x_ix86_veclibabi_type
    184   1.5  mrg 
    185   1.1  mrg ;; x86 options
    186   1.1  mrg m128bit-long-double
    187   1.1  mrg Target RejectNegative Report Mask(128BIT_LONG_DOUBLE) Save
    188   1.8  mrg sizeof(long double) is 16.
    189   1.1  mrg 
    190   1.1  mrg m80387
    191   1.1  mrg Target Report Mask(80387) Save
    192   1.8  mrg Use hardware fp.
    193   1.1  mrg 
    194   1.1  mrg m96bit-long-double
    195   1.1  mrg Target RejectNegative Report InverseMask(128BIT_LONG_DOUBLE) Save
    196   1.8  mrg sizeof(long double) is 12.
    197   1.1  mrg 
    198   1.3  mrg mlong-double-80
    199   1.5  mrg Target Report RejectNegative Negative(mlong-double-64) InverseMask(LONG_DOUBLE_64) Save
    200   1.8  mrg Use 80-bit long double.
    201   1.3  mrg 
    202   1.3  mrg mlong-double-64
    203   1.5  mrg Target Report RejectNegative Negative(mlong-double-128) Mask(LONG_DOUBLE_64) InverseMask(LONG_DOUBLE_128) Save
    204   1.8  mrg Use 64-bit long double.
    205   1.3  mrg 
    206   1.5  mrg mlong-double-128
    207   1.5  mrg Target Report RejectNegative Negative(mlong-double-80) Mask(LONG_DOUBLE_128) InverseMask(LONG_DOUBLE_64) Save
    208   1.8  mrg Use 128-bit long double.
    209   1.5  mrg 
    210   1.1  mrg maccumulate-outgoing-args
    211   1.1  mrg Target Report Mask(ACCUMULATE_OUTGOING_ARGS) Save
    212   1.8  mrg Reserve space for outgoing arguments in the function prologue.
    213   1.1  mrg 
    214   1.1  mrg malign-double
    215   1.1  mrg Target Report Mask(ALIGN_DOUBLE) Save
    216   1.8  mrg Align some doubles on dword boundary.
    217   1.1  mrg 
    218   1.1  mrg malign-functions=
    219   1.3  mrg Target RejectNegative Joined UInteger
    220   1.8  mrg Function starts are aligned to this power of 2.
    221   1.1  mrg 
    222   1.1  mrg malign-jumps=
    223   1.3  mrg Target RejectNegative Joined UInteger
    224   1.8  mrg Jump targets are aligned to this power of 2.
    225   1.1  mrg 
    226   1.1  mrg malign-loops=
    227   1.3  mrg Target RejectNegative Joined UInteger
    228   1.8  mrg Loop code aligned to this power of 2.
    229   1.1  mrg 
    230   1.1  mrg malign-stringops
    231   1.1  mrg Target RejectNegative Report InverseMask(NO_ALIGN_STRINGOPS, ALIGN_STRINGOPS) Save
    232   1.8  mrg Align destination of the string operations.
    233   1.1  mrg 
    234   1.5  mrg malign-data=
    235   1.5  mrg Target RejectNegative Joined Var(ix86_align_data_type) Enum(ix86_align_data) Init(ix86_align_data_type_compat)
    236   1.8  mrg Use the given data alignment.
    237   1.5  mrg 
    238   1.5  mrg Enum
    239   1.5  mrg Name(ix86_align_data) Type(enum ix86_align_data)
    240   1.5  mrg Known data alignment choices (for use with the -malign-data= option):
    241   1.5  mrg 
    242   1.5  mrg EnumValue
    243   1.5  mrg Enum(ix86_align_data) String(compat) Value(ix86_align_data_type_compat)
    244   1.5  mrg 
    245   1.5  mrg EnumValue
    246   1.5  mrg Enum(ix86_align_data) String(abi) Value(ix86_align_data_type_abi)
    247   1.5  mrg 
    248   1.5  mrg EnumValue
    249   1.5  mrg Enum(ix86_align_data) String(cacheline) Value(ix86_align_data_type_cacheline)
    250   1.5  mrg 
    251   1.1  mrg march=
    252   1.1  mrg Target RejectNegative Joined Var(ix86_arch_string)
    253   1.8  mrg Generate code for given CPU.
    254   1.1  mrg 
    255   1.1  mrg masm=
    256   1.3  mrg Target RejectNegative Joined Enum(asm_dialect) Var(ix86_asm_dialect) Init(ASM_ATT)
    257   1.8  mrg Use given assembler dialect.
    258   1.1  mrg 
    259   1.3  mrg Enum
    260   1.3  mrg Name(asm_dialect) Type(enum asm_dialect)
    261  1.10  mrg Known assembler dialects (for use with the -masm= option):
    262   1.3  mrg 
    263   1.3  mrg EnumValue
    264   1.3  mrg Enum(asm_dialect) String(intel) Value(ASM_INTEL)
    265   1.3  mrg 
    266   1.3  mrg EnumValue
    267   1.3  mrg Enum(asm_dialect) String(att) Value(ASM_ATT)
    268   1.3  mrg 
    269   1.1  mrg mbranch-cost=
    270   1.3  mrg Target RejectNegative Joined UInteger Var(ix86_branch_cost)
    271   1.8  mrg Branches are this expensive (1-5, arbitrary units).
    272   1.1  mrg 
    273   1.1  mrg mlarge-data-threshold=
    274   1.3  mrg Target RejectNegative Joined UInteger Var(ix86_section_threshold) Init(DEFAULT_LARGE_SECTION_THRESHOLD)
    275  1.10  mrg -mlarge-data-threshold=<number>	Data greater than given threshold will go into .ldata section in x86-64 medium model.
    276   1.1  mrg 
    277   1.1  mrg mcmodel=
    278   1.3  mrg Target RejectNegative Joined Enum(cmodel) Var(ix86_cmodel) Init(CM_32)
    279   1.8  mrg Use given x86-64 code model.
    280   1.1  mrg 
    281   1.3  mrg Enum
    282   1.3  mrg Name(cmodel) Type(enum cmodel)
    283   1.3  mrg Known code models (for use with the -mcmodel= option):
    284   1.3  mrg 
    285   1.3  mrg EnumValue
    286   1.3  mrg Enum(cmodel) String(small) Value(CM_SMALL)
    287   1.3  mrg 
    288   1.3  mrg EnumValue
    289   1.3  mrg Enum(cmodel) String(medium) Value(CM_MEDIUM)
    290   1.3  mrg 
    291   1.3  mrg EnumValue
    292   1.3  mrg Enum(cmodel) String(large) Value(CM_LARGE)
    293   1.3  mrg 
    294   1.3  mrg EnumValue
    295   1.3  mrg Enum(cmodel) String(32) Value(CM_32)
    296   1.3  mrg 
    297   1.3  mrg EnumValue
    298   1.3  mrg Enum(cmodel) String(kernel) Value(CM_KERNEL)
    299   1.3  mrg 
    300   1.3  mrg maddress-mode=
    301   1.3  mrg Target RejectNegative Joined Enum(pmode) Var(ix86_pmode) Init(PMODE_SI)
    302   1.8  mrg Use given address mode.
    303   1.3  mrg 
    304   1.3  mrg Enum
    305   1.3  mrg Name(pmode) Type(enum pmode)
    306   1.3  mrg Known address mode (for use with the -maddress-mode= option):
    307   1.3  mrg 
    308   1.3  mrg EnumValue
    309   1.3  mrg Enum(pmode) String(short) Value(PMODE_SI)
    310   1.3  mrg 
    311   1.3  mrg EnumValue
    312   1.3  mrg Enum(pmode) String(long) Value(PMODE_DI)
    313   1.3  mrg 
    314   1.3  mrg mcpu=
    315   1.3  mrg Target RejectNegative Joined Undocumented Alias(mtune=) Warn(%<-mcpu=%> is deprecated; use %<-mtune=%> or %<-march=%> instead)
    316   1.3  mrg 
    317   1.1  mrg mfancy-math-387
    318   1.1  mrg Target RejectNegative Report InverseMask(NO_FANCY_MATH_387, USE_FANCY_MATH_387) Save
    319   1.8  mrg Generate sin, cos, sqrt for FPU.
    320   1.1  mrg 
    321   1.1  mrg mforce-drap
    322   1.1  mrg Target Report Var(ix86_force_drap)
    323   1.8  mrg Always use Dynamic Realigned Argument Pointer (DRAP) to realign stack.
    324   1.1  mrg 
    325   1.1  mrg mfp-ret-in-387
    326   1.1  mrg Target Report Mask(FLOAT_RETURNS) Save
    327   1.8  mrg Return values of functions in FPU registers.
    328   1.1  mrg 
    329   1.1  mrg mfpmath=
    330   1.3  mrg Target RejectNegative Joined Var(ix86_fpmath) Enum(fpmath_unit) Init(FPMATH_387) Save
    331   1.8  mrg Generate floating point mathematics using given instruction set.
    332   1.1  mrg 
    333   1.3  mrg Enum
    334   1.3  mrg Name(fpmath_unit) Type(enum fpmath_unit)
    335   1.3  mrg Valid arguments to -mfpmath=:
    336   1.3  mrg 
    337   1.3  mrg EnumValue
    338   1.3  mrg Enum(fpmath_unit) String(387) Value(FPMATH_387)
    339   1.3  mrg 
    340   1.3  mrg EnumValue
    341   1.3  mrg Enum(fpmath_unit) String(sse) Value(FPMATH_SSE)
    342   1.3  mrg 
    343   1.3  mrg EnumValue
    344   1.3  mrg Enum(fpmath_unit) String(387,sse) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)})
    345   1.3  mrg 
    346   1.3  mrg EnumValue
    347   1.3  mrg Enum(fpmath_unit) String(387+sse) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)})
    348   1.3  mrg 
    349   1.3  mrg EnumValue
    350   1.3  mrg Enum(fpmath_unit) String(sse,387) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)})
    351   1.3  mrg 
    352   1.3  mrg EnumValue
    353   1.3  mrg Enum(fpmath_unit) String(sse+387) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)})
    354   1.3  mrg 
    355   1.3  mrg EnumValue
    356   1.3  mrg Enum(fpmath_unit) String(both) Value({(enum fpmath_unit) (FPMATH_SSE | FPMATH_387)})
    357   1.3  mrg 
    358   1.1  mrg mhard-float
    359   1.3  mrg Target RejectNegative Mask(80387) Save
    360   1.8  mrg Use hardware fp.
    361   1.1  mrg 
    362   1.1  mrg mieee-fp
    363   1.1  mrg Target Report Mask(IEEE_FP) Save
    364   1.8  mrg Use IEEE math for fp comparisons.
    365   1.1  mrg 
    366   1.1  mrg minline-all-stringops
    367   1.1  mrg Target Report Mask(INLINE_ALL_STRINGOPS) Save
    368   1.8  mrg Inline all known string operations.
    369   1.1  mrg 
    370   1.1  mrg minline-stringops-dynamically
    371   1.1  mrg Target Report Mask(INLINE_STRINGOPS_DYNAMICALLY) Save
    372   1.8  mrg Inline memset/memcpy string operations, but perform inline version only for small blocks.
    373   1.1  mrg 
    374   1.1  mrg mintel-syntax
    375   1.3  mrg Target Undocumented Alias(masm=, intel, att) Warn(%<-mintel-syntax%> and %<-mno-intel-syntax%> are deprecated; use %<-masm=intel%> and %<-masm=att%> instead)
    376   1.1  mrg ;; Deprecated
    377   1.1  mrg 
    378   1.1  mrg mms-bitfields
    379   1.1  mrg Target Report Mask(MS_BITFIELD_LAYOUT) Save
    380   1.8  mrg Use native (MS) bitfield layout.
    381   1.1  mrg 
    382   1.1  mrg mno-align-stringops
    383   1.1  mrg Target RejectNegative Report Mask(NO_ALIGN_STRINGOPS) Undocumented Save
    384   1.1  mrg 
    385   1.1  mrg mno-fancy-math-387
    386   1.1  mrg Target RejectNegative Report Mask(NO_FANCY_MATH_387) Undocumented Save
    387   1.1  mrg 
    388   1.1  mrg mno-push-args
    389   1.1  mrg Target RejectNegative Report Mask(NO_PUSH_ARGS) Undocumented Save
    390   1.1  mrg 
    391   1.1  mrg mno-red-zone
    392   1.1  mrg Target RejectNegative Report Mask(NO_RED_ZONE) Undocumented Save
    393   1.1  mrg 
    394   1.1  mrg momit-leaf-frame-pointer
    395   1.1  mrg Target Report Mask(OMIT_LEAF_FRAME_POINTER) Save
    396   1.8  mrg Omit the frame pointer in leaf functions.
    397   1.1  mrg 
    398   1.3  mrg mpc32
    399   1.3  mrg Target RejectNegative Report
    400   1.8  mrg Set 80387 floating-point precision to 32-bit.
    401   1.3  mrg 
    402   1.3  mrg mpc64
    403   1.3  mrg Target RejectNegative Report
    404   1.8  mrg Set 80387 floating-point precision to 64-bit.
    405   1.3  mrg 
    406   1.3  mrg mpc80
    407   1.3  mrg Target RejectNegative Report
    408   1.8  mrg Set 80387 floating-point precision to 80-bit.
    409   1.1  mrg 
    410   1.1  mrg mpreferred-stack-boundary=
    411   1.3  mrg Target RejectNegative Joined UInteger Var(ix86_preferred_stack_boundary_arg)
    412   1.8  mrg Attempt to keep stack aligned to this power of 2.
    413   1.1  mrg 
    414   1.1  mrg mincoming-stack-boundary=
    415   1.3  mrg Target RejectNegative Joined UInteger Var(ix86_incoming_stack_boundary_arg)
    416   1.8  mrg Assume incoming stack aligned to this power of 2.
    417   1.1  mrg 
    418   1.1  mrg mpush-args
    419   1.1  mrg Target Report InverseMask(NO_PUSH_ARGS, PUSH_ARGS) Save
    420   1.8  mrg Use push instructions to save outgoing arguments.
    421   1.1  mrg 
    422   1.1  mrg mred-zone
    423   1.1  mrg Target RejectNegative Report InverseMask(NO_RED_ZONE, RED_ZONE) Save
    424   1.8  mrg Use red-zone in the x86-64 code.
    425   1.1  mrg 
    426   1.1  mrg mregparm=
    427   1.3  mrg Target RejectNegative Joined UInteger Var(ix86_regparm)
    428   1.8  mrg Number of registers used to pass integer arguments.
    429   1.1  mrg 
    430   1.1  mrg mrtd
    431   1.1  mrg Target Report Mask(RTD) Save
    432   1.8  mrg Alternate calling convention.
    433   1.1  mrg 
    434   1.1  mrg msoft-float
    435   1.1  mrg Target InverseMask(80387) Save
    436   1.8  mrg Do not use hardware fp.
    437   1.1  mrg 
    438   1.1  mrg msseregparm
    439   1.1  mrg Target RejectNegative Mask(SSEREGPARM) Save
    440   1.8  mrg Use SSE register passing conventions for SF and DF mode.
    441   1.1  mrg 
    442   1.1  mrg mstackrealign
    443   1.1  mrg Target Report Var(ix86_force_align_arg_pointer) Init(-1)
    444   1.8  mrg Realign stack in prologue.
    445   1.1  mrg 
    446   1.1  mrg mstack-arg-probe
    447   1.1  mrg Target Report Mask(STACK_PROBE) Save
    448   1.8  mrg Enable stack probing.
    449   1.1  mrg 
    450   1.5  mrg mmemcpy-strategy=
    451   1.5  mrg Target RejectNegative Joined Var(ix86_tune_memcpy_strategy)
    452   1.8  mrg Specify memcpy expansion strategy when expected size is known.
    453   1.5  mrg 
    454   1.5  mrg mmemset-strategy=
    455   1.5  mrg Target RejectNegative Joined Var(ix86_tune_memset_strategy)
    456   1.8  mrg Specify memset expansion strategy when expected size is known.
    457   1.5  mrg 
    458   1.1  mrg mstringop-strategy=
    459   1.3  mrg Target RejectNegative Joined Enum(stringop_alg) Var(ix86_stringop_alg) Init(no_stringop)
    460   1.8  mrg Chose strategy to generate stringop using.
    461   1.1  mrg 
    462   1.3  mrg Enum
    463   1.3  mrg Name(stringop_alg) Type(enum stringop_alg)
    464   1.3  mrg Valid arguments to -mstringop-strategy=:
    465   1.3  mrg 
    466   1.3  mrg EnumValue
    467   1.3  mrg Enum(stringop_alg) String(rep_byte) Value(rep_prefix_1_byte)
    468   1.3  mrg 
    469   1.3  mrg EnumValue
    470   1.3  mrg Enum(stringop_alg) String(libcall) Value(libcall)
    471   1.3  mrg 
    472   1.3  mrg EnumValue
    473   1.3  mrg Enum(stringop_alg) String(rep_4byte) Value(rep_prefix_4_byte)
    474   1.3  mrg 
    475   1.3  mrg EnumValue
    476   1.3  mrg Enum(stringop_alg) String(rep_8byte) Value(rep_prefix_8_byte)
    477   1.3  mrg 
    478   1.3  mrg EnumValue
    479   1.3  mrg Enum(stringop_alg) String(byte_loop) Value(loop_1_byte)
    480   1.3  mrg 
    481   1.3  mrg EnumValue
    482   1.3  mrg Enum(stringop_alg) String(loop) Value(loop)
    483   1.3  mrg 
    484   1.3  mrg EnumValue
    485   1.3  mrg Enum(stringop_alg) String(unrolled_loop) Value(unrolled_loop)
    486   1.3  mrg 
    487   1.5  mrg EnumValue
    488   1.5  mrg Enum(stringop_alg) String(vector_loop) Value(vector_loop)
    489   1.5  mrg 
    490   1.1  mrg mtls-dialect=
    491   1.3  mrg Target RejectNegative Joined Var(ix86_tls_dialect) Enum(tls_dialect) Init(TLS_DIALECT_GNU)
    492   1.8  mrg Use given thread-local storage dialect.
    493   1.1  mrg 
    494   1.3  mrg Enum
    495   1.3  mrg Name(tls_dialect) Type(enum tls_dialect)
    496   1.3  mrg Known TLS dialects (for use with the -mtls-dialect= option):
    497   1.3  mrg 
    498   1.3  mrg EnumValue
    499   1.3  mrg Enum(tls_dialect) String(gnu) Value(TLS_DIALECT_GNU)
    500   1.3  mrg 
    501   1.3  mrg EnumValue
    502   1.3  mrg Enum(tls_dialect) String(gnu2) Value(TLS_DIALECT_GNU2)
    503   1.3  mrg 
    504   1.1  mrg mtls-direct-seg-refs
    505   1.1  mrg Target Report Mask(TLS_DIRECT_SEG_REFS)
    506   1.8  mrg Use direct references against %gs when accessing tls data.
    507   1.1  mrg 
    508   1.1  mrg mtune=
    509   1.1  mrg Target RejectNegative Joined Var(ix86_tune_string)
    510   1.8  mrg Schedule code for given CPU.
    511   1.1  mrg 
    512   1.5  mrg mtune-ctrl=
    513   1.5  mrg Target RejectNegative Joined Var(ix86_tune_ctrl_string)
    514   1.8  mrg Fine grain control of tune features.
    515   1.5  mrg 
    516   1.5  mrg mno-default
    517   1.5  mrg Target RejectNegative Var(ix86_tune_no_default) Init(0)
    518   1.8  mrg Clear all tune features.
    519   1.5  mrg 
    520   1.5  mrg mdump-tune-features
    521   1.5  mrg Target RejectNegative Var(ix86_dump_tunes) Init(0)
    522   1.5  mrg 
    523   1.8  mrg miamcu
    524   1.8  mrg Target Report Mask(IAMCU)
    525   1.8  mrg Generate code that conforms to Intel MCU psABI.
    526   1.8  mrg 
    527   1.1  mrg mabi=
    528   1.3  mrg Target RejectNegative Joined Var(ix86_abi) Enum(calling_abi) Init(SYSV_ABI)
    529   1.8  mrg Generate code that conforms to the given ABI.
    530   1.1  mrg 
    531   1.3  mrg Enum
    532   1.3  mrg Name(calling_abi) Type(enum calling_abi)
    533   1.3  mrg Known ABIs (for use with the -mabi= option):
    534   1.3  mrg 
    535   1.3  mrg EnumValue
    536   1.3  mrg Enum(calling_abi) String(sysv) Value(SYSV_ABI)
    537   1.3  mrg 
    538   1.3  mrg EnumValue
    539   1.3  mrg Enum(calling_abi) String(ms) Value(MS_ABI)
    540   1.3  mrg 
    541   1.1  mrg mveclibabi=
    542   1.3  mrg Target RejectNegative Joined Var(ix86_veclibabi_type) Enum(ix86_veclibabi) Init(ix86_veclibabi_type_none)
    543   1.8  mrg Vector library ABI to use.
    544   1.1  mrg 
    545   1.3  mrg Enum
    546   1.3  mrg Name(ix86_veclibabi) Type(enum ix86_veclibabi)
    547   1.3  mrg Known vectorization library ABIs (for use with the -mveclibabi= option):
    548   1.3  mrg 
    549   1.3  mrg EnumValue
    550   1.3  mrg Enum(ix86_veclibabi) String(svml) Value(ix86_veclibabi_type_svml)
    551   1.3  mrg 
    552   1.3  mrg EnumValue
    553   1.3  mrg Enum(ix86_veclibabi) String(acml) Value(ix86_veclibabi_type_acml)
    554   1.3  mrg 
    555   1.3  mrg mvect8-ret-in-mem
    556   1.3  mrg Target Report Mask(VECT8_RETURNS) Save
    557   1.8  mrg Return 8-byte vectors in memory.
    558   1.3  mrg 
    559   1.1  mrg mrecip
    560   1.1  mrg Target Report Mask(RECIP) Save
    561   1.1  mrg Generate reciprocals instead of divss and sqrtss.
    562   1.1  mrg 
    563   1.3  mrg mrecip=
    564   1.3  mrg Target Report RejectNegative Joined Var(ix86_recip_name)
    565   1.3  mrg Control generation of reciprocal estimates.
    566   1.3  mrg 
    567   1.1  mrg mcld
    568   1.1  mrg Target Report Mask(CLD) Save
    569   1.1  mrg Generate cld instruction in the function prologue.
    570   1.1  mrg 
    571   1.3  mrg mvzeroupper
    572   1.3  mrg Target Report Mask(VZEROUPPER) Save
    573   1.3  mrg Generate vzeroupper instruction before a transfer of control flow out of
    574   1.3  mrg the function.
    575   1.3  mrg 
    576   1.8  mrg mstv
    577   1.8  mrg Target Report Mask(STV) Save
    578   1.8  mrg Disable Scalar to Vector optimization pass transforming 64-bit integer
    579   1.8  mrg computations into a vector ones.
    580   1.8  mrg 
    581   1.3  mrg mdispatch-scheduler
    582   1.3  mrg Target RejectNegative Var(flag_dispatch_scheduler)
    583   1.8  mrg Do dispatch scheduling if processor is bdver1, bdver2, bdver3, bdver4
    584   1.8  mrg or znver1 and Haifa scheduling is selected.
    585   1.3  mrg 
    586   1.3  mrg mprefer-avx128
    587   1.3  mrg Target Report Mask(PREFER_AVX128) SAVE
    588   1.3  mrg Use 128-bit AVX instructions instead of 256-bit AVX instructions in the auto-vectorizer.
    589   1.1  mrg 
    590   1.1  mrg ;; ISA support
    591   1.1  mrg 
    592   1.1  mrg m32
    593   1.3  mrg Target RejectNegative Negative(m64) Report InverseMask(ISA_64BIT) Var(ix86_isa_flags) Save
    594   1.8  mrg Generate 32bit i386 code.
    595   1.1  mrg 
    596   1.1  mrg m64
    597   1.3  mrg Target RejectNegative Negative(mx32) Report Mask(ABI_64) Var(ix86_isa_flags) Save
    598   1.8  mrg Generate 64bit x86-64 code.
    599   1.1  mrg 
    600   1.3  mrg mx32
    601   1.5  mrg Target RejectNegative Negative(m16) Report Mask(ABI_X32) Var(ix86_isa_flags) Save
    602   1.8  mrg Generate 32bit x86-64 code.
    603   1.3  mrg 
    604   1.5  mrg m16
    605   1.5  mrg Target RejectNegative Negative(m32) Report Mask(CODE16) InverseMask(ISA_64BIT) Var(ix86_isa_flags) Save
    606   1.8  mrg Generate 16bit i386 code.
    607   1.5  mrg 
    608   1.1  mrg mmmx
    609   1.3  mrg Target Report Mask(ISA_MMX) Var(ix86_isa_flags) Save
    610   1.8  mrg Support MMX built-in functions.
    611   1.1  mrg 
    612   1.1  mrg m3dnow
    613   1.3  mrg Target Report Mask(ISA_3DNOW) Var(ix86_isa_flags) Save
    614   1.8  mrg Support 3DNow! built-in functions.
    615   1.1  mrg 
    616   1.1  mrg m3dnowa
    617  1.10  mrg Target Report Mask(ISA_3DNOW_A) Var(ix86_isa_flags) Save
    618   1.8  mrg Support Athlon 3Dnow! built-in functions.
    619   1.1  mrg 
    620   1.1  mrg msse
    621   1.3  mrg Target Report Mask(ISA_SSE) Var(ix86_isa_flags) Save
    622   1.8  mrg Support MMX and SSE built-in functions and code generation.
    623   1.1  mrg 
    624   1.1  mrg msse2
    625   1.3  mrg Target Report Mask(ISA_SSE2) Var(ix86_isa_flags) Save
    626   1.8  mrg Support MMX, SSE and SSE2 built-in functions and code generation.
    627   1.1  mrg 
    628   1.1  mrg msse3
    629   1.3  mrg Target Report Mask(ISA_SSE3) Var(ix86_isa_flags) Save
    630   1.8  mrg Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation.
    631   1.1  mrg 
    632   1.1  mrg mssse3
    633   1.3  mrg Target Report Mask(ISA_SSSE3) Var(ix86_isa_flags) Save
    634   1.8  mrg Support MMX, SSE, SSE2, SSE3 and SSSE3 built-in functions and code generation.
    635   1.1  mrg 
    636   1.1  mrg msse4.1
    637   1.3  mrg Target Report Mask(ISA_SSE4_1) Var(ix86_isa_flags) Save
    638   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3 and SSE4.1 built-in functions and code generation.
    639   1.1  mrg 
    640   1.1  mrg msse4.2
    641   1.3  mrg Target Report Mask(ISA_SSE4_2) Var(ix86_isa_flags) Save
    642   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation.
    643   1.1  mrg 
    644   1.1  mrg msse4
    645   1.3  mrg Target RejectNegative Report Mask(ISA_SSE4_2) Var(ix86_isa_flags) Save
    646   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1 and SSE4.2 built-in functions and code generation.
    647   1.1  mrg 
    648   1.1  mrg mno-sse4
    649   1.3  mrg Target RejectNegative Report InverseMask(ISA_SSE4_1) Var(ix86_isa_flags) Save
    650   1.8  mrg Do not support SSE4.1 and SSE4.2 built-in functions and code generation.
    651   1.1  mrg 
    652   1.3  mrg msse5
    653   1.3  mrg Target Undocumented Alias(mavx) Warn(%<-msse5%> was removed)
    654   1.3  mrg ;; Deprecated
    655   1.3  mrg 
    656   1.1  mrg mavx
    657   1.3  mrg Target Report Mask(ISA_AVX) Var(ix86_isa_flags) Save
    658   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2 and AVX built-in functions and code generation.
    659   1.1  mrg 
    660   1.3  mrg mavx2
    661   1.3  mrg Target Report Mask(ISA_AVX2) Var(ix86_isa_flags) Save
    662   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and AVX2 built-in functions and code generation.
    663   1.3  mrg 
    664   1.5  mrg mavx512f
    665   1.5  mrg Target Report Mask(ISA_AVX512F) Var(ix86_isa_flags) Save
    666   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F built-in functions and code generation.
    667   1.5  mrg 
    668   1.5  mrg mavx512pf
    669   1.5  mrg Target Report Mask(ISA_AVX512PF) Var(ix86_isa_flags) Save
    670   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512PF built-in functions and code generation.
    671   1.5  mrg 
    672   1.5  mrg mavx512er
    673   1.5  mrg Target Report Mask(ISA_AVX512ER) Var(ix86_isa_flags) Save
    674   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512ER built-in functions and code generation.
    675   1.5  mrg 
    676   1.5  mrg mavx512cd
    677   1.5  mrg Target Report Mask(ISA_AVX512CD) Var(ix86_isa_flags) Save
    678   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512CD built-in functions and code generation.
    679   1.5  mrg 
    680   1.5  mrg mavx512dq
    681   1.5  mrg Target Report Mask(ISA_AVX512DQ) Var(ix86_isa_flags) Save
    682   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512DQ built-in functions and code generation.
    683   1.5  mrg 
    684   1.5  mrg mavx512bw
    685   1.5  mrg Target Report Mask(ISA_AVX512BW) Var(ix86_isa_flags) Save
    686   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512BW built-in functions and code generation.
    687   1.5  mrg 
    688   1.5  mrg mavx512vl
    689   1.5  mrg Target Report Mask(ISA_AVX512VL) Var(ix86_isa_flags) Save
    690   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VL built-in functions and code generation.
    691   1.5  mrg 
    692   1.5  mrg mavx512ifma
    693   1.5  mrg Target Report Mask(ISA_AVX512IFMA) Var(ix86_isa_flags) Save
    694   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512IFMA built-in functions and code generation.
    695   1.5  mrg 
    696   1.5  mrg mavx512vbmi
    697   1.5  mrg Target Report Mask(ISA_AVX512VBMI) Var(ix86_isa_flags) Save
    698   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2 and AVX512F and AVX512VBMI built-in functions and code generation.
    699   1.5  mrg 
    700  1.10  mrg mavx5124fmaps
    701  1.10  mrg Target Report Mask(ISA_AVX5124FMAPS) Var(ix86_isa_flags2) Save
    702  1.10  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124FMAPS built-in functions and code generation.
    703  1.10  mrg 
    704  1.10  mrg mavx5124vnniw
    705  1.10  mrg Target Report Mask(ISA_AVX5124VNNIW) Var(ix86_isa_flags2) Save
    706  1.10  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX5124VNNIW built-in functions and code generation.
    707  1.10  mrg 
    708  1.10  mrg mavx512vpopcntdq
    709  1.10  mrg Target Report Mask(ISA_AVX512VPOPCNTDQ) Var(ix86_isa_flags2) Save
    710  1.10  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX512F and AVX512VPOPCNTDQ built-in functions and code generation.
    711  1.10  mrg 
    712   1.1  mrg mfma
    713   1.3  mrg Target Report Mask(ISA_FMA) Var(ix86_isa_flags) Save
    714   1.8  mrg Support MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX and FMA built-in functions and code generation.
    715   1.1  mrg 
    716   1.1  mrg msse4a
    717   1.3  mrg Target Report Mask(ISA_SSE4A) Var(ix86_isa_flags) Save
    718   1.8  mrg Support MMX, SSE, SSE2, SSE3 and SSE4A built-in functions and code generation.
    719   1.1  mrg 
    720   1.1  mrg mfma4
    721   1.3  mrg Target Report Mask(ISA_FMA4) Var(ix86_isa_flags) Save
    722   1.8  mrg Support FMA4 built-in functions and code generation.
    723   1.1  mrg 
    724   1.1  mrg mxop
    725   1.3  mrg Target Report Mask(ISA_XOP) Var(ix86_isa_flags) Save
    726   1.8  mrg Support XOP built-in functions and code generation.
    727   1.1  mrg 
    728   1.1  mrg mlwp
    729   1.3  mrg Target Report Mask(ISA_LWP) Var(ix86_isa_flags) Save
    730   1.8  mrg Support LWP built-in functions and code generation.
    731   1.1  mrg 
    732   1.1  mrg mabm
    733   1.3  mrg Target Report Mask(ISA_ABM) Var(ix86_isa_flags) Save
    734   1.1  mrg Support code generation of Advanced Bit Manipulation (ABM) instructions.
    735   1.1  mrg 
    736   1.1  mrg mpopcnt
    737   1.3  mrg Target Report Mask(ISA_POPCNT) Var(ix86_isa_flags) Save
    738   1.1  mrg Support code generation of popcnt instruction.
    739   1.1  mrg 
    740  1.10  mrg msgx
    741  1.10  mrg Target Report Mask(ISA_SGX) Var(ix86_isa_flags2) Save
    742  1.10  mrg Support SGX built-in functions and code generation.
    743  1.10  mrg 
    744  1.10  mrg mrdpid
    745  1.10  mrg Target Report Mask(ISA_RDPID) Var(ix86_isa_flags2) Save
    746  1.10  mrg Support RDPID built-in functions and code generation.
    747  1.10  mrg 
    748   1.3  mrg mbmi
    749   1.3  mrg Target Report Mask(ISA_BMI) Var(ix86_isa_flags) Save
    750   1.8  mrg Support BMI built-in functions and code generation.
    751   1.3  mrg 
    752   1.3  mrg mbmi2
    753   1.3  mrg Target Report Mask(ISA_BMI2) Var(ix86_isa_flags) Save
    754   1.8  mrg Support BMI2 built-in functions and code generation.
    755   1.3  mrg 
    756   1.3  mrg mlzcnt
    757   1.3  mrg Target Report Mask(ISA_LZCNT) Var(ix86_isa_flags) Save
    758   1.8  mrg Support LZCNT built-in function and code generation.
    759   1.3  mrg 
    760   1.3  mrg mhle
    761   1.3  mrg Target Report Mask(ISA_HLE) Var(ix86_isa_flags) Save
    762   1.8  mrg Support Hardware Lock Elision prefixes.
    763   1.3  mrg 
    764   1.3  mrg mrdseed
    765   1.3  mrg Target Report Mask(ISA_RDSEED) Var(ix86_isa_flags) Save
    766   1.8  mrg Support RDSEED instruction.
    767   1.3  mrg 
    768   1.3  mrg mprfchw
    769   1.3  mrg Target Report Mask(ISA_PRFCHW) Var(ix86_isa_flags) Save
    770   1.8  mrg Support PREFETCHW instruction.
    771   1.3  mrg 
    772   1.3  mrg madx
    773   1.3  mrg Target Report Mask(ISA_ADX) Var(ix86_isa_flags) Save
    774   1.8  mrg Support flag-preserving add-carry instructions.
    775   1.3  mrg 
    776   1.5  mrg mclflushopt
    777   1.5  mrg Target Report Mask(ISA_CLFLUSHOPT) Var(ix86_isa_flags) Save
    778   1.8  mrg Support CLFLUSHOPT instructions.
    779   1.5  mrg 
    780   1.5  mrg mclwb
    781   1.5  mrg Target Report Mask(ISA_CLWB) Var(ix86_isa_flags) Save
    782   1.8  mrg Support CLWB instruction.
    783   1.5  mrg 
    784   1.5  mrg mpcommit
    785   1.6  mrg Target Undocumented Warn(%<-mpcommit%> was deprecated)
    786   1.6  mrg ;; Deprecated
    787   1.5  mrg 
    788   1.3  mrg mfxsr
    789   1.3  mrg Target Report Mask(ISA_FXSR) Var(ix86_isa_flags) Save
    790   1.8  mrg Support FXSAVE and FXRSTOR instructions.
    791   1.3  mrg 
    792   1.3  mrg mxsave
    793   1.3  mrg Target Report Mask(ISA_XSAVE) Var(ix86_isa_flags) Save
    794   1.8  mrg Support XSAVE and XRSTOR instructions.
    795   1.3  mrg 
    796   1.3  mrg mxsaveopt
    797   1.3  mrg Target Report Mask(ISA_XSAVEOPT) Var(ix86_isa_flags) Save
    798   1.8  mrg Support XSAVEOPT instruction.
    799   1.3  mrg 
    800   1.5  mrg mxsavec
    801   1.5  mrg Target Report Mask(ISA_XSAVEC) Var(ix86_isa_flags) Save
    802   1.8  mrg Support XSAVEC instructions.
    803   1.5  mrg 
    804   1.5  mrg mxsaves
    805   1.5  mrg Target Report Mask(ISA_XSAVES) Var(ix86_isa_flags) Save
    806   1.8  mrg Support XSAVES and XRSTORS instructions.
    807   1.5  mrg 
    808   1.3  mrg mtbm
    809   1.3  mrg Target Report Mask(ISA_TBM) Var(ix86_isa_flags) Save
    810   1.8  mrg Support TBM built-in functions and code generation.
    811   1.3  mrg 
    812   1.1  mrg mcx16
    813   1.3  mrg Target Report Mask(ISA_CX16) Var(ix86_isa_flags) Save
    814   1.1  mrg Support code generation of cmpxchg16b instruction.
    815   1.1  mrg 
    816   1.1  mrg msahf
    817   1.3  mrg Target Report Mask(ISA_SAHF) Var(ix86_isa_flags) Save
    818   1.1  mrg Support code generation of sahf instruction in 64bit x86-64 code.
    819   1.1  mrg 
    820   1.1  mrg mmovbe
    821   1.3  mrg Target Report Mask(ISA_MOVBE) Var(ix86_isa_flags) Save
    822   1.1  mrg Support code generation of movbe instruction.
    823   1.1  mrg 
    824   1.1  mrg mcrc32
    825   1.3  mrg Target Report Mask(ISA_CRC32) Var(ix86_isa_flags) Save
    826   1.1  mrg Support code generation of crc32 instruction.
    827   1.1  mrg 
    828   1.1  mrg maes
    829   1.3  mrg Target Report Mask(ISA_AES) Var(ix86_isa_flags) Save
    830   1.8  mrg Support AES built-in functions and code generation.
    831   1.1  mrg 
    832   1.5  mrg msha
    833   1.5  mrg Target Report Mask(ISA_SHA) Var(ix86_isa_flags) Save
    834   1.8  mrg Support SHA1 and SHA256 built-in functions and code generation.
    835   1.5  mrg 
    836   1.1  mrg mpclmul
    837   1.3  mrg Target Report Mask(ISA_PCLMUL) Var(ix86_isa_flags) Save
    838   1.8  mrg Support PCLMUL built-in functions and code generation.
    839   1.1  mrg 
    840   1.1  mrg msse2avx
    841   1.1  mrg Target Report Var(ix86_sse2avx)
    842   1.8  mrg Encode SSE instructions with VEX prefix.
    843   1.3  mrg 
    844   1.3  mrg mfsgsbase
    845   1.3  mrg Target Report Mask(ISA_FSGSBASE) Var(ix86_isa_flags) Save
    846   1.8  mrg Support FSGSBASE built-in functions and code generation.
    847   1.3  mrg 
    848   1.3  mrg mrdrnd
    849   1.3  mrg Target Report Mask(ISA_RDRND) Var(ix86_isa_flags) Save
    850   1.8  mrg Support RDRND built-in functions and code generation.
    851   1.3  mrg 
    852   1.3  mrg mf16c
    853   1.3  mrg Target Report Mask(ISA_F16C) Var(ix86_isa_flags) Save
    854   1.8  mrg Support F16C built-in functions and code generation.
    855   1.3  mrg 
    856   1.5  mrg mprefetchwt1
    857   1.5  mrg Target Report Mask(ISA_PREFETCHWT1) Var(ix86_isa_flags) Save
    858   1.8  mrg Support PREFETCHWT1 built-in functions and code generation.
    859   1.5  mrg 
    860   1.3  mrg mfentry
    861   1.3  mrg Target Report Var(flag_fentry) Init(-1)
    862   1.3  mrg Emit profiling counter call at function entry before prologue.
    863   1.3  mrg 
    864   1.5  mrg mrecord-mcount
    865   1.5  mrg Target Report Var(flag_record_mcount) Init(0)
    866   1.5  mrg Generate __mcount_loc section with all mcount or __fentry__ calls.
    867   1.5  mrg 
    868   1.5  mrg mnop-mcount
    869   1.5  mrg Target Report Var(flag_nop_mcount) Init(0)
    870   1.5  mrg Generate mcount/__fentry__ calls as nops. To activate they need to be
    871   1.5  mrg patched in.
    872   1.5  mrg 
    873   1.5  mrg mskip-rax-setup
    874   1.5  mrg Target Report Var(flag_skip_rax_setup) Init(0)
    875   1.5  mrg Skip setting up RAX register when passing variable arguments.
    876   1.5  mrg 
    877   1.3  mrg m8bit-idiv
    878   1.3  mrg Target Report Mask(USE_8BIT_IDIV) Save
    879   1.8  mrg Expand 32bit/64bit integer divide into 8bit unsigned integer divide with run-time check.
    880   1.3  mrg 
    881   1.3  mrg mavx256-split-unaligned-load
    882   1.3  mrg Target Report Mask(AVX256_SPLIT_UNALIGNED_LOAD) Save
    883   1.8  mrg Split 32-byte AVX unaligned load.
    884   1.3  mrg 
    885   1.3  mrg mavx256-split-unaligned-store
    886   1.3  mrg Target Report Mask(AVX256_SPLIT_UNALIGNED_STORE) Save
    887   1.8  mrg Split 32-byte AVX unaligned store.
    888   1.3  mrg 
    889   1.3  mrg mrtm
    890   1.3  mrg Target Report Mask(ISA_RTM) Var(ix86_isa_flags) Save
    891   1.8  mrg Support RTM built-in functions and code generation.
    892   1.5  mrg 
    893   1.5  mrg mmpx
    894   1.5  mrg Target Report Mask(ISA_MPX) Var(ix86_isa_flags) Save
    895   1.8  mrg Support MPX code generation.
    896   1.5  mrg 
    897   1.5  mrg mmwaitx
    898   1.5  mrg Target Report Mask(ISA_MWAITX) Var(ix86_isa_flags) Save
    899   1.8  mrg Support MWAITX and MONITORX built-in functions and code generation.
    900   1.8  mrg 
    901   1.8  mrg mclzero
    902   1.8  mrg Target Report Mask(ISA_CLZERO) Var(ix86_isa_flags) Save
    903   1.8  mrg Support CLZERO built-in functions and code generation.
    904   1.8  mrg 
    905   1.8  mrg mpku
    906   1.8  mrg Target Report Mask(ISA_PKU) Var(ix86_isa_flags) Save
    907   1.8  mrg Support PKU built-in functions and code generation.
    908   1.5  mrg 
    909   1.5  mrg mstack-protector-guard=
    910   1.5  mrg Target RejectNegative Joined Enum(stack_protector_guard) Var(ix86_stack_protector_guard) Init(SSP_TLS)
    911   1.8  mrg Use given stack-protector guard.
    912   1.5  mrg 
    913   1.5  mrg Enum
    914   1.5  mrg Name(stack_protector_guard) Type(enum stack_protector_guard)
    915   1.5  mrg Known stack protector guard (for use with the -mstack-protector-guard= option):
    916   1.5  mrg 
    917   1.5  mrg EnumValue
    918   1.5  mrg Enum(stack_protector_guard) String(tls) Value(SSP_TLS)
    919   1.5  mrg 
    920   1.5  mrg EnumValue
    921   1.5  mrg Enum(stack_protector_guard) String(global) Value(SSP_GLOBAL)
    922   1.7  mrg 
    923   1.8  mrg mmitigate-rop
    924   1.8  mrg Target Var(flag_mitigate_rop) Init(0)
    925   1.8  mrg Attempt to avoid generating instruction sequences containing ret bytes.
    926   1.8  mrg 
    927  1.10  mrg mgeneral-regs-only
    928  1.10  mrg Target Report RejectNegative Mask(GENERAL_REGS_ONLY) Var(ix86_target_flags) Save
    929  1.10  mrg Generate code which uses only the general registers.
    930  1.10  mrg 
    931   1.7  mrg mindirect-branch=
    932   1.7  mrg Target Report RejectNegative Joined Enum(indirect_branch) Var(ix86_indirect_branch) Init(indirect_branch_keep)
    933   1.7  mrg Convert indirect call and jump to call and return thunks.
    934   1.7  mrg 
    935   1.7  mrg mfunction-return=
    936   1.7  mrg Target Report RejectNegative Joined Enum(indirect_branch) Var(ix86_function_return) Init(indirect_branch_keep)
    937   1.7  mrg Convert function return to call and return thunk.
    938   1.7  mrg 
    939   1.7  mrg Enum
    940   1.7  mrg Name(indirect_branch) Type(enum indirect_branch)
    941   1.7  mrg Known indirect branch choices (for use with the -mindirect-branch=/-mfunction-return= options):
    942   1.7  mrg 
    943   1.7  mrg EnumValue
    944   1.7  mrg Enum(indirect_branch) String(keep) Value(indirect_branch_keep)
    945   1.7  mrg 
    946   1.7  mrg EnumValue
    947   1.7  mrg Enum(indirect_branch) String(thunk) Value(indirect_branch_thunk)
    948   1.7  mrg 
    949   1.7  mrg EnumValue
    950   1.7  mrg Enum(indirect_branch) String(thunk-inline) Value(indirect_branch_thunk_inline)
    951   1.7  mrg 
    952   1.7  mrg EnumValue
    953   1.7  mrg Enum(indirect_branch) String(thunk-extern) Value(indirect_branch_thunk_extern)
    954   1.7  mrg 
    955   1.7  mrg mindirect-branch-register
    956   1.7  mrg Target Report Var(ix86_indirect_branch_register) Init(0)
    957   1.7  mrg Force indirect call and jump via register.
    958