|
|
1.1 ! root 1: /* next.c: Functions for NeXT as target machine for GNU C compiler. */ ! 2: ! 3: /* Note that the include below means that we can't debug routines in ! 4: m68k.c when running on a COFF system. */ ! 5: ! 6: #include "m68k.c" ! 7: ! 8: /* Make everything that used to go in the text section really go there. */ ! 9: ! 10: int flag_no_mach_text_sections = 0; ! 11: ! 12: #define OPT_STRCMP(opt) (!strncmp (opt, p, sizeof (opt)-1)) ! 13: ! 14: /* 1 if handle_pragma has been called yet. */ ! 15: ! 16: static int pragma_initialized; ! 17: ! 18: /* Initial setting of `optimize'. */ ! 19: ! 20: static int initial_optimize_flag; ! 21: ! 22: /* Called from check_newline via the macro HANDLE_PRAGMA. ! 23: FINPUT is the source file input stream. */ ! 24: ! 25: void ! 26: handle_pragma (finput) ! 27: FILE *finput; ! 28: { ! 29: register char *p = get_directive_line (finput); ! 30: ! 31: /* Record initial setting of optimize flag, so we can restore it. */ ! 32: if (!pragma_initialized) ! 33: { ! 34: pragma_initialized = 1; ! 35: initial_optimize_flag = optimize; ! 36: } ! 37: ! 38: if (OPT_STRCMP ("CC_OPT_ON")) ! 39: optimize = 1, obey_regdecls = 0; ! 40: else if (OPT_STRCMP ("CC_OPT_OFF")) ! 41: optimize = 0, obey_regdecls = 1; ! 42: else if (OPT_STRCMP ("CC_OPT_RESTORE")) ! 43: { ! 44: extern int initial_optimize_flag; ! 45: ! 46: if (optimize != initial_optimize_flag) ! 47: { ! 48: if (initial_optimize_flag) ! 49: obey_regdecls = 0; ! 50: else ! 51: obey_regdecls = 1; ! 52: optimize = initial_optimize_flag; ! 53: } ! 54: } ! 55: else if (OPT_STRCMP ("CC_WRITABLE_STRINGS")) ! 56: flag_writable_strings = 1; ! 57: else if (OPT_STRCMP ("CC_NON_WRITABLE_STRINGS")) ! 58: flag_writable_strings = 0; ! 59: else if (OPT_STRCMP("CC_NO_MACH_TEXT_SECTIONS")) ! 60: flag_no_mach_text_sections = 1; ! 61: }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.