config.gcc (i*86-wrs-vxworks): Update.
2005-08-30 Phil Edwards <phil@codesourcery.com> * config.gcc (i*86-wrs-vxworks): Update. Split out vxworksae target. * config/i386/t-vxworks: Update multilibs for VxWorks 6 and RTP mode. * config/i386/vxworks.h: Likewise. * config/i386/t-vxworksae: New file, for VxWorks AE. * config/i386/vxworksae.h: Likewise. From-SVN: r103741
This commit is contained in:
parent
d8852c4fd9
commit
d442d7d9dd
6 changed files with 114 additions and 54 deletions
|
@ -1,3 +1,11 @@
|
|||
2005-09-01 Phil Edwards <phil@codesourcery.com>
|
||||
|
||||
* config.gcc (i*86-wrs-vxworks): Update. Split out vxworksae target.
|
||||
* config/i386/t-vxworks: Update multilibs for VxWorks 6 and RTP mode.
|
||||
* config/i386/vxworks.h: Likewise.
|
||||
* config/i386/t-vxworksae: New file, for VxWorks AE.
|
||||
* config/i386/vxworksae.h: Likewise.
|
||||
|
||||
2005-09-01 Sebastian Pop <pop@cri.ensmp.fr>
|
||||
|
||||
PR tree-optimization/23410
|
||||
|
|
|
@ -1169,9 +1169,18 @@ i[34567]86-*-sysv4*) # Intel 80386's running system V.4
|
|||
extra_parts="crtbegin.o crtend.o"
|
||||
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"
|
||||
i[4567]86-wrs-vxworks|i[4567]86-wrs-vxworksae)
|
||||
tm_file="${tm_file} i386/sysv4.h i386/unix.h i386/att.h vx-common.h"
|
||||
case ${target} in
|
||||
*-vxworksae*)
|
||||
tm_file="${tm_file} vxworksae.h i386/vxworksae.h"
|
||||
tmake_file="${tmake_file} i386/t-vxworks i386/t-vxworksae"
|
||||
;;
|
||||
*)
|
||||
tm_file="${tm_file} vxworks.h i386/vxworks.h"
|
||||
tmake_file="${tmake_file} i386/t-vxworks"
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
i[34567]86-*-pe | i[34567]86-*-cygwin*)
|
||||
tm_file="${tm_file} i386/unix.h i386/bsd.h i386/gas.h dbxcoff.h i386/cygming.h i386/cygwin.h"
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# Multilibs for VxWorks.
|
||||
|
||||
#GCC does not have an arch=pentium3 setting, so we cannot build PENTIUM3gnu
|
||||
MULTILIB_OPTIONS = \
|
||||
march=i486/march=pentium/march=pentiumpro/march=pentium4
|
||||
MULTILIB_DIRNAMES = \
|
||||
I80486 PENTIUMgnu PENTIUM2gnu PENTIUM4gnu
|
||||
# Build multilibs for normal, -mrtp, and -mrtp -fPIC.
|
||||
MULTILIB_OPTIONS = mrtp fPIC
|
||||
MULTILIB_DIRNAMES =
|
||||
MULTILIB_MATCHES = fPIC=fpic
|
||||
MULTILIB_EXCEPTIONS = fPIC
|
||||
|
||||
|
|
5
gcc/config/i386/t-vxworksae
Normal file
5
gcc/config/i386/t-vxworksae
Normal file
|
@ -0,0 +1,5 @@
|
|||
# Multilibs for VxWorks AE.
|
||||
|
||||
MULTILIB_OPTIONS = mvthreads
|
||||
MULTILIB_MATCHES =
|
||||
MULTILIB_EXCEPTIONS =
|
|
@ -1,5 +1,6 @@
|
|||
/* Definitions of target machine for GCC. VxWorks i586 version.
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
/* IA32 VxWorks target definitions for GNU compiler.
|
||||
Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc.
|
||||
Updated by CodeSourcery, LLC.
|
||||
|
||||
This file is part of GCC.
|
||||
|
||||
|
@ -18,57 +19,67 @@ along with GCC; see the file COPYING. If not, write to
|
|||
the Free Software Foundation, 51 Franklin Street, Fifth Floor,
|
||||
Boston, MA 02110-1301, USA. */
|
||||
|
||||
|
||||
#define HANDLE_SYSV_PRAGMA 1
|
||||
|
||||
#undef TARGET_VERSION
|
||||
#define TARGET_VERSION fprintf (stderr, " (80586, VxWorks syntax)");
|
||||
|
||||
/* Prefix for internally generated assembler labels. If we aren't using
|
||||
underscores, we are using prefix `.'s to identify labels that should
|
||||
be ignored, as in `i386/gas.h' --karl@cs.umb.edu */
|
||||
|
||||
#define LPREFIX "L"
|
||||
|
||||
/* Assembler pseudos to introduce constants of various size. */
|
||||
|
||||
#define ASM_SHORT "\t.word\t"
|
||||
#define ASM_LONG "\t.long\t"
|
||||
#define ASM_QUAD "\t.quad\t" /* Should not be used for 32bit compilation. */
|
||||
|
||||
|
||||
#define ASM_OUTPUT_ALIGN(FILE,LOG) \
|
||||
if ((LOG)!=0) fprintf ((FILE), "\t.balign %d\n", 1<<(LOG))
|
||||
|
||||
#undef ASM_SPEC
|
||||
#define ASM_SPEC "%{v:-V} %{Qy:} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}"
|
||||
#define ASM_SPEC "%{v:-v} %{Qy:} %{n} %{T} %{Ym,*} %{Yd,*} %{Wa,*:%*}"
|
||||
|
||||
#define TARGET_OS_CPP_BUILTINS() \
|
||||
do \
|
||||
{ \
|
||||
builtin_define ("__vxworks"); \
|
||||
builtin_assert ("system=unix"); \
|
||||
\
|
||||
if (TARGET_386) \
|
||||
builtin_define ("CPU=I80386"); \
|
||||
else if (TARGET_486) \
|
||||
builtin_define ("CPU=I80486"); \
|
||||
else if (TARGET_PENTIUM) \
|
||||
{ \
|
||||
builtin_define ("CPU=PENTIUM"); \
|
||||
builtin_define ("CPU_VARIANT=PENTIUM"); \
|
||||
} \
|
||||
else if (TARGET_PENTIUMPRO) \
|
||||
{ \
|
||||
builtin_define ("CPU=PENTIUM2"); \
|
||||
builtin_define ("CPU_VARIANT=PENTIUMPRO"); \
|
||||
} \
|
||||
else if (TARGET_PENTIUM4) \
|
||||
{ \
|
||||
builtin_define ("CPU=PENTIUM4"); \
|
||||
builtin_define ("CPU_VARIANT=PENTIUM4"); \
|
||||
} \
|
||||
} \
|
||||
#define VXWORKS_CPU_DEFINE() \
|
||||
do \
|
||||
{ \
|
||||
if (TARGET_386) \
|
||||
builtin_define ("CPU=I80386"); \
|
||||
else if (TARGET_486) \
|
||||
builtin_define ("CPU=I80486"); \
|
||||
else if (TARGET_PENTIUM) \
|
||||
{ \
|
||||
builtin_define ("CPU=PENTIUM"); \
|
||||
builtin_define ("CPU_VARIANT=PENTIUM"); \
|
||||
} \
|
||||
else if (TARGET_PENTIUMPRO) \
|
||||
{ \
|
||||
builtin_define ("CPU=PENTIUM2"); \
|
||||
builtin_define ("CPU_VARIANT=PENTIUMPRO"); \
|
||||
} \
|
||||
else if (TARGET_PENTIUM4) \
|
||||
{ \
|
||||
builtin_define ("CPU=PENTIUM4"); \
|
||||
builtin_define ("CPU_VARIANT=PENTIUM4"); \
|
||||
} \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
#define TARGET_OS_CPP_BUILTINS() \
|
||||
do \
|
||||
{ \
|
||||
builtin_define ("__vxworks"); \
|
||||
builtin_define ("__VXWORKS__"); \
|
||||
builtin_assert ("system=unix"); \
|
||||
\
|
||||
VXWORKS_CPU_DEFINE(); \
|
||||
} \
|
||||
while (0)
|
||||
|
||||
#undef CPP_SPEC
|
||||
#define CPP_SPEC VXWORKS_ADDITIONAL_CPP_SPEC
|
||||
#undef LIB_SPEC
|
||||
#define LIB_SPEC VXWORKS_LIB_SPEC
|
||||
#undef STARTFILE_SPEC
|
||||
#define STARTFILE_SPEC VXWORKS_STARTFILE_SPEC
|
||||
#undef ENDFILE_SPEC
|
||||
#define ENDFILE_SPEC VXWORKS_ENDFILE_SPEC
|
||||
#undef LINK_SPEC
|
||||
#define LINK_SPEC VXWORKS_LINK_SPEC
|
||||
|
||||
#undef SUBTARGET_SWITCHES
|
||||
#define SUBTARGET_SWITCHES EXTRA_SUBTARGET_SWITCHES
|
||||
|
||||
#undef SUBTARGET_OVERRIDE_OPTIONS
|
||||
#define SUBTARGET_OVERRIDE_OPTIONS VXWORKS_OVERRIDE_OPTIONS
|
||||
|
||||
/* No _mcount profiling on VxWorks. */
|
||||
#undef FUNCTION_PROFILER
|
||||
#define FUNCTION_PROFILER(FILE,LABELNO) VXWORKS_FUNCTION_PROFILER(FILE,LABELNO)
|
||||
|
|
27
gcc/config/i386/vxworksae.h
Normal file
27
gcc/config/i386/vxworksae.h
Normal file
|
@ -0,0 +1,27 @@
|
|||
/* IA32 VxWorks AE target definitions for GNU compiler.
|
||||
Copyright (C) 2005 Free Software Foundation, Inc.
|
||||
Contributed by CodeSourcery, LLC.
|
||||
|
||||
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, 51 Franklin Street, Fifth Floor,
|
||||
Boston, MA 02110-1301, USA. */
|
||||
|
||||
/* On VxWorks AE, we only want SIMNT. */
|
||||
#undef VXWORKS_CPU_DEFINE
|
||||
#define VXWORKS_CPU_DEFINE() \
|
||||
do \
|
||||
builtin_define ("CPU=SIMNT"); \
|
||||
while (0)
|
Loading…
Add table
Reference in a new issue