aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorZdenek Dvorak <dvorakz@suse.cz>2005-12-19 01:12:14 +0100
committerZdenek Dvorak <rakdver@gcc.gnu.org>2005-12-19 00:12:14 +0000
commitff88c5aa417e368a773a4ac0c8459ce4b8ff6a6f (patch)
treef42fbcc6e8a2ad0f43efd43b7cc4529297806946 /gcc
parent56c779bcc9047047c33a90d1994b94a7fb0df0d3 (diff)
downloadgcc-ff88c5aa417e368a773a4ac0c8459ce4b8ff6a6f.zip
gcc-ff88c5aa417e368a773a4ac0c8459ce4b8ff6a6f.tar.gz
gcc-ff88c5aa417e368a773a4ac0c8459ce4b8ff6a6f.tar.bz2
tree-flow.h (struct stmt_ann_d): Remove makes_aliased_loads and makes_aliased_stores fields.
* tree-flow.h (struct stmt_ann_d): Remove makes_aliased_loads and makes_aliased_stores fields. * tree-ssa-ccp.c (likely_value): Do not use makes_aliased_stores and makes_aliased_loads fields. * tree-ssa-dom.c (eliminate_redundant_computations): Do not use makes_aliased_stores. * tree-ssa-operands.c (clobbered_aliased_loads, clobbered_aliased_stores, ro_call_aliased_loads): Removed. (build_ssa_operands, add_stmt_operand, add_call_clobber_ops, add_call_read_ops): Do not set makes_aliased_stores and makes_aliased_loads fields. * tree-ssa.c (verify_ssa): Do not verify makes_aliased_stores field. From-SVN: r108766
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog16
-rw-r--r--gcc/tree-flow.h6
-rw-r--r--gcc/tree-ssa-ccp.c4
-rw-r--r--gcc/tree-ssa-dom.c3
-rw-r--r--gcc/tree-ssa-operands.c45
-rw-r--r--gcc/tree-ssa.c9
6 files changed, 21 insertions, 62 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 176c4b7..11df7f3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,19 @@
+2005-12-19 Zdenek Dvorak <dvorakz@suse.cz>
+
+ * tree-flow.h (struct stmt_ann_d): Remove
+ makes_aliased_loads and makes_aliased_stores fields.
+ * tree-ssa-ccp.c (likely_value): Do not use makes_aliased_stores
+ and makes_aliased_loads fields.
+ * tree-ssa-dom.c (eliminate_redundant_computations): Do not
+ use makes_aliased_stores.
+ * tree-ssa-operands.c (clobbered_aliased_loads,
+ clobbered_aliased_stores, ro_call_aliased_loads): Removed.
+ (build_ssa_operands, add_stmt_operand, add_call_clobber_ops,
+ add_call_read_ops): Do not set makes_aliased_stores and
+ makes_aliased_loads fields.
+ * tree-ssa.c (verify_ssa): Do not verify makes_aliased_stores
+ field.
+
2005-12-18 Geoffrey Keating <geoffk@apple.com>
* config/darwin.h: Don't include darwin-sections.def to declare
diff --git a/gcc/tree-flow.h b/gcc/tree-flow.h
index ab9eab9..9675288 100644
--- a/gcc/tree-flow.h
+++ b/gcc/tree-flow.h
@@ -256,12 +256,6 @@ struct stmt_ann_d GTY(())
need to be scanned again). */
unsigned modified : 1;
- /* Nonzero if the statement makes aliased loads. */
- unsigned makes_aliased_loads : 1;
-
- /* Nonzero if the statement makes aliased stores. */
- unsigned makes_aliased_stores : 1;
-
/* Nonzero if the statement makes references to volatile storage. */
unsigned has_volatile_ops : 1;
diff --git a/gcc/tree-ssa-ccp.c b/gcc/tree-ssa-ccp.c
index cd4bc9d..c428ef0 100644
--- a/gcc/tree-ssa-ccp.c
+++ b/gcc/tree-ssa-ccp.c
@@ -482,9 +482,7 @@ likely_value (tree stmt)
/* If we are not doing store-ccp, statements with loads
and/or stores will never fold into a constant. */
if (!do_store_ccp
- && (ann->makes_aliased_stores
- || ann->makes_aliased_loads
- || !ZERO_SSA_OPERANDS (stmt, SSA_OP_ALL_VIRTUALS)))
+ && !ZERO_SSA_OPERANDS (stmt, SSA_OP_ALL_VIRTUALS))
return VARYING;
diff --git a/gcc/tree-ssa-dom.c b/gcc/tree-ssa-dom.c
index a720330..b6257d3 100644
--- a/gcc/tree-ssa-dom.c
+++ b/gcc/tree-ssa-dom.c
@@ -2394,8 +2394,7 @@ eliminate_redundant_computations (tree stmt, stmt_ann_t ann)
/* Certain expressions on the RHS can be optimized away, but can not
themselves be entered into the hash tables. */
- if (ann->makes_aliased_stores
- || ! def
+ if (! def
|| TREE_CODE (def) != SSA_NAME
|| SSA_NAME_OCCURS_IN_ABNORMAL_PHI (def)
|| !ZERO_SSA_OPERANDS (stmt, SSA_OP_VMAYDEF)
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c
index 41046c7..674e9ce 100644
--- a/gcc/tree-ssa-operands.c
+++ b/gcc/tree-ssa-operands.c
@@ -127,9 +127,6 @@ bool ssa_ro_call_cache_valid;
static VEC(tree,heap) *clobbered_v_may_defs;
static VEC(tree,heap) *clobbered_vuses;
static VEC(tree,heap) *ro_call_vuses;
-static bool clobbered_aliased_loads;
-static bool clobbered_aliased_stores;
-static bool ro_call_aliased_loads;
static bool ops_active = false;
static GTY (()) struct ssa_operand_memory_d *operand_memory = NULL;
@@ -798,14 +795,9 @@ build_ssa_operands (tree stmt)
{
stmt_ann_t ann = get_stmt_ann (stmt);
- /* Initially assume that the statement has no volatile operands, nor
- makes aliased loads or stores. */
+ /* Initially assume that the statement has no volatile operands. */
if (ann)
- {
- ann->has_volatile_ops = false;
- ann->makes_aliased_stores = false;
- ann->makes_aliased_loads = false;
- }
+ ann->has_volatile_ops = false;
start_ssa_stmt_operands ();
@@ -1643,11 +1635,7 @@ add_stmt_operand (tree *var_p, stmt_ann_t s_ann, int flags)
}
}
else
- {
- append_vuse (var);
- if (s_ann && v_ann->is_alias_tag)
- s_ann->makes_aliased_loads = 1;
- }
+ append_vuse (var);
}
else
{
@@ -1668,9 +1656,6 @@ add_stmt_operand (tree *var_p, stmt_ann_t s_ann, int flags)
for (i = 0; i < VARRAY_ACTIVE_SIZE (aliases); i++)
append_v_may_def (VARRAY_TREE (aliases, i));
-
- if (s_ann)
- s_ann->makes_aliased_stores = 1;
}
else
{
@@ -1681,9 +1666,6 @@ add_stmt_operand (tree *var_p, stmt_ann_t s_ann, int flags)
for (i = 0; i < VARRAY_ACTIVE_SIZE (aliases); i++)
append_vuse (VARRAY_TREE (aliases, i));
-
- if (s_ann)
- s_ann->makes_aliased_loads = 1;
}
}
}
@@ -1792,11 +1774,6 @@ add_call_clobber_ops (tree stmt, tree callee)
var_ann (t)->in_v_may_def_list = 1;
VEC_safe_push (tree, heap, build_v_may_defs, (tree)t);
}
- if (s_ann)
- {
- s_ann->makes_aliased_loads = clobbered_aliased_loads;
- s_ann->makes_aliased_stores = clobbered_aliased_stores;
- }
return;
}
@@ -1828,16 +1805,6 @@ add_call_clobber_ops (tree stmt, tree callee)
if ((!not_read_b || bitmap_empty_p (not_read_b))
&& (!not_written_b || bitmap_empty_p (not_written_b)))
{
- clobbered_aliased_loads = empty_ann.makes_aliased_loads;
- clobbered_aliased_stores = empty_ann.makes_aliased_stores;
-
- /* Set the flags for a stmt's annotation. */
- if (s_ann)
- {
- s_ann->makes_aliased_loads = empty_ann.makes_aliased_loads;
- s_ann->makes_aliased_stores = empty_ann.makes_aliased_stores;
- }
-
/* Prepare empty cache vectors. */
VEC_truncate (tree, clobbered_vuses, 0);
VEC_truncate (tree, clobbered_v_may_defs, 0);
@@ -1893,8 +1860,6 @@ add_call_read_ops (tree stmt)
var_ann (t)->in_vuse_list = 1;
VEC_safe_push (tree, heap, build_vuses, (tree)t);
}
- if (s_ann)
- s_ann->makes_aliased_loads = ro_call_aliased_loads;
return;
}
@@ -1907,10 +1872,6 @@ add_call_read_ops (tree stmt)
add_stmt_operand (&var, &empty_ann, opf_none | opf_non_specific);
}
- ro_call_aliased_loads = empty_ann.makes_aliased_loads;
- if (s_ann)
- s_ann->makes_aliased_loads = empty_ann.makes_aliased_loads;
-
/* Prepare empty cache vectors. */
VEC_truncate (tree, ro_call_vuses, 0);
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c
index 7d9f274..2cd6412 100644
--- a/gcc/tree-ssa.c
+++ b/gcc/tree-ssa.c
@@ -730,15 +730,6 @@ verify_ssa (bool check_modified_stmt)
}
}
-
- if (stmt_ann (stmt)->makes_aliased_stores
- && ZERO_SSA_OPERANDS (stmt, SSA_OP_VMAYDEF))
- {
- error ("statement makes aliased stores, but has no V_MAY_DEFS");
- print_generic_stmt (stderr, stmt, TDF_VOPS);
- goto err;
- }
-
FOR_EACH_SSA_USE_OPERAND (use_p, stmt, iter,
SSA_OP_ALL_USES | SSA_OP_ALL_KILLS)
{