diff options
author | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-09-09 09:06:49 +0000 |
---|---|---|
committer | rguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-09-09 09:06:49 +0000 |
commit | 32246fd413dba3cbeb133f3c95d29b321a073174 (patch) | |
tree | eec5fe84243c41390bb8abc1dad97211db6e76a3 /gcc/tree-data-ref.c | |
parent | 727bcc2a7a8f9b0046cbf88ebcc2bf680eb96d7a (diff) | |
download | gcc-32246fd413dba3cbeb133f3c95d29b321a073174.tar.gz |
2011-09-09 Richard Guenther <rguenther@suse.de>
PR middle-end/50333
* tree-data-ref.c (split_constant_offset): Do not try to handle
ternary ops.
* gcc.dg/torture/pr50333.c: New testcase.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@178720 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-data-ref.c')
-rw-r--r-- | gcc/tree-data-ref.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c index 388ea8aaeb2..72ecfe9a8c8 100644 --- a/gcc/tree-data-ref.c +++ b/gcc/tree-data-ref.c @@ -686,7 +686,8 @@ split_constant_offset (tree exp, tree *var, tree *off) *off = ssize_int (0); STRIP_NOPS (exp); - if (tree_is_chrec (exp)) + if (tree_is_chrec (exp) + || get_gimple_rhs_class (TREE_CODE (exp)) == GIMPLE_TERNARY_RHS) return; otype = TREE_TYPE (exp); |