home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 6 / FreshFish_September1994.bin / bbs / gnu / gcc-2.6.0-src.lha / GNU / src / amiga / gcc-2.6.0 / config / i386 / seq-sysv3.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-05-07  |  1.8 KB  |  59 lines

  1. #include "i386/sysv3.h"
  2.  
  3. /* Sequent Symmetry SVr3 doesn't have crtn.o; crt1.o doesn't work
  4.    but crt0.o does.  */
  5.  
  6. #undef STARTFILE_SPEC
  7. #define STARTFILE_SPEC  \
  8. "%{pg:gcrt0.o%s}\
  9.  %{!pg:%{posix:%{p:mcrtp0.o%s}%{!p:crtp0.o%s}}\
  10.        %{!posix:%{p:mcrt0.o%s}%{!p:crt0.o%s}}} crtbegin.o%s\
  11.  %{p:-L/usr/lib/libp}%{pg:-L/usr/lib/libp}"
  12.  
  13. #undef LIB_SPEC
  14. #define LIB_SPEC \
  15. "%{posix:-lcposix}\
  16.  %{shlib:-lc_s}\
  17.  %{fshared-data:-lpps -lseq} -lc crtend.o%s"
  18.  
  19. #undef CPP_SPEC
  20. #define CPP_SPEC "%{posix:-D_POSIX_SOURCE} -D_SEQUENT_=1"
  21.  
  22. /* Although the .init section is used, it is not automatically invoked.
  23.    This because the _start() function in /lib/crt0.o never calls anything
  24.    from the .init section */
  25. #define INVOKE__main
  26.  
  27. /* Use atexit for static destructors, instead of defining
  28.    our own exit function.  */
  29. #define HAVE_ATEXIT
  30.  
  31. /* Assembler pseudo-op for initialized shared variables (.shdata). */
  32. #undef  SHARED_SECTION_ASM_OP
  33. #define SHARED_SECTION_ASM_OP ".section .shdata, \"ws\""
  34.  
  35. /* Assembler pseudo-op for uninitialized shared global variables (.shbss). */
  36. #undef  ASM_OUTPUT_SHARED_COMMON
  37. #define ASM_OUTPUT_SHARED_COMMON(FILE, NAME, SIZE, ROUNDED) \
  38. ( fputs(".comm ", (FILE)),            \
  39.   assemble_name((FILE), (NAME)),        \
  40.    fprintf((FILE), ",%u,-3\n", (SIZE)))
  41.  
  42. /* Assembler pseudo-op for uninitialized shared local variables (.shbss). */
  43. #undef  SHARED_BSS_SECTION_ASM_OP
  44. #define SHARED_BSS_SECTION_ASM_OP ".section .shbss, \"bs\""
  45. #undef  BSS_SECTION_FUNCTION
  46. #define BSS_SECTION_FUNCTION                    \
  47. void                                \
  48. bss_section ()                            \
  49. {                                \
  50.   if (in_section != in_bss)                    \
  51.     {                                \
  52.       if (flag_shared_data)                                     \
  53.         fprintf (asm_out_file, "%s\n", SHARED_BSS_SECTION_ASM_OP);    \
  54.       else                            \
  55.         fprintf (asm_out_file, "%s\n", BSS_SECTION_ASM_OP);    \
  56.       in_section = in_bss;                    \
  57.     }                                \
  58. }
  59.