diff options
author | Richard Stallman <rms@gnu.org> | 1992-05-24 03:32:28 +0000 |
---|---|---|
committer | Richard Stallman <rms@gnu.org> | 1992-05-24 03:32:28 +0000 |
commit | 329d2160a4f77a1409ae55f0067d699542498fa3 (patch) | |
tree | de5cfc87c1f4ed3c54a62a5ea015f757d2cb2475 /gcc/crtstuff.c | |
parent | 882b3f1d354ef71d269d0ab61be13d72f30c7fdf (diff) | |
download | gcc-329d2160a4f77a1409ae55f0067d699542498fa3.tar.gz |
*** empty log message ***
From-SVN: r1069
Diffstat (limited to 'gcc/crtstuff.c')
-rw-r--r-- | gcc/crtstuff.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/gcc/crtstuff.c b/gcc/crtstuff.c index 379c8cee082..8dae8cf845f 100644 --- a/gcc/crtstuff.c +++ b/gcc/crtstuff.c @@ -76,7 +76,17 @@ the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. */ INVOKE__main is defined. This has the additional effect of forcing cc1 to switch to the .text section. */ static void __do_global_ctors_aux (); -void __do_global_ctors () { __do_global_ctors_aux (); } +void __do_global_ctors () +{ +#ifdef INVOKE__main /* If __main won't actually call __do_global_ctors + then it doesn't matter what's inside the function. + The inside of __do_global_ctors_aux is called + automatically in that case. + And the Alliant fx2800 linker crashes + on this reference. So prevent the crash. */ + __do_global_ctors_aux (); +#endif +} asm (INIT_SECTION_ASM_OP); /* cc1 doesn't know that we are switching! */ |