summaryrefslogtreecommitdiff
path: root/gcc/ssaexpand.h
diff options
context:
space:
mode:
authorMichael Matz <matz@suse.de>2009-04-27 12:16:00 +0000
committerMichael Matz <matz@gcc.gnu.org>2009-04-27 12:16:00 +0000
commite97809c61da551db637b6113095522795ca46f60 (patch)
tree7f62f8eda796cd4e483b1fb239fc73ab0b2e64f4 /gcc/ssaexpand.h
parent211ca15cb41d3ae362b6e0b01e47344a9b30d987 (diff)
downloadgcc-e97809c61da551db637b6113095522795ca46f60.tar.gz
ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap.
* ssaexpand.h (struct ssaexpand): Member 'values' is a bitmap. (get_gimple_for_ssa_name): Adjust, lookup using SSA_NAME_DEF_STMT. * tree-ssa-live.h: (find_replaceable_exprs): Return a bitmap. (dump_replaceable_exprs): Take a bitmap. * cfgexpand.c (gimple_cond_pred_to_tree): Handle bitmap instead of array. (expand_gimple_basic_block): Likewise. * tree-ssa-ter.c (struct temp_expr_table_d): Make replaceable_expressions member a bitmap. (free_temp_expr_table): Pass back and deal with bitmap, not gimple*. (mark_replaceable): Likewise. (find_replaceable_in_bb, dump_replaceable_exprs): Likewise. * tree-outof-ssa.c (remove_ssa_form): 'values' is a bitmap. From-SVN: r146837
Diffstat (limited to 'gcc/ssaexpand.h')
-rw-r--r--gcc/ssaexpand.h11
1 files changed, 5 insertions, 6 deletions
diff --git a/gcc/ssaexpand.h b/gcc/ssaexpand.h
index a42282d582f..95c55596a98 100644
--- a/gcc/ssaexpand.h
+++ b/gcc/ssaexpand.h
@@ -31,10 +31,9 @@ struct ssaexpand
/* The computed partitions of SSA names are stored here. */
var_map map;
- /* For a SSA name version V values[V] contains the gimple statement
- defining it iff TER decided that it should be forwarded, NULL
- otherwise. */
- gimple *values;
+ /* For an SSA name version V bit V is set iff TER decided that
+ its definition should be forwarded. */
+ bitmap values;
/* For a partition number I partition_to_pseudo[I] contains the
RTL expression of the allocated space of it (either a MEM or
@@ -67,8 +66,8 @@ static inline gimple
get_gimple_for_ssa_name (tree exp)
{
int v = SSA_NAME_VERSION (exp);
- if (SA.values)
- return SA.values[v];
+ if (SA.values && bitmap_bit_p (SA.values, v))
+ return SSA_NAME_DEF_STMT (exp);
return NULL;
}