1165138Syongari/* Support for GCC on MIPS using WindISS simulator. 2165138Syongari Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. 3165138Syongari Contributed by CodeSourcery, LLC. 4165138Syongari 5165138SyongariThis file is part of GCC. 6165138Syongari 7165138SyongariGCC is free software; you can redistribute it and/or modify 8165138Syongariit under the terms of the GNU General Public License as published by 9165138Syongarithe Free Software Foundation; either version 2, or (at your option) 10165138Syongariany later version. 11165138Syongari 12165138SyongariGCC is distributed in the hope that it will be useful, 13165138Syongaribut WITHOUT ANY WARRANTY; without even the implied warranty of 14165138SyongariMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15165138SyongariGNU General Public License for more details. 16165138Syongari 17165138SyongariYou should have received a copy of the GNU General Public License 18165138Syongarialong with GCC; see the file COPYING. If not, write to 19165138Syongarithe Free Software Foundation, 51 Franklin Street, Fifth Floor, 20165138SyongariBoston, MA 02110-1301, USA. */ 21165138Syongari 22165138Syongari#undef TARGET_VERSION 23165138Syongari#define TARGET_VERSION fprintf (stderr, " (MIPS WindISS)"); 24165138Syongari 25165138Syongari/* Combination of mips.h and svr4.h. */ 26165138Syongari#undef SWITCH_TAKES_ARG 27165138Syongari#define SWITCH_TAKES_ARG(CHAR) \ 28165138Syongari (DEFAULT_SWITCH_TAKES_ARG (CHAR) \ 29165138Syongari || (CHAR) == 'G' \ 30165138Syongari || (CHAR) == 'h' \ 31165138Syongari || (CHAR) == 'x' \ 32165138Syongari || (CHAR) == 'z') 33165138Syongari 34165138Syongari#undef SUBTARGET_CPP_SPEC 35165138Syongari#define SUBTARGET_CPP_SPEC \ 36165138Syongari"%{!DCPU=*: %{mips3|mips4|mips64:-DCPU=MIPS64;:-DCPU=MIPS32}} \ 37165138Syongari %{EL|mel:-DMIPSEL;:-DMIPSEB} \ 38165138Syongari %{msoft-float:-DSOFT_FLOAT} \ 39165138Syongari %{mips1:-D_WRS_R3K_EXC_SUPPORT}" 40165138Syongari 41165138Syongari#undef ASM_SPEC 42165138Syongari#define ASM_SPEC "\ 43165138Syongari%{!G:-G 0} %{G*} %(endian_spec) %{mips1} %{mips2} %{mips3} %{mips4} \ 44165138Syongari%{mips32} %{mips32r2} %{mips64} \ 45165138Syongari%{mips16:%{!mno-mips16:-mips16}} %{mno-mips16:-no-mips16} \ 46165138Syongari%(subtarget_asm_optimizing_spec) \ 47165138Syongari%(subtarget_asm_debugging_spec) \ 48165138Syongari%{mabi=*} %{!mabi*: %(asm_abi_default_spec)} \ 49165138Syongari%{mgp32} %{mgp64} %{march=*} %{mxgot:-xgot} \ 50165138Syongari%{mtune=*} %{v} \ 51165138Syongari%(subtarget_asm_spec)" 52165138Syongari 53165138Syongari#undef LINK_SPEC 54165138Syongari/* LINK_SPEC is clobbered in svr4.h. ugh! */ 55165138Syongari#define LINK_SPEC "\ 56165138Syongari-m elf32mipswindiss \ 57165138Syongari%{!G:-G 0} %{G*} %{mips1} %{mips2} %{mips3} %{mips4} %{mips32} %{mips64} \ 58165138Syongari%{bestGnum}" 59165138Syongari 60165138Syongari/* Diab libs MIPS{,E,F,L,M,W,X,Y,Z}{,H,N,S} 61165138Syongari 62165138Syongari . 63165138Syongari E - Elf (small-data/const=8 64165138Syongari F - Elf Far (small-data/const=0) 65165138Syongari L - Little Elf 66165138Syongari M - Little Elf Far 67165138Syongari W - elf32 bigmips 68165138Syongari X - elf32 bigmips (far?) 69165138Syongari Y - elf32 littlemips 70165138Syongari Z - elf32 littlemips (far?) 71165138Syongari 72165138Syongari . - Integer routines 73165138Syongari H - Hard float 74165138Syongari N - No float 75165138Syongari S - Soft float 76165138Syongari 77165138Syongari Want {F,M}{,H,S} 78165138Syongari 79165138Syongari*/ 80165138Syongari 81165138Syongari#undef LIB_SPEC 82165138Syongari#define LIB_SPEC "--start-group -li -lcfp -lwindiss -lram -limpl -limpfp --end-group" 83165138Syongari 84165138Syongari#undef STARTFILE_SPEC 85165138Syongari#define STARTFILE_SPEC "crt0.o%s crtbegin.o%s" 86165138Syongari 87165138Syongari#undef ENDFILE_SPEC 88165138Syongari#define ENDFILE_SPEC "crtend.o%s" 89165138Syongari 90165138Syongari/* We have no shared libraries. These two shouldn't be necessary. */ 91165138Syongari#undef LINK_SHLIB_SPEC 92165138Syongari#define LINK_SHLIB_SPEC "" 93165138Syongari#undef LINK_EH_SPEC 94165138Syongari#define LINK_EH_SPEC "" 95165138Syongari 96165138Syongari#undef CRTSAVRES_DEFAULT_SPEC 97165138Syongari#define CRTSAVRES_DEFAULT_SPEC "" 98165138Syongari 99165138Syongari/* No sdata. */ 100165138Syongari#undef MIPS_DEFAULT_GVALUE 101165138Syongari#define MIPS_DEFAULT_GVALUE 0 102165138Syongari