]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/config/arm/arm-opts.h
Update copyright years in gcc/
[thirdparty/gcc.git] / gcc / config / arm / arm-opts.h
1 /* Definitions for option handling for ARM.
2 Copyright (C) 1991-2014 Free Software Foundation, Inc.
3
4 This file is part of GCC.
5
6 GCC is free software; you can redistribute it and/or modify it
7 under the terms of the GNU General Public License as published
8 by the Free Software Foundation; either version 3, or (at your
9 option) any later version.
10
11 GCC is distributed in the hope that it will be useful, but WITHOUT
12 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
13 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
14 License for more details.
15
16 You should have received a copy of the GNU General Public License
17 along with GCC; see the file COPYING3. If not see
18 <http://www.gnu.org/licenses/>. */
19
20 #ifndef ARM_OPTS_H
21 #define ARM_OPTS_H
22
23 /* The various ARM cores. */
24 enum processor_type
25 {
26 #undef ARM_CORE
27 #define ARM_CORE(NAME, INTERNAL_IDENT, IDENT, ARCH, FLAGS, COSTS) \
28 INTERNAL_IDENT,
29 #include "arm-cores.def"
30 #undef ARM_CORE
31 /* Used to indicate that no processor has been specified. */
32 arm_none
33 };
34
35 /* Which __fp16 format to use.
36 The enumeration values correspond to the numbering for the
37 Tag_ABI_FP_16bit_format attribute.
38 */
39 enum arm_fp16_format_type
40 {
41 ARM_FP16_FORMAT_NONE = 0,
42 ARM_FP16_FORMAT_IEEE = 1,
43 ARM_FP16_FORMAT_ALTERNATIVE = 2
44 };
45
46 /* Which ABI to use. */
47 enum arm_abi_type
48 {
49 ARM_ABI_APCS,
50 ARM_ABI_ATPCS,
51 ARM_ABI_AAPCS,
52 ARM_ABI_IWMMXT,
53 ARM_ABI_AAPCS_LINUX
54 };
55
56 enum float_abi_type
57 {
58 ARM_FLOAT_ABI_SOFT,
59 ARM_FLOAT_ABI_SOFTFP,
60 ARM_FLOAT_ABI_HARD
61 };
62
63 /* Which thread pointer access sequence to use. */
64 enum arm_tp_type {
65 TP_AUTO,
66 TP_SOFT,
67 TP_CP15
68 };
69
70 /* Which TLS scheme to use. */
71 enum arm_tls_type {
72 TLS_GNU,
73 TLS_GNU2
74 };
75 #endif