This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug tree-optimization/18754] unrolling happens too late/SRA does not happen late enough
- From: "dberlin at dberlin dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 20 Jan 2005 15:06:50 -0000
- Subject: [Bug tree-optimization/18754] unrolling happens too late/SRA does not happen late enough
- References: <20041201143906.18754.pinskia@gcc.gnu.org>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Additional Comments From dberlin at gcc dot gnu dot org 2005-01-20 15:06 -------
Subject: Re: unrolling happens too late/SRA
does not happen late enough
On Thu, 20 Jan 2005, rguenth at tat dot physik dot uni-tuebingen dot de wrote:
>
> ------- Additional Comments From rguenth at tat dot physik dot uni-tuebingen dot de 2005-01-20 14:57 -------
> Subject: Re: unrolling happens too late/SRA
> does not happen late enough
>
>> Note PR 18755 blocks this if we go the SRA after loop optimization which
>> seems like a better idea.
>
> I do not completely understand this sentence ;) I argue that SRA after
> loop is a bad idea, because SRA, in my testcases, will expose new
> oportunities for selecting ivs, so we'll need to run another loop after
> SRA.
Wiat, why are we running SRA twice again at all?
I can't figure this out from the bug report, other than seeing that we
"could sra c.array", but i don't see why that requires a loop opt first.
If you are just trying to convince it that constant indexed accesses to
each prat of that array is actually a different element, the
structure-aliasing branch will help (though not quite yet, because i've
punted on array_ref until i add the code to not punt when we have constant
indexed array_ref)
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18754