From 33c9159e09fb29cd6c47e076c6a2006a544884a9 Mon Sep 17 00:00:00 2001 From: Aldy Hernandez Date: Tue, 11 Apr 2006 01:36:50 +0000 Subject: 20060410.c: New. PR/21391 * testsuite/gcc.dg/20060410.c: New. * dwarf2out.c (struct die_struct): Add die_perennial_p field. (premark_used_types_helper): New. (premark_used_types): New. (gen_subprogram_die): Call premark_used_types. (prune_unused_types_walk): Do not prune perennial dies. * function.c (used_types_insert): New. * function.h (struct function): Add used_types_hash field. (used_types_insert): Add prototype. * Makefile.in (FUNCTION_H): Depend on HASHTAB_H. * c-parser.c (c_parser_cast_expression): Save casted types in used types hash table. From-SVN: r112845 --- gcc/function.h | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'gcc/function.h') diff --git a/gcc/function.h b/gcc/function.h index 4a60eb2d705..282e04c1047 100644 --- a/gcc/function.h +++ b/gcc/function.h @@ -23,6 +23,7 @@ Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA #define GCC_FUNCTION_H #include "tree.h" +#include "hashtab.h" struct var_refs_queue GTY(()) { @@ -312,6 +313,9 @@ struct function GTY(()) /* Language-specific code can use this to store whatever it likes. */ struct language_function * language; + /* Used types hash table. */ + htab_t GTY ((param_is (union tree_node))) used_types_hash; + /* For reorg. */ /* If some insns can be deferred to the delay slots of the epilogue, the @@ -566,4 +570,6 @@ extern bool pass_by_reference (CUMULATIVE_ARGS *, enum machine_mode, extern bool reference_callee_copied (CUMULATIVE_ARGS *, enum machine_mode, tree, bool); +extern void used_types_insert (tree, struct function *); + #endif /* GCC_FUNCTION_H */ -- cgit v1.2.1