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