Remove old autovect-branch by moving to "dead" directory.
[official-gcc.git] / old-autovect-branch / gcc / config / rs6000 / eabi.h
blob323e5ad51dd058de5294dd14b26cac9b0d742b49
1 /* Core target definitions for GNU compiler
2 for IBM RS/6000 PowerPC targeted to embedded ELF systems.
3 Copyright (C) 1995, 1996, 2000, 2003, 2004 Free Software Foundation, Inc.
4 Contributed by Cygnus Support.
6 This file is part of GCC.
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 2, or (at your
11 option) any later version.
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.
18 You should have received a copy of the GNU General Public License
19 along with GCC; see the file COPYING. If not, write to the
20 Free Software Foundation, 51 Franklin Street, Fifth Floor, Boston,
21 MA 02110-1301, USA. */
23 /* Add -meabi to target flags. */
24 #undef TARGET_DEFAULT
25 #define TARGET_DEFAULT (MASK_POWERPC | MASK_NEW_MNEMONICS | MASK_EABI)
27 /* Invoke an initializer function to set up the GOT. */
28 #define NAME__MAIN "__eabi"
29 #define INVOKE__main
31 #undef TARGET_VERSION
32 #define TARGET_VERSION fprintf (stderr, " (PowerPC Embedded)");
34 #undef TARGET_OS_CPP_BUILTINS
35 #define TARGET_OS_CPP_BUILTINS() \
36 do \
37 { \
38 builtin_define_std ("PPC"); \
39 builtin_define ("__embedded__"); \
40 builtin_assert ("system=embedded"); \
41 builtin_assert ("cpu=powerpc"); \
42 builtin_assert ("machine=powerpc"); \
43 TARGET_OS_SYSV_CPP_BUILTINS (); \
44 } \
45 while (0)
47 #undef TARGET_SPE_ABI
48 #undef TARGET_SPE
49 #undef TARGET_E500
50 #undef TARGET_ISEL
51 #undef TARGET_FPRS
52 #undef TARGET_E500_SINGLE
53 #undef TARGET_E500_DOUBLE
55 #define TARGET_SPE_ABI rs6000_spe_abi
56 #define TARGET_SPE rs6000_spe
57 #define TARGET_E500 (rs6000_cpu == PROCESSOR_PPC8540)
58 #define TARGET_ISEL rs6000_isel
59 #define TARGET_FPRS (rs6000_float_gprs == 0)
60 #define TARGET_E500_SINGLE (TARGET_HARD_FLOAT && rs6000_float_gprs == 1)
61 #define TARGET_E500_DOUBLE (TARGET_HARD_FLOAT && rs6000_float_gprs == 2)