summaryrefslogtreecommitdiff
path: root/gcc/cfgexpand.c
diff options
context:
space:
mode:
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-14 18:09:14 +0000
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>2010-05-14 18:09:14 +0000
commit37cd7b09149cd2ffecc77f82e023e1c5b8bc5d15 (patch)
tree9ce6be546c9401ad7f197db1291d83b6fc4b8241 /gcc/cfgexpand.c
parent6fc76bb02fac69d05787ea749a9cf8230b59afed (diff)
downloadgcc-37cd7b09149cd2ffecc77f82e023e1c5b8bc5d15.tar.gz
PR debug/44136
* cfgexpand.c (expand_debug_expr): If non-memory op0 has BLKmode, return NULL. * gcc.dg/pr44136.c: New test. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159400 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cfgexpand.c')
-rw-r--r--gcc/cfgexpand.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c
index 319b1832295..5c42c1c1bf1 100644
--- a/gcc/cfgexpand.c
+++ b/gcc/cfgexpand.c
@@ -2561,13 +2561,14 @@ expand_debug_expr (tree exp)
if (bitpos < 0)
return NULL;
+ if (GET_MODE (op0) == BLKmode)
+ return NULL;
+
if ((bitpos % BITS_PER_UNIT) == 0
&& bitsize == GET_MODE_BITSIZE (mode1))
{
enum machine_mode opmode = GET_MODE (op0);
- gcc_assert (opmode != BLKmode);
-
if (opmode == VOIDmode)
opmode = mode1;