i * configure.in: Don't put ${tm_file} into host_xm_file,

build_xm_file, or xm_file.  Do put tm-preds.h into tm_p_file.
	Take location of tm-preds.h into account when calculating
	tm_p_file_list.
	* configure: Regenerate.
	* mkconfig.sh: No need for separate TM_DEFINES and XM_DEFINES
	arguments.  Do not provide rtx, rtvec, tree, or GTY here.
	Remove special case code for tm_p.h and *config.h; add new
	special case code for tm.h and tconfig.h. Clean up a bit.

	* Makefile.in (tm_file, tm_file_list): New variables set from
	@-substitutions.
	(GCONFIG_H): Deleted.
	(GTM_H, TM_H): New.
	(CONFIG_H): Is now just config.h $(host_xm_file_list).
	(TM_P_H): Move up with the other mkconfig.sh-generated
	headers; don't mention tm-preds.h explicitly.
	(tm.h, cs-tm.h): New rule.
	(cs-config.h, cs-hconfig.h, cs-tconfig.h, cs-tm_p.h): Adjust
	invocations of mkconfig.sh for changes to that program.
	(mostlyclean): Delete print-rtl1.c.
	(clean): Delete tm.h.
	* Makefile.in, ada/Make-lang.in, cp/Make-lang.in,
	f/Make-lang.in, java/Make-lang.in, objc/Make-lang.in,
	treelang/Make-lang.in: Update dependencies for the files
	listed below.
	* mklibgcc.in:  Add 'coretypes.h $(TM_H)' to libgcc2_c_dep.

	* coretypes.h: New file.
	* system.h: #define malloc to xmalloc and realloc to xrealloc
	when FLEX_SCANNER or YYBISON is defined, independent of the
	value of GCC_VERSION.
	* alias.c, attribs.c, bb-reorder.c, bitmap.c, builtins.c,
	c-aux-info.c, c-common.c, c-convert.c, c-decl.c, c-dump.c,
	c-errors.c, c-format.c, c-lang.c, c-lex.c, c-objc-common.c,
	c-opts.c, c-parse.in, c-pragma.c, c-pretty-print.c,
	c-semantics.c, c-typeck.c, caller-save.c, calls.c, cfg.c,
	cfganal.c, cfgbuild.c, cfgcleanup.c, cfglayout.c, cfgloop.c,
	cfgrtl.c, collect2.c, combine.c, conflict.c, convert.c,
	cppdefault.c, cpperror.c, cppexp.c, cppfiles.c, cpphash.c,
	cppinit.c, cpplex.c, cpplib.c, cppmacro.c, cppmain.c,
	cppspec.c, cpptrad.c, crtstuff.c, cse.c, cselib.c, dbxout.c,
	debug.c, df.c, diagnostic.c, doloop.c, dominance.c,
	dummy-conditions.c, dwarf2asm.c, dwarf2out.c, dwarfout.c,
	emit-rtl.c, errors.c, et-forest.c, except.c, explow.c,
	expmed.c, expr.c, final.c, fix-header.c, flow.c, fold-const.c,
	function.c, gcc.c, gccspec.c, gcov-dump.c, gcov-iov.c, gcov.c,
	gcse.c, gen-protos.c, genattr.c, genattrtab.c, genautomata.c,
	gencheck.c, gencodes.c, genconditions.c, genconfig.c,
	genconstants.c, genemit.c, genextract.c, genflags.c,
	gengenrtl.c, gengtype-lex.l, gengtype-yacc.y, gengtype.c,
	genopinit.c, genoutput.c, genpeep.c, genpreds.c, genrecog.c,
	gensupport.c, ggc-common.c, ggc-none.c, ggc-page.c,
	ggc-simple.c, global.c, graph.c, haifa-sched.c, hashtable.c,
	hooks.c, ifcvt.c, integrate.c, intl.c, jump.c, langhooks.c,
	lcm.c, libgcc2.c, line-map.c, lists.c, local-alloc.c, loop.c,
	main.c, mbchar.c, mips-tdump.c, mips-tfile.c, mkdeps.c,
	optabs.c, params.c, predict.c, prefix.c, print-rtl.c,
	print-tree.c, profile.c, protoize.c, ra-build.c,
	ra-colorize.c, ra-debug.c, ra-rewrite.c, ra.c, read-rtl.c,
	real.c, recog.c, reg-stack.c, regclass.c, regmove.c,
	regrename.c, reload.c, reload1.c, reorg.c, resource.c,
	rtl-error.c, rtl.c, rtlanal.c, sbitmap.c, scan-decls.c,
	scan.c, sched-deps.c, sched-ebb.c, sched-rgn.c, sched-vis.c,
	sdbout.c, sibcall.c, simplify-rtx.c, ssa-ccp.c, ssa-dce.c,
	ssa.c, stmt.c, stor-layout.c, stringpool.c, timevar.c,
	tlink.c, toplev.c, tracer.c, tree-dump.c, tree-inline.c,
	tree.c, unroll.c, varasm.c, varray.c, varray.h, vmsdbgout.c,
	xcoffout.c, config/darwin-c.c, config/darwin.c,
	config/fp-bit.c, config/alpha/alpha.c, config/alpha/vms-cc.c,
	config/alpha/vms-ld.c, config/arc/arc.c, config/arm/arm.c,
	config/arm/pe.c, config/avr/avr.c, config/c4x/c4x-c.c,
	config/c4x/c4x.c, config/cris/cris.c, config/d30v/d30v.c,
	config/dsp16xx/dsp16xx.c, config/fr30/fr30.c,
	config/frv/frv.c, config/h8300/h8300.c, config/i370/i370-c.c,
	config/i370/i370.c, config/i386/i386.c, config/i386/winnt.c,
	config/i960/i960-c.c, config/i960/i960.c,
	config/ia64/ia64-c.c, config/ia64/ia64.c, config/ip2k/ip2k.c,
	config/m32r/m32r.c, config/m68hc11/m68hc11.c,
	config/m68k/m68k.c, config/m88k/m88k.c, config/mcore/mcore.c,
	config/mips/irix6-libc-compat.c, config/mips/mips.c,
	config/mmix/mmix.c, config/mn10200/mn10200.c,
	config/mn10300/mn10300.c, config/ns32k/ns32k.c,
	config/pa/pa.c, config/pdp11/pdp11.c, config/romp/romp.c,
	config/rs6000/rs6000-c.c, config/rs6000/rs6000.c,
	config/s390/s390.c, config/sh/sh.c, config/sparc/gmon-sol2.c,
	config/sparc/sparc.c, config/stormy16/stormy16.c,
	config/v850/v850-c.c, config/v850/v850.c, config/vax/vax.c,
	config/xtensa/xtensa.c, objc/objc-act.c, objc/objc-lang.c:
	Include coretypes.h and tm.h.

	* genattrtab.c, genconditions.c, genemit.c, genextract.c,
	gengenrtl.c, gengtype.c, genopinit.c, genoutput.c, genpeep.c,
	genrecog.c: Include coretypes.h and tm.h from the file
	generated by this program.

	* unwind-dw2-fde-darwin.c, unwind-dw2-fde-glibc.c,
	unwind-dw2-fde.c, unwind-dw2.c, unwind-sjlj.c: Include
	coretypes.h and tm.h, and tsystem.h when not already included.
	No need to include stddef.h nor stdlib.h.

	* ada/cuintp.c, ada/decl.c, ada/deftarg.c, ada/misc.c,
	ada/targtyps.c, ada/trans.c, ada/utils.c, ada/utils2.c:
	Include coretypes.h and tm.h, and system.h when not already
	included.

	* cp/call.c, cp/class.c, cp/cp-lang.c, cp/cvt.c, cp/cxxfilt.c,
	cp/decl.c, cp/decl2.c, cp/dump.c, cp/error.c, cp/except.c,
	cp/expr.c, cp/friend.c, cp/g++spec.c, cp/init.c, cp/lex.c,
	cp/mangle.c, cp/method.c, cp/optimize.c, cp/parse.y, cp/pt.c,
	cp/ptree.c, cp/repo.c, cp/rtti.c, cp/search.c, cp/semantics.c,
	cp/spew.c, cp/tree.c, cp/typeck.c, cp/typeck2.c:
	Include coretypes.h and tm.h.

	* f/proj.h, f/ansify.c, f/g77spec.c, f/intdoc.c:
	Include coretypes.h and tm.h.

	* fixinc/fixlib.h: Include coretypes.h and tm.h.  Do not
	include auto-host.h or ansidecl.h/
	* fixinc/server.h: Do not include stdio.h, unistd.h, or fixlib.h.
	* fixinc/procopen.c: Include server.h after fixlib.h.  Do not
	include auto-host.h, ansidecl.h, or system.h.
	* fixinc/server.c: Likewise.  Also, do not include signal.h,
	and do not redefine volatile.

	* java/boehm.c, java/buffer.c, java/builtins.c,
	java/check-init.c, java/class.c, java/constants.c,
	java/decl.c, java/except.c, java/expr.c, java/gjavah.c,
	java/jcf-depend.c, java/jcf-dump.c, java/jcf-io.c,
	java/jcf-parse.c, java/jcf-path.c, java/jcf-write.c,
	java/jv-scan.c, java/jvgenmain.c, java/jvspec.c, java/lang.c,
	java/mangle.c, java/mangle_name.c, java/parse-scan.y,
	java/parse.y, java/typeck.c, java/verify.c, java/xref.c,
	java/zextract.c: Include coretypes.h and tm.h.

	* treelang/lex.l: Move "%{" below copyright notice; get rid of
	"/*" embedded in comment.  Do not #undef IN_GCC; do not
	include stdio.h, memory.h, or ansidecl.h; do not include
	config.h twice.  Do include coretypes.h and tm.h.
	* treelang/parse.y: Do not #undef IN_GCC, provide bogus
	definitions of tree and rtx typedefs, or include stdio.h,
	stdlib.h, string.h, or ansidecl.h. Do include coretypes.h and
	tm.h.
	* treelang/tree1.c: Do not include ansidecl.h, stdlib.h,
	unistd.h, ctype.h, stdarg.h, string.h, or stdio.h.  Do include
	coretypes.h and tm.h.
	* treelang/treetree.c: Do not include stdlib.h, unistd.h,
	safe-ctype.h, errno.h. stdarg.h, limits.h, string.h, fcntl.h,
	getopt.h. stdio.h, or ansidecl.h.  Do include coretypes.h and
	tm.h.

