--- gcc/config/convex/convex.h 2018/04/24 18:10:25 1.1.1.1 +++ gcc/config/convex/convex.h 2018/04/24 18:21:40 1.1.1.3 @@ -1,5 +1,5 @@ /* Definitions of target machine for GNU compiler. Convex version. - Copyright (C) 1988, 1993 Free Software Foundation, Inc. + Copyright (C) 1988, 1994 Free Software Foundation, Inc. This file is part of GNU CC. @@ -94,7 +94,7 @@ extern int target_flags; /* Names to predefine in the preprocessor for this target machine. */ -#define CPP_PREDEFINES "-Dconvex -Dunix" +#define CPP_PREDEFINES "-Dconvex -Dunix -Asystem(unix) -Acpu(convex) -Amachine(convex)" /* Print subsidiary information on the compiler version in use. */ @@ -497,6 +497,8 @@ extern int target_flags; #define FLOAT_TYPE_SIZE 32 #define DOUBLE_TYPE_SIZE 64 #define LONG_DOUBLE_TYPE_SIZE 64 +/* This prevents cexp.c from depending on LONG_TYPE_SIZE. */ +#define MAX_LONG_TYPE_SIZE 64 /* Declare the standard types used by builtins to match convex stddef.h -- with int rather than long. */ @@ -1117,7 +1119,6 @@ enum reg_class { else break; \ case MULT: \ return 4 * (char) (0x03060403 >> target_cpu * 8); \ - case LSHIFT: \ case ASHIFT: \ case LSHIFTRT: \ case ASHIFTRT: \ @@ -1178,8 +1179,8 @@ enum reg_class { extern double atof(); /* Check a `double' value for validity for a particular machine mode. */ -#define CHECK_FLOAT_VALUE(mode, d) \ - check_float_value ((mode), &(d)) +#define CHECK_FLOAT_VALUE(MODE, D, OVERFLOW) \ + overflow = check_float_value (MODE, &D, OVERFLOW) /* Tell final.c how to eliminate redundant test instructions. */ @@ -1486,21 +1487,11 @@ bss_section () \ #define PRINT_OPERAND_ADDRESS(FILE, ADDR) \ print_operand_address (FILE, ADDR) -/* Definitions for g++. */ - /* Do not put out GNU stabs for constructors and destructors. ld bounces them. */ #define FASCIST_ASSEMBLER -/* Convex user addresses are negative, so use positive numbers - to mean `vtable index'. */ - -#define VTABLE_USES_MASK -#define VINDEX_MAX ((unsigned) 0x80000000) -#define SET_DECL_VINDEX(DECL, INDEX) \ - (DECL_VINDEX (DECL) = (INDEX)) - /* __gcc_cleanup is loader-aliased to __ap$do_registered_functions if we are linking against standard libc, 0 if old (-traditional) libc. */ @@ -1512,12 +1503,6 @@ bss_section () \ _cleanup (); \ } -/* cexp.y uses LONG_TYPE_SIZE which depends on target_flags, which it - doesn't have. Until some better way exists, provide a def here. */ -#ifdef YYBISON -int target_flags; -#endif - /* Header for convex.c. Here at the end so we can use types defined above. */ @@ -1534,5 +1519,5 @@ extern char *output_cmp (); extern char *output_condjump (); extern char *output_call (); extern void gen_ap_for_call (); -extern void check_float_value (); +extern int check_float_value (); extern void asm_declare_function_name ();