123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123 |
- ; Machine description for AArch64 architecture.
- ; Copyright (C) 2009-2015 Free Software Foundation, Inc.
- ; Contributed by ARM Ltd.
- ;
- ; This file is part of GCC.
- ;
- ; GCC is free software; you can redistribute it and/or modify it
- ; under the terms of the GNU General Public License as published by
- ; the Free Software Foundation; either version 3, or (at your option)
- ; any later version.
- ;
- ; GCC is distributed in the hope that it will be useful, but
- ; WITHOUT ANY WARRANTY; without even the implied warranty of
- ; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- ; General Public License for more details.
- ;
- ; You should have received a copy of the GNU General Public License
- ; along with GCC; see the file COPYING3. If not see
- ; <http://www.gnu.org/licenses/>.
- HeaderInclude
- config/aarch64/aarch64-opts.h
- ; The TLS dialect names to use with -mtls-dialect.
- Enum
- Name(tls_type) Type(enum aarch64_tls_type)
- The possible TLS dialects:
- EnumValue
- Enum(tls_type) String(trad) Value(TLS_TRADITIONAL)
- EnumValue
- Enum(tls_type) String(desc) Value(TLS_DESCRIPTORS)
- ; The code model option names for -mcmodel.
- Enum
- Name(cmodel) Type(enum aarch64_code_model)
- The code model option names for -mcmodel:
- EnumValue
- Enum(cmodel) String(tiny) Value(AARCH64_CMODEL_TINY)
- EnumValue
- Enum(cmodel) String(small) Value(AARCH64_CMODEL_SMALL)
- EnumValue
- Enum(cmodel) String(large) Value(AARCH64_CMODEL_LARGE)
- ; The cpu/arch option names to use in cpu/arch selection.
- Variable
- const char *aarch64_arch_string
- Variable
- const char *aarch64_cpu_string
- Variable
- const char *aarch64_tune_string
- mbig-endian
- Target Report RejectNegative Mask(BIG_END)
- Assume target CPU is configured as big endian
- mgeneral-regs-only
- Target Report RejectNegative Mask(GENERAL_REGS_ONLY)
- Generate code which uses only the general registers
- mfix-cortex-a53-835769
- Target Report Var(aarch64_fix_a53_err835769) Init(2)
- Workaround for ARM Cortex-A53 Erratum number 835769
- mfix-cortex-a53-843419
- Target Report
- Workaround for ARM Cortex-A53 Erratum number 843419
- mlittle-endian
- Target Report RejectNegative InverseMask(BIG_END)
- Assume target CPU is configured as little endian
- mcmodel=
- Target RejectNegative Joined Enum(cmodel) Var(aarch64_cmodel_var) Init(AARCH64_CMODEL_SMALL)
- Specify the code model
- mstrict-align
- Target Report RejectNegative Mask(STRICT_ALIGN)
- Don't assume that unaligned accesses are handled by the system
- momit-leaf-frame-pointer
- Target Report Save Var(flag_omit_leaf_frame_pointer) Init(1)
- Omit the frame pointer in leaf functions
- mtls-dialect=
- Target RejectNegative Joined Enum(tls_type) Var(aarch64_tls_dialect) Init(TLS_DESCRIPTORS)
- Specify TLS dialect
- march=
- Target RejectNegative ToLower Joined Var(aarch64_arch_string)
- -march=ARCH Use features of architecture ARCH
- mcpu=
- Target RejectNegative ToLower Joined Var(aarch64_cpu_string)
- -mcpu=CPU Use features of and optimize for CPU
- mtune=
- Target RejectNegative ToLower Joined Var(aarch64_tune_string)
- -mtune=CPU Optimize for CPU
- mabi=
- Target RejectNegative Joined Enum(aarch64_abi) Var(aarch64_abi) Init(AARCH64_ABI_DEFAULT)
- -mabi=ABI Generate code that conforms to the specified ABI
- Enum
- Name(aarch64_abi) Type(int)
- Known AArch64 ABIs (for use with the -mabi= option):
- EnumValue
- Enum(aarch64_abi) String(ilp32) Value(AARCH64_ABI_ILP32)
- EnumValue
- Enum(aarch64_abi) String(lp64) Value(AARCH64_ABI_LP64)
|