|
|
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
1.1.1.2 ! root 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.