OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [gcc/] [config/] [sh/] [vxworks.h] - Blame information for rev 816

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 282 jeremybenn
/* Definitions of target machine for GCC,
2
   for SuperH with targeting the VXWorks run time environment.
3
   Copyright (C) 2003, 2004, 2007 Free Software Foundation, Inc.
4
   Contributed by CodeSourcery, LLC.
5
 
6
This file is part of GCC.
7
 
8
GCC is free software; you can redistribute it and/or modify
9
it under the terms of the GNU General Public License as published by
10
the Free Software Foundation; either version 3, or (at your option)
11
any later version.
12
 
13
GCC is distributed in the hope that it will be useful,
14
but WITHOUT ANY WARRANTY; without even the implied warranty of
15
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16
GNU General Public License for more details.
17
 
18
You should have received a copy of the GNU General Public License
19
along with GCC; see the file COPYING3.  If not see
20
<http://www.gnu.org/licenses/>.  */
21
 
22
 
23
#define TARGET_OS_CPP_BUILTINS()        \
24
  do                                    \
25
    {                                   \
26
      builtin_define ("CPU=SH7000");    \
27
      VXWORKS_OS_CPP_BUILTINS ();       \
28
    }                                   \
29
  while (0)
30
 
31
#undef SUBTARGET_OVERRIDE_OPTIONS
32
#define SUBTARGET_OVERRIDE_OPTIONS                              \
33
  do                                                            \
34
    {                                                           \
35
      VXWORKS_OVERRIDE_OPTIONS;                                 \
36
      /* The kernel loader cannot handle the relaxation         \
37
         relocations, so it cannot load kernel modules          \
38
         (which are ET_REL) or RTP executables (which are       \
39
         linked with --emit-relocs).  No relaxation relocations \
40
         appear in shared libraries, so relaxation is OK        \
41
         for RTP PIC.  */                                       \
42
      if (TARGET_RELAX && !(TARGET_VXWORKS_RTP && flag_pic))    \
43
        error ("-mrelax is only supported for RTP PIC");        \
44
    }                                                           \
45
  while (0)
46
 
47
#undef SUBTARGET_CPP_SPEC
48
#define SUBTARGET_CPP_SPEC VXWORKS_ADDITIONAL_CPP_SPEC
49
 
50
#undef SUBTARGET_LINK_EMUL_SUFFIX
51
#define SUBTARGET_LINK_EMUL_SUFFIX "_vxworks"
52
 
53
#undef LIB_SPEC
54
#define LIB_SPEC VXWORKS_LIB_SPEC
55
#undef LINK_SPEC
56
#define LINK_SPEC VXWORKS_LINK_SPEC " " SH_LINK_SPEC
57
#undef STARTFILE_SPEC
58
#define STARTFILE_SPEC VXWORKS_STARTFILE_SPEC
59
#undef ENDFILE_SPEC
60
#define ENDFILE_SPEC VXWORKS_ENDFILE_SPEC
61
 
62
#undef TARGET_VERSION
63
#define TARGET_VERSION  fputs (" (SH/VxWorks)", stderr);
64
 
65
/* There is no default multilib.  */
66
#undef MULTILIB_DEFAULTS
67
 
68
#undef FUNCTION_PROFILER
69
#define FUNCTION_PROFILER VXWORKS_FUNCTION_PROFILER

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.