This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: Improve vxWorks support on x86
- To: law at cygnus dot com
- Subject: Re: Improve vxWorks support on x86
- From: mrs at wrs dot com (Mike Stump)
- Date: Tue, 13 Apr 1999 18:40:50 -0700
- Cc: egcs-patches at cygnus dot com
> To: mrs@wrs.com (Mike Stump)
> cc: egcs-patches@cygnus.com
> Date: Fri, 22 Jan 1999 00:36:57 -0700
> From: Jeffrey A Law <law@hurl.cygnus.com>
> Mostly OK. However, you have several ANSI namespace violations that need
> to be addressed. [ ... ]
> It is not OK to use -Di386 in CPP_PREDEFINES.
Ok, here is the fixed file:
1999-01-21 Mike Stump <mrs@wrs.com>
* i386/vxi386.h: Improve vxWorks support.
Doing diffs in gcc/config/i386:
*** gcc/config/i386/vxi386.h.~1~ Thu Jan 21 06:58:55 1999
--- gcc/config/i386/vxi386.h Thu Jan 21 07:53:01 1999
*************** along with GNU CC; see the file COPYING.
*** 18,23 ****
--- 18,62 ----
the Free Software Foundation, 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA. */
+ #undef CPP_CPU_SPEC
+ #define CPP_CPU_SPEC "\
+ -Asystem(unix) -Acpu(i386) -Amachine(i386) \
+ %{!ansi:-Di386} -D__i386 -D__i386__ \
+ %{march=i386:-DCPU=I80386} \
+ %{march=i486:-DCPU=I80486 %(cpp_486)} \
+ %{march=pentium:-DCPU=PENTIUM -DCPU_VARIANT=PENTIUM %(cpp_586)} \
+ %{march=pentiumpro:-DCPU=PENTIUM -DCPU_VARIANT=PENTIUMPRO %(cpp_686)} \
+ %{!march=*: \
+ %{mcpu=i386:-DCPU=I80386} \
+ %{mcpu=i486:-DCPU=I80486 %(cpp_486)} %{m486:-DCPU=I80486 %(cpp_486)} \
+ %{mpentium:-DCPU=PENTIUM -DCPU_VARIANT=PENTIUM %(cpp_586)} \
+ %{mcpu=pentium:-DCPU=PENTIUM -DCPU_VARIANT=PENTIUM %(cpp_586)} \
+ %{mpentiumpro:-DCPU=PENTIUM -DCPU_VARIANT=PENTIUMPRO %(cpp_686)} \
+ %{mcpu=pentiumpro:-DCPU=PENTIUM -DCPU_VARIANT=PENTIUMPRO %(cpp_686)} \
+ %{!mcpu*:%{!m486:%{!mpentium*:-DCPU=I80386 %(cpp_cpu_default)}}}}"
+
#include "i386/i386-aout.h"
#define HANDLE_SYSV_PRAGMA
+
+ #undef CPP_PREDEFINES
+ #define CPP_PREDEFINES "-D__vxworks -D__i386__"
+
+ /* VxWorks does all the library stuff itself. */
+
+ #undef LIB_SPEC
+ #define LIB_SPEC ""
+
+ /* VxWorks uses object files, not loadable images. make linker just
+ combine objects. */
+
+ #undef LINK_SPEC
+ #define LINK_SPEC "-r"
+
+ /* VxWorks provides the functionality of crt0.o and friends itself. */
+
+ #undef STARTFILE_SPEC
+ #define STARTFILE_SPEC ""
+
+ #undef ENDFILE_SPEC
+ #define ENDFILE_SPEC ""
--------------