This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Patch for ia32 bootstrap failure


On x86, we fail compiling libgcc2 in stage1 because
LONG_LONG_TYPE_SIZE is not defined.  This was introduced by the change

2000-09-10  Stephane Carrez  <Stephane.Carrez@worldnet.fr>

        * libgcc2.h: Use LONG_LONG_TYPE_SIZE instead of MIN_UNITS_PER_WORD
        to decide whether 64-bit support must be generated.

Suggested fix is to move the default definitions of *_TYPE_SIZE out of
the myriad places where they currently appear, into defaults.h.  This
patch restores bootstrappability; test suite is running now.

[There is a further potential problem in that LONG_LONG_TYPE_SIZE could
conceivably depend on a target switch, but no existing configuration
does that.]

zw

	* defaults.h: Provide default definitions for: CHAR_TYPE_SIZE,
	SHORT_TYPE_SIZE, INT_TYPE_SIZE, LONG_TYPE_SIZE,
	LONG_LONG_TYPE_SIZE, WCHAR_TYPE_SIZE, FLOAT_TYPE_SIZE,
	DOUBLE_TYPE_SIZE, LONG_DOUBLE_TYPE_SIZE, and WCHAR_UNSIGNED.

	* cppexp.c, dwarfout.c, dwarf2out.c, emit-rtl.c, final.c, optabs.c,
	profile.c, sdbout.c, tradcif.y, tree.c, ch/decl.c, ch/timing.c, 
	cp/decl.c, cp/rtti.c, f/com.c, f/com.h, java/decl.c, java/expr.c:
	Include defaults.h if not already included.
	Don't define the above macros.

	* Makefile.in, ch/Makefile.in, cp/Makefile.in, f/Makefile.in: 
	Update dependencies.

===================================================================
Index: Makefile.in
--- Makefile.in	2000/09/08 20:16:39	1.510
+++ Makefile.in	2000/09/11 00:25:55
@@ -1228,7 +1228,7 @@ prefix.o: prefix.c $(CONFIG_H) system.h 
 convert.o: convert.c $(CONFIG_H) system.h $(TREE_H) flags.h convert.h toplev.h
 
 tree.o : tree.c $(CONFIG_H) system.h $(TREE_H) flags.h function.h toplev.h \
-   $(GGC_H) $(HASHTAB_H) output.h
+   $(GGC_H) $(HASHTAB_H) output.h defaults.h
 print-tree.o : print-tree.c $(CONFIG_H) system.h $(TREE_H) $(GGC_H)
 stor-layout.o : stor-layout.c $(CONFIG_H) system.h $(TREE_H) flags.h \
    function.h $(EXPR_H) $(RTL_H) toplev.h $(GGC_H)
@@ -1282,7 +1282,7 @@ explow.o : explow.c $(CONFIG_H) system.h
    insn-codes.h toplev.h function.h
 optabs.o : optabs.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h  \
    insn-flags.h insn-config.h insn-codes.h $(EXPR_H) $(RECOG_H) reload.h \
-   toplev.h $(GGC_H) real.h
+   toplev.h $(GGC_H) real.h defaults.h
 dbxout.o : dbxout.c $(CONFIG_H) system.h $(TREE_H) $(RTL_H) flags.h $(REGS_H) \
    insn-config.h reload.h gstab.h xcoffout.h defaults.h output.h dbxout.h \
    toplev.h
@@ -1301,7 +1301,7 @@ xcoffout.o : xcoffout.c $(CONFIG_H) syst
 emit-rtl.o : emit-rtl.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \
    function.h $(REGS_H) insn-config.h $(RECOG_H) real.h $(GGC_H) \
    $(EXPR_H) $(srcdir)/../include/obstack.h hard-reg-set.h bitmap.h toplev.h \
-   $(HASHTAB_H)
+   $(HASHTAB_H) defaults.h
 real.o : real.c $(CONFIG_H) system.h $(TREE_H) toplev.h
 integrate.o : integrate.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \
    $(INTEGRATE_H) insn-flags.h insn-config.h $(EXPR_H) real.h $(REGS_H) \
