|
|
1.1 root 1: /* Definitions of target machine for GNU compiler
2: for an Intel i386 or later processor running Windows NT 3.x.
3: Copyright (C) 1994 Free Software Foundation, Inc.
4: Contributed by Douglas B. Rupp ([email protected])
5:
6: This file is part of GNU CC.
7:
8: GNU CC 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 2, or (at your option)
11: any later version.
12:
13: GNU CC 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 GNU CC; see the file COPYING. If not, write to
20: the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */
21:
22: #define YES_UNDERSCORES
23:
24: #include "i386/gas.h"
25: #include "winnt/winnt.h"
26:
27: #undef CPP_PREDEFINES
28: #define CPP_PREDEFINES "-Dunix -Di386 -DWINNT -D_M_IX86 -D_X86_ -D__STDC__=0 \
29: -DALMOST_STDC -Asystem(unix) -Asystem(winnt) -Acpu(i386) -Amachine(i386)"
30:
31: #undef EXTRA_SECTIONS
32: #define EXTRA_SECTIONS in_ctor, in_dtor
33:
34: #undef EXTRA_SECTION_FUNCTIONS
35: #define EXTRA_SECTION_FUNCTIONS \
36: CTOR_SECTION_FUNCTION \
37: DTOR_SECTION_FUNCTION
38:
39: #undef CTOR_SECTION_FUNCTION
40: #define CTOR_SECTION_FUNCTION \
41: void \
42: ctor_section () \
43: { \
44: if (in_section != in_ctor) \
45: { \
46: fprintf (asm_out_file, "\t.section .ctor\n"); \
47: in_section = in_ctor; \
48: } \
49: }
50:
51: #undef DTOR_SECTION_FUNCTION
52: #define DTOR_SECTION_FUNCTION \
53: void \
54: dtor_section () \
55: { \
56: if (in_section != in_dtor) \
57: { \
58: fprintf (asm_out_file, "\t.section .dtor\n"); \
59: in_section = in_dtor; \
60: } \
61: }
62:
63: #undef ASM_OUTPUT_CONSTRUCTOR
64: #define ASM_OUTPUT_CONSTRUCTOR(FILE,NAME) \
65: do { \
66: ctor_section (); \
67: fprintf (FILE, "%s\t", ASM_LONG); \
68: assemble_name (FILE, NAME); \
69: fprintf (FILE, "\n"); \
70: } while (0)
71:
72: #undef ASM_OUTPUT_DESTRUCTOR
73: #define ASM_OUTPUT_DESTRUCTOR(FILE,NAME) \
74: do { \
75: dtor_section (); \
76: fprintf (FILE, "%s\t", ASM_LONG); \
77: assemble_name (FILE, NAME); \
78: fprintf (FILE, "\n"); \
79: } while (0)
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.