summaryrefslogtreecommitdiff
path: root/gcc/tree-ssa-address.c
diff options
context:
space:
mode:
authorpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-04 00:33:31 +0000
committerpinskia <pinskia@138bc75d-0d04-0410-961f-82ee72b054a4>2007-08-04 00:33:31 +0000
commite45bbad21b8f3590c89cc7193eaac430b547328f (patch)
tree5bc2b122837ec11f3ca351c56ec17682a79d19ee /gcc/tree-ssa-address.c
parent6e667ff8580e6af3312ac46bd499ed6d9f668c30 (diff)
downloadgcc-e45bbad21b8f3590c89cc7193eaac430b547328f.tar.gz
2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/32399 * tree-ssa-address.c (add_to_parts): Use POINTER_PLUS_EXPR when adding to the base and convert ELT to sizetype instead of type. 2007-08-03 Andrew Pinski <andrew_pinski@playstation.sony.com> RP middle-end/32399 * gcc.c-torture/compile/pr32399.c: New testcase. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@127196 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-address.c')
-rw-r--r--gcc/tree-ssa-address.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/gcc/tree-ssa-address.c b/gcc/tree-ssa-address.c
index 577ede32bcc..90a01dca034 100644
--- a/gcc/tree-ssa-address.c
+++ b/gcc/tree-ssa-address.c
@@ -422,9 +422,9 @@ add_to_parts (struct mem_address *parts, tree elt)
/* Add ELT to base. */
type = TREE_TYPE (parts->base);
- parts->base = fold_build2 (PLUS_EXPR, type,
+ parts->base = fold_build2 (POINTER_PLUS_EXPR, type,
parts->base,
- fold_convert (type, elt));
+ fold_convert (sizetype, elt));
}
/* Finds the most expensive multiplication in ADDR that can be