1 /* Definitions of target machine for GNU compiler, 2 for IBM RS/6000 running MACH. 3 Copyright (C) 1992, 1999 Free Software Foundation, Inc. 4 Contributed by Richard Kenner (kenner@nyu.edu) 5 6 This file is part of GNU CC. 7 8 GNU CC 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 2, or (at your option) 11 any later version. 12 13 GNU CC 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 GNU CC; see the file COPYING. If not, write to 20 the Free Software Foundation, 59 Temple Place - Suite 330, 21 Boston, MA 02111-1307, USA. */ 22 23 #define TARGET_AIX 0 24 25 /* Print subsidiary information on the compiler version in use. */ 26 #define TARGET_VERSION fprintf (stderr, " (Mach-RS/6000)"); 27 28 /* We don't define AIX under MACH; instead we define `unix'. */ 29 #undef TARGET_OS_CPP_BUILTINS 30 #define TARGET_OS_CPP_BUILTINS() \ 31 do \ 32 { \ 33 builtin_define_std ("rios"); \ 34 builtin_define ("_IBMR2"); \ 35 builtin_define_std ("unix"); \ 36 builtin_assert ("system=unix"); \ 37 builtin_assert ("system=mach"); \ 38 builtin_assert ("cpu=rs6000"); \ 39 builtin_assert ("machine=rs6000"); \ 40 } \ 41 while (0) 42 43 /* Define different binder options for MACH. */ 44 #undef LINK_SPEC 45 #define LINK_SPEC \ 46 "-T0x10000000 -D0x20000000 -K %{!nostdlib:%{!r*:%{!e*:-e __start}}} \ 47 -bnoso -berrmsg -btextro -bhalt:4 -bnodelcsect" 48 49 /* MACH doesn't have atexit. */ 50 #define NEED_ATEXIT 51 52 /* Don't default to pcc-struct-return, because gcc is the only compiler, and 53 we want to retain compatibility with older gcc versions. */ 54 #define DEFAULT_PCC_STRUCT_RETURN 0 55