diff options
Diffstat (limited to 'gcc/tree-gimple.h')
-rw-r--r-- | gcc/tree-gimple.h | 78 |
1 files changed, 40 insertions, 38 deletions
diff --git a/gcc/tree-gimple.h b/gcc/tree-gimple.h index 29352a54b81..98f46951af4 100644 --- a/gcc/tree-gimple.h +++ b/gcc/tree-gimple.h @@ -42,45 +42,45 @@ extern void annotate_all_with_locus (tree *, location_t); underlying nodes are also of the right form. */ /* Returns true iff T is a valid GIMPLE statement. */ -bool is_gimple_stmt (tree); +extern bool is_gimple_stmt (tree); /* Returns true iff TYPE is a valid type for a scalar register variable. */ -bool is_gimple_reg_type (tree); +extern bool is_gimple_reg_type (tree); /* Returns true iff T is a scalar register variable. */ -bool is_gimple_reg (tree); +extern bool is_gimple_reg (tree); /* Returns true iff T is any sort of variable. */ -bool is_gimple_variable (tree); +extern bool is_gimple_variable (tree); /* Returns true iff T is a variable or an INDIRECT_REF (of a variable). */ -bool is_gimple_min_lval (tree); +extern bool is_gimple_min_lval (tree); /* Returns true iff T is an lvalue other than an INDIRECT_REF. */ -bool is_gimple_addr_expr_arg (tree); +extern bool is_gimple_addr_expr_arg (tree); /* Returns true iff T is any valid GIMPLE lvalue. */ -bool is_gimple_lvalue (tree); +extern bool is_gimple_lvalue (tree); /* Returns true iff T is a GIMPLE restricted function invariant. */ -bool is_gimple_min_invariant (tree); +extern bool is_gimple_min_invariant (tree); /* Returns true iff T is a GIMPLE rvalue. */ -bool is_gimple_val (tree); +extern bool is_gimple_val (tree); /* Returns true iff T is a valid rhs for a MODIFY_EXPR. */ -bool is_gimple_rhs (tree); +extern bool is_gimple_rhs (tree); /* Returns true iff T is a valid if-statement condition. */ -bool is_gimple_condexpr (tree); +extern bool is_gimple_condexpr (tree); /* Returns true iff T is a type conversion. */ -bool is_gimple_cast (tree); +extern bool is_gimple_cast (tree); /* Returns true iff T is a valid CONSTRUCTOR element (either an rvalue or another CONSTRUCTOR). */ -bool is_gimple_constructor_elt (tree); +extern bool is_gimple_constructor_elt (tree); /* Returns true iff T is a variable that does not need to live in memory. */ -bool is_gimple_non_addressable (tree t); +extern bool is_gimple_non_addressable (tree t); /* If T makes a function call, returns the CALL_EXPR operand. */ -tree get_call_expr_in (tree t); +extern tree get_call_expr_in (tree t); -void recalculate_side_effects (tree); +extern void recalculate_side_effects (tree); -void append_to_compound_expr (tree, tree *); +extern void append_to_compound_expr (tree, tree *); /* FIXME we should deduce this from the predicate. */ typedef enum fallback_t { @@ -98,29 +98,31 @@ enum gimplify_status { GS_ALL_DONE = 1 /* The expression is fully gimplified. */ }; -enum gimplify_status gimplify_expr (tree *, tree *, tree *, - bool (*) (tree), fallback_t); -void gimplify_stmt (tree *); -void gimplify_to_stmt_list (tree *); -void gimplify_body (tree *, tree); -void push_gimplify_context (void); -void pop_gimplify_context (tree); -void gimplify_and_add (tree, tree *); +extern enum gimplify_status gimplify_expr (tree *, tree *, tree *, + bool (*) (tree), fallback_t); +extern tree gimplify_type_sizes (tree); +extern void gimplify_one_sizepos (tree *, tree *); +extern void gimplify_stmt (tree *); +extern void gimplify_to_stmt_list (tree *); +extern void gimplify_body (tree *, tree); +extern void push_gimplify_context (void); +extern void pop_gimplify_context (tree); +extern void gimplify_and_add (tree, tree *); /* Miscellaneous helpers. */ -tree get_base_address (tree t); -void gimple_add_tmp_var (tree); -tree gimple_current_bind_expr (void); -void gimple_push_bind_expr (tree); -void gimple_pop_bind_expr (void); -void unshare_all_trees (tree); -tree voidify_wrapper_expr (tree, tree); -tree gimple_build_eh_filter (tree, tree, tree); -tree build_and_jump (tree *); -tree alloc_stmt_list (void); -void free_stmt_list (tree); -tree force_labels_r (tree *, int *, void *); -enum gimplify_status gimplify_va_arg_expr (tree *, tree *, tree *); +extern tree get_base_address (tree t); +extern void gimple_add_tmp_var (tree); +extern tree gimple_current_bind_expr (void); +extern void gimple_push_bind_expr (tree); +extern void gimple_pop_bind_expr (void); +extern void unshare_all_trees (tree); +extern tree voidify_wrapper_expr (tree, tree); +extern tree gimple_build_eh_filter (tree, tree, tree); +extern tree build_and_jump (tree *); +extern tree alloc_stmt_list (void); +extern void free_stmt_list (tree); +extern tree force_labels_r (tree *, int *, void *); +extern enum gimplify_status gimplify_va_arg_expr (tree *, tree *, tree *); /* In tree-nested.c. */ extern void lower_nested_functions (tree); |