[Bug c/83844] [8 Regression] ICE with warn_if_not_aligned attribute
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Tue Jan 16 15:09:00 GMT 2018
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83844
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Author: jakub
Date: Tue Jan 16 15:08:32 2018
New Revision: 256745
URL: https://gcc.gnu.org/viewcvs?rev=256745&root=gcc&view=rev
Log:
PR c/83844
* stor-layout.c (handle_warn_if_not_align): Use byte_position and
multiple_of_p instead of unchecked tree_to_uhwi and UHWI check.
If off is not INTEGER_CST, issue a may not be aligned warning
rather than isn't aligned. Use isn%'t rather than isn't.
* fold-const.c (multiple_of_p) <case BIT_AND_EXPR>: Don't fall through
into MULT_EXPR.
<case MULT_EXPR>: Improve the case when bottom and one of the
MULT_EXPR operands are INTEGER_CSTs and bottom is multiple of that
operand, in that case check if the other operand is multiple of
bottom divided by the INTEGER_CST operand.
* gcc.dg/pr83844.c: New test.
Added:
trunk/gcc/testsuite/gcc.dg/pr83844.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/fold-const.c
trunk/gcc/stor-layout.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list