rtems.h revision 146895
190075Sobrien/* Definitions for rtems targeting a PowerPC using elf. 2146895Skan Copyright (C) 1996, 1997, 2000, 2001, 2002, 2003, 2005 3146895Skan Free Software Foundation, Inc. 490075Sobrien Contributed by Joel Sherrill (joel@OARcorp.com). 590075Sobrien 6132718Skan This file is part of GCC. 790075Sobrien 8132718Skan GCC is free software; you can redistribute it and/or modify it 9132718Skan under the terms of the GNU General Public License as published 10132718Skan by the Free Software Foundation; either version 2, or (at your 11132718Skan option) any later version. 1290075Sobrien 13132718Skan GCC is distributed in the hope that it will be useful, but WITHOUT 14132718Skan ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 15132718Skan or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public 16132718Skan License for more details. 1790075Sobrien 18132718Skan You should have received a copy of the GNU General Public License 19132718Skan along with GCC; see the file COPYING. If not, write to the 20132718Skan Free Software Foundation, 59 Temple Place - Suite 330, Boston, 21132718Skan MA 02111-1307, USA. */ 2290075Sobrien 2390075Sobrien/* Specify predefined symbols in preprocessor. */ 2490075Sobrien 25117395Skan#undef TARGET_OS_CPP_BUILTINS 26117395Skan#define TARGET_OS_CPP_BUILTINS() \ 27117395Skan do \ 28117395Skan { \ 29117395Skan builtin_define_std ("PPC"); \ 30117395Skan builtin_define ("__rtems__"); \ 31146895Skan builtin_define ("__USE_INIT_FINI__"); \ 32117395Skan builtin_assert ("system=rtems"); \ 33117395Skan builtin_assert ("cpu=powerpc"); \ 34117395Skan builtin_assert ("machine=powerpc"); \ 35132718Skan TARGET_OS_SYSV_CPP_BUILTINS (); \ 36117395Skan } \ 37117395Skan while (0) 38110611Skan 39110611Skan#undef CPP_OS_DEFAULT_SPEC 40110611Skan#define CPP_OS_DEFAULT_SPEC "%(cpp_os_rtems)" 41146895Skan 42146895Skan#define CPP_OS_RTEMS_SPEC "\ 43146895Skan%{!mcpu*: %{!Dppc*: %{!Dmpc*: -Dmpc750} } }\ 44146895Skan%{mcpu=403: %{!Dppc*: %{!Dmpc*: -Dppc403} } } \ 45146895Skan%{mcpu=505: %{!Dppc*: %{!Dmpc*: -Dmpc505} } } \ 46146895Skan%{mcpu=601: %{!Dppc*: %{!Dmpc*: -Dppc601} } } \ 47146895Skan%{mcpu=602: %{!Dppc*: %{!Dmpc*: -Dppc602} } } \ 48146895Skan%{mcpu=603: %{!Dppc*: %{!Dmpc*: -Dppc603} } } \ 49146895Skan%{mcpu=603e: %{!Dppc*: %{!Dmpc*: -Dppc603e} } } \ 50146895Skan%{mcpu=604: %{!Dppc*: %{!Dmpc*: -Dmpc604} } } \ 51146895Skan%{mcpu=750: %{!Dppc*: %{!Dmpc*: -Dmpc750} } } \ 52146895Skan%{mcpu=821: %{!Dppc*: %{!Dmpc*: -Dmpc821} } } \ 53146895Skan%{mcpu=860: %{!Dppc*: %{!Dmpc*: -Dmpc860} } }" 54146895Skan 55146895Skan#undef SUBSUBTARGET_EXTRA_SPECS 56146895Skan#define SUBSUBTARGET_EXTRA_SPECS \ 57146895Skan { "cpp_os_rtems", CPP_OS_RTEMS_SPEC } 58