diff options
author | Bryce McKinlay <bryce@waitaki.otago.ac.nz> | 2001-11-22 02:33:02 +0000 |
---|---|---|
committer | Bryce McKinlay <bryce@gcc.gnu.org> | 2001-11-22 02:33:02 +0000 |
commit | 89d684bba353ee89c83c51a8cffc1f1cf5366ad5 (patch) | |
tree | 0e638461639b9ee591262162e137dc8d4432891b /gcc/tree.h | |
parent | 4617e3b52be023a28be288988fa0b299aefdc97b (diff) | |
download | gcc-89d684bba353ee89c83c51a8cffc1f1cf5366ad5.zip gcc-89d684bba353ee89c83c51a8cffc1f1cf5366ad5.tar.gz gcc-89d684bba353ee89c83c51a8cffc1f1cf5366ad5.tar.bz2 |
tree-dump.c: Rename from c-dump.c.
* tree-dump.c: Rename from c-dump.c. Include c-tree.h, not c-common.h.
(lang_type_quals): Declare.
(dequeue_and_dump): Use lang_hooks.tree_dump.type_quals function to
retrieve language-specific qualifiers for a type node, instead of
C_TYPE_QUALS. Likewise for lang_hooks.tree_dump.dump_tree instead of
lang_dump_tree.
* tree-dump.h: Rename from c-dump.h.
* c-common.h (C_TYPE_QUALS): Removed.
Move declarations for tree-dump.c interface to...
* tree.h: ... here. Remove lang_dump_tree.
* langhooks.h (struct lang_hooks_for_tree_dump): New.
(struct lang_hooks): Add tree_dump hooks.
* langhooks.c (lhd_tree_dump_dump_tree): New function.
(lhd_tree_dump_type_quals): New function.
* langhooks-def.h (lhd_tree_dump_dump_tree, lhd_tree_dump_type_quals):
Declare.
(LANG_HOOKS_INITIALIZER): Add tree_dump hooks.
* Makefile.in: Move tree-dump.o to language-independent back-end.
cp:
* cp-tree.h (CP_TYPE_QUALS): Removed.
* decl.c (cxx_init_decl_processing): Don't set lang_dump_tree.
* cp-lang.c: Set LANG_HOOKS_TREE_DUMP_DUMP_TREE_FN and
LANG_HOOKS_TREE_DUMP_TYPE_QUALS_FN.
* dump.c (cp_dump_tree): Use void* dump_info argument to match
lang-hooks prototype.
* call.c, cp-tree.h, cvt.c, decl.c, init.c, mangle.c, method.c, pt.c,
rtti.c, semantics.c, tree.c, typeck.c, typeck2.c: All references to
CP_TYPE_QUALS changed to cp_type_quals.
* Make-lang.in: References to c-dump.h changed to tree-dump.h.
(CXX_C_OBJS): Remove c-dump.o.
From-SVN: r47257
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 31 |
1 files changed, 31 insertions, 0 deletions
@@ -3059,6 +3059,37 @@ extern void dwarf2out_return_reg PARAMS ((const char *, unsigned)); typedef tree (*walk_tree_fn) PARAMS ((tree *, int *, void *)); +/* In tree-dump.c */ + +/* Different tree dump places. When you add new tree dump places, + extend the DUMP_FILES array in tree-dump.c */ +enum tree_dump_index +{ + TDI_all, /* dump the whole translation unit */ + TDI_class, /* dump class hierarchy */ + TDI_original, /* dump each function before optimizing it */ + TDI_optimized, /* dump each function after optimizing it */ + TDI_inlined, /* dump each function after inlining + within it. */ + TDI_end +}; + +/* Bit masks to control tree dumping. Not all values are applicable to + all tree dumps. Add new ones at the end. When you define new + values, extend the DUMP_OPTIONS array in tree-dump.c */ +#define TDF_ADDRESS (1 << 0) /* dump node addresses */ +#define TDF_SLIM (1 << 1) /* don't go wild following links */ + +typedef struct dump_info *dump_info_p; + +extern int dump_flag PARAMS ((dump_info_p, int, tree)); +extern int dump_enabled_p PARAMS ((enum tree_dump_index)); +extern FILE *dump_begin PARAMS ((enum tree_dump_index, int *)); +extern void dump_end PARAMS ((enum tree_dump_index, FILE *)); +extern void dump_node PARAMS ((tree, int, FILE *)); +extern int dump_switch_p PARAMS ((const char *)); +extern const char *dump_flag_name PARAMS ((enum tree_dump_index)); + /* Redefine abort to report an internal error w/o coredump, and reporting the location of the error in the source file. This logic |