summaryrefslogtreecommitdiff
path: root/gcc/ssaexpand.h
diff options
context:
space:
mode:
authormatz <matz@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-27 12:16:00 +0000
committermatz <matz@138bc75d-0d04-0410-961f-82ee72b054a4>2009-04-27 12:16:00 +0000
commitdfdbf3fd81a768988093378c23a107aaa8eeea4d (patch)
tree7f62f8eda796cd4e483b1fb239fc73ab0b2e64f4 /gcc/ssaexpand.h
parentae2a9b00047ceffe62164b4e4f7d53f5a643afef (diff)
downloadgcc-dfdbf3fd81a768988093378c23a107aaa8eeea4d.tar.gz
* 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. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146837 138bc75d-0d04-0410-961f-82ee72b054a4
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;
}