1 /* Definitions of target machine for GNU compiler. SNI SINIX version. 2 Copyright (C) 1996, 1997, 1999, 2000, 2002 Free Software Foundation, Inc. 3 Contributed by Marco Walther (Marco.Walther@mch.sni.de). 4 5 This file is part of GNU CC. 6 7 GNU CC is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; either version 2, or (at your option) 10 any later version. 11 12 GNU CC is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 GNU General Public License for more details. 16 17 You should have received a copy of the GNU General Public License 18 along with GNU CC; see the file COPYING. If not, write to 19 the Free Software Foundation, 59 Temple Place - Suite 330, 20 Boston, MA 02111-1307, USA. */ 21 22 #define MIPS_SVR4 23 24 #define TARGET_OS_CPP_BUILTINS() \ 25 do { \ 26 builtin_define_std ("host_mips"); \ 27 builtin_define_std ("SYSTYPE_SVR4"); \ 28 builtin_define_std ("unix"); \ 29 builtin_define_std ("mips"); \ 30 builtin_define_std ("sinix"); \ 31 builtin_define_std ("SNI"); \ 32 builtin_assert ("system=unix"); \ 33 builtin_assert ("system=svr4"); \ 34 builtin_assert ("machine=mips"); \ 35 } while (0) 36 37 #define LINK_SPEC "\ 38 %{G*} \ 39 %{!mgas: \ 40 %{dy} %{dn}}" 41 42 #define LIB_SPEC "\ 43 %{p:-lprof1} \ 44 %{!p:%{pg:-lprof1} \ 45 %{!pg:-L/usr/ccs/lib/ -lc /usr/ccs/lib/crtn.o%s}}" 46 47 #define STARTFILE_SPEC "\ 48 %{pg:gcrt0.o%s} \ 49 %{!pg:%{p:mcrt0.o%s} \ 50 %{!p:/usr/ccs/lib/crt1.o /usr/ccs/lib/crti.o /usr/ccs/lib/values-Xt.o%s}}" 51 52 /* Mips System V.4 doesn't have a getpagesize() function needed by the 53 trampoline code, so use the POSIX sysconf function to get it. 54 This is only done when compiling the trampoline code. */ 55 56 #ifdef L_trampoline 57 #include <unistd.h> 58 59 #define getpagesize() sysconf(_SC_PAGE_SIZE) 60 #endif /* L_trampoline */ 61 62 #define OBJECT_FORMAT_ELF 63 64 #define TARGET_DEFAULT MASK_ABICALLS 65 #define ABICALLS_ASM_OP "\t.option pic2" 66 67 #define MACHINE_TYPE "SNI running SINIX 5.42" 68 69 #define MIPS_DEFAULT_GVALUE 0 70 71 #define NM_FLAGS "-p" 72 73 #define ASM_GLOBAL ".rdata\n\t\t.globl\t" 74 75 #include "mips/mips.h" 76 77 /* We do not want to run mips-tfile! */ 78 #undef ASM_FINAL_SPEC 79 80 #undef OBJECT_FORMAT_COFF 81 82 /* We don't support debugging info for now. */ 83 #undef DBX_DEBUGGING_INFO 84 #undef SDB_DEBUGGING_INFO 85 #undef MIPS_DEBUGGING_INFO 86 #undef PREFERRED_DEBUGGING_TYPE 87 88 #define DWARF2_UNWIND_INFO 0 89