Commit 8df9c702 by James E Wilson Committed by Alexandre Oliva

re PR tree-optimization/33655 (ICE in bitfield_overlaps_p, at tree-sra.c:2901)

PR tree-optimization/33655
PR middle-end/22156
* tree-sra.c (bitfield_overlaps_p): When fld->element is INTEGER_CST,
convert it to bitsizetype before size_binop call.

From-SVN: r129152
parent 1e4cc539
2007-10-09 James E. Wilson <wilson@specifix.com>
PR tree-optimization/33655
PR middle-end/22156
* tree-sra.c (bitfield_overlaps_p): When fld->element is INTEGER_CST,
convert it to bitsizetype before size_binop call.
2007-10-09 Alexandre Oliva <aoliva@redhat.com> 2007-10-09 Alexandre Oliva <aoliva@redhat.com>
PR tree-optimization/33572 PR tree-optimization/33572
...@@ -2906,7 +2906,8 @@ bitfield_overlaps_p (tree blen, tree bpos, struct sra_elt *fld, ...@@ -2906,7 +2906,8 @@ bitfield_overlaps_p (tree blen, tree bpos, struct sra_elt *fld,
else if (TREE_CODE (fld->element) == INTEGER_CST) else if (TREE_CODE (fld->element) == INTEGER_CST)
{ {
flen = fold_convert (bitsizetype, TYPE_SIZE (fld->type)); flen = fold_convert (bitsizetype, TYPE_SIZE (fld->type));
fpos = size_binop (MULT_EXPR, flen, fld->element); fpos = fold_convert (bitsizetype, fld->element);
fpos = size_binop (MULT_EXPR, flen, fpos);
} }
else else
gcc_unreachable (); gcc_unreachable ();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment