1 ; Options for the HP PA-RISC port of the compiler.
3 ; Copyright (C) 2005-2023 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 ANY
13 ; WARRANTY; without even the implied warranty of MERCHANTABILITY or
14 ; FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
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/>.
24 ; Which cpu we are scheduling for.
26 enum processor_type pa_cpu = TARGET_SCHED_DEFAULT
38 Generate PA2.0 code (requires binutils 2.10 or later).
41 Target Var(TARGET_ATOMIC_LIBCALLS) Init(1)
42 Generate libcalls for atomic loads and stores when sync libcalls are disabled.
46 Does nothing. Preserved for backward compatibility.
49 Target Mask(CALLER_COPIES)
50 Caller copies function arguments passed by hidden reference.
53 Target Var(TARGET_COHERENT_LDCW) Init(0)
54 Use ldcw/ldcd coherent cache-control hint.
57 Target Mask(SOFT_FLOAT)
58 Disable FP regs. Equivalent to -msoft-float.
61 Target Mask(DISABLE_INDEXING)
62 Disable indexed addressing.
65 Target Mask(FAST_INDIRECT_CALLS)
66 Generate fast indirect calls.
69 Target RejectNegative Joined Var(pa_deferred_options) Defer
70 Specify range of registers to make fixed.
74 Assume code will be assembled by GAS.
78 Does nothing. Preserved for backward compatibility.
83 Enable linker optimizations.
86 Target Mask(LONG_CALLS)
87 Always generate long calls.
90 Target Mask(LONG_LOAD_STORE)
91 Emit long load/store sequences.
98 Target RejectNegative Mask(NO_SPACE_REGS)
102 Target Var(TARGET_ORDERED) Init(0)
103 Assume memory references are ordered and barriers are not needed.
106 Target RejectNegative
110 Target RejectNegative Mask(PA_11)
114 Target RejectNegative Mask(PA_20)
115 Generate PA2.0 code (requires binutils 2.10 or later).
118 Target Mask(PORTABLE_RUNTIME)
119 Use portable calling conventions.
122 Target RejectNegative Joined Enum(pa_schedule) Var(pa_cpu)
123 Specify CPU for scheduling purposes. Valid arguments are 700, 7100, 7100LC, 7200, 7300, and 8000.
126 Name(pa_schedule) Type(enum processor_type)
129 Enum(pa_schedule) String(8000) Value(PROCESSOR_8000)
132 Enum(pa_schedule) String(7100) Value(PROCESSOR_7100)
135 Enum(pa_schedule) String(700) Value(PROCESSOR_700)
138 Enum(pa_schedule) String(7100LC) Value(PROCESSOR_7100LC)
141 Enum(pa_schedule) String(7200) Value(PROCESSOR_7200)
144 Enum(pa_schedule) String(7300) Value(PROCESSOR_7300)
147 Target Mask(SOFT_FLOAT)
148 Use software floating point.
151 Target Mask(SOFT_MULT)
152 Use software integer multiplication.
155 Target RejectNegative
159 Target RejectNegative InverseMask(NO_SPACE_REGS)
160 Do not disable space regs.