]>
Commit | Line | Data |
---|---|---|
99dee823 | 1 | ; Copyright (C) 2005-2021 Free Software Foundation, Inc. |
ad41bd84 JM |
2 | ; |
3 | ; This file is part of GCC. | |
4 | ; | |
5 | ; GCC is free software; you can redistribute it and/or modify it under | |
6 | ; the terms of the GNU General Public License as published by the Free | |
7 | ; Software Foundation; either version 3, or (at your option) any later | |
8 | ; version. | |
9 | ; | |
10 | ; GCC is distributed in the hope that it will be useful, but WITHOUT ANY | |
11 | ; WARRANTY; without even the implied warranty of MERCHANTABILITY or | |
12 | ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License | |
13 | ; for more details. | |
14 | ; | |
15 | ; You should have received a copy of the GNU General Public License | |
16 | ; along with GCC; see the file COPYING3. If not see | |
17 | ; <http://www.gnu.org/licenses/>. | |
18 | ||
e6cc0c98 JM |
19 | HeaderInclude |
20 | config/ia64/ia64-opts.h | |
21 | ||
22 | ; Which cpu are we scheduling for. | |
23 | Variable | |
24 | enum processor_type ia64_tune = PROCESSOR_ITANIUM2 | |
25 | ||
dbdd120f | 26 | mbig-endian |
eece52b5 | 27 | Target RejectNegative Mask(BIG_ENDIAN) |
a7b2e184 | 28 | Generate big endian code. |
dbdd120f RH |
29 | |
30 | mlittle-endian | |
eece52b5 | 31 | Target RejectNegative InverseMask(BIG_ENDIAN) |
a7b2e184 | 32 | Generate little endian code. |
dbdd120f RH |
33 | |
34 | mgnu-as | |
eece52b5 | 35 | Target Mask(GNU_AS) |
a7b2e184 | 36 | Generate code for GNU as. |
dbdd120f RH |
37 | |
38 | mgnu-ld | |
eece52b5 | 39 | Target Mask(GNU_LD) |
a7b2e184 | 40 | Generate code for GNU ld. |
dbdd120f RH |
41 | |
42 | mvolatile-asm-stop | |
eece52b5 | 43 | Target Mask(VOL_ASM_STOP) |
a7b2e184 | 44 | Emit stop bits before and after volatile extended asms. |
dbdd120f RH |
45 | |
46 | mregister-names | |
47 | Target Mask(REG_NAMES) | |
a7b2e184 | 48 | Use in/loc/out register names. |
dbdd120f RH |
49 | |
50 | mno-sdata | |
eece52b5 | 51 | Target RejectNegative Mask(NO_SDATA) |
dbdd120f RH |
52 | |
53 | msdata | |
eece52b5 | 54 | Target RejectNegative InverseMask(NO_SDATA) |
a7b2e184 | 55 | Enable use of sdata/scommon/sbss. |
dbdd120f RH |
56 | |
57 | mno-pic | |
eece52b5 | 58 | Target RejectNegative Mask(NO_PIC) |
a7b2e184 | 59 | Generate code without GP reg. |
dbdd120f RH |
60 | |
61 | mconstant-gp | |
eece52b5 | 62 | Target RejectNegative Mask(CONST_GP) |
a7b2e184 | 63 | gp is constant (but save/restore gp on indirect calls). |
dbdd120f RH |
64 | |
65 | mauto-pic | |
eece52b5 | 66 | Target RejectNegative Mask(AUTO_PIC) |
a7b2e184 | 67 | Generate self-relocatable code. |
dbdd120f RH |
68 | |
69 | minline-float-divide-min-latency | |
eece52b5 | 70 | Target RejectNegative Var(TARGET_INLINE_FLOAT_DIV, 1) |
a7b2e184 | 71 | Generate inline floating point division, optimize for latency. |
dbdd120f RH |
72 | |
73 | minline-float-divide-max-throughput | |
eece52b5 | 74 | Target RejectNegative Var(TARGET_INLINE_FLOAT_DIV, 2) Init(2) |
a7b2e184 | 75 | Generate inline floating point division, optimize for throughput. |
dbdd120f RH |
76 | |
77 | mno-inline-float-divide | |
eece52b5 | 78 | Target RejectNegative Var(TARGET_INLINE_FLOAT_DIV, 0) |
dbdd120f RH |
79 | |
80 | minline-int-divide-min-latency | |
eece52b5 | 81 | Target RejectNegative Var(TARGET_INLINE_INT_DIV, 1) |
a7b2e184 | 82 | Generate inline integer division, optimize for latency. |
dbdd120f RH |
83 | |
84 | minline-int-divide-max-throughput | |
eece52b5 | 85 | Target RejectNegative Var(TARGET_INLINE_INT_DIV, 2) |
a7b2e184 | 86 | Generate inline integer division, optimize for throughput. |
dbdd120f RH |
87 | |
88 | mno-inline-int-divide | |
eece52b5 | 89 | Target RejectNegative Var(TARGET_INLINE_INT_DIV, 0) |
a7b2e184 | 90 | Do not inline integer division. |
dbdd120f RH |
91 | |
92 | minline-sqrt-min-latency | |
eece52b5 | 93 | Target RejectNegative Var(TARGET_INLINE_SQRT, 1) |
a7b2e184 | 94 | Generate inline square root, optimize for latency. |
dbdd120f RH |
95 | |
96 | minline-sqrt-max-throughput | |
eece52b5 | 97 | Target RejectNegative Var(TARGET_INLINE_SQRT, 2) |
a7b2e184 | 98 | Generate inline square root, optimize for throughput. |
dbdd120f RH |
99 | |
100 | mno-inline-sqrt | |
eece52b5 | 101 | Target RejectNegative Var(TARGET_INLINE_SQRT, 0) |
a7b2e184 | 102 | Do not inline square root. |
dbdd120f RH |
103 | |
104 | mdwarf2-asm | |
eece52b5 | 105 | Target Mask(DWARF2_ASM) |
a1a3812d | 106 | Enable DWARF line debug info via GNU as. |
dbdd120f RH |
107 | |
108 | mearly-stop-bits | |
eece52b5 | 109 | Target Mask(EARLY_STOP_BITS) |
a7b2e184 | 110 | Enable earlier placing stop bits for better scheduling. |
dbdd120f RH |
111 | |
112 | mfixed-range= | |
e6cc0c98 | 113 | Target RejectNegative Joined Var(ia64_deferred_options) Defer |
a7b2e184 | 114 | Specify range of registers to make fixed. |
dbdd120f RH |
115 | |
116 | mtls-size= | |
55bea00a | 117 | Target RejectNegative Joined UInteger Var(ia64_tls_size) Init(22) |
a7b2e184 | 118 | Specify bit size of immediate TLS offsets. |
dbdd120f RH |
119 | |
120 | mtune= | |
e6cc0c98 | 121 | Target RejectNegative Joined Enum(ia64_tune) Var(ia64_tune) |
a7b2e184 | 122 | Schedule code for given CPU. |
dbdd120f | 123 | |
e6cc0c98 JM |
124 | Enum |
125 | Name(ia64_tune) Type(enum processor_type) | |
126 | Known Itanium CPUs (for use with the -mtune= option): | |
127 | ||
128 | EnumValue | |
129 | Enum(ia64_tune) String(itanium2) Value(PROCESSOR_ITANIUM2) | |
130 | ||
131 | EnumValue | |
132 | Enum(ia64_tune) String(mckinley) Value(PROCESSOR_ITANIUM2) | |
133 | ||
048d0d36 | 134 | msched-br-data-spec |
eece52b5 | 135 | Target Var(mflag_sched_br_data_spec) Init(0) |
a7b2e184 | 136 | Use data speculation before reload. |
048d0d36 MK |
137 | |
138 | msched-ar-data-spec | |
eece52b5 | 139 | Target Var(mflag_sched_ar_data_spec) Init(1) |
a7b2e184 | 140 | Use data speculation after reload. |
048d0d36 MK |
141 | |
142 | msched-control-spec | |
eece52b5 | 143 | Target Var(mflag_sched_control_spec) Init(2) |
a7b2e184 | 144 | Use control speculation. |
048d0d36 MK |
145 | |
146 | msched-br-in-data-spec | |
eece52b5 | 147 | Target Var(mflag_sched_br_in_data_spec) Init(1) |
a7b2e184 | 148 | Use in block data speculation before reload. |
048d0d36 MK |
149 | |
150 | msched-ar-in-data-spec | |
eece52b5 | 151 | Target Var(mflag_sched_ar_in_data_spec) Init(1) |
a7b2e184 | 152 | Use in block data speculation after reload. |
048d0d36 MK |
153 | |
154 | msched-in-control-spec | |
eece52b5 | 155 | Target Var(mflag_sched_in_control_spec) Init(1) |
a7b2e184 | 156 | Use in block control speculation. |
048d0d36 | 157 | |
388092d5 | 158 | msched-spec-ldc |
eece52b5 | 159 | Target Var(mflag_sched_spec_ldc) Init(1) |
a7b2e184 | 160 | Use simple data speculation check. |
048d0d36 | 161 | |
388092d5 | 162 | msched-spec-control-ldc |
eece52b5 | 163 | Target Var(mflag_sched_spec_control_ldc) Init(0) |
a7b2e184 | 164 | Use simple data speculation check for control speculation. |
048d0d36 | 165 | |
048d0d36 | 166 | msched-prefer-non-data-spec-insns |
68a57628 | 167 | Target WarnRemoved |
048d0d36 MK |
168 | |
169 | msched-prefer-non-control-spec-insns | |
68a57628 | 170 | Target WarnRemoved |
048d0d36 MK |
171 | |
172 | msched-count-spec-in-critical-path | |
eece52b5 | 173 | Target Var(mflag_sched_count_spec_in_critical_path) Init(0) |
a7b2e184 | 174 | Count speculative dependencies while calculating priority of instructions. |
30b82356 | 175 | |
388092d5 | 176 | msched-stop-bits-after-every-cycle |
eece52b5 | 177 | Target Var(mflag_sched_stop_bits_after_every_cycle) Init(1) |
a7b2e184 | 178 | Place a stop bit after every cycle when scheduling. |
388092d5 AB |
179 | |
180 | msched-fp-mem-deps-zero-cost | |
eece52b5 | 181 | Target Var(mflag_sched_fp_mem_deps_zero_cost) Init(0) |
a7b2e184 | 182 | Assume that floating-point stores and loads are not likely to cause conflict when placed into one instruction group. |
388092d5 AB |
183 | |
184 | msched-max-memory-insns= | |
185 | Target RejectNegative Joined UInteger Var(ia64_max_memory_insns) Init(1) | |
a7b2e184 | 186 | Soft limit on number of memory insns per instruction group, giving lower priority to subsequent memory insns attempting to schedule in the same insn group. Frequently useful to prevent cache bank conflicts. Default value is 1. |
388092d5 AB |
187 | |
188 | msched-max-memory-insns-hard-limit | |
eece52b5 | 189 | Target Var(mflag_sched_mem_insns_hard_limit) Init(0) |
a7b2e184 | 190 | Disallow more than 'msched-max-memory-insns' in instruction group. Otherwise, limit is 'soft' (prefer non-memory operations when limit is reached). |
388092d5 AB |
191 | |
192 | msel-sched-dont-check-control-spec | |
eece52b5 | 193 | Target Var(mflag_sel_sched_dont_check_control_spec) Init(0) |
a7b2e184 | 194 | Don't generate checks for control speculation in selective scheduling. |
388092d5 | 195 | |
30b82356 | 196 | ; This comment is to ensure we retain the blank line above. |