OSDN Git Service
(root)
/
pf3gnuchains
/
gcc-fork.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
2006-03-07 Richard Guenther <rguenther@suse.de>
[pf3gnuchains/gcc-fork.git]
/
gcc
/
tree-ssa-structalias.c
diff --git
a/gcc/tree-ssa-structalias.c
b/gcc/tree-ssa-structalias.c
index
a84a32c
..
b5e0830
100644
(file)
--- a/
gcc/tree-ssa-structalias.c
+++ b/
gcc/tree-ssa-structalias.c
@@
-1040,7
+1040,7
@@
merge_graph_nodes (constraint_graph_t graph, unsigned int to,
graph->zero_weight_succs[from]);
}
graph->zero_weight_succs[from]);
}
- /* Merge all the non
-
zero weighted predecessor edges. */
+ /* Merge all the nonzero weighted predecessor edges. */
for (i = 0; VEC_iterate (constraint_edge_t, predvec, i, c); i++)
{
unsigned int d = c->dest;
for (i = 0; VEC_iterate (constraint_edge_t, predvec, i, c); i++)
{
unsigned int d = c->dest;
@@
-1064,7
+1064,7
@@
merge_graph_nodes (constraint_graph_t graph, unsigned int to,
}
}
- /* Merge all the non
-
zero weighted successor edges. */
+ /* Merge all the nonzero weighted successor edges. */
for (i = 0; VEC_iterate (constraint_edge_t, succvec, i, c); i++)
{
unsigned int d = c->dest;
for (i = 0; VEC_iterate (constraint_edge_t, succvec, i, c); i++)
{
unsigned int d = c->dest;
@@
-3182,7
+3182,8
@@
handle_ptr_arith (VEC (ce_s, heap) *lhsc, tree expr)
VEC (ce_s, heap) *temp = NULL;
unsigned int rhsoffset = 0;
VEC (ce_s, heap) *temp = NULL;
unsigned int rhsoffset = 0;
- if (TREE_CODE (expr) != PLUS_EXPR)
+ if (TREE_CODE (expr) != PLUS_EXPR
+ && TREE_CODE (expr) != MINUS_EXPR)
return false;
op0 = TREE_OPERAND (expr, 0);
return false;
op0 = TREE_OPERAND (expr, 0);
@@
-3190,7
+3191,8
@@
handle_ptr_arith (VEC (ce_s, heap) *lhsc, tree expr)
get_constraint_for (op0, &temp);
if (POINTER_TYPE_P (TREE_TYPE (op0))
get_constraint_for (op0, &temp);
if (POINTER_TYPE_P (TREE_TYPE (op0))
- && TREE_CODE (op1) == INTEGER_CST)
+ && TREE_CODE (op1) == INTEGER_CST
+ && TREE_CODE (expr) == PLUS_EXPR)
{
rhsoffset = TREE_INT_CST_LOW (op1) * BITS_PER_UNIT;
}
{
rhsoffset = TREE_INT_CST_LOW (op1) * BITS_PER_UNIT;
}
@@
-4049,7
+4051,7
@@
intra_create_variable_infos (void)
lhs.type = SCALAR;
lhs.var = create_variable_info_for (t, alias_get_name (t));
lhs.type = SCALAR;
lhs.var = create_variable_info_for (t, alias_get_name (t));
- /* With flag_argument_noalias greater than one means that the incom
m
ing
+ /* With flag_argument_noalias greater than one means that the incoming
argument cannot alias anything except for itself so create a HEAP
variable. */
if (POINTER_TYPE_P (TREE_TYPE (t))
argument cannot alias anything except for itself so create a HEAP
variable. */
if (POINTER_TYPE_P (TREE_TYPE (t))