[[Split portion of a mixed commit.]]

From-SVN: r59673.2
This commit is contained in:
Zack Weinberg 2002-12-01 05:43:14 +00:00
parent 328de7c2f1
commit 1886c47420
2 changed files with 61 additions and 2 deletions

58
gcc/coretypes.h Normal file
View File

@ -0,0 +1,58 @@
/* GCC core type declarations.
Copyright (C) 2002 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
Software Foundation; either version 2, or (at your option) any later
version.
GCC is distributed in the hope that it will be useful, but WITHOUT ANY
WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
for more details.
You should have received a copy of the GNU General Public License
along with GCC; see the file COPYING. If not, write to the Free
Software Foundation, 59 Temple Place - Suite 330, Boston, MA
02111-1307, USA. */
/* Provide forward declarations of core types which are referred to by
most of the compiler. This allows header files to use these types
(e.g. in function prototypes) without concern for whether the full
definitions are visible. Some other declarations that need to be
universally visible are here, too.
In the context of tconfig.h, most of these have special definitions
which prevent them from being used except in further type
declarations. This is a kludge; the right thing is to avoid
including the "tm.h" header set in the context of tconfig.h, but
we're not there yet. */
#ifndef GCC_CORETYPES_H
#define GCC_CORETYPES_H
#define GTY(x) /* nothing - marker for gengtype */
#ifndef USED_FOR_TARGET
struct rtx_def;
typedef struct rtx_def *rtx;
struct rtvec_def;
typedef struct rtvec_def *rtvec;
union tree_node;
typedef union tree_node *tree;
#else
struct _dont_use_rtx_here_;
struct _dont_use_rtvec_here_;
union _dont_use_tree_here_;
#define rtx struct _dont_use_rtx_here_ *
#define rtvec struct _dont_use_rtvec_here *
#define tree union _dont_use_tree_here_ *
#endif
#endif /* coretypes.h */

View File

@ -27,8 +27,9 @@
/* Locate the FDE entry for a given address, using Darwin's keymgr support. */
#include "tconfig.h"
#include <string.h>
#include <stdlib.h>
#include "tsystem.h"
#include "coretypes.h"
#include "tm.h"
#include "dwarf2.h"
#include "unwind.h"
#define NO_BASE_OF_ENCODED_VALUE