1 ; Options for the SPARC port of the compiler
3 ; Copyright (C) 2005, 2007, 2010, 2011 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 3, or (at your option) any later
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.
17 ; You should have received a copy of the GNU General Public License
18 ; along with GCC; see the file COPYING3. If not see
19 ; <http://www.gnu.org/licenses/>.
22 config/sparc/sparc-opts.h
25 Target Report Mask(FPU)
29 Target RejectNegative Mask(FPU) MaskExists
33 Target RejectNegative InverseMask(FPU)
34 Do not use hardware FP
37 Target Report Mask(FLAT)
38 Use flat register window model
41 Target Report Mask(UNALIGNED_DOUBLES)
42 Assume possible double misalignment
45 Target Report Mask(APP_REGS)
46 Use ABI reserved registers
49 Target Report RejectNegative Mask(HARD_QUAD)
50 Use hardware quad FP instructions
53 Target Report RejectNegative InverseMask(HARD_QUAD)
54 Do not use hardware quad fp instructions
57 Target Report Mask(V8PLUS)
61 Target Report Mask(VIS)
62 Use UltraSPARC Visual Instruction Set version 1.0 extensions
65 Target Report Mask(VIS2)
66 Use UltraSPARC Visual Instruction Set version 2.0 extensions
69 Target Report Mask(VIS3)
70 Use UltraSPARC Visual Instruction Set version 3.0 extensions
73 Target Report Mask(FMAF)
74 Use UltraSPARC Fused Multiply-Add extensions
77 Target Report RejectNegative Mask(PTR64)
81 Target Report RejectNegative InverseMask(PTR64)
85 Target Report RejectNegative Mask(64BIT)
89 Target Report RejectNegative InverseMask(64BIT)
93 Target Report Mask(STACK_BIAS)
97 Target Report Mask(FASTER_STRUCTS)
98 Use structs on stronger alignment for double-word copies
102 Optimize tail call instructions in assembler and linker
105 Target RejectNegative Joined Var(sparc_cpu_and_features) Enum(sparc_processor_type) Init(PROCESSOR_V7)
106 Use features of and schedule code for given CPU
109 Target RejectNegative Joined Var(sparc_cpu) Enum(sparc_processor_type) Init(PROCESSOR_V7)
110 Schedule code for given CPU
113 Name(sparc_processor_type) Type(enum processor_type)
116 Enum(sparc_processor_type) String(native) Value(PROCESSOR_NATIVE) DriverOnly
119 Enum(sparc_processor_type) String(v7) Value(PROCESSOR_V7)
122 Enum(sparc_processor_type) String(cypress) Value(PROCESSOR_CYPRESS)
125 Enum(sparc_processor_type) String(v8) Value(PROCESSOR_V8)
128 Enum(sparc_processor_type) String(supersparc) Value(PROCESSOR_SUPERSPARC)
131 Enum(sparc_processor_type) String(hypersparc) Value(PROCESSOR_HYPERSPARC)
134 Enum(sparc_processor_type) String(leon) Value(PROCESSOR_LEON)
137 Enum(sparc_processor_type) String(sparclite) Value(PROCESSOR_SPARCLITE)
140 Enum(sparc_processor_type) String(f930) Value(PROCESSOR_F930)
143 Enum(sparc_processor_type) String(f934) Value(PROCESSOR_F934)
146 Enum(sparc_processor_type) String(sparclite86x) Value(PROCESSOR_SPARCLITE86X)
149 Enum(sparc_processor_type) String(sparclet) Value(PROCESSOR_SPARCLET)
152 Enum(sparc_processor_type) String(tsc701) Value(PROCESSOR_TSC701)
155 Enum(sparc_processor_type) String(v9) Value(PROCESSOR_V9)
158 Enum(sparc_processor_type) String(ultrasparc) Value(PROCESSOR_ULTRASPARC)
161 Enum(sparc_processor_type) String(ultrasparc3) Value(PROCESSOR_ULTRASPARC3)
164 Enum(sparc_processor_type) String(niagara) Value(PROCESSOR_NIAGARA)
167 Enum(sparc_processor_type) String(niagara2) Value(PROCESSOR_NIAGARA2)
170 Enum(sparc_processor_type) String(niagara3) Value(PROCESSOR_NIAGARA3)
173 Enum(sparc_processor_type) String(niagara4) Value(PROCESSOR_NIAGARA4)
176 Target RejectNegative Joined Var(sparc_cmodel_string)
177 Use given SPARC-V9 code model
180 Target Report RejectNegative Var(sparc_std_struct_return)
181 Enable strict 32-bit psABI struct return checking.
184 ;; Generate code for little-endian
186 Mask(LONG_DOUBLE_128)
187 ;; Use 128-bit long double
190 ;; Generate code for SPARClite
193 ;; Generate code for SPARClet
196 ;; Generate code for SPARC-V8
199 ;; Generate code for SPARC-V9
201 Mask(DEPRECATED_V8_INSNS)
202 ;; Generate code that uses the V8 instructions deprecated
203 ;; in the V9 architecture.