1 ; Options for the IA-32 and AMD64 ports of the compiler.
3 ; Copyright (C) 2005 Free Software Foundation, Inc.
5 ; This file is part of GCC.
7 ; GCC is free software; you can redistribute it and/or modify it under
8 ; the terms of the GNU General Public License as published by the Free
9 ; Software Foundation; either version 2, or (at your option) any later
12 ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY
13 ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
17 ; You should have received a copy of the GNU General Public License
18 ; along with GCC; see the file COPYING. If not, write to the Free
19 ; Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA
23 Target RejectNegative Report Mask(128BIT_LONG_DOUBLE)
24 sizeof(long double) is 16
27 Target RejectNegative Report InverseMask(64BIT)
28 Generate 32bit i386 code
31 Target RejectNegative Undocumented
35 Target Report Mask(3DNOW)
36 Support 3DNow! built-in functions
39 Target RejectNegative Undocumented
43 Target RejectNegative Report Mask(64BIT)
44 Generate 64bit x86-64 code
47 Target Report Mask(80387)
51 Target RejectNegative Report InverseMask(128BIT_LONG_DOUBLE)
52 sizeof(long double) is 12
54 maccumulate-outgoing-args
55 Target Report Mask(ACCUMULATE_OUTGOING_ARGS)
56 Reserve space for outgoing arguments in the function prologue
59 Target Report Mask(ALIGN_DOUBLE)
60 Align some doubles on dword boundary
63 Target RejectNegative Joined Var(ix86_align_funcs_string)
64 Function starts are aligned to this power of 2
67 Target RejectNegative Joined Var(ix86_align_jumps_string)
68 Jump targets are aligned to this power of 2
71 Target RejectNegative Joined Var(ix86_align_loops_string)
72 Loop code aligned to this power of 2
75 Target RejectNegative Report InverseMask(NO_ALIGN_STRINGOPS, ALIGN_STRINGOPS)
76 Align destination of the string operations
79 Target RejectNegative Joined Var(ix86_arch_string)
80 Generate code for given CPU
83 Target RejectNegative Joined Var(ix86_asm_string)
84 Use given assembler dialect
87 Target RejectNegative Joined Var(ix86_branch_cost_string)
88 Branches are this expensive (1-5, arbitrary units)
91 Target RejectNegative Joined Var(ix86_cmodel_string)
92 Use given x86-64 code model
95 Target RejectNegative Var(TARGET_DEBUG_ADDR) Undocumented
98 Target RejectNegative Var(TARGET_DEBUG_ARG) Undocumented
101 Target RejectNegative Report InverseMask(NO_FANCY_MATH_387, USE_FANCY_MATH_387)
102 Generate sin, cos, sqrt for FPU
105 Target Report Mask(FLOAT_RETURNS)
106 Return values of functions in FPU registers
109 Target RejectNegative Joined Var(ix86_fpmath_string)
110 Generate floating point mathematics using given instruction set
113 Target RejectNegative Mask(80387) MaskExists
117 Target Report Mask(IEEE_FP)
118 Use IEEE math for fp comparisons
120 minline-all-stringops
121 Target Report Mask(INLINE_ALL_STRINGOPS)
122 Inline all known string operations
129 Target Report Mask(MMX)
130 Support MMX built-in functions
133 Target Report Mask(MS_BITFIELD_LAYOUT)
134 Use native (MS) bitfield layout
137 Target RejectNegative Report Mask(NO_ALIGN_STRINGOPS) Undocumented
140 Target RejectNegative Report Mask(NO_FANCY_MATH_387) Undocumented
143 Target RejectNegative Report Mask(NO_PUSH_ARGS) Undocumented
146 Target RejectNegative Report Mask(NO_RED_ZONE) Undocumented
148 momit-leaf-frame-pointer
149 Target Report Mask(OMIT_LEAF_FRAME_POINTER)
150 Omit the frame pointer in leaf functions
153 Target RejectNegative Undocumented
157 Target RejectNegative Undocumented
160 mpreferred-stack-boundary=
161 Target RejectNegative Joined Var(ix86_preferred_stack_boundary_string)
162 Attempt to keep stack aligned to this power of 2
165 Target Report InverseMask(NO_PUSH_ARGS, PUSH_ARGS)
166 Use push instructions to save outgoing arguments
169 Target RejectNegative Report InverseMask(NO_RED_ZONE, RED_ZONE)
170 Use red-zone in the x86-64 code
173 Target RejectNegative Joined Var(ix86_regparm_string)
174 Number of registers used to pass integer arguments
177 Target Report Mask(RTD)
178 Alternate calling convention
181 Target InverseMask(80387)
182 Do not use hardware fp
185 Target Report Mask(SSE)
186 Support MMX and SSE built-in functions and code generation
189 Target Report Mask(SSE2)
190 Support MMX, SSE and SSE2 built-in functions and code generation
193 Target Report Mask(SSE3)
194 Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation
197 Target RejectNegative Mask(SSEREGPARM)
198 Use SSE register passing conventions for SF and DF mode
201 Target Report Mask(SVR3_SHLIB)
202 Uninitialized locals in .bss
205 Target Report Mask(STACK_PROBE)
209 Target RejectNegative Joined Var(ix86_tls_dialect_string)
210 Use given thread-local storage dialect
213 Target Report Mask(TLS_DIRECT_SEG_REFS)
214 Use direct references against %gs when accessing tls data
217 Target RejectNegative Joined Var(ix86_tune_string)
218 Schedule code for given CPU
220 ;; Support Athlon 3Dnow builtins