@@ -1335,7 +1335,7 @@ conflict.o : conflict.c $(CONFIG_H) syst
    $(RTL_H) hard-reg-set.h $(BASIC_BLOCK_H)
 profile.o : profile.c $(CONFIG_H) system.h $(RTL_H) $(TREE_H) flags.h \
    insn-flags.h insn-config.h output.h $(REGS_H) $(EXPR_H) function.h \
-   gcov-io.h toplev.h $(GGC_H) hard-reg-set.h $(BASIC_BLOCK_H)
+   gcov-io.h toplev.h $(GGC_H) hard-reg-set.h $(BASIC_BLOCK_H) defaults.h
 loop.o : loop.c $(CONFIG_H) system.h $(RTL_H) flags.h $(LOOP_H) insn-config.h \
    insn-flags.h $(REGS_H) hard-reg-set.h $(RECOG_H) $(EXPR_H) real.h \
    $(BASIC_BLOCK_H) function.h toplev.h varray.h except.h cselib.h
@@ -1808,7 +1808,7 @@ cpp0$(exeext): cppmain.o intl.o libcpp.a
 cppmain.o:  cppmain.c  $(CONFIG_H) cpplib.h intl.h system.h
 
 cpperror.o: cpperror.c $(CONFIG_H) $(LIBCPP_DEPS)
-cppexp.o:   cppexp.c   $(CONFIG_H) $(LIBCPP_DEPS)
+cppexp.o:   cppexp.c   $(CONFIG_H) $(LIBCPP_DEPS) defaults.h
 cpplex.o:   cpplex.c   $(CONFIG_H) $(LIBCPP_DEPS)
 cppmacro.o: cppmacro.c $(CONFIG_H) $(LIBCPP_DEPS)
 cpplib.o:   cpplib.c   $(CONFIG_H) $(LIBCPP_DEPS) $(OBSTACK_H)
@@ -1831,7 +1831,7 @@ tradcpp0$(exeext): tradcpp.o tradcif.o c
 	tradcpp.o tradcif.o cppdefault.o version.o intl.o $(LIBS)
 
 tradcpp.o: tradcpp.c $(CONFIG_H) system.h version.h cppdefault.h
-tradcif.o: $(srcdir)/tradcif.c $(CONFIG_H) system.h
+tradcif.o: $(srcdir)/tradcif.c $(CONFIG_H) system.h defaults.h
 
 $(srcdir)/tradcif.c: $(srcdir)/tradcif.y
 	cd $(srcdir); $(BISON) $(BISONFLAGS) -o tradcif.c tradcif.y
===================================================================
Index: cppexp.c
--- cppexp.c	2000/08/10 15:21:18	1.73
+++ cppexp.c	2000/09/11 00:25:55
@@ -23,22 +23,7 @@ Boston, MA 02111-1307, USA.  */
 #include "system.h"
 #include "cpplib.h"
 #include "cpphash.h"
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE INT_TYPE_SIZE
-#endif
+#include "defaults.h"
 
 #ifndef MAX_CHAR_TYPE_SIZE
 #define MAX_CHAR_TYPE_SIZE CHAR_TYPE_SIZE
===================================================================
Index: defaults.h
--- defaults.h	2000/04/17 00:54:25	1.21
+++ defaults.h	2000/09/11 00:25:55
@@ -1,7 +1,8 @@
 /* Definitions of various defaults for how to do assembler output
    (most of which are designed to be appropriate for GAS or for
    some BSD assembler).
-   Copyright (C) 1992, 1996, 1997, 1998, 1999 Free Software Foundation, Inc.
+   Copyright (C) 1992, 1996, 1997, 1998, 1999, 2000
+   Free Software Foundation, Inc.
    Contributed by Ron Guilmette (rfg@monkeys.com)
 
 This file is part of GNU CC.
@@ -21,6 +22,9 @@ along with GNU CC; see the file COPYING.
 the Free Software Foundation, 59 Temple Place - Suite 330,
 Boston, MA 02111-1307, USA.  */
 
+#ifndef GCC_DEFAULTS_H
+#define GCC_DEFAULTS_H
+
 /* Store in OUTPUT a string (made with alloca) containing
    an assembler-name for a local static variable or function named NAME.
    LABELNO is an integer which is different for each call.  */
