tree-flow.h (get_var_ann): Don't declare.
* tree-flow.h (get_var_ann): Don't declare. * tree-flow-inline.h (get_var_ann): Remove. (set_is_used): Use var_ann, not get_var_ann. * tree-dfa.c (add_referenced_var): Inline body of get_var_ann. * tree-profile.c (gimple_gen_edge_profiler): Call find_referenced_var_in. (gimple_gen_interval_profiler): Ditto. (gimple_gen_pow2_profiler): Ditto. (gimple_gen_one_value_profiler): Ditto. (gimple_gen_average_profiler): Ditto. (gimple_gen_ior_profiler): Ditto. (gimple_gen_ic_profiler): Ditto plus call add_referenced_var. (gimple_gen_ic_func_profiler): Call add_referenced_var. * tree-mudflap.c (execute_mudflap_function_ops): Call add_referenced_var. From-SVN: r179618
This commit is contained in:
parent
5847ec9338
commit
07f5041085
@ -1,3 +1,21 @@
|
||||
2011-10-06 Michael Matz <matz@suse.de>
|
||||
|
||||
* tree-flow.h (get_var_ann): Don't declare.
|
||||
* tree-flow-inline.h (get_var_ann): Remove.
|
||||
(set_is_used): Use var_ann, not get_var_ann.
|
||||
* tree-dfa.c (add_referenced_var): Inline body of get_var_ann.
|
||||
* tree-profile.c (gimple_gen_edge_profiler): Call
|
||||
find_referenced_var_in.
|
||||
(gimple_gen_interval_profiler): Ditto.
|
||||
(gimple_gen_pow2_profiler): Ditto.
|
||||
(gimple_gen_one_value_profiler): Ditto.
|
||||
(gimple_gen_average_profiler): Ditto.
|
||||
(gimple_gen_ior_profiler): Ditto.
|
||||
(gimple_gen_ic_profiler): Ditto plus call add_referenced_var.
|
||||
(gimple_gen_ic_func_profiler): Call add_referenced_var.
|
||||
* tree-mudflap.c (execute_mudflap_function_ops): Call
|
||||
add_referenced_var.
|
||||
|
||||
2011-10-06 Jakub Jelinek <jakub@redhat.com>
|
||||
|
||||
* tree-vect-patterns.c (vect_handle_widen_mult_by_const): For lhs
|
||||
|
@ -580,8 +580,9 @@ set_default_def (tree var, tree def)
|
||||
bool
|
||||
add_referenced_var (tree var)
|
||||
{
|
||||
get_var_ann (var);
|
||||
gcc_assert (DECL_P (var));
|
||||
if (!*DECL_VAR_ANN_PTR (var))
|
||||
create_var_ann (var);
|
||||
|
||||
/* Insert VAR into the referenced_vars hash table if it isn't present. */
|
||||
if (referenced_var_check_and_insert (var))
|
||||
|
@ -145,16 +145,6 @@ var_ann (const_tree t)
|
||||
return p ? *p : NULL;
|
||||
}
|
||||
|
||||
/* Return the variable annotation for T, which must be a _DECL node.
|
||||
Create the variable annotation if it doesn't exist. */
|
||||
static inline var_ann_t
|
||||
get_var_ann (tree var)
|
||||
{
|
||||
var_ann_t *p = DECL_VAR_ANN_PTR (var);
|
||||
gcc_checking_assert (p);
|
||||
return *p ? *p : create_var_ann (var);
|
||||
}
|
||||
|
||||
/* Get the number of the next statement uid to be allocated. */
|
||||
static inline unsigned int
|
||||
gimple_stmt_max_uid (struct function *fn)
|
||||
@ -568,7 +558,7 @@ phi_arg_index_from_use (use_operand_p use)
|
||||
static inline void
|
||||
set_is_used (tree var)
|
||||
{
|
||||
var_ann_t ann = get_var_ann (var);
|
||||
var_ann_t ann = var_ann (var);
|
||||
ann->used = true;
|
||||
}
|
||||
|
||||
|
@ -278,7 +278,6 @@ typedef struct immediate_use_iterator_d
|
||||
typedef struct var_ann_d *var_ann_t;
|
||||
|
||||
static inline var_ann_t var_ann (const_tree);
|
||||
static inline var_ann_t get_var_ann (tree);
|
||||
static inline void update_stmt (gimple);
|
||||
static inline int get_lineno (const_gimple);
|
||||
|
||||
|
@ -418,6 +418,10 @@ execute_mudflap_function_ops (void)
|
||||
|
||||
push_gimplify_context (&gctx);
|
||||
|
||||
add_referenced_var (mf_cache_array_decl);
|
||||
add_referenced_var (mf_cache_shift_decl);
|
||||
add_referenced_var (mf_cache_mask_decl);
|
||||
|
||||
/* In multithreaded mode, don't cache the lookup cache parameters. */
|
||||
if (! flag_mudflap_threads)
|
||||
mf_decl_cache_locals ();
|
||||
|
@ -224,6 +224,7 @@ gimple_gen_edge_profiler (int edgeno, edge e)
|
||||
one = build_int_cst (gcov_type_node, 1);
|
||||
stmt1 = gimple_build_assign (gcov_type_tmp_var, ref);
|
||||
gimple_assign_set_lhs (stmt1, make_ssa_name (gcov_type_tmp_var, stmt1));
|
||||
find_referenced_vars_in (stmt1);
|
||||
stmt2 = gimple_build_assign_with_ops (PLUS_EXPR, gcov_type_tmp_var,
|
||||
gimple_assign_lhs (stmt1), one);
|
||||
gimple_assign_set_lhs (stmt2, make_ssa_name (gcov_type_tmp_var, stmt2));
|
||||
@ -270,6 +271,7 @@ gimple_gen_interval_profiler (histogram_value value, unsigned tag, unsigned base
|
||||
val = prepare_instrumented_value (&gsi, value);
|
||||
call = gimple_build_call (tree_interval_profiler_fn, 4,
|
||||
ref_ptr, val, start, steps);
|
||||
find_referenced_vars_in (call);
|
||||
gsi_insert_before (&gsi, call, GSI_NEW_STMT);
|
||||
}
|
||||
|
||||
@ -290,6 +292,7 @@ gimple_gen_pow2_profiler (histogram_value value, unsigned tag, unsigned base)
|
||||
true, NULL_TREE, true, GSI_SAME_STMT);
|
||||
val = prepare_instrumented_value (&gsi, value);
|
||||
call = gimple_build_call (tree_pow2_profiler_fn, 2, ref_ptr, val);
|
||||
find_referenced_vars_in (call);
|
||||
gsi_insert_before (&gsi, call, GSI_NEW_STMT);
|
||||
}
|
||||
|
||||
@ -310,6 +313,7 @@ gimple_gen_one_value_profiler (histogram_value value, unsigned tag, unsigned bas
|
||||
true, NULL_TREE, true, GSI_SAME_STMT);
|
||||
val = prepare_instrumented_value (&gsi, value);
|
||||
call = gimple_build_call (tree_one_value_profiler_fn, 2, ref_ptr, val);
|
||||
find_referenced_vars_in (call);
|
||||
gsi_insert_before (&gsi, call, GSI_NEW_STMT);
|
||||
}
|
||||
|
||||
@ -340,9 +344,12 @@ gimple_gen_ic_profiler (histogram_value value, unsigned tag, unsigned base)
|
||||
|
||||
tmp1 = create_tmp_reg (ptr_void, "PROF");
|
||||
stmt1 = gimple_build_assign (ic_gcov_type_ptr_var, ref_ptr);
|
||||
find_referenced_vars_in (stmt1);
|
||||
stmt2 = gimple_build_assign (tmp1, unshare_expr (value->hvalue.value));
|
||||
gimple_assign_set_lhs (stmt2, make_ssa_name (tmp1, stmt2));
|
||||
find_referenced_vars_in (stmt2);
|
||||
stmt3 = gimple_build_assign (ic_void_ptr_var, gimple_assign_lhs (stmt2));
|
||||
add_referenced_var (ic_void_ptr_var);
|
||||
|
||||
gsi_insert_before (&gsi, stmt1, GSI_SAME_STMT);
|
||||
gsi_insert_before (&gsi, stmt2, GSI_SAME_STMT);
|
||||
@ -378,9 +385,11 @@ gimple_gen_ic_func_profiler (void)
|
||||
counter_ptr = force_gimple_operand_gsi (&gsi, ic_gcov_type_ptr_var,
|
||||
true, NULL_TREE, true,
|
||||
GSI_SAME_STMT);
|
||||
add_referenced_var (ic_gcov_type_ptr_var);
|
||||
ptr_var = force_gimple_operand_gsi (&gsi, ic_void_ptr_var,
|
||||
true, NULL_TREE, true,
|
||||
GSI_SAME_STMT);
|
||||
add_referenced_var (ic_void_ptr_var);
|
||||
tree_uid = build_int_cst (gcov_type_node, current_function_funcdef_no);
|
||||
stmt1 = gimple_build_call (tree_indirect_call_profiler_fn, 4,
|
||||
counter_ptr, tree_uid, cur_func, ptr_var);
|
||||
@ -429,6 +438,7 @@ gimple_gen_average_profiler (histogram_value value, unsigned tag, unsigned base)
|
||||
true, GSI_SAME_STMT);
|
||||
val = prepare_instrumented_value (&gsi, value);
|
||||
call = gimple_build_call (tree_average_profiler_fn, 2, ref_ptr, val);
|
||||
find_referenced_vars_in (call);
|
||||
gsi_insert_before (&gsi, call, GSI_NEW_STMT);
|
||||
}
|
||||
|
||||
@ -449,6 +459,7 @@ gimple_gen_ior_profiler (histogram_value value, unsigned tag, unsigned base)
|
||||
true, NULL_TREE, true, GSI_SAME_STMT);
|
||||
val = prepare_instrumented_value (&gsi, value);
|
||||
call = gimple_build_call (tree_ior_profiler_fn, 2, ref_ptr, val);
|
||||
find_referenced_vars_in (call);
|
||||
gsi_insert_before (&gsi, call, GSI_NEW_STMT);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user