Revise -mdisable-fpregs option and add new -msoft-mult option
[official-gcc.git] / gcc / config / pa / pa.opt
blob47995f73e65db6a8727b6e493368f9342ca141d7
1 ; Options for the HP PA-RISC port of the compiler.
3 ; Copyright (C) 2005-2021 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
10 ; version.
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.
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/>.
21 HeaderInclude
22 config/pa/pa-opts.h
24 ; Which cpu we are scheduling for.
25 Variable
26 enum processor_type pa_cpu = TARGET_SCHED_DEFAULT
28 march=1.0
29 Target RejectNegative
30 Generate PA1.0 code.
32 march=1.1
33 Target RejectNegative
34 Generate PA1.1 code.
36 march=2.0
37 Target RejectNegative
38 Generate PA2.0 code (requires binutils 2.10 or later).
40 mbig-switch
41 Target Ignore
42 Does nothing.  Preserved for backward compatibility.
44 mcaller-copies
45 Target Mask(CALLER_COPIES)
46 Caller copies function arguments passed by hidden reference.
48 mcoherent-ldcw
49 Target Var(TARGET_COHERENT_LDCW) Init(1)
50 Use ldcw/ldcd coherent cache-control hint.
52 mdisable-fpregs
53 Target Mask(SOFT_FLOAT)
54 Disable FP regs.  Equivalent to -msoft-float.
56 mdisable-indexing
57 Target Mask(DISABLE_INDEXING)
58 Disable indexed addressing.
60 mfast-indirect-calls
61 Target Mask(FAST_INDIRECT_CALLS)
62 Generate fast indirect calls.
64 mfixed-range=
65 Target RejectNegative Joined Var(pa_deferred_options) Defer
66 Specify range of registers to make fixed.
68 mgas
69 Target Mask(GAS)
70 Assume code will be assembled by GAS.
72 mjump-in-delay
73 Target Ignore
74 Does nothing.  Preserved for backward compatibility.
76 ;; Not used by gcc
77 mlinker-opt
78 Target RejectNegative
79 Enable linker optimizations.
81 mlong-calls
82 Target Mask(LONG_CALLS)
83 Always generate long calls.
85 mlong-load-store
86 Target Mask(LONG_LOAD_STORE)
87 Emit long load/store sequences.
89 mnosnake
90 Target RejectNegative
91 Generate PA1.0 code.
93 mno-space-regs
94 Target RejectNegative Mask(NO_SPACE_REGS)
95 Disable space regs.
97 mordered
98 Target Var(TARGET_ORDERED) Init(0)
99 Assume memory references are ordered and barriers are not needed.
101 mpa-risc-1-0
102 Target RejectNegative
103 Generate PA1.0 code.
105 mpa-risc-1-1
106 Target RejectNegative Mask(PA_11)
107 Generate PA1.1 code.
109 mpa-risc-2-0
110 Target RejectNegative Mask(PA_20)
111 Generate PA2.0 code (requires binutils 2.10 or later).
113 mportable-runtime
114 Target Mask(PORTABLE_RUNTIME)
115 Use portable calling conventions.
117 mschedule=
118 Target RejectNegative Joined Enum(pa_schedule) Var(pa_cpu)
119 Specify CPU for scheduling purposes.  Valid arguments are 700, 7100, 7100LC, 7200, 7300, and 8000.
121 Enum
122 Name(pa_schedule) Type(enum processor_type)
124 EnumValue
125 Enum(pa_schedule) String(8000) Value(PROCESSOR_8000)
127 EnumValue
128 Enum(pa_schedule) String(7100) Value(PROCESSOR_7100)
130 EnumValue
131 Enum(pa_schedule) String(700) Value(PROCESSOR_700)
133 EnumValue
134 Enum(pa_schedule) String(7100LC) Value(PROCESSOR_7100LC)
136 EnumValue
137 Enum(pa_schedule) String(7200) Value(PROCESSOR_7200)
139 EnumValue
140 Enum(pa_schedule) String(7300) Value(PROCESSOR_7300)
142 msoft-float
143 Target Mask(SOFT_FLOAT)
144 Use software floating point.
146 msoft-mult
147 Target Mask(SOFT_MULT)
148 Use software integer multiplication.
150 msnake
151 Target RejectNegative
152 Generate PA1.1 code.
154 mspace-regs
155 Target RejectNegative InverseMask(NO_SPACE_REGS)
156 Do not disable space regs.