[Bug middle-end/71002] [6 Regression] -fstrict-aliasing breaks Boost's short string optimization implementation
rguenth at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Wed May 11 10:25:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71002
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Known to work| |7.0
Summary|[6/7 Regression] |[6 Regression]
|-fstrict-aliasing breaks |-fstrict-aliasing breaks
|Boost's short string |Boost's short string
|optimization implementation |optimization implementation
--- Comment #12 from Richard Biener <rguenth at gcc dot gnu.org> ---
Mitigated on trunk sofar.
--- Comment #13 from Richard Biener <rguenth at gcc dot gnu.org> ---
Author: rguenth
Date: Wed May 11 10:24:11 2016
New Revision: 236117
URL: https://gcc.gnu.org/viewcvs?rev=236117&root=gcc&view=rev
Log:
2016-05-11 Richard Biener <rguenther@suse.de>
PR middle-end/71002
* alias.c (reference_alias_ptr_type): Preserve alias-set zero
if the langhook insists on it.
* fold-const.c (make_bit_field_ref): Add arg for the original
reference and preserve its alias-set.
(decode_field_reference): Take exp by reference and adjust it
to the original memory reference.
(optimize_bit_field_compare): Adjust callers.
(fold_truth_andor_1): Likewise.
* gimplify.c (gimplify_expr): Adjust in-SSA form test.
* g++.dg/torture/pr71002.C: New testcase.
Added:
trunk/gcc/testsuite/g++.dg/torture/pr71002.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/alias.c
trunk/gcc/fold-const.c
trunk/gcc/gimplify.c
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-bugs
mailing list