⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sun2o4.h

📁 linux下的gcc编译器
💻 H
字号:
/* Definitions of target machine for GNU compiler.  Sun 2 running SunOS 4.   Copyright (C) 1987, 1988, 1993, 1996, 1997 Free Software Foundation, Inc.This file is part of GNU CC.GNU CC is free software; you can redistribute it and/or modifyit under the terms of the GNU General Public License as published bythe Free Software Foundation; either version 2, or (at your option)any later version.GNU CC is distributed in the hope that it will be useful,but WITHOUT ANY WARRANTY; without even the implied warranty ofMERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See theGNU General Public License for more details.You should have received a copy of the GNU General Public Licensealong with GNU CC; see the file COPYING.  If not, write tothe Free Software Foundation, 59 Temple Place - Suite 330,Boston, MA 02111-1307, USA.  */#include "m68k/sun2.h"/* Define __HAVE_SKY__ in preprocessor, according to the -m flags.   Also inform the program which CPU this is for.  */#undef CPP_SPEC#undef PTRDIFF_TYPE#define PTRDIFF_TYPE "int"#undef SIZE_TYPE#define SIZE_TYPE "int"#undef WCHAR_TYPE#define WCHAR_TYPE "short unsigned int"#undef WCHAR_TYPE_SIZE#define WCHAR_TYPE_SIZE 16#if TARGET_DEFAULT & MASK_SKY/* -msky is the default */#define CPP_SPEC \"%{!msoft-float:-D__HAVE_SKY__}\%{!ansi:%{m68020:-Dmc68020}%{mc68020:-Dmc68020}%{!mc68020:%{!m68020:-Dmc68010}}}"#else/* -msoft-float is the default */#define CPP_SPEC \"%{msky:-D__HAVE_SKY__ }\%{!ansi:%{m68020:-Dmc68020}%{mc68020:-Dmc68020}%{!mc68020:%{!m68020:-Dmc68010}}}"#endif/* STARTFILE_SPEC to include sun floating point initialization   This is necessary (tr: Sun does it) for the sky routines.   I'm not sure what would happen below if people gave contradictory   arguments (eg. -msoft-float -mfpa) */#undef STARTFILE_SPEC#if TARGET_DEFAULT & MASK_SKY/* -msky is the default */#define STARTFILE_SPEC					\  "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}	\   %{msoft-float:Fcrt1.o%s}				\   %{!msoft-float:Scrt1.o%s}"#else/* -msoft-float is the default */#define STARTFILE_SPEC					\  "%{pg:gcrt0.o%s}%{!pg:%{p:mcrt0.o%s}%{!p:crt0.o%s}}	\   %{msky:Scrt1.o%s}					\   %{!msky:Fcrt1.o%s}"#endif/* Specify library to handle `-a' basic block profiling.   Control choice of libm.a (if user says -lm)   based on fp arith default and options.  */#undef LIB_SPEC#if TARGET_DEFAULT & MASK_SKY/* -msky is the default */#define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p} \%{a:/usr/lib/bb_link.o -lc} %{g:-lg} \%{msoft-float:-L/usr/lib/fsoft} \%{!msoft_float:-L/usr/lib/fsky}"#else/* -msoft-float is the default */#define LIB_SPEC "%{!p:%{!pg:-lc}}%{p:-lc_p}%{pg:-lc_p} \%{a:/usr/lib/bb_link.o -lc} %{g:-lg} \%{!msky:-L/usr/lib/fsoft} \%{msky:-L/usr/lib/ffpa}"#endif#undef LINK_SPEC#define LINK_SPEC \  "%{!nostdlib:%{!r*:%{!e*:-e start}}} -dc -dp %{static:-Bstatic}"#undef ASM_OUTPUT_FLOAT_OPERAND#define ASM_OUTPUT_FLOAT_OPERAND(CODE,FILE,VALUE)		\ do { 								\      if (CODE != 'f')						\        {							\          long l;						\          REAL_VALUE_TO_TARGET_SINGLE (VALUE, l);		\          if (sizeof (int) == sizeof (long))			\            asm_fprintf ((FILE), "%I0x%x", (int) l);		\          else							\            asm_fprintf ((FILE), "%I0x%lx", l);			\        }							\      else if (REAL_VALUE_ISINF (VALUE))			\        {							\          if (REAL_VALUE_NEGATIVE (VALUE))			\            fprintf (FILE, "#0r-99e999");			\          else							\            fprintf (FILE, "#0r99e999");			\        }							\      else if (REAL_VALUE_MINUS_ZERO (VALUE))			\        {							\          fprintf (FILE, "#0r-0.0");				\        }							\      else							\        { char dstr[30];					\	  real_to_decimal (dstr, &(VALUE), sizeof (dstr), 9, 0); \          fprintf (FILE, "#0r%s", dstr);			\        }							\    } while (0)#undef ASM_OUTPUT_DOUBLE_OPERAND#define ASM_OUTPUT_DOUBLE_OPERAND(FILE,VALUE)				\ do { if (REAL_VALUE_ISINF (VALUE))					\        {								\          if (REAL_VALUE_NEGATIVE (VALUE))				\            fprintf (FILE, "#0r-99e999");				\          else								\            fprintf (FILE, "#0r99e999");				\        }								\      else if (REAL_VALUE_MINUS_ZERO (VALUE))				\        {								\          fprintf (FILE, "#0r-0.0");					\        }								\      else								\        { char dstr[30];						\	  real_to_decimal (dstr, &(VALUE), sizeof (dstr), 0, 1);	\          fprintf (FILE, "#0r%s", dstr);				\        }								\    } while (0)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -