]> git.ipfire.org Git - thirdparty/gcc.git/blame - gcc/config/aarch64/aarch64.opt
[PATCH 2/9] ENABLE_CHECKING refactoring: libcpp
[thirdparty/gcc.git] / gcc / config / aarch64 / aarch64.opt
CommitLineData
43e9d192 1; Machine description for AArch64 architecture.
5624e564 2; Copyright (C) 2009-2015 Free Software Foundation, Inc.
43e9d192
IB
3; Contributed by ARM Ltd.
4;
5; This file is part of GCC.
6;
7; GCC is free software; you can redistribute it and/or modify it
8; under the terms of the GNU General Public License as published by
9; the Free Software Foundation; either version 3, or (at your option)
10; any later version.
11;
12; GCC is distributed in the hope that it will be useful, but
13; WITHOUT ANY WARRANTY; without even the implied warranty of
14; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15; General Public License for more details.
16;
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/>.
20
21HeaderInclude
22config/aarch64/aarch64-opts.h
23
361fb3ee
KT
24TargetVariable
25enum aarch64_processor explicit_tune_core = aarch64_none
26
27TargetVariable
28enum aarch64_arch explicit_arch = aarch64_no_arch
29
30TargetSave
31const char *x_aarch64_override_tune_string
32
33TargetVariable
34unsigned long aarch64_isa_flags = 0
35
43e9d192
IB
36; The TLS dialect names to use with -mtls-dialect.
37
38Enum
39Name(tls_type) Type(enum aarch64_tls_type)
40The possible TLS dialects:
41
42EnumValue
43Enum(tls_type) String(trad) Value(TLS_TRADITIONAL)
44
45EnumValue
46Enum(tls_type) String(desc) Value(TLS_DESCRIPTORS)
47
48; The code model option names for -mcmodel.
49
50Enum
51Name(cmodel) Type(enum aarch64_code_model)
52The code model option names for -mcmodel:
53
54EnumValue
55Enum(cmodel) String(tiny) Value(AARCH64_CMODEL_TINY)
56
57EnumValue
58Enum(cmodel) String(small) Value(AARCH64_CMODEL_SMALL)
59
60EnumValue
61Enum(cmodel) String(large) Value(AARCH64_CMODEL_LARGE)
62
43e9d192
IB
63mbig-endian
64Target Report RejectNegative Mask(BIG_END)
65Assume target CPU is configured as big endian
66
67mgeneral-regs-only
361fb3ee 68Target Report RejectNegative Mask(GENERAL_REGS_ONLY) Save
43e9d192
IB
69Generate code which uses only the general registers
70
75cf1494 71mfix-cortex-a53-835769
361fb3ee 72Target Report Var(aarch64_fix_a53_err835769) Init(2) Save
75cf1494
KT
73Workaround for ARM Cortex-A53 Erratum number 835769
74
bf05ef76
YR
75mfix-cortex-a53-843419
76Target Report
77Workaround for ARM Cortex-A53 Erratum number 843419
78
43e9d192
IB
79mlittle-endian
80Target Report RejectNegative InverseMask(BIG_END)
81Assume target CPU is configured as little endian
82
83mcmodel=
361fb3ee 84Target RejectNegative Joined Enum(cmodel) Var(aarch64_cmodel_var) Init(AARCH64_CMODEL_SMALL) Save
43e9d192
IB
85Specify the code model
86
87mstrict-align
361fb3ee 88Target Report RejectNegative Mask(STRICT_ALIGN) Save
43e9d192
IB
89Don't assume that unaligned accesses are handled by the system
90
91momit-leaf-frame-pointer
361fb3ee 92Target Report Var(flag_omit_leaf_frame_pointer) Init(2) Save
43e9d192
IB
93Omit the frame pointer in leaf functions
94
95mtls-dialect=
361fb3ee 96Target RejectNegative Joined Enum(tls_type) Var(aarch64_tls_dialect) Init(TLS_DESCRIPTORS) Save
43e9d192
IB
97Specify TLS dialect
98
5eee3c34
JW
99mtls-size=
100Target RejectNegative Joined Var(aarch64_tls_size) Enum(aarch64_tls_size)
101Specifies bit size of immediate TLS offsets. Valid values are 12, 24, 32, 48.
102
103Enum
104Name(aarch64_tls_size) Type(int)
105
106EnumValue
107Enum(aarch64_tls_size) String(12) Value(12)
108
109EnumValue
110Enum(aarch64_tls_size) String(24) Value(24)
111
112EnumValue
113Enum(aarch64_tls_size) String(32) Value(32)
114
115EnumValue
116Enum(aarch64_tls_size) String(48) Value(48)
117
43e9d192 118march=
608df31f 119Target RejectNegative ToLower Joined Var(aarch64_arch_string)
43e9d192
IB
120-march=ARCH Use features of architecture ARCH
121
122mcpu=
608df31f 123Target RejectNegative ToLower Joined Var(aarch64_cpu_string)
43e9d192
IB
124-mcpu=CPU Use features of and optimize for CPU
125
126mtune=
608df31f 127Target RejectNegative ToLower Joined Var(aarch64_tune_string)
43e9d192 128-mtune=CPU Optimize for CPU
17a819cb
YZ
129
130mabi=
131Target RejectNegative Joined Enum(aarch64_abi) Var(aarch64_abi) Init(AARCH64_ABI_DEFAULT)
132-mabi=ABI Generate code that conforms to the specified ABI
133
8dec06f2
JG
134moverride=
135Target RejectNegative ToLower Joined Var(aarch64_override_tune_string)
136-moverride=STRING Power users only! Override CPU optimization parameters
137
17a819cb
YZ
138Enum
139Name(aarch64_abi) Type(int)
140Known AArch64 ABIs (for use with the -mabi= option):
141
142EnumValue
143Enum(aarch64_abi) String(ilp32) Value(AARCH64_ABI_ILP32)
144
145EnumValue
146Enum(aarch64_abi) String(lp64) Value(AARCH64_ABI_LP64)
b4f50fd4
RR
147
148mpc-relative-literal-loads
149Target Report Save Var(nopcrelative_literal_loads) Init(2) Save
150PC relative literal loads.