]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/config/rs6000/eabi.h
367de7bc2700bc2ef197597e364800b53b915fe5
[thirdparty/gcc.git] / gcc / config / rs6000 / eabi.h
1 /* Core target definitions for GNU compiler
2 for IBM RS/6000 PowerPC targeted to embedded ELF systems.
3 Copyright (C) 1995-2022 Free Software Foundation, Inc.
4 Contributed by Cygnus Support.
5
6 This file is part of GCC.
7
8 GCC is free software; you can redistribute it and/or modify it
9 under the terms of the GNU General Public License as published
10 by the Free Software Foundation; either version 3, or (at your
11 option) any later version.
12
13 GCC is distributed in the hope that it will be useful, but WITHOUT
14 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
15 or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public
16 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 /* Add -meabi to target flags. */
23 #undef TARGET_DEFAULT
24 #define TARGET_DEFAULT OPTION_MASK_EABI
25
26 /* Invoke an initializer function to set up the GOT. */
27 #define NAME__MAIN "__eabi"
28 #define INVOKE__main
29
30 #undef TARGET_OS_CPP_BUILTINS
31 #define TARGET_OS_CPP_BUILTINS() \
32 do \
33 { \
34 builtin_define_std ("PPC"); \
35 builtin_define ("__embedded__"); \
36 builtin_assert ("system=embedded"); \
37 builtin_assert ("cpu=powerpc"); \
38 builtin_assert ("machine=powerpc"); \
39 TARGET_OS_SYSV_CPP_BUILTINS (); \
40 } \
41 while (0)