00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef GCC_SYSTEM_H
00028 #define GCC_SYSTEM_H
00029
00030
00031 #include <stdarg.h>
00032
00033 #ifndef va_copy
00034 # ifdef __va_copy
00035 # define va_copy(d,s) __va_copy((d),(s))
00036 # else
00037 # define va_copy(d,s) ((d) = (s))
00038 # endif
00039 #endif
00040
00041 #ifdef HAVE_STDDEF_H
00042 # include <stddef.h>
00043 #endif
00044
00045 #include <stdio.h>
00046
00047
00048 #ifndef NULL
00049 #define NULL 0
00050 #endif
00051
00052
00053 #define fopen(PATH,MODE) fopen_unlocked(PATH,MODE)
00054 #define fdopen(FILDES,MODE) fdopen_unlocked(FILDES,MODE)
00055 #define freopen(PATH,MODE,STREAM) freopen_unlocked(PATH,MODE,STREAM)
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070 #if defined HAVE_DECL_PUTC_UNLOCKED && HAVE_DECL_PUTC_UNLOCKED
00071
00072 # ifdef HAVE_PUTC_UNLOCKED
00073 # undef putc
00074 # define putc(C, Stream) putc_unlocked (C, Stream)
00075 # endif
00076 # ifdef HAVE_PUTCHAR_UNLOCKED
00077 # undef putchar
00078 # define putchar(C) putchar_unlocked (C)
00079 # endif
00080 # ifdef HAVE_GETC_UNLOCKED
00081 # undef getc
00082 # define getc(Stream) getc_unlocked (Stream)
00083 # endif
00084 # ifdef HAVE_GETCHAR_UNLOCKED
00085 # undef getchar
00086 # define getchar() getchar_unlocked ()
00087 # endif
00088 # ifdef HAVE_FPUTC_UNLOCKED
00089 # undef fputc
00090 # define fputc(C, Stream) fputc_unlocked (C, Stream)
00091 # endif
00092
00093 # ifdef HAVE_CLEARERR_UNLOCKED
00094 # undef clearerr
00095 # define clearerr(Stream) clearerr_unlocked (Stream)
00096 # if defined (HAVE_DECL_CLEARERR_UNLOCKED) && !HAVE_DECL_CLEARERR_UNLOCKED
00097 extern void clearerr_unlocked (FILE *);
00098 # endif
00099 # endif
00100 # ifdef HAVE_FEOF_UNLOCKED
00101 # undef feof
00102 # define feof(Stream) feof_unlocked (Stream)
00103 # if defined (HAVE_DECL_FEOF_UNLOCKED) && !HAVE_DECL_FEOF_UNLOCKED
00104 extern int feof_unlocked (FILE *);
00105 # endif
00106 # endif
00107 # ifdef HAVE_FILENO_UNLOCKED
00108 # undef fileno
00109 # define fileno(Stream) fileno_unlocked (Stream)
00110 # if defined (HAVE_DECL_FILENO_UNLOCKED) && !HAVE_DECL_FILENO_UNLOCKED
00111 extern int fileno_unlocked (FILE *);
00112 # endif
00113 # endif
00114 # ifdef HAVE_FFLUSH_UNLOCKED
00115 # undef fflush
00116 # define fflush(Stream) fflush_unlocked (Stream)
00117 # if defined (HAVE_DECL_FFLUSH_UNLOCKED) && !HAVE_DECL_FFLUSH_UNLOCKED
00118 extern int fflush_unlocked (FILE *);
00119 # endif
00120 # endif
00121 # ifdef HAVE_FGETC_UNLOCKED
00122 # undef fgetc
00123 # define fgetc(Stream) fgetc_unlocked (Stream)
00124 # if defined (HAVE_DECL_FGETC_UNLOCKED) && !HAVE_DECL_FGETC_UNLOCKED
00125 extern int fgetc_unlocked (FILE *);
00126 # endif
00127 # endif
00128 # ifdef HAVE_FGETS_UNLOCKED
00129 # undef fgets
00130 # define fgets(S, n, Stream) fgets_unlocked (S, n, Stream)
00131 # if defined (HAVE_DECL_FGETS_UNLOCKED) && !HAVE_DECL_FGETS_UNLOCKED
00132 extern char *fgets_unlocked (char *, int, FILE *);
00133 # endif
00134 # endif
00135 # ifdef HAVE_FPUTS_UNLOCKED
00136 # undef fputs
00137 # define fputs(String, Stream) fputs_unlocked (String, Stream)
00138 # if defined (HAVE_DECL_FPUTS_UNLOCKED) && !HAVE_DECL_FPUTS_UNLOCKED
00139 extern int fputs_unlocked (const char *, FILE *);
00140 # endif
00141 # endif
00142 # ifdef HAVE_FERROR_UNLOCKED
00143 # undef ferror
00144 # define ferror(Stream) ferror_unlocked (Stream)
00145 # if defined (HAVE_DECL_FERROR_UNLOCKED) && !HAVE_DECL_FERROR_UNLOCKED
00146 extern int ferror_unlocked (FILE *);
00147 # endif
00148 # endif
00149 # ifdef HAVE_FREAD_UNLOCKED
00150 # undef fread
00151 # define fread(Ptr, Size, N, Stream) fread_unlocked (Ptr, Size, N, Stream)
00152 # if defined (HAVE_DECL_FREAD_UNLOCKED) && !HAVE_DECL_FREAD_UNLOCKED
00153 extern size_t fread_unlocked (void *, size_t, size_t, FILE *);
00154 # endif
00155 # endif
00156 # ifdef HAVE_FWRITE_UNLOCKED
00157 # undef fwrite
00158 # define fwrite(Ptr, Size, N, Stream) fwrite_unlocked (Ptr, Size, N, Stream)
00159 # if defined (HAVE_DECL_FWRITE_UNLOCKED) && !HAVE_DECL_FWRITE_UNLOCKED
00160 extern size_t fwrite_unlocked (const void *, size_t, size_t, FILE *);
00161 # endif
00162 # endif
00163 # ifdef HAVE_FPRINTF_UNLOCKED
00164 # undef fprintf
00165
00166
00167 # define fprintf fprintf_unlocked
00168 # if defined (HAVE_DECL_FPRINTF_UNLOCKED) && !HAVE_DECL_FPRINTF_UNLOCKED
00169 extern int fprintf_unlocked (FILE *, const char *, ...);
00170 # endif
00171 # endif
00172
00173 #endif
00174
00175
00176
00177 #undef fread_unlocked
00178 #undef fwrite_unlocked
00179
00180
00181
00182
00183 #include <safe-ctype.h>
00184
00185 #include <sys/types.h>
00186
00187 #include <errno.h>
00188
00189 #if !defined (errno) && defined (HAVE_DECL_ERRNO) && !HAVE_DECL_ERRNO
00190 extern int errno;
00191 #endif
00192
00193
00194
00195 #define __NO_STRING_INLINES
00196
00197 #ifdef STRING_WITH_STRINGS
00198 # include <string.h>
00199 # include <strings.h>
00200 #else
00201 # ifdef HAVE_STRING_H
00202 # include <string.h>
00203 # else
00204 # ifdef HAVE_STRINGS_H
00205 # include <strings.h>
00206 # endif
00207 # endif
00208 #endif
00209
00210 #ifdef HAVE_STDLIB_H
00211 # include <stdlib.h>
00212 #endif
00213
00214
00215
00216
00217 #ifndef SUCCESS_EXIT_CODE
00218 # ifdef EXIT_SUCCESS
00219 # define SUCCESS_EXIT_CODE EXIT_SUCCESS
00220 # else
00221 # define SUCCESS_EXIT_CODE 0
00222 # endif
00223 #endif
00224
00225 #ifndef FATAL_EXIT_CODE
00226 # ifdef EXIT_FAILURE
00227 # define FATAL_EXIT_CODE EXIT_FAILURE
00228 # else
00229 # define FATAL_EXIT_CODE 1
00230 # endif
00231 #endif
00232
00233 #define ICE_EXIT_CODE 4
00234
00235 #ifdef HAVE_UNISTD_H
00236 # include <unistd.h>
00237 #endif
00238
00239 #ifdef HAVE_SYS_PARAM_H
00240 # include <sys/param.h>
00241
00242 # undef PREFETCH
00243 #endif
00244
00245 #if HAVE_LIMITS_H
00246 # include <limits.h>
00247 #endif
00248
00249
00250 #include "hwint.h"
00251
00252
00253
00254
00255
00256
00257
00258
00259 #define IN_RANGE(VALUE, LOWER, UPPER) \
00260 ((unsigned HOST_WIDE_INT)((VALUE) - (LOWER)) <= ((UPPER) - (LOWER)))
00261
00262
00263
00264
00265
00266 #define INTTYPE_SIGNED(t) (! ((t) 0 < (t) -1))
00267
00268
00269 #define INTTYPE_MINIMUM(t) ((t) (INTTYPE_SIGNED (t) \
00270 ? ~ (t) 0 << (sizeof(t) * CHAR_BIT - 1) : (t) 0))
00271 #define INTTYPE_MAXIMUM(t) ((t) (~ (t) 0 - INTTYPE_MINIMUM (t)))
00272
00273
00274 #ifndef UCHAR_MAX
00275 # define UCHAR_MAX INTTYPE_MAXIMUM (unsigned char)
00276 #endif
00277
00278 #ifdef TIME_WITH_SYS_TIME
00279 # include <sys/time.h>
00280 # include <time.h>
00281 #else
00282 # if HAVE_SYS_TIME_H
00283 # include <sys/time.h>
00284 # else
00285 # ifdef HAVE_TIME_H
00286 # include <time.h>
00287 # endif
00288 # endif
00289 #endif
00290
00291 #ifdef HAVE_FCNTL_H
00292 # include <fcntl.h>
00293 #else
00294 # ifdef HAVE_SYS_FILE_H
00295 # include <sys/file.h>
00296 # endif
00297 #endif
00298
00299 #ifndef SEEK_SET
00300 # define SEEK_SET 0
00301 # define SEEK_CUR 1
00302 # define SEEK_END 2
00303 #endif
00304 #ifndef F_OK
00305 # define F_OK 0
00306 # define X_OK 1
00307 # define W_OK 2
00308 # define R_OK 4
00309 #endif
00310 #ifndef O_RDONLY
00311 # define O_RDONLY 0
00312 #endif
00313 #ifndef O_WRONLY
00314 # define O_WRONLY 1
00315 #endif
00316
00317
00318
00319
00320
00321 #undef MIN
00322 #undef MAX
00323 #define MIN(X,Y) ((X) < (Y) ? (X) : (Y))
00324 #define MAX(X,Y) ((X) > (Y) ? (X) : (Y))
00325
00326
00327 #define CEIL(x,y) (((x) + (y) - 1) / (y))
00328
00329 #ifdef HAVE_SYS_WAIT_H
00330 #include <sys/wait.h>
00331 #endif
00332
00333 #ifndef WIFSIGNALED
00334 #define WIFSIGNALED(S) (((S) & 0xff) != 0 && ((S) & 0xff) != 0x7f)
00335 #endif
00336 #ifndef WTERMSIG
00337 #define WTERMSIG(S) ((S) & 0x7f)
00338 #endif
00339 #ifndef WIFEXITED
00340 #define WIFEXITED(S) (((S) & 0xff) == 0)
00341 #endif
00342 #ifndef WEXITSTATUS
00343 #define WEXITSTATUS(S) (((S) & 0xff00) >> 8)
00344 #endif
00345 #ifndef WSTOPSIG
00346 #define WSTOPSIG WEXITSTATUS
00347 #endif
00348 #ifndef WCOREDUMP
00349 #define WCOREDUMP(S) ((S) & WCOREFLG)
00350 #endif
00351 #ifndef WCOREFLG
00352 #define WCOREFLG 0200
00353 #endif
00354
00355
00356
00357
00358
00359
00360 #if defined (HAVE_DECL_ATOF) && !HAVE_DECL_ATOF
00361 extern double atof (const char *);
00362 #endif
00363
00364 #if defined (HAVE_DECL_ATOL) && !HAVE_DECL_ATOL
00365 extern long atol (const char *);
00366 #endif
00367
00368 #if defined (HAVE_DECL_FREE) && !HAVE_DECL_FREE
00369 extern void free (void *);
00370 #endif
00371
00372 #if defined (HAVE_DECL_GETCWD) && !HAVE_DECL_GETCWD
00373 extern char *getcwd (char *, size_t);
00374 #endif
00375
00376 #if defined (HAVE_DECL_GETENV) && !HAVE_DECL_GETENV
00377 extern char *getenv (const char *);
00378 #endif
00379
00380 #if defined (HAVE_DECL_GETOPT) && !HAVE_DECL_GETOPT
00381 extern int getopt (int, char * const *, const char *);
00382 #endif
00383
00384 #if defined (HAVE_DECL_GETPAGESIZE) && !HAVE_DECL_GETPAGESIZE
00385 extern int getpagesize (void);
00386 #endif
00387
00388 #if defined (HAVE_DECL_GETWD) && !HAVE_DECL_GETWD
00389 extern char *getwd (char *);
00390 #endif
00391
00392 #if defined (HAVE_DECL_SBRK) && !HAVE_DECL_SBRK
00393 extern void *sbrk (int);
00394 #endif
00395
00396 #if defined (HAVE_DECL_STRSTR) && !HAVE_DECL_STRSTR
00397 extern char *strstr (const char *, const char *);
00398 #endif
00399
00400 #ifdef HAVE_MALLOC_H
00401 #include <malloc.h>
00402 #endif
00403
00404 #if defined (HAVE_DECL_MALLOC) && !HAVE_DECL_MALLOC
00405 extern void *malloc (size_t);
00406 #endif
00407
00408 #if defined (HAVE_DECL_CALLOC) && !HAVE_DECL_CALLOC
00409 extern void *calloc (size_t, size_t);
00410 #endif
00411
00412 #if defined (HAVE_DECL_REALLOC) && !HAVE_DECL_REALLOC
00413 extern void *realloc (void *, size_t);
00414 #endif
00415
00416
00417
00418 #if !defined (HAVE_STRSIGNAL) \
00419 || (defined (HAVE_DECL_STRSIGNAL) && !HAVE_DECL_STRSIGNAL)
00420 # ifndef strsignal
00421 extern const char *strsignal (int);
00422 # endif
00423 #endif
00424
00425 #ifdef HAVE_GETRLIMIT
00426 # if defined (HAVE_DECL_GETRLIMIT) && !HAVE_DECL_GETRLIMIT
00427 # ifndef getrlimit
00428 struct rlimit;
00429 extern int getrlimit (int, struct rlimit *);
00430 # endif
00431 # endif
00432 #endif
00433
00434 #ifdef HAVE_SETRLIMIT
00435 # if defined (HAVE_DECL_SETRLIMIT) && !HAVE_DECL_SETRLIMIT
00436 # ifndef setrlimit
00437 struct rlimit;
00438 extern int setrlimit (int, const struct rlimit *);
00439 # endif
00440 # endif
00441 #endif
00442
00443 #if defined (HAVE_DECL_ABORT) && !HAVE_DECL_ABORT
00444 extern void abort (void);
00445 #endif
00446
00447 #if defined (HAVE_DECL_SNPRINTF) && !HAVE_DECL_SNPRINTF
00448 extern int snprintf (char *, size_t, const char *, ...);
00449 #endif
00450
00451 #if defined (HAVE_DECL_VSNPRINTF) && !HAVE_DECL_VSNPRINTF
00452 extern int vsnprintf(char *, size_t, const char *, va_list);
00453 #endif
00454
00455
00456 #if !defined(HAVE_DESIGNATED_INITIALIZERS)
00457 #define HAVE_DESIGNATED_INITIALIZERS \
00458 ((GCC_VERSION >= 2007) || (__STDC_VERSION__ >= 199901L))
00459 #endif
00460
00461 #if HAVE_SYS_STAT_H
00462 # include <sys/stat.h>
00463 #endif
00464
00465
00466 #ifndef S_ISREG
00467 #define S_ISREG(m) (((m) & S_IFMT) == S_IFREG)
00468 #endif
00469
00470
00471 #ifndef S_ISDIR
00472 #define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
00473 #endif
00474
00475
00476 #ifndef S_ISCHR
00477 #define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
00478 #endif
00479
00480
00481 #ifndef S_ISBLK
00482 #define S_ISBLK(m) (((m) & S_IFMT) == S_IFBLK)
00483 #endif
00484
00485
00486 #ifndef S_ISSOCK
00487 # ifdef S_IFSOCK
00488 # define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK)
00489 # else
00490 # define S_ISSOCK(m) 0
00491 # endif
00492 #endif
00493
00494
00495 #ifndef S_ISFIFO
00496 # ifdef S_IFIFO
00497 # define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
00498 # else
00499 # define S_ISFIFO(m) 0
00500 # endif
00501 #endif
00502
00503
00504 #ifndef STDIN_FILENO
00505 # define STDIN_FILENO 0
00506 #endif
00507 #ifndef STDOUT_FILENO
00508 # define STDOUT_FILENO 1
00509 #endif
00510 #ifndef STDERR_FILENO
00511 # define STDERR_FILENO 2
00512 #endif
00513
00514
00515 #ifdef MKDIR_TAKES_ONE_ARG
00516 # define mkdir(a,b) mkdir(a)
00517 #endif
00518
00519
00520 #ifndef PATH_SEPARATOR
00521 #define PATH_SEPARATOR ':'
00522 #endif
00523
00524
00525 #include "filenames.h"
00526
00527
00528 #ifndef DIR_SEPARATOR
00529 # define DIR_SEPARATOR '/'
00530 # ifdef HAVE_DOS_BASED_FILE_SYSTEM
00531 # define DIR_SEPARATOR_2 '\\'
00532 # endif
00533 #endif
00534
00535
00536 #include "libiberty.h"
00537
00538
00539
00540
00541 #ifndef HOST_BIT_BUCKET
00542 #define HOST_BIT_BUCKET "/dev/null"
00543 #endif
00544
00545
00546
00547
00548 #if (GCC_VERSION > 2000)
00549 #define ENUM_BITFIELD(TYPE) __extension__ enum TYPE
00550 #else
00551 #define ENUM_BITFIELD(TYPE) unsigned int
00552 #endif
00553
00554 #ifndef offsetof
00555 #define offsetof(TYPE, MEMBER) ((size_t) &((TYPE *) 0)->MEMBER)
00556 #endif
00557
00558
00559 #if (GCC_VERSION < 2007)
00560 #ifndef __FUNCTION__
00561 #define __FUNCTION__ "?"
00562 #endif
00563 #endif
00564
00565
00566
00567
00568 #if (GCC_VERSION < 3000)
00569 #define __builtin_expect(a, b) (a)
00570 #endif
00571
00572
00573
00574 extern void fancy_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
00575 #define abort() fancy_abort (__FILE__, __LINE__, __FUNCTION__)
00576
00577
00578 #if ENABLE_ASSERT_CHECKING
00579 #define gcc_assert(EXPR) \
00580 ((void)(!(EXPR) ? fancy_abort (__FILE__, __LINE__, __FUNCTION__), 0 : 0))
00581 #else
00582
00583 #define gcc_assert(EXPR) ((void)(0 && (EXPR)))
00584 #endif
00585
00586
00587
00588 #define gcc_unreachable() (fancy_abort (__FILE__, __LINE__, __FUNCTION__))
00589
00590
00591
00592
00593
00594
00595
00596 #undef TRUE
00597 #undef FALSE
00598
00599 #ifdef __cplusplus
00600
00601 # define TRUE true
00602 # define FALSE false
00603 #else
00604 # undef bool
00605 # undef true
00606 # undef false
00607
00608 #ifdef KEY
00609 #include <stdbool.h>
00610 #else
00611 # define bool unsigned char
00612 # define true 1
00613 # define false 0
00614 #endif
00615
00616
00617 # define TRUE true
00618 # define FALSE false
00619 #endif
00620
00621
00622 #include "double-int.h"
00623
00624
00625 #define BOOL_BITFIELD unsigned int
00626
00627
00628
00629
00630
00631
00632
00633
00634
00635
00636
00637
00638 #define really_call_malloc malloc
00639 #define really_call_calloc calloc
00640 #define really_call_realloc realloc
00641
00642 #if defined(FLEX_SCANNER) || defined(YYBISON) || defined(YYBYACC)
00643
00644
00645 #define malloc xmalloc
00646 #define realloc xrealloc
00647 #endif
00648
00649 #if (GCC_VERSION >= 3000)
00650
00651
00652
00653
00654
00655 #ifdef IN_GCC
00656 #undef calloc
00657 #undef strdup
00658 #pragma GCC poison calloc strdup
00659
00660 #if !defined(FLEX_SCANNER) && !defined(YYBISON)
00661 #undef malloc
00662 #undef realloc
00663 #pragma GCC poison malloc realloc
00664 #endif
00665
00666
00667 #pragma GCC poison ASM_OPEN_PAREN ASM_CLOSE_PAREN \
00668 FUNCTION_PROLOGUE FUNCTION_EPILOGUE \
00669 FUNCTION_END_PROLOGUE FUNCTION_BEGIN_EPILOGUE \
00670 DECL_MACHINE_ATTRIBUTES COMP_TYPE_ATTRIBUTES INSERT_ATTRIBUTES \
00671 VALID_MACHINE_DECL_ATTRIBUTE VALID_MACHINE_TYPE_ATTRIBUTE \
00672 SET_DEFAULT_TYPE_ATTRIBUTES SET_DEFAULT_DECL_ATTRIBUTES \
00673 MERGE_MACHINE_TYPE_ATTRIBUTES MERGE_MACHINE_DECL_ATTRIBUTES \
00674 MD_INIT_BUILTINS MD_EXPAND_BUILTIN ASM_OUTPUT_CONSTRUCTOR \
00675 ASM_OUTPUT_DESTRUCTOR SIGNED_CHAR_SPEC MAX_CHAR_TYPE_SIZE \
00676 WCHAR_UNSIGNED UNIQUE_SECTION SELECT_SECTION SELECT_RTX_SECTION \
00677 ENCODE_SECTION_INFO STRIP_NAME_ENCODING ASM_GLOBALIZE_LABEL \
00678 ASM_OUTPUT_MI_THUNK CONST_COSTS RTX_COSTS DEFAULT_RTX_COSTS \
00679 ADDRESS_COST MACHINE_DEPENDENT_REORG ASM_FILE_START ASM_FILE_END \
00680 ASM_SIMPLIFY_DWARF_ADDR INIT_TARGET_OPTABS INIT_SUBTARGET_OPTABS \
00681 INIT_GOFAST_OPTABS MULSI3_LIBCALL MULDI3_LIBCALL DIVSI3_LIBCALL \
00682 DIVDI3_LIBCALL UDIVSI3_LIBCALL UDIVDI3_LIBCALL MODSI3_LIBCALL \
00683 MODDI3_LIBCALL UMODSI3_LIBCALL UMODDI3_LIBCALL BUILD_VA_LIST_TYPE \
00684 PRETEND_OUTGOING_VARARGS_NAMED STRUCT_VALUE_INCOMING_REGNUM \
00685 ASM_OUTPUT_SECTION_NAME PROMOTE_FUNCTION_ARGS \
00686 STRUCT_VALUE_INCOMING STRICT_ARGUMENT_NAMING \
00687 PROMOTE_FUNCTION_RETURN PROMOTE_PROTOTYPES STRUCT_VALUE_REGNUM \
00688 SETUP_INCOMING_VARARGS EXPAND_BUILTIN_SAVEREGS \
00689 DEFAULT_SHORT_ENUMS SPLIT_COMPLEX_ARGS MD_ASM_CLOBBERS \
00690 HANDLE_PRAGMA_REDEFINE_EXTNAME HANDLE_PRAGMA_EXTERN_PREFIX \
00691 MUST_PASS_IN_STACK FUNCTION_ARG_PASS_BY_REFERENCE \
00692 VECTOR_MODE_SUPPORTED_P TARGET_SUPPORTS_HIDDEN \
00693 FUNCTION_ARG_PARTIAL_NREGS ASM_OUTPUT_DWARF_DTPREL \
00694 ALLOCATE_INITIAL_VALUE
00695
00696
00697
00698
00699 #pragma GCC poison INT_ASM_OP ASM_OUTPUT_EH_REGION_BEG CPP_PREDEFINES \
00700 ASM_OUTPUT_EH_REGION_END ASM_OUTPUT_LABELREF_AS_INT SMALL_STACK \
00701 DOESNT_NEED_UNWINDER EH_TABLE_LOOKUP OBJC_SELECTORS_WITHOUT_LABELS \
00702 OMIT_EH_TABLE EASY_DIV_EXPR IMPLICIT_FIX_EXPR \
00703 LONGJMP_RESTORE_FROM_STACK MAX_INT_TYPE_SIZE ASM_IDENTIFY_GCC \
00704 STDC_VALUE TRAMPOLINE_ALIGN ASM_IDENTIFY_GCC_AFTER_SOURCE \
00705 SLOW_ZERO_EXTEND SUBREG_REGNO_OFFSET DWARF_LINE_MIN_INSTR_LENGTH \
00706 TRADITIONAL_RETURN_FLOAT NO_BUILTIN_SIZE_TYPE \
00707 NO_BUILTIN_PTRDIFF_TYPE NO_BUILTIN_WCHAR_TYPE NO_BUILTIN_WINT_TYPE \
00708 BLOCK_PROFILER BLOCK_PROFILER_CODE FUNCTION_BLOCK_PROFILER \
00709 FUNCTION_BLOCK_PROFILER_EXIT MACHINE_STATE_SAVE \
00710 MACHINE_STATE_RESTORE SCCS_DIRECTIVE SECTION_ASM_OP BYTEORDER \
00711 ASM_OUTPUT_DEFINE_LABEL_DIFFERENCE_SYMBOL HOST_WORDS_BIG_ENDIAN \
00712 OBJC_PROLOGUE ALLOCATE_TRAMPOLINE HANDLE_PRAGMA ROUND_TYPE_SIZE \
00713 ROUND_TYPE_SIZE_UNIT CONST_SECTION_ASM_OP CRT_GET_RFIB_TEXT \
00714 DBX_LBRAC_FIRST DBX_OUTPUT_ENUM DBX_OUTPUT_SOURCE_FILENAME \
00715 DBX_WORKING_DIRECTORY INSN_CACHE_DEPTH INSN_CACHE_SIZE \
00716 INSN_CACHE_LINE_WIDTH INIT_SECTION_PREAMBLE NEED_ATEXIT ON_EXIT \
00717 EXIT_BODY OBJECT_FORMAT_ROSE MULTIBYTE_CHARS MAP_CHARACTER \
00718 LIBGCC_NEEDS_DOUBLE FINAL_PRESCAN_LABEL DEFAULT_CALLER_SAVES \
00719 LOAD_ARGS_REVERSED MAX_INTEGER_COMPUTATION_MODE \
00720 CONVERT_HARD_REGISTER_TO_SSA_P ASM_OUTPUT_MAIN_SOURCE_FILENAME \
00721 FIRST_INSN_ADDRESS TEXT_SECTION SHARED_BSS_SECTION_ASM_OP \
00722 PROMOTED_MODE EXPAND_BUILTIN_VA_END \
00723 LINKER_DOES_NOT_WORK_WITH_DWARF2 FUNCTION_ARG_KEEP_AS_REFERENCE \
00724 GIV_SORT_CRITERION MAX_LONG_TYPE_SIZE MAX_LONG_DOUBLE_TYPE_SIZE \
00725 MAX_WCHAR_TYPE_SIZE SHARED_SECTION_ASM_OP INTEGRATE_THRESHOLD \
00726 FINAL_REG_PARM_STACK_SPACE MAYBE_REG_PARM_STACK_SPACE \
00727 TRADITIONAL_PIPELINE_INTERFACE DFA_PIPELINE_INTERFACE \
00728 DBX_OUTPUT_STANDARD_TYPES BUILTIN_SETJMP_FRAME_VALUE \
00729 SUNOS4_SHARED_LIBRARIES PROMOTE_FOR_CALL_ONLY \
00730 SPACE_AFTER_L_OPTION NO_RECURSIVE_FUNCTION_CSE \
00731 DEFAULT_MAIN_RETURN TARGET_MEM_FUNCTIONS EXPAND_BUILTIN_VA_ARG \
00732 COLLECT_PARSE_FLAG DWARF2_GENERATE_TEXT_SECTION_LABEL WINNING_GDB \
00733 ASM_OUTPUT_FILENAME ASM_OUTPUT_SOURCE_LINE FILE_NAME_JOINER \
00734 GDB_INV_REF_REGPARM_STABS_LETTER DBX_MEMPARM_STABS_LETTER \
00735 PUT_SDB_SRC_FILE STABS_GCC_MARKER DBX_OUTPUT_FUNCTION_END \
00736 DBX_OUTPUT_GCC_MARKER DBX_FINISH_SYMBOL SDB_GENERATE_FAKE \
00737 NON_SAVING_SETJMP TARGET_LATE_RTL_PROLOGUE_EPILOGUE \
00738 CASE_DROPS_THROUGH TARGET_BELL TARGET_BS TARGET_CR TARGET_DIGIT0 \
00739 TARGET_ESC TARGET_FF TARGET_NEWLINE TARGET_TAB TARGET_VT \
00740 LINK_LIBGCC_SPECIAL DONT_ACCESS_GBLS_AFTER_EPILOGUE \
00741 TARGET_OPTIONS TARGET_SWITCHES EXTRA_CC_MODES FINALIZE_PIC \
00742 PREDICATE_CODES SPECIAL_MODE_PREDICATES HOST_PTR_PRINTF \
00743 EXTRA_SECTIONS EXTRA_SECTION_FUNCTIONS READONLY_DATA_SECTION \
00744 TARGET_ASM_EXCEPTION_SECTION TARGET_ASM_EH_FRAME_SECTION \
00745 SMALL_ARG_MAX ASM_OUTPUT_SHARED_BSS ASM_OUTPUT_SHARED_COMMON \
00746 ASM_OUTPUT_SHARED_LOCAL UNALIGNED_WORD_ASM_OP
00747
00748
00749 #pragma GCC poison LANG_HOOKS_FUNCTION_MARK LANG_HOOKS_FUNCTION_FREE \
00750 LANG_HOOKS_MARK_TREE LANG_HOOKS_INSERT_DEFAULT_ATTRIBUTES \
00751 LANG_HOOKS_TREE_INLINING_ESTIMATE_NUM_INSNS \
00752 LANG_HOOKS_PUSHLEVEL LANG_HOOKS_SET_BLOCK \
00753 LANG_HOOKS_MAYBE_BUILD_CLEANUP LANG_HOOKS_UPDATE_DECL_AFTER_SAVING \
00754 LANG_HOOKS_POPLEVEL LANG_HOOKS_TRUTHVALUE_CONVERSION
00755
00756
00757 #undef ANSI_PROTOTYPES
00758 #undef PTR_CONST
00759 #undef LONG_DOUBLE
00760 #undef VPARAMS
00761 #undef VA_OPEN
00762 #undef VA_FIXEDARG
00763 #undef VA_CLOSE
00764 #undef VA_START
00765 #pragma GCC poison ANSI_PROTOTYPES PTR_CONST LONG_DOUBLE VPARAMS VA_OPEN \
00766 VA_FIXEDARG VA_CLOSE VA_START
00767 #endif
00768
00769
00770
00771 #undef bcopy
00772 #undef bzero
00773 #undef bcmp
00774 #undef rindex
00775 #pragma GCC poison bcopy bzero bcmp rindex
00776
00777 #endif
00778
00779 #endif