|
|
1.1 root 1: /* Configuration for an i386 running MS-DOS with djgpp/go32. */
2:
3: #define YES_UNDERSCORES
4:
5: #include "i386/gas.h"
6:
7: #ifdef CPP_PREDEFINES
8: #undef CPP_PREDEFINES
9: #endif
10: #define CPP_PREDEFINES "-Dunix -Di386 -DGO32 -DMSDOS \
11: -Asystem(unix) -Asystem(msdos) -Acpu(i386) -Amachine(i386)"
12:
13: #undef EXTRA_SECTIONS
14: #define EXTRA_SECTIONS in_ctor, in_dtor
15:
16: #undef EXTRA_SECTION_FUNCTIONS
17: #define EXTRA_SECTION_FUNCTIONS \
18: CTOR_SECTION_FUNCTION \
19: DTOR_SECTION_FUNCTION
20:
21: #define CTOR_SECTION_FUNCTION \
22: void \
23: ctor_section () \
24: { \
25: if (in_section != in_ctor) \
26: { \
27: fprintf (asm_out_file, "\t.section .ctor\n"); \
28: in_section = in_ctor; \
29: } \
30: }
31:
32: #define DTOR_SECTION_FUNCTION \
33: void \
34: dtor_section () \
35: { \
36: if (in_section != in_dtor) \
37: { \
38: fprintf (asm_out_file, "\t.section .dtor\n"); \
39: in_section = in_dtor; \
40: } \
41: }
42:
43: #define ASM_OUTPUT_CONSTRUCTOR(FILE,NAME) \
44: do { \
45: ctor_section (); \
46: fprintf (FILE, "%s\t", ASM_LONG); \
47: assemble_name (FILE, NAME); \
48: fprintf (FILE, "\n"); \
49: } while (0)
50:
51: #define ASM_OUTPUT_DESTRUCTOR(FILE,NAME) \
52: do { \
53: dtor_section (); \
54: fprintf (FILE, "%s\t", ASM_LONG); \
55: assemble_name (FILE, NAME); \
56: fprintf (FILE, "\n"); \
57: } while (0)
58:
59:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.