1 /* Machine description for AArch64 architecture. 2 Copyright (C) 2009-2020 Free Software Foundation, Inc. 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 21 /* Support for bare-metal builds. */ 22 #ifndef GCC_AARCH64_ELF_RAW_H 23 #define GCC_AARCH64_ELF_RAW_H 24 25 #define STARTFILE_SPEC " crti%O%s crtbegin%O%s crt0%O%s" 26 #define ENDFILE_SPEC \ 27 " crtend%O%s crtn%O%s " \ 28 "%{Ofast|ffast-math|funsafe-math-optimizations:crtfastmath.o%s}" 29 30 #ifndef LINK_SPEC 31 #define LINK_SPEC "%{h*} \ 32 %{static:-Bstatic} \ 33 %{shared:-shared} \ 34 %{symbolic:-Bsymbolic} \ 35 %{!static:%{rdynamic:-export-dynamic}} \ 36 %{mbig-endian:-EB} %{mlittle-endian:-EL} -X \ 37 -maarch64elf%{mabi=ilp32*:32}%{mbig-endian:b}" \ 38 AARCH64_ERRATA_LINK_SPEC 39 #endif 40 41 #endif /* GCC_AARCH64_ELF_RAW_H */ 42