This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/33136] [4.1/4.2/4.3 Regression] wrong code due to alias with allocation in loop
- From: "dberlin at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 22 Aug 2007 15:52:53 -0000
- Subject: [Bug tree-optimization/33136] [4.1/4.2/4.3 Regression] wrong code due to alias with allocation in loop
- References: <bug-33136-12956@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #13 from dberlin at gcc dot gnu dot org 2007-08-22 15:52 -------
At least for 4.3, ipa-type-escape is not looking into phi_nodes for address
taking, so we end up returning false for may_alias_p (p, s) because we believe
nobody ever takes the address of s.
IE if (ipa_type_escape_field_does_not_clobber_p (var_type,
TREE_TYPE (ptr)))
incorrectly returns true.
ipa-type-escape.c needs to be changed to scan refs in phi_nodes (it was written
when we had just plain old gimple during IPA)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33136