summaryrefslogtreecommitdiff
path: root/gcc/expr.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-30 11:01:22 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2010-07-30 11:01:22 +0000
commit29b878ada6440ae563ef66b9a106014eca4cdf16 (patch)
tree23799704054afb04a1603f3c67ef450a17122033 /gcc/expr.c
parent49ee23c4c0e3c7d073390fba34a28b88847f4219 (diff)
downloadgcc-29b878ada6440ae563ef66b9a106014eca4cdf16.tar.gz
2010-07-30 Richard Guenther <rguenther@suse.de>
PR middle-end/45141 * expr.c (expand_expr_real_1): Check for not handled base address. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@162709 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.c')
-rw-r--r--gcc/expr.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/expr.c b/gcc/expr.c
index a27dfd8e4ab..f0a3b9caa40 100644
--- a/gcc/expr.c
+++ b/gcc/expr.c
@@ -8664,7 +8664,8 @@ expand_expr_real_1 (tree exp, rtx target, enum machine_mode tmode,
set_mem_attributes (temp, TMR_ORIGINAL (exp), 0);
set_mem_addr_space (temp, as);
base = get_base_address (TMR_ORIGINAL (exp));
- if (INDIRECT_REF_P (base)
+ if (base
+ && INDIRECT_REF_P (base)
&& TMR_BASE (exp)
&& TREE_CODE (TMR_BASE (exp)) == SSA_NAME
&& POINTER_TYPE_P (TREE_TYPE (TMR_BASE (exp))))