]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/mips/mips.opt
mt-sde (CFLAGS_FOR_TARGET): Add -mno-gpopt.
[thirdparty/gcc.git] / gcc / config / mips / mips.opt
CommitLineData
3ad7bb65
KH
1; Options for the MIPS port of the compiler
2;
2f83c7d6 3; Copyright (C) 2005, 2007 Free Software Foundation, Inc.
3ad7bb65
KH
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
2f83c7d6 9; Software Foundation; either version 3, or (at your option) any later
3ad7bb65
KH
10; version.
11;
12; GCC is distributed in the hope that it will be useful, but WITHOUT
13; ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
14; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
15; License for more details.
16;
17; You should have received a copy of the GNU General Public License
2f83c7d6
NC
18; along with GCC; see the file COPYING3. If not see
19; <http://www.gnu.org/licenses/>.
3ad7bb65 20
d522e7a2
RS
21mabi=
22Target RejectNegative Joined
23-mabi=ABI Generate code that conforms to the given ABI
24
21c425ee
RS
25mabicalls
26Target Report Mask(ABICALLS)
d9870b7e 27Generate code that can be used in SVR4-style dynamic objects
21c425ee
RS
28
29mad
30Target Report Var(TARGET_MAD)
31Use PMC-style 'mad' instructions
32
d522e7a2 33march=
55bea00a 34Target RejectNegative Joined Var(mips_arch_string)
d522e7a2
RS
35-march=ISA Generate code for the given ISA
36
a05bea76
RS
37mbranch-cost=
38Target RejectNegative Joined UInteger Var(mips_branch_cost)
39-mbranch-cost=COST Set the cost of branches to roughly COST instructions
40
21c425ee
RS
41mbranch-likely
42Target Report Mask(BRANCHLIKELY)
43Use Branch Likely instructions, overriding the architecture default
44
f9e4a411
SL
45mflip-mips16
46Target Report Var(TARGET_FLIP_MIPS16)
47Switch on/off MIPS16 ASE on alternating functions for compiler testing
48
21c425ee
RS
49mcheck-zero-division
50Target Report Mask(CHECK_ZERO_DIV)
51Trap on integer divide by zero
52
53mdivide-breaks
25e3d99d 54Target Report RejectNegative Mask(DIVIDE_BREAKS)
21c425ee
RS
55Use branch-and-break sequences to check for integer divide by zero
56
57mdivide-traps
25e3d99d 58Target Report RejectNegative InverseMask(DIVIDE_BREAKS, DIVIDE_TRAPS)
21c425ee
RS
59Use trap instructions to check for integer divide by zero
60
500fc425
TS
61mdmx
62Target Report RejectNegative Var(TARGET_MDMX)
63Allow the use of MDMX instructions
64
21c425ee
RS
65mdouble-float
66Target Report RejectNegative InverseMask(SINGLE_FLOAT, DOUBLE_FLOAT)
67Allow hardware floating-point instructions to cover both 32-bit and 64-bit operations
68
118ea793
CF
69mdsp
70Target Report Mask(DSP)
71Use MIPS-DSP instructions
72
32041385
CF
73mdspr2
74Target Report Mask(DSPR2)
75Use MIPS-DSP REV 2 instructions
76
21c425ee
RS
77mdebug
78Target Var(TARGET_DEBUG_MODE) Undocumented
79
80mdebugd
81Target Var(TARGET_DEBUG_D_MODE) Undocumented
82
83meb
84Target Report RejectNegative Mask(BIG_ENDIAN)
85Use big-endian byte order
86
87mel
88Target Report RejectNegative InverseMask(BIG_ENDIAN, LITTLE_ENDIAN)
89Use little-endian byte order
90
91membedded-data
92Target Report Var(TARGET_EMBEDDED_DATA)
93Use ROM instead of RAM
94
95mexplicit-relocs
96Target Report Mask(EXPLICIT_RELOCS)
97Use NewABI-style %reloc() assembly operators
98
a318179e
RS
99mextern-sdata
100Target Report Var(TARGET_EXTERN_SDATA) Init(1)
101Use -G for data that is not defined by the current object
102
21c425ee
RS
103mfix-r4000
104Target Report Mask(FIX_R4000)
105Work around certain R4000 errata
106
107mfix-r4400
108Target Report Mask(FIX_R4400)
109Work around certain R4400 errata
110
111mfix-sb1
112Target Report Var(TARGET_FIX_SB1)
113Work around errata for early SB-1 revision 2 cores
114
115mfix-vr4120
116Target Report Var(TARGET_FIX_VR4120)
117Work around certain VR4120 errata
118
119mfix-vr4130
120Target Report Var(TARGET_FIX_VR4130)
121Work around VR4130 mflo/mfhi errata
122
123mfix4300
124Target Report Var(TARGET_4300_MUL_FIX)
125Work around an early 4300 hardware bug
126
127mfp-exceptions
128Target Report Mask(FP_EXCEPTIONS)
129FP exceptions are enabled
130
131mfp32
132Target Report RejectNegative InverseMask(FLOAT64)
133Use 32-bit floating-point registers
134
135mfp64
136Target Report RejectNegative Mask(FLOAT64)
137Use 64-bit floating-point registers
138
d522e7a2 139mflush-func=
55bea00a 140Target RejectNegative Joined Var(mips_cache_flush_func) Init(CACHE_FLUSH_FUNC)
d522e7a2
RS
141-mflush-func=FUNC Use FUNC to flush the cache before calling stack trampolines
142
21c425ee
RS
143mfused-madd
144Target Report Mask(FUSED_MADD)
145Generate floating-point multiply-add instructions
146
147mgp32
148Target Report RejectNegative InverseMask(64BIT)
149Use 32-bit general registers
150
151mgp64
152Target Report RejectNegative Mask(64BIT)
153Use 64-bit general registers
154
a318179e
RS
155mgpopt
156Target Report Var(TARGET_GPOPT) Init(1)
157Use GP-relative addressing to access small data
158
21c425ee 159mhard-float
cc4ebe7d
SL
160Target Report RejectNegative InverseMask(SOFT_FLOAT_ABI, HARD_FLOAT_ABI)
161Allow the use of hardware floating-point ABI and instructions
21c425ee 162
d522e7a2
RS
163mips
164Target RejectNegative Joined
165-mipsN Generate code for ISA level N
166
21c425ee
RS
167mips16
168Target Report RejectNegative Mask(MIPS16)
500fc425 169Generate MIPS16 code
21c425ee
RS
170
171mips3d
172Target Report RejectNegative Mask(MIPS3D)
173Use MIPS-3D instructions
174
a318179e
RS
175mlocal-sdata
176Target Report Var(TARGET_LOCAL_SDATA) Init(1)
177Use -G for object-local data
178
21c425ee
RS
179mlong-calls
180Target Report Var(TARGET_LONG_CALLS)
181Use indirect calls
182
183mlong32
184Target Report RejectNegative InverseMask(LONG64, LONG32)
185Use a 32-bit long type
186
187mlong64
188Target Report RejectNegative Mask(LONG64)
189Use a 64-bit long type
190
191mmemcpy
cfa31150 192Target Report Mask(MEMCPY)
21c425ee
RS
193Don't optimize block moves
194
195mmips-tfile
196Target
197Use the mips-tfile postpass
198
500fc425
TS
199mmt
200Target Report Var(TARGET_MT)
201Allow the use of MT instructions
202
d522e7a2
RS
203mno-flush-func
204Target RejectNegative
205Do not use a cache-flushing function before calling stack trampolines
206
500fc425
TS
207mno-mdmx
208Target Report RejectNegative InverseVar(MDMX)
209Do not use MDMX instructions
210
21c425ee
RS
211mno-mips16
212Target Report RejectNegative InverseMask(MIPS16)
213Generate normal-mode code
214
215mno-mips3d
216Target Report RejectNegative InverseMask(MIPS3D)
217Do not use MIPS-3D instructions
218
219mpaired-single
220Target Report Mask(PAIRED_SINGLE_FLOAT)
221Use paired-single floating-point instructions
222
d9870b7e
RS
223mshared
224Target Report Var(TARGET_SHARED) Init(1)
225When generating -mabicalls code, make the code suitable for use in shared libraries
226
21c425ee
RS
227msingle-float
228Target Report RejectNegative Mask(SINGLE_FLOAT)
229Restrict the use of hardware floating-point instructions to 32-bit operations
230
0aa222d1
SL
231msmartmips
232Target Report RejectNegative Mask(SMARTMIPS)
233Use SmartMIPS instructions
234
21c425ee 235msoft-float
cc4ebe7d 236Target Report RejectNegative Mask(SOFT_FLOAT_ABI)
21c425ee
RS
237Prevent the use of all hardware floating-point instructions
238
239msplit-addresses
240Target Report Mask(SPLIT_ADDRESSES)
241Optimize lui/addiu address loads
242
243msym32
244Target Report Var(TARGET_SYM32)
245Assume all symbols have 32-bit values
246
c93c5160
RS
247mcode-readable=
248Target RejectNegative Joined
249-mcode-readable=SETTING Specify when instructions are allowed to access code
250
d522e7a2 251mtune=
55bea00a 252Target RejectNegative Joined Var(mips_tune_string)
d522e7a2
RS
253-mtune=PROCESSOR Optimize the output for PROCESSOR
254
21c425ee
RS
255muninit-const-in-rodata
256Target Report Var(TARGET_UNINIT_CONST_IN_RODATA)
257Put uninitialized constants in ROM (needs -membedded-data)
258
259mvr4130-align
260Target Report Mask(VR4130_ALIGN)
261Perform VR4130-specific alignment optimizations
262
263mxgot
264Target Report Var(TARGET_XGOT)
265Lift restrictions on GOT size