summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-16 10:52:46 +0000
committerebotcazou <ebotcazou@138bc75d-0d04-0410-961f-82ee72b054a4>2015-10-16 10:52:46 +0000
commit98f7a21629a19ed12703a39d682848821fcd2a60 (patch)
tree1cccdf81bc7305275f81dd7b131675af14df311e
parentce74f9bc9d130e988d835fbb23056bacfd8966f1 (diff)
downloadgcc-98f7a21629a19ed12703a39d682848821fcd2a60.tar.gz
* tree.c (recompute_tree_invariant_for_addr_expr): Assert that the
argument is an ADDR_EXPR. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@228870 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/tree.c2
2 files changed, 7 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 99ce1298eab..aff6fe5fe87 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2015-10-16 Eric Botcazou <ebotcazou@adacore.com>
+
+ * tree.c (recompute_tree_invariant_for_addr_expr): Assert that the
+ argument is an ADDR_EXPR.
+
2015-10-16 Richard Biener <rguenther@suse.de>
* gimple-fold.c (gimple_fold_builtin_memory_op): Use gimple_build
diff --git a/gcc/tree.c b/gcc/tree.c
index 905c60ef269..9d0e9de2893 100644
--- a/gcc/tree.c
+++ b/gcc/tree.c
@@ -4248,6 +4248,8 @@ recompute_tree_invariant_for_addr_expr (tree t)
tree node;
bool tc = true, se = false;
+ gcc_assert (TREE_CODE (t) == ADDR_EXPR);
+
/* We started out assuming this address is both invariant and constant, but
does not have side effects. Now go down any handled components and see if
any of them involve offsets that are either non-constant or non-invariant.