xref: /netbsd-src/external/gpl3/gcc.old/dist/gcc/config/rs6000/eabi.h (revision 8feb0f0b7eaff0608f8350bbfa3098827b4bb91b)
1 /* Core target definitions for GNU compiler
2    for IBM RS/6000 PowerPC targeted to embedded ELF systems.
3    Copyright (C) 1995-2020 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 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)
42