diff options
author | Richard Biener <rguenther@suse.de> | 2018-11-28 10:59:12 +0000 |
---|---|---|
committer | Richard Biener <rguenth@gcc.gnu.org> | 2018-11-28 10:59:12 +0000 |
commit | 80e6a1edf9f81362dd40b062ebf81ae7592d19d9 (patch) | |
tree | 082401f4827be57a412ec872efdcbdc44c3d22cf /gcc/tree-ssa.c | |
parent | dcc4956cab842cbf2aee1a84a9548696565f8a2d (diff) | |
download | gcc-80e6a1edf9f81362dd40b062ebf81ae7592d19d9.zip gcc-80e6a1edf9f81362dd40b062ebf81ae7592d19d9.tar.gz gcc-80e6a1edf9f81362dd40b062ebf81ae7592d19d9.tar.bz2 |
re PR fortran/88229 (ICE tree check: expected integer_cst, have nop_expr in get_len, at tree.h:5608)
2018-11-28 Richard Biener <rguenther@suse.de>
PR tree-optimization/88229
* tree-ssa.c (non_rewritable_mem_ref_base): Check DECL_SIZE_UNIT
is an INTEGER_CST before accessing it so.
From-SVN: r266550
Diffstat (limited to 'gcc/tree-ssa.c')
-rw-r--r-- | gcc/tree-ssa.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index bd8b91f..e3eb4b0 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -1446,6 +1446,7 @@ non_rewritable_mem_ref_base (tree ref) return NULL_TREE; /* For integral typed extracts we can use a BIT_FIELD_REF. */ if (DECL_SIZE (decl) + && TREE_CODE (DECL_SIZE_UNIT (decl)) == INTEGER_CST && (known_subrange_p (mem_ref_offset (base), wi::to_poly_offset (TYPE_SIZE_UNIT (TREE_TYPE (base))), |