re PR tree-optimization/77648 (Setting conversion to a integer to double to 0 3/4...
authorRichard Biener <rguenther@suse.de>
Wed, 21 Sep 2016 07:38:33 +0000 (07:38 +0000)
committerRichard Biener <rguenth@gcc.gnu.org>
Wed, 21 Sep 2016 07:38:33 +0000 (07:38 +0000)
commit6811ea797651caab6df9cf6ce4237ca4eaf1399e
tree36c2c41787ff92e38461f73aa58c90f4c18f8a37
parentf955c4c4837a491a8e8c3962867f276a94125dde
re PR tree-optimization/77648 (Setting conversion to a integer to double to 0 3/4 through a loop)

2016-09-21  Richard Biener  <rguenther@suse.de>

PR tree-optimization/77648
* tree-ssa-structalias.c (process_constraint): Handle all DEREF
with complex RHS.
(make_transitive_closure_constraints): Adjust comment.
(make_any_offset_constraints): New function.
(handle_rhs_call): Make sure to first expand a pointer to all
subfields before transitively closing it.
(handle_const_call): Likewise.  Properly expand returned
pointers as well.
(handle_pure_call): Likewise.

* gcc.dg/torture/pr77648-1.c: New testcase.
* gcc.dg/torture/pr77648-2.c: Likewise.

From-SVN: r240303
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/torture/pr77648-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/torture/pr77648-2.c [new file with mode: 0644]
gcc/tree-ssa-structalias.c