re PR middle-end/78128 (fortran/resolve.c:resolve_operator miscompiled at -O2)

2016-10-28  Richard Biener  <rguenther@suse.de>

	PR middle-end/78128
	PR middle-end/71002
	* fold-const.c (make_bit_field_ref): Only adjust alias set
	when the original alias set was zero.

From-SVN: r241645
This commit is contained in:
Richard Biener 2016-10-28 13:07:59 +00:00 committed by Richard Biener
parent 539405d554
commit 2a762fe165
2 changed files with 10 additions and 3 deletions

View File

@ -1,3 +1,10 @@
2016-10-28 Richard Biener <rguenther@suse.de>
PR middle-end/78128
PR middle-end/71002
* fold-const.c (make_bit_field_ref): Only adjust alias set
when the original alias set was zero.
2016-10-28 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
* config/s390/s390.c (s390_adjust_loop_scan_osc): New function.

View File

@ -3809,11 +3809,11 @@ make_bit_field_ref (location_t loc, tree inner, tree orig_inner, tree type,
{
tree result, bftype;
if (get_alias_set (inner) != get_alias_set (orig_inner))
alias_set_type iset = get_alias_set (orig_inner);
if (iset == 0 && get_alias_set (inner) != iset)
inner = fold_build2 (MEM_REF, TREE_TYPE (inner),
build_fold_addr_expr (inner),
build_int_cst
(reference_alias_ptr_type (orig_inner), 0));
build_int_cst (ptr_type_node, 0));
if (bitpos == 0 && !reversep)
{