![]()
| [uia] / trunk / uia / vx32 / patch-gcc-4.0.0 |
Parent Directory
|
Revision Log
Copy old working vx32 version from vxa-060115 tag.
diff -urN gcc-4.0.0/config.sub gcc-4.0.0-vx32/config.sub
--- gcc-4.0.0/config.sub 2005-01-18 02:20:48.000000000 +0100
+++ gcc-4.0.0-vx32/config.sub 2005-07-04 16:21:13.000000000 +0200
@@ -1013,6 +1013,10 @@
vpp*|vx|vx-*)
basic_machine=f301-fujitsu
;;
+ vx32)
+ basic_machine=i686-pc
+ os=-vx32
+ ;;
vxworks960)
basic_machine=i960-wrs
os=-vxworks
@@ -1178,7 +1182,7 @@
| -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
| -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
| -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
- | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly*)
+ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* | -vx32*)
# Remember, each alternative MUST END IN *, to match a version number.
;;
-qnx*)
diff -urN gcc-4.0.0/gcc/config/i386/i386.c gcc-4.0.0-vx32/gcc/config/i386/i386.c
--- gcc-4.0.0/gcc/config/i386/i386.c 2005-04-09 19:15:26.000000000 +0200
+++ gcc-4.0.0-vx32/gcc/config/i386/i386.c 2005-07-04 17:00:44.000000000 +0200
@@ -1520,7 +1520,10 @@
}
else
{
- ix86_fpmath = FPMATH_387;
+ if (TARGET_SSE && !TARGET_80387)
+ ix86_fpmath = FPMATH_SSE;
+ else
+ ix86_fpmath = FPMATH_387;
/* i386 ABI does not specify red zone. It still makes sense to use it
when programmer takes care to stack from being destroyed. */
if (!(target_flags_explicit & MASK_NO_RED_ZONE))
diff -urN gcc-4.0.0/gcc/config/i386/vx32.h gcc-4.0.0-vx32/gcc/config/i386/vx32.h
--- gcc-4.0.0/gcc/config/i386/vx32.h 1970-01-01 01:00:00.000000000 +0100
+++ gcc-4.0.0-vx32/gcc/config/i386/vx32.h 2005-07-04 16:42:20.000000000 +0200
@@ -0,0 +1,34 @@
+/* Target definitions for GCC for vx32 virtual machine using ELF
+ Copyright (C) 1988, 1991, 1995, 2000, 2001, 2002
+ Free Software Foundation, Inc.
+
+ Derived from sysv4.h written by Ron Guilmette (rfg@netcom.com).
+
+This file is part of GCC.
+
+GCC is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 2, or (at your option)
+any later version.
+
+GCC is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with GCC; see the file COPYING. If not, write to
+the Free Software Foundation, 59 Temple Place - Suite 330,
+Boston, MA 02111-1307, USA. */
+
+/* These definitions modify those in i386elf.h. */
+
+#undef TARGET_VERSION
+#define TARGET_VERSION fprintf (stderr, " (vx32)");
+
+/* By default, target has no 80387 but _does_ have SSE2. */
+
+#undef TARGET_SUBTARGET_DEFAULT
+#define TARGET_SUBTARGET_DEFAULT (MASK_IEEE_FP | MASK_SSE | MASK_SSE2)
+
+
diff -urN gcc-4.0.0/gcc/config.gcc gcc-4.0.0-vx32/gcc/config.gcc
--- gcc-4.0.0/gcc/config.gcc 2005-03-31 05:17:08.000000000 +0200
+++ gcc-4.0.0-vx32/gcc/config.gcc 2005-07-04 16:30:28.000000000 +0200
@@ -1122,6 +1122,11 @@
extra_parts="crtbegin.o crtend.o"
use_fixproto=yes
;;
+i[34567]86-*-vx32*)
+ tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h i386/i386elf.h i386/vx32.h"
+ tmake_file="i386/t-i386elf t-svr4"
+ use_fixproto=yes
+ ;;
i[4567]86-wrs-vxworks)
tm_file="${tm_file} i386/sysv4.h i386/unix.h i386/vxworks.h"
tmake_file="${tmake_file} i386/t-vxworks"
| Maintained by PDOS | ViewVC Help |
| Powered by ViewVC 1.0.3 |