1 /* Machine description for AArch64 architecture. 2 Copyright (C) 2009-2015 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 #ifdef TARGET_FIX_ERR_A53_835769_DEFAULT 31 #define CA53_ERR_835769_SPEC \ 32 " %{!mno-fix-cortex-a53-835769:--fix-cortex-a53-835769}" 33 #else 34 #define CA53_ERR_835769_SPEC \ 35 " %{mfix-cortex-a53-835769:--fix-cortex-a53-835769}" 36 #endif 37 38 #ifdef TARGET_FIX_ERR_A53_843419_DEFAULT 39 #define CA53_ERR_843419_SPEC \ 40 " %{!mno-fix-cortex-a53-843419:--fix-cortex-a53-843419}" 41 #else 42 #define CA53_ERR_843419_SPEC \ 43 " %{mfix-cortex-a53-843419:--fix-cortex-a53-843419}" 44 #endif 45 46 #ifndef LINK_SPEC 47 #define LINK_SPEC "%{h*} \ 48 %{static:-Bstatic} \ 49 %{shared:-shared} \ 50 %{symbolic:-Bsymbolic} \ 51 %{!static:%{rdynamic:-export-dynamic}} \ 52 %{mbig-endian:-EB} %{mlittle-endian:-EL} -X \ 53 -maarch64elf%{mabi=ilp32*:32}%{mbig-endian:b}" \ 54 CA53_ERR_835769_SPEC \ 55 CA53_ERR_843419_SPEC 56 #endif 57 58 #endif /* GCC_AARCH64_ELF_RAW_H */ 59