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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-old/] [gcc-4.2.2/] [gcc/] [config/] [mcore/] [mcore-pe.h] - Blame information for rev 816

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 38 julius
/* Definitions of target machine for GNU compiler, for MCore using COFF/PE.
2
   Copyright (C) 1994, 1999, 2000, 2002, 2003, 2004, 2007
3
   Free Software Foundation, Inc.
4
   Contributed by Michael Tiemann (tiemann@cygnus.com).
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
/* Run-time Target Specification.  */
23
#define TARGET_VERSION fputs (" (MCORE/pe)", stderr)
24
 
25
#define TARGET_OS_CPP_BUILTINS()                                \
26
  do                                                            \
27
    {                                                           \
28
      builtin_define ("__pe__");                                \
29
    }                                                           \
30
  while (0)
31
 
32
/* The MCore ABI says that bitfields are unsigned by default.  */
33
/* The EPOC C++ environment does not support exceptions.  */
34
#undef CC1_SPEC
35
#define CC1_SPEC "-funsigned-bitfields %{!DIN_GCC:-fno-rtti} %{!DIN_GCC:-fno-exceptions}"
36
 
37
#undef  SDB_DEBUGGING_INFO
38
#define DBX_DEBUGGING_INFO 1
39
 
40
/* Computed in toplev.c.  */
41
#undef  PREFERRED_DEBUGGING_TYPE
42
 
43
#define READONLY_DATA_SECTION_ASM_OP    "\t.section .rdata"
44
 
45
#define MCORE_EXPORT_NAME(STREAM, NAME)                 \
46
  do                                                    \
47
    {                                                   \
48
      fprintf (STREAM, "\t.section .drectve\n");        \
49
      fprintf (STREAM, "\t.ascii \" -export:%s\"\n",    \
50
               (* targetm.strip_name_encoding) (NAME)); \
51
      in_section = NULL;                                \
52
    }                                                   \
53
  while (0);
54
 
55
/* Output the label for an initialized variable.  */
56
#undef  ASM_DECLARE_OBJECT_NAME
57
#define ASM_DECLARE_OBJECT_NAME(STREAM, NAME, DECL)             \
58
  do                                                            \
59
    {                                                           \
60
      if (mcore_dllexport_name_p (NAME))                        \
61
        {                                                       \
62
          section *save_section = in_section;                   \
63
          MCORE_EXPORT_NAME (STREAM, NAME);                     \
64
          switch_to_section (save_section);                     \
65
        }                                                       \
66
      ASM_OUTPUT_LABEL ((STREAM), (NAME));                      \
67
    }                                                           \
68
  while (0)
69
 
70
/* Output a function label definition.  */
71
#define ASM_DECLARE_FUNCTION_NAME(STREAM, NAME, DECL)           \
72
  do                                                            \
73
    {                                                           \
74
      if (mcore_dllexport_name_p (NAME))                        \
75
        {                                                       \
76
          MCORE_EXPORT_NAME (STREAM, NAME);                     \
77
          switch_to_section (function_section (DECL));          \
78
        }                                                       \
79
      ASM_OUTPUT_LABEL ((STREAM), (NAME));                      \
80
    }                                                           \
81
  while (0);
82
 
83
#define TARGET_ASM_FILE_START_FILE_DIRECTIVE true
84
 
85
#define DBX_LINES_FUNCTION_RELATIVE 1
86
 
87
#define STARTFILE_SPEC "crt0.o%s"
88
#define ENDFILE_SPEC  "%{!mno-lsim:-lsim}"
89
 
90
/* __CTOR_LIST__ and __DTOR_LIST__ must be defined by the linker script.  */
91
#define CTOR_LISTS_DEFINED_EXTERNALLY
92
 
93
#undef DO_GLOBAL_CTORS_BODY
94
#undef DO_GLOBAL_DTORS_BODY
95
#undef INIT_SECTION_ASM_OP
96
#undef DTORS_SECTION_ASM_OP
97
 
98
#define SUPPORTS_ONE_ONLY 1
99
 
100
/* Switch into a generic section.  */
101
#undef TARGET_ASM_NAMED_SECTION
102
#define TARGET_ASM_NAMED_SECTION  default_pe_asm_named_section

powered by: WebSVN 2.1.0

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