diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/emit-rtl.c | 2 | ||||
-rw-r--r-- | gcc/ggc.h | 10 | ||||
-rw-r--r-- | gcc/integrate.h | 8 | ||||
-rw-r--r-- | gcc/langhooks.h | 41 | ||||
-rw-r--r-- | gcc/output.h | 29 | ||||
-rw-r--r-- | gcc/print-tree.c | 2 | ||||
-rw-r--r-- | gcc/real.h | 2 | ||||
-rw-r--r-- | gcc/reload1.c | 6 | ||||
-rw-r--r-- | gcc/toplev.h | 70 | ||||
-rw-r--r-- | gcc/varray.h | 8 |
10 files changed, 74 insertions, 104 deletions
diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index cb05ea8daad..6a1f7c57092 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -206,7 +206,7 @@ int split_branch_probability = -1; static hashval_t const_int_htab_hash (const void *x) { - return (hashval_t) INTVAL ((struct rtx_def *) x); + return (hashval_t) INTVAL ((rtx) x); } /* Returns nonzero if the value represented by X (which is really a diff --git a/gcc/ggc.h b/gcc/ggc.h index b1391a80457..2c56a3c525e 100644 --- a/gcc/ggc.h +++ b/gcc/ggc.h @@ -197,14 +197,14 @@ extern void *ggc_realloc (void *, size_t); extern void *ggc_calloc (size_t, size_t); #define ggc_alloc_rtx(NSLOTS) \ - ((struct rtx_def *) ggc_alloc (sizeof (struct rtx_def) \ - + ((NSLOTS) - 1) * sizeof (rtunion))) + ((rtx) ggc_alloc (sizeof (struct rtx_def) \ + + ((NSLOTS) - 1) * sizeof (rtunion))) #define ggc_alloc_rtvec(NELT) \ - ((struct rtvec_def *) ggc_alloc (sizeof (struct rtvec_def) \ - + ((NELT) - 1) * sizeof (rtx))) + ((rtvec) ggc_alloc (sizeof (struct rtvec_def) \ + + ((NELT) - 1) * sizeof (rtx))) -#define ggc_alloc_tree(LENGTH) ((union tree_node *) ggc_alloc (LENGTH)) +#define ggc_alloc_tree(LENGTH) ((tree) ggc_alloc (LENGTH)) #define htab_create_ggc(SIZE, HASH, EQ, DEL) \ htab_create_alloc (SIZE, HASH, EQ, DEL, ggc_calloc, NULL) diff --git a/gcc/integrate.h b/gcc/integrate.h index f5fbaabba13..94bf2e738d4 100644 --- a/gcc/integrate.h +++ b/gcc/integrate.h @@ -40,7 +40,7 @@ struct inline_remap copy_rtx_and_substitute. */ int integrating; /* Definition of function be inlined. */ - union tree_node *fndecl; + tree fndecl; /* Place to put insns needed at start of function. */ rtx insns_at_start; /* Mapping from old BLOCKs to new BLOCKs. */ @@ -150,14 +150,12 @@ extern void allocate_initial_values (rtx *); /* Copy a declaration when one function is substituted inline into another. */ -extern union tree_node *copy_decl_for_inlining (union tree_node *, - union tree_node *, - union tree_node *); +extern tree copy_decl_for_inlining (tree, tree, tree); /* Check whether there's any attribute in a function declaration that makes the function uninlinable. Returns false if it finds any, true otherwise. */ -extern bool function_attribute_inlinable_p (union tree_node *); +extern bool function_attribute_inlinable_p (tree); extern void try_constants (rtx, struct inline_remap *); diff --git a/gcc/langhooks.h b/gcc/langhooks.h index 0ab10e05cbc..398ad55c802 100644 --- a/gcc/langhooks.h +++ b/gcc/langhooks.h @@ -33,36 +33,31 @@ typedef void (*lang_print_tree_hook) (FILE *, tree, int indent); struct lang_hooks_for_tree_inlining { - union tree_node *(*walk_subtrees) (union tree_node **, int *, - union tree_node *(*) - (union tree_node **, int *, void *), - void *, void *); - int (*cannot_inline_tree_fn) (union tree_node **); - int (*disregard_inline_limits) (union tree_node *); - union tree_node *(*add_pending_fn_decls) (void *, union tree_node *); - int (*tree_chain_matters_p) (union tree_node *); - int (*auto_var_in_fn_p) (union tree_node *, union tree_node *); - union tree_node *(*copy_res_decl_for_inlining) (union tree_node *, - union tree_node *, - union tree_node *, - void *, int *, tree); - int (*anon_aggr_type_p) (union tree_node *); - bool (*var_mod_type_p) (union tree_node *); - int (*start_inlining) (union tree_node *); - void (*end_inlining) (union tree_node *); - union tree_node *(*convert_parm_for_inlining) (union tree_node *, - union tree_node *, - union tree_node *); - int (*estimate_num_insns) (union tree_node *); + tree (*walk_subtrees) (tree *, int *, + tree (*) (tree *, int *, void *), + void *, void *); + int (*cannot_inline_tree_fn) (tree *); + int (*disregard_inline_limits) (tree); + tree (*add_pending_fn_decls) (void *, tree); + int (*tree_chain_matters_p) (tree); + int (*auto_var_in_fn_p) (tree, tree); + tree (*copy_res_decl_for_inlining) (tree, tree, tree, + void *, int *, tree); + int (*anon_aggr_type_p) (tree); + bool (*var_mod_type_p) (tree); + int (*start_inlining) (tree); + void (*end_inlining) (tree); + tree (*convert_parm_for_inlining) (tree, tree, tree); + int (*estimate_num_insns) (tree); }; struct lang_hooks_for_callgraph { /* Function passed as argument is needed and will be compiled. Lower the representation so the calls are explicit. */ - void (*lower_function) (union tree_node *); + void (*lower_function) (tree); /* Produce RTL for function passed as argument. */ - void (*expand_function) (union tree_node *); + void (*expand_function) (tree); }; /* Lang hooks for management of language-specific data or status diff --git a/gcc/output.h b/gcc/output.h index ac24c4b36a6..fc674502765 100644 --- a/gcc/output.h +++ b/gcc/output.h @@ -422,10 +422,10 @@ extern FILE *rtl_dump_file; #endif /* Nonnull if the insn currently being emitted was a COND_EXEC pattern. */ -extern struct rtx_def *current_insn_predicate; +extern rtx current_insn_predicate; /* Last insn processed by final_scan_insn. */ -extern struct rtx_def *current_output_insn; +extern rtx current_output_insn; /* Nonzero while outputting an `asm' with operands. This means that inconsistencies are the user's fault, so don't abort. @@ -473,25 +473,20 @@ extern unsigned int get_named_section_flags (const char *); extern bool set_named_section_flags (const char *, unsigned int); extern void named_section_flags (const char *, unsigned int); extern bool named_section_first_declaration (const char *); - -union tree_node; -extern unsigned int default_section_type_flags (union tree_node *, - const char *, int); -extern unsigned int default_section_type_flags_1 (union tree_node *, - const char *, int, int); +extern unsigned int default_section_type_flags (tree, const char *, int); +extern unsigned int default_section_type_flags_1 (tree, const char *, int, int); extern void default_no_named_section (const char *, unsigned int); extern void default_elf_asm_named_section (const char *, unsigned int); extern void default_coff_asm_named_section (const char *, unsigned int); extern void default_pe_asm_named_section (const char *, unsigned int); -extern void default_stabs_asm_out_destructor (struct rtx_def *, int); -extern void default_named_section_asm_out_destructor (struct rtx_def *, int); -extern void default_dtor_section_asm_out_destructor (struct rtx_def *, int); -extern void default_stabs_asm_out_constructor (struct rtx_def *, int); -extern void default_named_section_asm_out_constructor (struct rtx_def *, - int); -extern void default_ctor_section_asm_out_constructor (struct rtx_def *, int); +extern void default_stabs_asm_out_destructor (rtx, int); +extern void default_named_section_asm_out_destructor (rtx, int); +extern void default_dtor_section_asm_out_destructor (rtx, int); +extern void default_stabs_asm_out_constructor (rtx, int); +extern void default_named_section_asm_out_constructor (rtx, int); +extern void default_ctor_section_asm_out_constructor (rtx, int); extern void default_select_section (tree, int, unsigned HOST_WIDE_INT); extern void default_elf_select_section (tree, int, unsigned HOST_WIDE_INT); @@ -514,8 +509,8 @@ extern void file_end_indicate_exec_stack (void); extern bool default_valid_pointer_mode (enum machine_mode); /* Emit data for vtable gc for GNU binutils. */ -extern void assemble_vtable_entry (struct rtx_def *, HOST_WIDE_INT); -extern void assemble_vtable_inherit (struct rtx_def *, struct rtx_def *); +extern void assemble_vtable_entry (rtx, HOST_WIDE_INT); +extern void assemble_vtable_inherit (rtx, rtx); extern int default_address_cost (rtx); diff --git a/gcc/print-tree.c b/gcc/print-tree.c index ebf1a70f8a4..6d56d7e62fb 100644 --- a/gcc/print-tree.c +++ b/gcc/print-tree.c @@ -599,7 +599,7 @@ print_node (FILE *file, const char *prefix, tree node, int indent) indent_to (file, indent + 4); fprintf (file, "rtl %d ", i); if (TREE_OPERAND (node, i)) - print_rtl (file, (struct rtx_def *) TREE_OPERAND (node, i)); + print_rtl (file, (rtx) TREE_OPERAND (node, i)); else fprintf (file, "(nil)"); fprintf (file, "\n"); diff --git a/gcc/real.h b/gcc/real.h index 2b9a371f73e..dbce7bb54f4 100644 --- a/gcc/real.h +++ b/gcc/real.h @@ -333,7 +333,7 @@ extern REAL_VALUE_TYPE dconsthalf; /* Function to return a real value (not a tree node) from a given integer constant. */ -REAL_VALUE_TYPE real_value_from_int_cst (union tree_node *, union tree_node *); +REAL_VALUE_TYPE real_value_from_int_cst (tree, tree); /* Given a CONST_DOUBLE in FROM, store into TO the value it represents. */ #define REAL_VALUE_FROM_CONST_DOUBLE(to, from) \ diff --git a/gcc/reload1.c b/gcc/reload1.c index fadc6d30281..2e152de2d28 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -281,12 +281,6 @@ static char *reload_insn_firstobj; examine. */ struct insn_chain *reload_insn_chain; -#ifdef TREE_CODE -extern tree current_function_decl; -#else -extern union tree_node *current_function_decl; -#endif - /* List of all insns needing reloads. */ static struct insn_chain *insns_need_reload; diff --git a/gcc/toplev.h b/gcc/toplev.h index e9c7e0dec55..a36f9eb1670 100644 --- a/gcc/toplev.h +++ b/gcc/toplev.h @@ -26,19 +26,13 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #define skip_leading_substring(whole, part) \ (strncmp (whole, part, strlen (part)) ? NULL : whole + strlen (part)) -extern int toplev_main (unsigned int, const char **); -extern int read_integral_parameter (const char *, const char *, - const int); -extern void strip_off_ending (char *, int); -extern const char *trim_filename (const char *); -extern void _fatal_insn_not_found (struct rtx_def *, - const char *, int, - const char *) +extern int toplev_main (unsigned int, const char **); +extern int read_integral_parameter (const char *, const char *, const int); +extern void strip_off_ending (char *, int); +extern const char *trim_filename (const char *); +extern void _fatal_insn_not_found (rtx, const char *, int, const char *) ATTRIBUTE_NORETURN; -extern void _fatal_insn (const char *, - struct rtx_def *, - const char *, int, - const char *) +extern void _fatal_insn (const char *, rtx, const char *, int, const char *) ATTRIBUTE_NORETURN; #define fatal_insn(msgid, insn) \ @@ -59,35 +53,29 @@ extern void _fatal_insn (const char *, #else #define ATTRIBUTE_GCC_DIAG(m, n) ATTRIBUTE_NONNULL(m) #endif -extern void internal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2) +extern void internal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2) ATTRIBUTE_NORETURN; -extern void warning (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); -extern void error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); -extern void fatal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2) +extern void warning (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); +extern void error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); +extern void fatal_error (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2) ATTRIBUTE_NORETURN; -extern void pedwarn (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); -extern void sorry (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); -extern void inform (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); - -extern void rest_of_decl_compilation (union tree_node *, - const char *, int, int); -extern void rest_of_type_compilation (union tree_node *, int); -extern void rest_of_compilation (union tree_node *); - -extern void pedwarn_with_decl (union tree_node *, - const char *, ...); -extern void warning_with_decl (union tree_node *, - const char *, ...); -extern void error_with_decl (union tree_node *, - const char *, ...); - -extern void announce_function (union tree_node *); - -extern void error_for_asm (struct rtx_def *, - const char *, ...) ATTRIBUTE_GCC_DIAG(2,3); -extern void warning_for_asm (struct rtx_def *, - const char *, ...) ATTRIBUTE_GCC_DIAG(2,3); -extern void warn_deprecated_use (union tree_node *); +extern void pedwarn (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); +extern void sorry (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); +extern void inform (const char *, ...) ATTRIBUTE_GCC_DIAG(1,2); + +extern void rest_of_decl_compilation (tree, const char *, int, int); +extern void rest_of_type_compilation (tree, int); +extern void rest_of_compilation (tree); + +extern void pedwarn_with_decl (tree, const char *, ...); +extern void warning_with_decl (tree, const char *, ...); +extern void error_with_decl (tree, const char *, ...); + +extern void announce_function (tree); + +extern void error_for_asm (rtx, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3); +extern void warning_for_asm (rtx, const char *, ...) ATTRIBUTE_GCC_DIAG(2,3); +extern void warn_deprecated_use (tree); #ifdef BUFSIZ extern void output_quoted_string (FILE *, const char *); @@ -101,8 +89,8 @@ extern void fnotice (FILE *, const char *, ...) ATTRIBUTE_PRINTF_2; #endif -extern int wrapup_global_declarations (union tree_node **, int); -extern void check_global_declarations (union tree_node **, int); +extern int wrapup_global_declarations (tree *, int); +extern void check_global_declarations (tree *, int); /* A unique local time stamp, might be zero if none is available. */ extern unsigned local_tick; diff --git a/gcc/varray.h b/gcc/varray.h index ef5c6eef032..7cb9ff09855 100644 --- a/gcc/varray.h +++ b/gcc/varray.h @@ -50,7 +50,7 @@ struct const_equiv_data GTY(()) { pseudos that contain pointers into the replacement area allocated for this inline instance. These pseudos are then marked as being equivalent to the appropriate address and substituted if valid. */ - struct rtx_def *rtx; + rtx rtx; /* Record the valid age for each entry. The entry is invalid if its age is less than const_age. */ @@ -110,11 +110,11 @@ typedef union varray_data_tag GTY (()) { tag ("VARRAY_DATA_GENERIC"))) generic[1]; char *GTY ((length ("%0.num_elements"), tag ("VARRAY_DATA_CPTR"))) cptr[1]; - struct rtx_def *GTY ((length ("%0.num_elements"), + rtx GTY ((length ("%0.num_elements"), tag ("VARRAY_DATA_RTX"))) rtx[1]; - struct rtvec_def *GTY ((length ("%0.num_elements"), + rtvec GTY ((length ("%0.num_elements"), tag ("VARRAY_DATA_RTVEC"))) rtvec[1]; - union tree_node *GTY ((length ("%0.num_elements"), + tree GTY ((length ("%0.num_elements"), tag ("VARRAY_DATA_TREE"))) tree[1]; struct bitmap_head_def *GTY ((length ("%0.num_elements"), tag ("VARRAY_DATA_BITMAP"))) bitmap[1]; |