1 /* Specs definitions for Atmel AVR back end. 2 3 Copyright (C) 2012-2015 Free Software Foundation, Inc. 4 Contributed by Georg-Johann Lay (avr@gjlay.de) 5 6 This file is part of GCC. 7 8 GCC is free software; you can redistribute it and/or modify 9 it under the terms of the GNU General Public License as published by 10 the Free Software Foundation; either version 3, or (at your option) 11 any later version. 12 13 GCC is distributed in the hope that it will be useful, 14 but WITHOUT ANY WARRANTY; without even the implied warranty of 15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 16 GNU General Public License for more details. 17 18 You should have received a copy of the GNU General Public License 19 along with GCC; see the file COPYING3. If not see 20 <http://www.gnu.org/licenses/>. */ 21 22 23 /* Default specs layout. The actual definitions might be superseeded 24 by device- or OS- specific files, like avrlibc.h, ../rtems.h, etc. 25 The specs are repeated in the device specs files. Subspecs are 26 specs known to GCC or specs defined in the device specs files. */ 27 28 29 #undef CPLUSPLUS_CPP_SPEC 30 #define CPLUSPLUS_CPP_SPEC \ 31 "%(cpp)" 32 33 #undef CC1_SPEC 34 #define CC1_SPEC \ 35 "%(cc1_n_flash) " \ 36 "%(cc1_errata_skip) " \ 37 "%(cc1_rmw) " 38 39 #undef CC1PLUS_SPEC 40 #define CC1PLUS_SPEC \ 41 "%(cc1) " \ 42 "%{!frtti:-fno-rtti} " \ 43 "%{!fenforce-eh-specs:-fno-enforce-eh-specs} " \ 44 "%{!fexceptions:-fno-exceptions} " 45 46 #define ASM_RELAX_SPEC \ 47 "%{mrelax:--mlink-relax} " 48 49 #undef ASM_SPEC 50 #define ASM_SPEC \ 51 "%(asm_arch) " \ 52 "%(asm_relax) " \ 53 "%(asm_rmw) " \ 54 "%(asm_errata_skip) " 55 56 #define LINK_ARCH_SPEC \ 57 "%{mmcu=*:-m%*} " 58 59 #define LINK_RELAX_SPEC \ 60 "%{mrelax:--relax %(link_pmem_wrap)} " 61 62 #undef LINK_SPEC 63 #define LINK_SPEC \ 64 "%(link_arch) " \ 65 "%(link_data_start) " \ 66 "%(link_text_start) " \ 67 "%(link_relax) " \ 68 "%{shared:%eshared is not supported} " 69 70 #undef LIB_SPEC 71 #define LIB_SPEC " %{!mmcu=avr1:-lc} " 72 73 #undef LIBGCC_SPEC 74 #define LIBGCC_SPEC " %{!mmcu=avr1:-lgcc} " 75 76 #define STARTFILE_SPEC "" 77 #define ENDFILE_SPEC "" 78