@@ -194,3 +198,50 @@ do { ASM_OUTPUT_LABEL(FILE,LABEL_ALTERNA
 #ifndef DWARF_FRAME_REGISTERS
 #define DWARF_FRAME_REGISTERS FIRST_PSEUDO_REGISTER
 #endif
+
+/* Default sizes for base C types.  If the sizes are different for
+   your target, you should override these values by defining the
+   appropriate symbols in your tm.h file.  */
+
+#ifndef CHAR_TYPE_SIZE
+#define CHAR_TYPE_SIZE BITS_PER_UNIT
+#endif
+
+#ifndef SHORT_TYPE_SIZE
+#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
+#endif
+
+#ifndef INT_TYPE_SIZE
+#define INT_TYPE_SIZE BITS_PER_WORD
+#endif
+
+#ifndef LONG_TYPE_SIZE
+#define LONG_TYPE_SIZE BITS_PER_WORD
+#endif
+
+#ifndef LONG_LONG_TYPE_SIZE
+#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
+#endif
+
+#ifndef WCHAR_TYPE_SIZE
+#define WCHAR_TYPE_SIZE INT_TYPE_SIZE
+#endif
+
+#ifndef WCHAR_UNSIGNED
+#define WCHAR_UNSIGNED 0
+#endif
+
+#ifndef FLOAT_TYPE_SIZE
+#define FLOAT_TYPE_SIZE BITS_PER_WORD
+#endif
+
+#ifndef DOUBLE_TYPE_SIZE
+#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
+#endif
+
+#ifndef LONG_DOUBLE_TYPE_SIZE
+#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
+#endif
+
+#endif  /* GCC_DEFAULTS_H */
+
===================================================================
Index: dwarf2out.c
--- dwarf2out.c	2000/09/04 14:32:02	1.202
+++ dwarf2out.c	2000/09/11 00:25:57
@@ -139,15 +139,6 @@ dw_fde_node;
 /* Maximum size (in bytes) of an artificially generated label.   */
 #define MAX_ARTIFICIAL_LABEL_BYTES	30
 
-/* Make sure we know the sizes of the various types dwarf can describe. These
-   are only defaults.  If the sizes are different for your target, you should
-   override these values by defining the appropriate symbols in your tm.h
-   file.  */
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
 /* The size of the target's pointer type.  */
 #ifndef PTR_SIZE
 #define PTR_SIZE (POINTER_SIZE / BITS_PER_UNIT)
===================================================================
Index: dwarfout.c
--- dwarfout.c	2000/08/03 21:04:42	1.71
+++ dwarfout.c	2000/09/11 00:25:59
@@ -97,51 +97,6 @@ extern int flag_traditional;
 
 #define MAX_ARTIFICIAL_LABEL_BYTES	30
 
-/* Make sure we know the sizes of the various types dwarf can describe.
-   These are only defaults.  If the sizes are different for your target,
-   you should override these values by defining the appropriate symbols
-   in your tm.h file.  */
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef SHORT_TYPE_SIZE
-#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_LONG_TYPE_SIZE
-#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef WCHAR_TYPE_SIZE
-#define WCHAR_TYPE_SIZE INT_TYPE_SIZE
-#endif
-
-#ifndef WCHAR_UNSIGNED
-#define WCHAR_UNSIGNED 0
-#endif
-
-#ifndef FLOAT_TYPE_SIZE
-#define FLOAT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef DOUBLE_TYPE_SIZE
-#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef LONG_DOUBLE_TYPE_SIZE
-#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
 /* Structure to keep track of source filenames.  */
 
 struct filename_entry {
===================================================================
Index: emit-rtl.c
--- emit-rtl.c	2000/09/02 02:54:55	1.145
+++ emit-rtl.c	2000/09/11 00:25:59
@@ -54,6 +54,7 @@ Boston, MA 02111-1307, USA.  */
 #include "bitmap.h"
 #include "basic-block.h"
 #include "ggc.h"
+#include "defaults.h"
 
 /* Commonly used modes.  */
 
@@ -4075,10 +4076,6 @@ init_emit_once (line_numbers)
 	  && word_mode == VOIDmode)
 	word_mode = mode;
     }
-
-#ifndef DOUBLE_TYPE_SIZE
-#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
 
   for (mode = GET_CLASS_NARROWEST_MODE (MODE_FLOAT); mode != VOIDmode;
        mode = GET_MODE_WIDER_MODE (mode))
===================================================================
Index: final.c
--- final.c	2000/08/04 20:28:04	1.140
+++ final.c	2000/09/11 00:26:00
@@ -111,14 +111,6 @@ Boston, MA 02111-1307, USA.  */
 #define	N_SOL 0x84
 #endif
 
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
 /* If we aren't using cc0, CC_STATUS_INIT shouldn't exist.  So define a
    null default for it to save conditionalization later.  */
 #ifndef CC_STATUS_INIT
===================================================================
Index: optabs.c
--- optabs.c	2000/08/24 20:31:33	1.76
+++ optabs.c	2000/09/11 00:26:01
@@ -39,6 +39,7 @@ Boston, MA 02111-1307, USA.  */
 #include "reload.h"
 #include "ggc.h"
 #include "real.h"
+#include "defaults.h"
 
 /* Each optab contains info on how this target machine
    can perform a particular operation
@@ -4669,9 +4670,6 @@ init_optabs ()
     = init_one_libfunc ("cabs");
 
   /* The ffs function operates on `int'.  */
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
   ffs_optab->handlers[(int) mode_for_size (INT_TYPE_SIZE, MODE_INT, 0)].libfunc
     = init_one_libfunc ("ffs");
 
===================================================================
Index: profile.c
--- profile.c	2000/08/29 21:39:45	1.45
+++ profile.c	2000/09/11 00:26:01
@@ -48,8 +48,8 @@ Boston, MA 02111-1307, USA.  */
 #include "ggc.h"
 #include "hard-reg-set.h"
 #include "basic-block.h"
+#include "defaults.h"
 
-
 /* Additional information about the edges we need.  */
 struct edge_info
   {
@@ -118,10 +118,6 @@ static void output_gcov_string PARAMS ((
 static void compute_branch_probabilities PARAMS ((void));
 static basic_block find_group PARAMS ((basic_block));
 static void union_groups PARAMS ((basic_block, basic_block));
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
 
 /* If non-zero, we need to output a constructor to set up the
    per-object-file data. */
===================================================================
Index: sdbout.c
--- sdbout.c	2000/06/06 12:08:44	1.32
+++ sdbout.c	2000/09/11 00:26:01
@@ -123,40 +123,6 @@ static void sdbout_one_type		PARAMS ((tr
 static void sdbout_parms		PARAMS ((tree));
 static void sdbout_reg_parms		PARAMS ((tree));
 
-/* Define the default sizes for various types.  */
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef SHORT_TYPE_SIZE
-#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_LONG_TYPE_SIZE
-#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef FLOAT_TYPE_SIZE
-#define FLOAT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef DOUBLE_TYPE_SIZE
-#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef LONG_DOUBLE_TYPE_SIZE
-#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
 /* Random macros describing parts of SDB data.  */
 
 /* Put something here if lines get too long */
===================================================================
Index: tradcif.y
--- tradcif.y	2000/07/06 22:59:34	1.1
+++ tradcif.y	2000/09/11 00:26:02
@@ -26,6 +26,7 @@ Foundation, 675 Mass Ave, Cambridge, MA 
 %{
 #include "config.h"
 #include "system.h"
+#include "defaults.h"
 #include <setjmp.h>
 
   int yylex PARAMS ((void));
@@ -44,9 +45,6 @@ Foundation, 675 Mass Ave, Cambridge, MA 
   /* some external tables of character types */
   extern unsigned char is_idstart[], is_idchar[];
 
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
 %}
 
 %union {
===================================================================
Index: tree.c
--- tree.c	2000/09/10 21:34:38	1.157
+++ tree.c	2000/09/11 00:26:03
@@ -44,6 +44,7 @@ Boston, MA 02111-1307, USA.  */
 #include "ggc.h"
 #include "hashtab.h"
 #include "output.h"
+#include "defaults.h"
 
 #define obstack_chunk_alloc xmalloc
 #define obstack_chunk_free free
@@ -5646,38 +5647,6 @@ finish_vector_type (t)
     TYPE_UID (rt) = TYPE_UID (t);
   }
 }
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef SHORT_TYPE_SIZE
-#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_LONG_TYPE_SIZE
-#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef FLOAT_TYPE_SIZE
-#define FLOAT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef DOUBLE_TYPE_SIZE
-#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef LONG_DOUBLE_TYPE_SIZE
-#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
 
 /* Create nodes for all integer types (and error_mark_node) using the sizes
    of C datatypes.  The caller should call set_sizetype soon after calling
===================================================================
Index: ch/Makefile.in
--- ch/Makefile.in	2000/08/05 00:50:01	1.27
+++ ch/Makefile.in	2000/09/11 00:26:03
@@ -276,7 +276,7 @@ convert.o : convert.c $(CONFIG_H) $(CHIL
 	$(srcdir)/../tree.h $(srcdir)/../system.h $(srcdir)/../toplev.h \
 	$(srcdir)/../convert.h
 decl.o : decl.c $(CONFIG_H) $(CHILL_TREE_H) $(srcdir)/../flags.h lex.h \
-	$(srcdir)/../system.h $(srcdir)/../toplev.h
+	$(srcdir)/../system.h $(srcdir)/../toplev.h $(srcdir)/../defaults.h
 except.o : except.c $(CONFIG_H) $(srcdir)/../tree.h $(RTL_H) $(CHILL_TREE_H) \
 	$(srcdir)/../system.h $(srcdir)/../toplev.h
 expr.o : expr.c $(CONFIG_H) $(RTL_H) $(CHILL_TREE_H) $(srcdir)/../flags.h \
@@ -300,7 +300,8 @@ parse.o : parse.c $(CONFIG_H) $(CHILL_TR
 satisfy.o : satisfy.c $(CONFIG_H) $(CHILL_TREE_H) $(srcdir)/../tree.h \
 	$(srcdir)/../flags.h lex.h $(srcdir)/../system.h $(srcdir)/../toplev.h
 timing.o : timing.c $(CONFIG_H) $(CHILL_TREE_H) $(RTL_H) $(srcdir)/../flags.h \
-	$(srcdir)/../input.h lex.h $(srcdir)/../system.h $(srcdir)/../toplev.h
+	$(srcdir)/../input.h lex.h $(srcdir)/../system.h $(srcdir)/../toplev.h \
+	$(srcdir)/../defaults.h
 tasking.o : tasking.c $(CONFIG_H) $(CHILL_TREE_H) $(RTL_H) \
 	$(srcdir)/../flags.h $(srcdir)/../input.h \
 	lex.h $(srcdir)/../system.h $(srcdir)/../toplev.h
===================================================================
Index: ch/decl.c
--- ch/decl.c	2000/08/07 07:05:52	1.26
+++ ch/decl.c	2000/09/11 00:26:04
@@ -191,6 +191,7 @@ Boston, MA 02111-1307, USA.  */
 #include "input.h"
 #include "rtl.h"
 #include "toplev.h"
+#include "defaults.h"
 
 #define IS_UNKNOWN_TYPE(type) (TYPE_SIZE(type)==0)
 #define BUILTIN_NESTING_LEVEL (-1)
@@ -264,52 +265,6 @@ int current_module_nesting_level = 0;
 /* ??? not all decl nodes are given the most useful possible
    line numbers.  For example, the CONST_DECLs for enum values.  */
 
-#if 0
-/* In grokdeclarator, distinguish syntactic contexts of declarators.  */
-enum decl_context
-{ NORMAL,			/* Ordinary declaration */
-    FUNCDEF,			/* Function definition */
-    PARM,			/* Declaration of parm before function body */
-    FIELD,			/* Declaration inside struct or union */
-    BITFIELD,			/* Likewise but with specified width */
-    TYPENAME};			/* Typename (inside cast or sizeof)  */
-#endif
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef SHORT_TYPE_SIZE
-#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_LONG_TYPE_SIZE
-#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef WCHAR_UNSIGNED
-#define WCHAR_UNSIGNED 0
-#endif
-
-#ifndef FLOAT_TYPE_SIZE
-#define FLOAT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef DOUBLE_TYPE_SIZE
-#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef LONG_DOUBLE_TYPE_SIZE
-#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
 
 /* We let tm.h override the types used here, to handle trivial differences
    such as the choice of unsigned int or long unsigned int for size_t.
===================================================================
Index: ch/timing.c
--- ch/timing.c	1999/09/24 10:06:53	1.7
+++ ch/timing.c	2000/09/11 00:26:04
@@ -28,10 +28,7 @@ Boston, MA 02111-1307, USA.  */
 #include "obstack.h"
 #include "lex.h"
 #include "toplev.h"
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
+#include "defaults.h"
 
 /* set non-zero if input text is forced to lowercase */
 extern int ignore_case;
===================================================================
Index: cp/Makefile.in
--- cp/Makefile.in	2000/09/07 00:37:11	1.98
+++ cp/Makefile.in	2000/09/11 00:26:04
@@ -280,7 +280,7 @@ tree.o : tree.c $(CXX_TREE_H) $(srcdir)/
   ../insn-config.h $(srcdir)/../integrate.h
 ptree.o : ptree.c $(CXX_TREE_H) $(srcdir)/../system.h
 rtti.o : rtti.c $(CXX_TREE_H) $(srcdir)/../flags.h \
-  $(srcdir)/../toplev.h
+  $(srcdir)/../toplev.h $(srcdir)/../defaults.h
 except.o : except.c $(CXX_TREE_H) $(srcdir)/../flags.h $(RTL_H) \
   $(srcdir)/../except.h $(srcdir)/../toplev.h cfns.h
 expr.o : expr.c $(CXX_TREE_H) $(RTL_H) $(srcdir)/../flags.h \
===================================================================
Index: cp/decl.c
--- cp/decl.c	2000/09/10 21:34:39	1.687
+++ cp/decl.c	2000/09/11 00:26:07
@@ -42,7 +42,6 @@ Boston, MA 02111-1307, USA.  */
 #include "except.h"
 #include "toplev.h"
 #include "../hash.h"
-#include "defaults.h"
 #include "ggc.h"
 
 extern int current_class_depth;
@@ -56,14 +55,6 @@ extern int (*valid_lang_attribute) PARAM
 /* Use garbage collection.  */
 
 int ggc_p = 1;
-
-#ifndef WCHAR_UNSIGNED
-#define WCHAR_UNSIGNED 0
-#endif
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
 
 #ifndef BOOL_TYPE_SIZE
 #ifdef SLOW_BYTE_ACCESS
===================================================================
Index: cp/rtti.c
--- cp/rtti.c	2000/08/09 09:57:54	1.100
+++ cp/rtti.c	2000/09/11 00:26:08
@@ -29,10 +29,7 @@ Boston, MA 02111-1307, USA.  */
 #include "output.h"
 #include "assert.h"
 #include "toplev.h"
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
+#include "defaults.h"
 
 /* Accessors for the type_info objects. We need to remember several things
    about each of the type_info types. The global tree nodes such as
===================================================================
Index: f/Makefile.in
--- f/Makefile.in	2000/08/05 00:50:02	1.24
+++ f/Makefile.in	2000/09/11 00:26:08
@@ -240,6 +240,7 @@ SYSTEM_H = $(srcdir)/../system.h
 TOPLEV_H = $(srcdir)/../toplev.h
 TREE_H = $(srcdir)/../tree.h $(srcdir)/../real.h \
 	$(srcdir)/../tree.def $(srcdir)/../machmode.h $(srcdir)/../machmode.def
+DEFAULTS_H = $(srcdir)/../defaults.h
 
 ansify.o: ansify.c $(HCONFIG_H) $(SYSTEM_H) $(ASSERT_H)
 bad.o: bad.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) bad.h bad.def where.h \
@@ -254,12 +255,12 @@ bld.o: bld.c proj.h $(CONFIG_H) $(SYSTEM
  info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h lex.h \
  type.h lab.h storag.h symbol.h symbol.def equiv.h global.h name.h \
  intrin.h intrin.def
-com.o: com.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(FLAGS_H) $(RTL_H) $(TOPLEV_H) \
+com.o: com.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) $(FLAGS_H) $(RTL_H) \
  $(TREE_H) $(OUTPUT_H) $(CONVERT_H) com.h com-rt.def bld.h bld-op.def bit.h \
  malloc.h info.h info-b.def info-k.def info-w.def target.h bad.h \
  bad.def where.h $(GLIMITS_H) top.h lex.h type.h intrin.h intrin.def \
  lab.h symbol.h symbol.def equiv.h storag.h global.h name.h expr.h \
- implic.h src.h st.h $(GGC_H)
+ implic.h src.h st.h $(GGC_H) $(TOPLEV_H) $(DEFAULTS_H)
 data.o: data.c proj.h $(CONFIG_H) $(SYSTEM_H) $(ASSERT_H) data.h bld.h \
  bld-op.def bit.h malloc.h com.h com-rt.def $(TREE_H) info.h info-b.def \
  info-k.def info-w.def target.h bad.h bad.def where.h $(GLIMITS_H) top.h \
===================================================================
Index: f/com.c
--- f/com.c	2000/08/24 20:32:41	1.93
+++ f/com.c	2000/09/11 00:26:11
@@ -95,6 +95,7 @@ the Free Software Foundation, 59 Temple 
 #include "output.h"  /* Must follow tree.h so TREE_CODE is defined! */
 #include "convert.h"
 #include "ggc.h"
+#include "defaults.h"
 #endif	/* FFECOM_targetCURRENT == FFECOM_targetGCC */
 
 #define FFECOM_GCC_INCLUDE 1	/* Enable -I. */
===================================================================
Index: f/com.h
--- f/com.h	2000/08/23 21:16:19	1.18
+++ f/com.h	2000/09/11 00:26:11
@@ -84,49 +84,6 @@ the Free Software Foundation, 59 Temple 
    to build the libf2c with which g77-generated code is linked, or there
    will probably be bugs, some of them difficult to detect or even trigger.  */
 
-/* Do we need int (for 32-bit or 64-bit systems) or long (16-bit or
-   normally 32-bit) for f2c-type integers? */
-
-#ifndef BITS_PER_WORD
-#define BITS_PER_WORD 32
-#endif
-
-#ifndef CHAR_TYPE_SIZE
-#define CHAR_TYPE_SIZE BITS_PER_UNIT
-#endif
-
-#ifndef SHORT_TYPE_SIZE
-#define SHORT_TYPE_SIZE (BITS_PER_UNIT * MIN ((UNITS_PER_WORD + 1) / 2, 2))
-#endif
-
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_TYPE_SIZE
-#define LONG_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef LONG_LONG_TYPE_SIZE
-#define LONG_LONG_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef WCHAR_UNSIGNED
-#define WCHAR_UNSIGNED 0
-#endif
-
-#ifndef FLOAT_TYPE_SIZE
-#define FLOAT_TYPE_SIZE BITS_PER_WORD
-#endif
-
-#ifndef DOUBLE_TYPE_SIZE
-#define DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
-#ifndef LONG_DOUBLE_TYPE_SIZE
-#define LONG_DOUBLE_TYPE_SIZE (BITS_PER_WORD * 2)
-#endif
-
 /* The C front-end provides __g77_integer and __g77_uinteger types so that
    the appropriately-sized signed and unsigned integer types are available
    for libf2c.  If you change this, also the definitions of those types
===================================================================
Index: java/decl.c
--- java/decl.c	2000/08/17 21:50:48	1.70
+++ java/decl.c	2000/09/11 00:26:11
@@ -54,10 +54,6 @@ static tree create_primitive_vtable PARA
    before static field references.  */
 extern int always_initialize_class_p;
 
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
 /* The DECL_MAP is a mapping from (index, type) to a decl node.
    If index < max_locals, it is the index of a local variable.
    if index >= max_locals, then index-max_locals is a stack slot.
===================================================================
Index: java/expr.c
--- java/expr.c	2000/08/29 16:43:31	1.83
+++ java/expr.c	2000/09/11 00:26:11
@@ -984,10 +984,6 @@ expand_java_pushc (ival, type)
   push_value (value);
 }
 
-#ifndef INT_TYPE_SIZE
-#define INT_TYPE_SIZE BITS_PER_WORD
-#endif
-
 static void
 expand_java_return (type)
      tree type;

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]