OSDN Git Service

2006-03-30 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git] / gcc / config / i386 / i386.opt
1 ; Options for the IA-32 and AMD64 ports of the compiler.
2
3 ; Copyright (C) 2005 Free Software Foundation, Inc.
4 ;
5 ; This file is part of GCC.
6 ;
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
10 ; version.
11 ;
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
15 ; for more details.
16 ;
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
20 ; 02110-1301, USA.
21
22 m128bit-long-double
23 Target RejectNegative Report Mask(128BIT_LONG_DOUBLE)
24 sizeof(long double) is 16
25
26 m32
27 Target RejectNegative Report InverseMask(64BIT)
28 Generate 32bit i386 code
29
30 m386
31 Target RejectNegative Undocumented
32 ;; Deprecated
33
34 m3dnow
35 Target Report Mask(3DNOW)
36 Support 3DNow! built-in functions
37
38 m486
39 Target RejectNegative Undocumented
40 ;; Deprecated
41
42 m64
43 Target RejectNegative Report Mask(64BIT)
44 Generate 64bit x86-64 code
45
46 m80387
47 Target Report Mask(80387)
48 Use hardware fp
49
50 m96bit-long-double
51 Target RejectNegative Report InverseMask(128BIT_LONG_DOUBLE)
52 sizeof(long double) is 12
53
54 maccumulate-outgoing-args
55 Target Report Mask(ACCUMULATE_OUTGOING_ARGS)
56 Reserve space for outgoing arguments in the function prologue
57
58 malign-double
59 Target Report Mask(ALIGN_DOUBLE)
60 Align some doubles on dword boundary
61
62 malign-functions=
63 Target RejectNegative Joined Var(ix86_align_funcs_string)
64 Function starts are aligned to this power of 2
65
66 malign-jumps=
67 Target RejectNegative Joined Var(ix86_align_jumps_string)
68 Jump targets are aligned to this power of 2
69
70 malign-loops=
71 Target RejectNegative Joined Var(ix86_align_loops_string)
72 Loop code aligned to this power of 2
73
74 malign-stringops
75 Target RejectNegative Report InverseMask(NO_ALIGN_STRINGOPS, ALIGN_STRINGOPS)
76 Align destination of the string operations
77
78 march=
79 Target RejectNegative Joined Var(ix86_arch_string)
80 Generate code for given CPU
81
82 masm=
83 Target RejectNegative Joined Var(ix86_asm_string)
84 Use given assembler dialect
85
86 mbranch-cost=
87 Target RejectNegative Joined Var(ix86_branch_cost_string)
88 Branches are this expensive (1-5, arbitrary units)
89
90 mlarge-data-threshold=
91 Target RejectNegative Joined Var(ix86_section_threshold_string)
92 Data greater than given threshold will go into .ldata section in x86-64 medium model
93
94 mcmodel=
95 Target RejectNegative Joined Var(ix86_cmodel_string)
96 Use given x86-64 code model
97
98 mdebug-addr
99 Target RejectNegative Var(TARGET_DEBUG_ADDR) Undocumented
100
101 mdebug-arg
102 Target RejectNegative Var(TARGET_DEBUG_ARG) Undocumented
103
104 mfancy-math-387
105 Target RejectNegative Report InverseMask(NO_FANCY_MATH_387, USE_FANCY_MATH_387)
106 Generate sin, cos, sqrt for FPU
107
108 mfp-ret-in-387
109 Target Report Mask(FLOAT_RETURNS)
110 Return values of functions in FPU registers
111
112 mfpmath=
113 Target RejectNegative Joined Var(ix86_fpmath_string)
114 Generate floating point mathematics using given instruction set
115
116 mhard-float
117 Target RejectNegative Mask(80387) MaskExists
118 Use hardware fp
119
120 mieee-fp
121 Target Report Mask(IEEE_FP)
122 Use IEEE math for fp comparisons
123
124 minline-all-stringops
125 Target Report Mask(INLINE_ALL_STRINGOPS)
126 Inline all known string operations
127
128 mintel-syntax
129 Target Undocumented
130 ;; Deprecated
131
132 mmmx
133 Target Report Mask(MMX)
134 Support MMX built-in functions
135
136 mms-bitfields
137 Target Report Mask(MS_BITFIELD_LAYOUT)
138 Use native (MS) bitfield layout
139
140 mno-align-stringops
141 Target RejectNegative Report Mask(NO_ALIGN_STRINGOPS) Undocumented
142
143 mno-fancy-math-387
144 Target RejectNegative Report Mask(NO_FANCY_MATH_387) Undocumented
145
146 mno-push-args
147 Target RejectNegative Report Mask(NO_PUSH_ARGS) Undocumented
148
149 mno-red-zone
150 Target RejectNegative Report Mask(NO_RED_ZONE) Undocumented
151
152 momit-leaf-frame-pointer
153 Target Report Mask(OMIT_LEAF_FRAME_POINTER)
154 Omit the frame pointer in leaf functions
155
156 mpentium
157 Target RejectNegative Undocumented
158 ;; Deprecated
159
160 mpentiumpro
161 Target RejectNegative Undocumented
162 ;; Deprecated
163
164 mpreferred-stack-boundary=
165 Target RejectNegative Joined Var(ix86_preferred_stack_boundary_string)
166 Attempt to keep stack aligned to this power of 2
167
168 mpush-args
169 Target Report InverseMask(NO_PUSH_ARGS, PUSH_ARGS)
170 Use push instructions to save outgoing arguments
171
172 mred-zone
173 Target RejectNegative Report InverseMask(NO_RED_ZONE, RED_ZONE)
174 Use red-zone in the x86-64 code
175
176 mregparm=
177 Target RejectNegative Joined Var(ix86_regparm_string)
178 Number of registers used to pass integer arguments
179
180 mrtd
181 Target Report Mask(RTD)
182 Alternate calling convention
183
184 msoft-float
185 Target InverseMask(80387)
186 Do not use hardware fp
187
188 msse
189 Target Report Mask(SSE)
190 Support MMX and SSE built-in functions and code generation
191
192 msse2
193 Target Report Mask(SSE2)
194 Support MMX, SSE and SSE2 built-in functions and code generation
195
196 msse3
197 Target Report Mask(SSE3)
198 Support MMX, SSE, SSE2 and SSE3 built-in functions and code generation
199
200 msseregparm
201 Target RejectNegative Mask(SSEREGPARM)
202 Use SSE register passing conventions for SF and DF mode
203
204 msselibm
205 Target Mask(SSELIBM)
206 Use SSE2 ABI libgcc-math routines if using SSE math
207
208 msvr3-shlib
209 Target Report Mask(SVR3_SHLIB)
210 Uninitialized locals in .bss
211
212 mstack-arg-probe
213 Target Report Mask(STACK_PROBE)
214 Enable stack probing
215
216 mtls-dialect=
217 Target RejectNegative Joined Var(ix86_tls_dialect_string)
218 Use given thread-local storage dialect
219
220 mtls-direct-seg-refs
221 Target Report Mask(TLS_DIRECT_SEG_REFS)
222 Use direct references against %gs when accessing tls data
223
224 mtune=
225 Target RejectNegative Joined Var(ix86_tune_string)
226 Schedule code for given CPU
227
228 ;; Support Athlon 3Dnow builtins
229 Mask(3DNOW_A)